Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 376b Introduction to Computer Vision 04 / 16 / 2008 Instructor: Michael Eckmann.

Similar presentations


Presentation on theme: "CS 376b Introduction to Computer Vision 04 / 16 / 2008 Instructor: Michael Eckmann."— Presentation transcript:

1 CS 376b Introduction to Computer Vision 04 / 16 / 2008 Instructor: Michael Eckmann

2 Michael Eckmann - Skidmore College - CS 376b - Spring 2008 Today’s Topics Comments/Questions Hough transform –generalized form

3 Hough Transform The generalized Hough transform is defined in such a way to allow it to detect arbitrary shapes. Draw your shape (as a boundary)‏ –select a reference point inside the shape (e.g. the center of mass)‏ –at the boundary points compute the gradient direction towards the reference point and store the reference point as a function of that direction in a table –this is done so that given an edge in an image and its gradient direction, we can then lookup in this table to determine the possible reference points we would update the element of the accumulator array for the r and c of the reference point and the angle

4 Hough Transform Refer to the handout from yesterday The generalized Hough transform steps are as follows –draw your shape and pick a reference point (x ref, y ref )‏ –create a table (the R-table) representing the shape this table is indexed by the angle that the x-axis makes with the tangent to the shape (omega) – needs to be quantized in the table, for an omega, we store the direction (beta) and length (r) of the vector from the edge to the reference point this is not a single valued table --- notice that there may be more than one value for an omega (why?)‏

5 Hough Transform quantize the reference points (consider a min and max and step for x and y coordinates of the reference point)‏ create an Accumulator array indexed on reference point now detect the shapes in the image by –for all edge pixels compute omega and quantize it look up in the R-table for that omega and get all the r, beta pairs for each r and beta calculate a possible reference point by using the following: x ref = x + r cos(beta)‏ y ref = y + r sin(beta)‏ and vote (increment the accumulator array element) for those reference points

6 Hough Transform That works for a single scale and orientation of the shape. If we want to handle multiple scales and orientations of the shape, we need to consider the min, max and step of the scales and orientations we wish to consider. –change the accumulator array to be indexed on x ref, y ref, scale, theta (orientationAngle)‏ –also, when calculating the possible reference points, now use: x ref = x + r *scale*cos(beta + theta)‏ y ref = y + r *scale*sin(beta + theta)‏ & increment accumulator array for that reference point, scale and orientation

7 Hough Transform I sent out a link to a paper that I only glanced through so far which contains speed ups for this generalized hough transform. Let's look at figure 2 here: http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/AV0405/ROBBEL/index.html See handout for more details


Download ppt "CS 376b Introduction to Computer Vision 04 / 16 / 2008 Instructor: Michael Eckmann."

Similar presentations


Ads by Google