Line Segment Detector vs Probabalistic Hough Transform

两盒软妹~` 提交于 2020-05-24 20:32:52

问题


In OpenCV, there are two methods of detecting lines that give similar results in the form of a vector of endpoints - the Line Segments Detector (LSD) and the Probabilistic Hough Transform. (Discounting the standard Hough transform as the output given is in terms of equations, not line endpoints.)

I haven't been able to find a compare and contrast of these two line detection methods and their pros/cons. Thus - what is the difference between these two functions? Are there any particular benefits to using one method as opposed to the other?

Additionally, are there other lesser-known line detection methods (like LSD) that might be advantageous in some use cases?


回答1:


Line Segments Detector (LSD)

  • Takes a greyscale image as input
  • Designed to work without any parameter tuning
  • Runs in linear time
  • Gives subpixel accurate results
  • Useful for parameter-free edge detection
  • LSD paper by Grompone Von Gioi et al
  • Example implementation: using LSD to detect data matrices

(Progressive) Probabilistic Hough Transform

  • Takes a binary image as input
  • Has several tuning parameters; distance resolution (rho), angle resolution (theta), an accumulator threshold parameter (only those with enough votes are returned), minimum line length and maximum line gap
  • Time performance depends on parameters (but is improved over standard Hough transform)
  • Several runs may yield different results due to randomised nature
  • Useful for more specific line finding; parameters allow for tuning, and has option to combine segments (via maximum line gap parameter) to return single longer lines
  • The OpenCV implementation is the Progressive Probabilistic Hough Transform (with thanks to Dr. D.'s answer on this question)

Other algorithms

  • EDLines: a linear time line segment detector that utilises an edge detector. No OpenCV implementation as far as I know.

(With thanks to Micka's comment for pointing out the differences in input and potential uses)



来源:https://stackoverflow.com/questions/43050075/line-segment-detector-vs-probabalistic-hough-transform

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!