Download presentation
Presentation is loading. Please wait.
Published byPhoebe Skinner Modified over 9 years ago
1
Hough Transform on the GPU Presented by Javier Garcia November 29, 2010
2
Why Hough transform? Sound wave problem ◦ Too complex Image processing ◦ 2 for 1
3
What is it? Feature extraction technique Used to detect lines (or other curves) in images
4
How does it work? It finds curves in images using a voting technique The voting takes place in a parameter space or Hough space Object (curve) candidates are obtained as local maxima
5
Original algorithm Used slope intercept form for lines ◦ y = ax + b ◦ b = -xa + y Slope of vertical lines could be a problem Quantize parameter space (a, b): P[a min,..., a max ][b min,..., b max ] (accumulator array) For each edge point (x, y) For(a = a min ; a ≤ a max ; a++) { b = − xa + y; P[a][b]++; }
6
Original algorithm (cont’d) Find local maxima in P[a][b] If P[a j ][b k ]=M, then M points lie on the line y = a j x + b k Hough transformation in slope-intercept form: http://www.rob.cs.tu-bs.de/content/04- teaching/06-interactive/Hough.html
7
Generalized algorithm Use polar coordinates for line: ρ = x cos θ + y sin θ Quantize parameter space ( ρ, θ ): P[ ρ min,..., ρ max ][ θ min,..., θ max ] (accumulator array) For each edge point (x, y) For( θ = θ min ; θ ≤ θ max ; θ ++) { ρ = xcos( θ ) + ysin( θ ) ; P[ ρ ][ θ ]++; }
8
Generalized algorithm (cont’d) Find local maxima in P[ ρ ][ θ ] Using generalized algorithm, any curve can be extracted as long as it can be described by an equation analytically ◦ The equation for a circle is: r 2 = (x - x 0 ) 2 + (y - y 0 ) 2 Accumulator dimensions are equal to the unknown parameters Hough transformation in normal form: http://www.rob.cs.tu-bs.de/content/04- teaching/06-interactive/HNF.html
9
Quantization
10
My approach Implement the generalized Hough transform on the CPU and GPU Use both versions to extract lines from images Vary quantization ◦ Finer should give better results but increases space and time requirements ◦ Coarser is better for noise tolerance Finally, extract curves other than lines (time permitting)
11
Expected results I expect the GPU version to perform faster than the CPU version (of course) Fine quantization should be slower than coarse I will be presenting the execution times with the varied parameters for the final
12
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.