Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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 (Sobel, etc). Why is that?

share|improve this question
up vote 8 down vote accepted

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.

share|improve this answer

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

[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.

share|improve this answer
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

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.