HOUGH TRANSFORM

The Hough Transform can detect analytical shapes in an image such as line, circles or ellipses and is based on the concept of mapping the input data in a parameter space called HOUGH SPACE

CONCEPT

The basic idea relies on mapping point of the input image in the parameter space which is created by using the points coordinates as fixed coefficients of the equation of a line, so given the line equation

The mapping is expressed by setting the values to the image point.

Accordingly if we compute the lines in the parameter space of 2 image point the intersection represents the line that intersects those 2 points in the image

More in general with image points we get the points that represents all the lines between the points

WHAT IF POINTS ARE IN THE SAME LINE?

In the case of image points that are in the same line the projections in the parameter space will met at the same point

So the problem of finding a line in the image can be translated in finding the intersection of lines in the parameter space

So given an analytic description of a shape the HT maps the image point (usually edge points ) so to create curves in the parameter space. The intersection in the parameter space means that there is an instance of the shape in the image

So the problem become finding parameter space points in which many curves intersects

IMPLEMENTATION

The implementation relies on a discrete representation of the parameter space as an accumulator array (AA) in which the curves are drawn in order to increment the values in the bins of the array, an high number in one of the bins means that there is a high number of line passing trough that point

In order to compute non analytical shapes the GENERALIZED HUGH TRANSFORM is deployed

PREVIOUS NEXT