The Hough Transform - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

The Hough Transform

Description:

Camera(s) used to orient one or more projectors in relation to each other and to ... includes parabola, hyperbola, ellipses. Fitting and the Hough Transform ... – PowerPoint PPT presentation

Number of Views:412
Avg rating:3.0/5.0
Slides: 24
Provided by: FrankDe62
Category:

less

Transcript and Presenter's Notes

Title: The Hough Transform


1
The Hough Transform
  • Frank Dellaert
  • Slides adapted from Jay Summet

2
Projector Camera Systems
Camera(s) used to orient one or more projectors
in relation to each other and to elements in the
world such as projection surfaces.
3
Multiple Projectors Shadows Muted
Note that the projectors are aligned sufficiently
so that the overlap between their output appears
visually perfect.
display screen
P-2
P-1
Sukthankar, Cham Sukthankar, CVPR-2001
4
Finding Planes
  • Lines fall in planes
  • Discontinuities fall at plane boundries.
  • Identify discontinuities
  • Fit line to discontinuities

Photos from Mark Ashdown Rahul Sukthankar -HP
Labs CRL TR 2003-01
5
Line Fitting To Find Calibration Points
6
Fitting
  • Choose a parametric object/some objects to
    represent a set of tokens
  • Most interesting case is when criterion is not
    local
  • cant tell whether a set of points lies on a line
    by looking only at each point and the next.
  • Three main questions
  • what object represents this set of tokens best?
  • which of several objects gets which token?
  • how many objects are there?
  • (you could read line for object here, or circle,
    or ellipse or...)

7
Fitting using SVD
  • Many 2D curves that can be represented using
    linear equations (in the coeff of the curve)
  • axbyc0
  • Conics xAx0
  • includes parabola, hyperbola, ellipses

8
Fitting and the Hough Transform
  • Purports to answer all three questions
  • We explain for lines
  • One representation a line is the set of points
    (x, y) such that(cos??? X (sin ?? Y r 0
  • Different choices of ?, rgt0 give different lines
  • For any token (x, y) there is a one parameter
    family of lines through this point, given
    by(cos??? X (sin ?? Y r 0
  • Each point gets to vote for each line in the
    family if there is a line that has lots of
    votes, that should be the line passing through
    the points

9
Votes
Tokens
r 0 to 1.55
Theta 45º 0.785 rad r (1v2) / 2 0.707
Theta 0 to 3.14 (rad)
Brightest point 20 votes
10
Mechanics of the Hough transform
  • Construct an array representing ?, r
  • For each point, render the curve (?, r) into this
    array, adding one at each cell
  • Difficulties
  • how big should the cells be? (too big, and we
    cannot distinguish between quite different lines
    too small, and noise causes lines to be missed)
  • How many lines?
  • count the peaks in the Hough array
  • Who belongs to which line?
  • tag the votes
  • Hardly ever satisfactory in practice, because
    problems with noise and cell size defeat it

11
Votes
Tokens
Brightest point 6 votes
12
(No Transcript)
13
Noise Lowers the Peaks
14
Noise Increases the Votes in Spurious Accumulator
Elements
15
Optimizations to the Hough Transform
Noise If the orientation of tokens (pixels) is
known, only accumulator elements for lines with
that general orientation are voted on. (Most edge
detectors give orientation information.) Speed
The accumulator array can be coarse, then
repeated in areas of interest at a finer scale.
16
Real World Example
Original
Found Lines
Edge Detection
Parameter Space
17
Fitting other objects
The Hough transform can be used to fit points to
any object that can be paramatized. (e.g. Circle,
elipse) Objects of arbitrary shape can be
parameterized by building an R-Table. (Assumes
orientation information for each token is
available.)
R and beta value(s) are obtained from the
R-Table, based upon omega (orientation)
18
Circle Example
With no orientation, each token (point) votes for
all possible circles. With orientation, each
token can vote for a smaller number of circles.
19
Real World Circle Examples
Crosshair indicates results of Hough
transform, bounding box found via motion
differencing.
20
Finding Coins
Original
Edges (note noise)
21
Finding Coins (Continued)
Penny
Quarters
22
Finding Coins (Continued)
Note that because the quarters and penny are
different sizes, a different Hough transform
(with separate accumulators) was used for each
circle size.
Coin finding sample images from Vivik Kwatra
23
Conclusion
  • Finding lines and other parameterized objects is
    an important task for computer vision.
  • The (generalized) Hough transform can detect
    arbitrary shapes from (edge detected) tokens.
  • Success rate depends directly upon the noise in
    the edge image.
  • Downsides Can be slow, especially for objects in
    arbitrary scales and orientations (extra
    parameters increase accumulator space
    exponentially).
Write a Comment
User Comments (0)
About PowerShow.com