Edge Detection (50 points)
It's important to evaluate pattern
recognition methods. In this exercise, you will evaluate edge
detection in 1D using the Laplacian edge detector. Remember that the
Laplacian edge detector locates edges by zero crossings. You will
use a double step edge, that is an edge that goes from 0 to 1 at
position x0 and from 1 to 0 at position x1>x0.
The variables controlling the step edge
are its width w, the kind of noise (uniform or Gaussian), and its
level of noise s (for uniform noise, noise is distributed over
[-s,s], for Gaussian noise, s is the standard deviation). Represent
the step edge as a 512 element array and center the edge at pixel
256. For the edge detector, the relevant parameter is the width of
the Gaussian used for smoothing.
Your application requires that edges
are detected with 99% probability within +/- 3 pixels of their true
location, and that there are no false edges detected outside that
range with 99% probability. Try to determine experimentally the
range of real-world situations (ranges of w and s) over which you can
satisfy these requirements. Note that this involves determining a
good value of the smoothing parameter r for each w and s.
Clearly present and discuss your
results. Corner Detection (50 bonus points)Implement a corner detector using Hessian matrix (the matrix of second derivatives).
Non-Maxima Suppression (30 bonus points)Apply non-maxima suppression (discussed for Canny edge detector) for the ridge filter. |