George Eracleous
George Eracleous

Reputation: 4422

Detect cubic curve with Hough transform

I have a picture with a curve which can be defined by the following equation:

y = ax^3 + bx^2 + cx + d

It is obvious how to use the normal Hough transform to detect the curve. However, I want to reduce the parameter space by using the gradient direction (I already got it from edge detection). I am not sure how to use the gradient direction to reduce the parameter space.

An idea I had is to find the derivative dy/dx = 3ax^2 + 2bx + c . Now I have only three parameters hence my task is easier. Is this correct tho? How do I get the d parameter if I use this?

Upvotes: 2

Views: 1115

Answers (1)

Piotr
Piotr

Reputation: 833

After running Hough for dy/dx = 3x^2 + 2ax + b you have

c = f(x,y) = y - x^3 + ax^2 + bx where a and b are known.

Why not another pass, this time looking only for c? Two dimensional accumulator, and then 1 dim is better then 3 dimensional accumulator, anyway.

Upvotes: 2

Related Questions