A fast Hough Transform algorithm for straight lines detection in an image using GPU parallel computing with CUDA-C

The Hough Transform (HT) is a digital image processing method for the detection of shapes which has multiple uses today. A disadvantage of this method is its sequential computational complexity, particularly when a single processor is used. An optimized algorithm of HT for straight lines detection in an image is presented in this article. Optimization is realized by using a decomposition of the input image recently proposed via central processing unit (CPU), and the technique known as segment decomposition. Optimized algorithms improve execution times significantly. In this paper, the optimization is implemented in parallel using graphics processing unit (GPU) programming, allowing a reduction of total run time and achieving a performance more than 20 times better than the sequential method and up to 10 times better than the implementation recently proposed. Additionally, we introduce the concept of Performance Ratio, to emphasize the outperforming of the GPU over the CPUs.

[1]  Doo-Hyun Kim,et al.  Hough Transform with Kalman Filter on GPU for Real-Time Line Tracking , 2013, 2013 Seventh International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing.

[2]  Wilhelm Burger,et al.  Digital Image Processing - An Algorithmic Introduction using Java , 2008, Texts in Computer Science.

[3]  Thambipillai Srikanthan,et al.  Parallelizing the Hough Transform Computation , 2008, IEEE Signal Processing Letters.

[4]  Jim R. Parker,et al.  Algorithms for image processing and computer vision , 1996 .

[5]  Ming-Ting Sun,et al.  Resource-Efficient FPGA Architecture and Implementation of Hough Transform , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Bok-Suk Shin,et al.  Closed form line-segment extraction using the Hough transform , 2015, Pattern Recognit..

[7]  Mohammed Atiquzzaman,et al.  Multiresolution Hough Transform-An Efficient Method of Detecting Patterns in Images , 1992, IEEE Trans. Pattern Anal. Mach. Intell..

[8]  Bidyut Baran Chaudhuri,et al.  A survey of Hough Transform , 2015, Pattern Recognit..

[9]  John F. Canny,et al.  A Computational Approach to Edge Detection , 1986, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[10]  S. Sitharama Iyengar,et al.  Introduction to parallel algorithms , 1998, Wiley series on parallel and distributed computing.

[11]  Yi Pan,et al.  A Fast Efficient Parallel Hough Transform Algorithm on LARPBS , 2004, The Journal of Supercomputing.

[12]  Richard O. Duda,et al.  Use of the Hough transformation to detect lines and curves in pictures , 1972, CACM.

[13]  Lining Sun,et al.  A novel Hough transform method for line detection by enhancing accumulator array , 2011, Pattern Recognit. Lett..

[14]  Koji Nakano,et al.  Fast Ellipse Detection Algorithm Using Hough Transform on the GPU , 2011, 2011 Second International Conference on Networking and Computing.

[15]  Yvonne Koch Algorithms For Image Processing And Computer Vision , 2016 .

[16]  Joseph JáJá,et al.  An Introduction to Parallel Algorithms , 1992 .

[17]  Charalambos D. Stamopoulos Parallel Image Processing , 1975, IEEE Transactions on Computers.