week09-boundaries.ppt

Download Report

Transcript week09-boundaries.ppt

Finding region boundaries
Stockman MSU/CSE Fall 2009
Object boundaries



How to detect?
How to represent?
Problems relative to region/area
segmentation
Stockman MSU/CSE Fall 2009
advantages





Contrast often more reliable under
varying lighting
Boundaries give precise location
Boundaries have useful shape
information
Boundary representation is sparse
Humans use edge information
Stockman MSU/CSE Fall 2009
problems


Detection weakens at boundary corners
Topology of result is imperfect
Stockman MSU/CSE Fall 2009
topics





Aggregating chains of boundary pixels
Line and curve fitting
Angles, sides, vertices
Ribbons
Imperfect graphs
Stockman MSU/CSE Fall 2009
Canny edge detector/tracker



Detect, then follow high gradient boundary pixels
Track along a “thin” edge
Bridge across weaker contrast
Stockman MSU/CSE Fall 2009
Canny algorithm data
Stockman MSU/CSE Fall 2009
Overall Canny algorithm
Stockman MSU/CSE Fall 2009
Create thin edge response by
suppressing weaker neighbors



Find neighbors in direction of the gradient
(across the edge)
If neighbor response is weaker, delete it.
Recall thick edges from 5x5 Sobel or Prewitt
Stockman MSU/CSE Fall 2009
Begin tracking only at high
gradient points
Stockman MSU/CSE Fall 2009
Results with two spreads
Stockman MSU/CSE Fall 2009
Notes/Variations




Very few parameters needed
Can use multiple spreads and correlate
the results in multiple edge images
Can carefully manage the use of low
and high thresholds, perhaps depending
on size and quality of the current track
Canny edge tracker is very popular
Stockman MSU/CSE Fall 2009
Aggregating pixels into curves
Producing a discrete data
structure with meaningful parts.
Stockman MSU/CSE Fall 2009
Tracking tasks
Canny algorithm does some of these.
Stockman MSU/CSE Fall 2009
Possible output from tracker
Stockman MSU/CSE Fall 2009
The Hough Transform
Detecting a straight line segment
as a cluster in rho-theta space.
(Can do circles or ellipses too.)
Stockman MSU/CSE Fall 2009
Voting evidence in cluster space
Stockman MSU/CSE Fall 2009
Pixels with distinct (r,c)
coordinates map to same (d, Θ)
Y
Detected
set of edge
points
Textbook coordinate
system vs Cartesian
system
d
Θ
X
Stockman MSU/CSE Fall 2009
Mapping pixels (r, c) to polar
parmameters (d, Θ)
Row-column system
Cartesian coordinate system
d = x cos Θ + y sin Θ
Stockman MSU/CSE Fall 2009
Simple algorithm overview
Stockman MSU/CSE Fall 2009
Possible implementation
Stockman MSU/CSE Fall 2009
Binning evidence:
note that original
pixels [R, C] are
saved in the bins.
Stockman MSU/CSE Fall 2009
Real world considerations



The gradient direction Θ is bound to
have error (due to what?)
Since d is computed from Θ, d will also
have error
Thus, evidence is spread in parameter
space and may frustrate binning
methods (2D histogram)
Stockman MSU/CSE Fall 2009
Solutions




Bins for (d, Θ) can be smoothed to aggregate
neighbors.
Multiple evidence can be put into the bins by
adding deltas to Θ and computing variations
of (d, Θ)
Clustering can be done in real space; e.g. do
not use binning
Busy images should be handled using a grid
of (overlapping) windows to avoid a cluttered
transform space
Stockman MSU/CSE Fall 2009
What is the space of d and Θ ?




Many apps range Θ from 0 to π only
However, gradient direction can be
detected from 0 to 2 π.
Imagine a checkerboard – there are 4
prominent directions, not 2.
Using full range of direction requires
negative values of d – consider
checkerboard with origin in the center.
Stockman MSU/CSE Fall 2009
Additional material


Plastic slides from Stockman
Plastic slides from Kasturi
Stockman MSU/CSE Fall 2009
Image to map work of Kasturi
Stockman MSU/CSE Fall 2009
Circular Hough Transform
There are 3 parameters
for a circle
Stockman MSU/CSE Fall 2009
Possible implementation
Stockman MSU/CSE Fall 2009
Some notes



Circular and elliptical Hough Transforms
are interesting, but of dubious value by
themselves
Smarter tracking methods, such as
Snakes, balloons, etc. might be needed
along with region features
There are weak publications that will
not help in real applications.
Stockman MSU/CSE Fall 2009
Fitting models to edge data
Can use straight line segments for
data compression, or parametric
curves for shape detection.
Stockman MSU/CSE Fall 2009
Fitting curves
Stockman MSU/CSE Fall 2009
An unlimited number of models
Stockman MSU/CSE Fall 2009
Least squares fitting
Stockman MSU/CSE Fall 2009
Best fit minimizes sum of squared
errors
Stockman MSU/CSE Fall 2009
Stockman MSU/CSE Fall 2009
Axis of least inertia better?
Stockman MSU/CSE Fall 2009
Ramer’s alg: perimeter to polygon
Stockman MSU/CSE Fall 2009
Angles, corners, ribbons
Stockman MSU/CSE Fall 2009
The downspout as a ribbon
Stockman MSU/CSE Fall 2009
Road and canal as ribbons
Stockman MSU/CSE Fall 2009
More boundary detection later




Will investigate “physics-based models”
Can fit to 2D (snakes) or 3D data
(balloons)
Models do not allow the object topology
to break
Models enforce object smoothness
Stockman MSU/CSE Fall 2009