Presentation is loading. Please wait.

Presentation is loading. Please wait.

Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.

Similar presentations


Presentation on theme: "Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded."— Presentation transcript:

1 Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded in the edges More compact than pixels Ideal: artist’s line drawing (but artist is also using object-level knowledge) Source: D. Lowe

2 Origin of edges Edges are caused by a variety of factors: depth discontinuity surface color discontinuity illumination discontinuity surface normal discontinuity Source: Steve Seitz

3 Characterizing edges An edge is a place of rapid change in the image intensity function image intensity function (along horizontal scanline) first derivative edges correspond to extrema of derivative

4 Derivatives with convolution For 2D function f(x,y), the partial derivative is: For discrete data, we can approximate using finite differences: To implement above as convolution, what would be the associated filter? Source: K. Grauman

5 Partial derivatives of an image Which shows changes with respect to x? -1 1 1 -1 or -1 1

6 Finite difference filters Other approximations of derivative filters exist: Source: K. Grauman

7 The gradient points in the direction of most rapid increase in intensity Image gradient The gradient of an image: The gradient direction is given by Source: Steve Seitz The edge strength is given by the gradient magnitude How does this direction relate to the direction of the edge?

8 Effects of noise Consider a single row or column of the image Plotting intensity as a function of position gives a signal Where is the edge? Source: S. Seitz

9 Solution: smooth first To find edges, look for peaks in f g f * g Source: S. Seitz

10 Differentiation is convolution, and convolution is associative: This saves us one operation: Derivative theorem of convolution f Source: S. Seitz

11 Derivative of Gaussian filter Are these filters separable? x-direction y-direction

12 Derivative of Gaussian filter Which one finds horizontal/vertical edges? x-direction y-direction

13 Smoothed derivative removes noise, but blurs edge. Also finds edges at different “scales” 1 pixel3 pixels7 pixels Scale of Gaussian derivative filter Source: D. Forsyth

14 Review: Smoothing vs. derivative filters Smoothing filters Gaussian: remove “high-frequency” components; “low-pass” filter Can the values of a smoothing filter be negative? What should the values sum to? –One: constant regions are not affected by the filter Derivative filters Derivatives of Gaussian Can the values of a derivative filter be negative? What should the values sum to? –Zero: no response in constant regions High absolute value at points of high contrast

15 The Canny edge detector original image Slide credit: Steve Seitz

16 The Canny edge detector norm of the gradient

17 The Canny edge detector thresholding

18 The Canny edge detector thresholding How to turn these thick regions of the gradient into curves?

19 Non-maximum suppression Check if pixel is local maximum along gradient direction, select single max across width of the edge requires checking interpolated pixels p and r

20 The Canny edge detector thinning (non-maximum suppression) Problem: pixels along this edge didn’t survive the thresholding

21 Hysteresis thresholding Use a high threshold to start edge curves, and a low threshold to continue them. Source: Steve Seitz

22 Hysteresis thresholding original image high threshold (strong edges) low threshold (weak edges) hysteresis threshold Source: L. Fei-Fei

23 Recap: Canny edge detector 1.Filter image with derivative of Gaussian 2.Find magnitude and orientation of gradient 3.Non-maximum suppression: Thin wide “ridges” down to single pixel width 4.Linking and thresholding (hysteresis): Define two thresholds: low and high Use the high threshold to start edge curves and the low threshold to continue them MATLAB: edge(image, ‘canny’); J. Canny, A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8:679-714, 1986.A Computational Approach To Edge Detection

24 Edge detection is just the beginning… Berkeley segmentation database: http://www.eecs.berkeley.edu/Research/Projects/CS/vision/grouping/segbench/ http://www.eecs.berkeley.edu/Research/Projects/CS/vision/grouping/segbench/ image human segmentation gradient magnitude

25 BackgroundTexture Shadows Low-level edges vs. perceived contours Kristen Grauman, UT-Austin


Download ppt "Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded."

Similar presentations


Ads by Google