12

I know that for the Hough Transform to work on an image, it needs to be a binary image. To convert from a grayscale image, an edge detection algorithm should be employed. I notice that people always use Canny edge detection instead of others (e.g., Sobel). Why is that?

lennon310
  • 3,590
  • 19
  • 24
  • 27
AshivD
  • 133
  • 1
  • 1
  • 8

2 Answers2

12

Canny Edge Detection is considered to be a better (In False Alarm sense) edge detection than those you mentioned.
This is, mainly, due to 2 steps:

  1. Non Maximum Suppression - Edges candidates which are not dominant in their neighborhood aren't considered to be edges.
  2. Hysteresis Process - While moving along the candidates, given a candidate which is in the neighborhood of an edge the threshold is lower.

Those 2 steps reduce the number of "False" edges and hence create a better starting point for farther process like Hough Transformation.

Royi
  • 19,608
  • 4
  • 197
  • 238
6

Your statement that the Hough transform (HT) needs to be applied on a binary image is not true. The original HT indeed was formulated that way, though in the meanwhile different authors extended the HT in numerous ways -- for example, to consider the gray scale values of each image pixel. As a consequence, the step of edge detection can be omitted.

Citations concerning grey scale values taken from Extraction of Spatial Ultrasonic Wave Packet Features by Exploiting a Modified Hough Transform:

[23] F. O’Gorman and M. B. Clowes, “Finding picture edges through collinearity of feature points,” IEEE Trans. Comput., vol. 25, no. 4, pp. 449–456, Apr. 1976.

[24] J. Skingley and A. J. Rye, “The Hough transform applied to SAR images for thin line detection,” Pattern Recognit. Lett., vol. 6, no. 1, pp. 61–67, 1987.

[25] C. Trayner, N. J. Bailey, and B. R. Haynes, “Time-gradient Hough transforms–constraining object identification by speed of motion,” Real-Time Imag., vol. 6, no. 2, pp. 143–153, 2000.

lennon310
  • 3,590
  • 19
  • 24
  • 27
Peter Pablo
  • 181
  • 3
  • 1
    Agreed, after posting this question, I have also read that the HT does not require a binary input image. Thanks! – AshivD Jul 29 '14 at 13:29