nz_21
nz_21

Reputation: 7403

Sinusoidal curves in hough trasforms

I am reading this text to understand line-to-point mapping in hough transform:

http://web.ipac.caltech.edu/staff/fmasci/home/astro_refs/HoughTrans_lines_09.pdf

An important concept for the Hough transform is the mapping of single points. The idea is, that a point is mapped to all lines, that can pass through that point. This yields a sine-like line in the Hough space. The principle is illustrated for a point p0 = (40, 30) in Figure 2.

I don't understand why it "yields a sine-like curve". What is the intuition behind why figure 2 is the way it is?

Upvotes: 1

Views: 1027

Answers (2)

J Agustin Barrachina
J Agustin Barrachina

Reputation: 4110

By default, you cannot define a straight line with a single point. You need at least 2. The strenght of the Hough transform is that you use only one point, because you use the closest point of the line with respect to the origin. Knowing that it is the closest is what lets you define the line with a single point. You are giving extra information that covers the loss of the second point. If you give me only one pair of coordinates (x, y) I cannot do a line, but if you tell me that the coordinates are the Hough coordinates, then I can.

Now the point p_0 in figure 2-(a) is NOT a Hough point but just a point (x, y), therefore, it has an infinite number of lines that goes through it. The algorithm is saying, lets get the Hough Points of those infinite lines and plot them on 2-(b). As they are an infinite number, you end up having continuous function.

This function happens to be equation 2, which has obviously a sinusoidal form. This function basically is the radius r(x, y, theta), which in other words means if I have a line that passes through point (x, y) and whose closest point to the origin has an angle of theta, then the radius of that closest point is given by equation 2. If you want to know more about this equation 2, google "Hesse normal form" which is formal the name of this equation.

Upvotes: 0

weshouman
weshouman

Reputation: 943

Use the second formula and substitute x and y with any point, i.e: (5,3) then draw the function r=5*cos(θ) + 3*sin(θ), it will be a sinusoidal wave.

Example: Use this plotter with the function 5 * cos(x) + 3 * sin(x).
θ is replaced for x here for the sake of getting the plotter to work.


Note: a line would be specified if (r, θ) is given, and the x and y substitution would be any specific point on this line.
In our case, we want to know all the lines passing through a specific point, so we only specified the (x, y) to get a single point that could have any line (r, θ) passing over them.

Upvotes: 1

Related Questions