CUDA cuts: Fast graph cuts on the GPU
Citations Over TimeTop 1% of 2008 papers
Abstract
Graph cuts has become a powerful and popular optimization tool for energies defined over an MRF and have found applications in image segmentation, stereo vision, image restoration, etc. The maxflow/mincut algorithm to compute graph-cuts is computationally heavy. The best-reported implementation of graph cuts takes over 100 milliseconds even on images of size 640times480 and cannot be used for real-time applications or when iterated applications are needed. The commodity Graphics Processor Unit (GPU) has emerged as an economical and fast computation co-processor recently. In this paper, we present an implementation of the push-relabel algorithm for graph cuts on the GPU. We can perform over 60 graph cuts per second on 1024times1024 images and over 150 graph cuts per second on 640times480 images on an Nvidia 8800 GTX. The time for each complete graph-cut is about 1 millisecond when only a few weights change from the previous graph, as on dynamic graphs resulting from videos. The CUDA code with a well-defined interface can be downloaded for anyonepsilas use.
Related Papers
- → Numerical Parallel Processing Based on GPU with CUDA Architecture(2009)12 cited
- → Implementation of a covariance-based principal component analysis algorithm with a CUDA-enabled graphics processing unit(2011)2 cited
- → Near real-time SAR change detection using CUDA(2012)1 cited
- → Implementation of Variable Preconditioned GCR with mixed precision on GPU using CUDA(2010)1 cited
- Optimized dynamic programming search for automatic speech recognition on a Graphics Processing Unit (GPU) platform using Compute Unified Device Architecture (CUDA)(2014)