Edge Detection - PowerPoint PPT Presentation

About This Presentation
Title:

Edge Detection

Description:

Edge Detection From Sandlot Science Today s readings Cipolla and Gee supplemental: Forsyth, chapter 9 Watt, 10.3-10.4 – PowerPoint PPT presentation

Number of Views:187
Avg rating:3.0/5.0
Slides: 31
Provided by: SteveS229
Category:

less

Transcript and Presenter's Notes

Title: Edge Detection


1
Edge Detection
From Sandlot Science
  • Todays readings
  • Cipolla and Gee
  • supplemental Forsyth, chapter 9
  • Watt, 10.3-10.4

2
Edge detection
  • Convert a 2D image into a set of curves
  • Extracts salient features of the scene
  • More compact than pixels

3
Origin of Edges
surface normal discontinuity
depth discontinuity
surface color discontinuity
illumination discontinuity
  • Edges are caused by a variety of factors

4
Edge detection
  • How can you tell that a pixel is on an edge?

snoop demo
5
Image gradient
  • The gradient of an image
  • The gradient points in the direction of most
    rapid change in intensity

6
The discrete gradient
  • How can we differentiate a digital image Fx,y?
  • Option 1 reconstruct a continuous image, then
    take gradient
  • Option 2 take discrete derivative (finite
    difference)

How would you implement this as a
cross-correlation?



filter demo
7
The Sobel operator
  • Better approximations of the derivatives exist
  • The Sobel operators below are very commonly used

-1 0 1
-2 0 2
-1 0 1
1 2 1
0 0 0
-1 -2 -1
  • The standard defn. of the Sobel operator omits
    the 1/8 term
  • doesnt make a difference for edge detection
  • the 1/8 term is needed to get the right gradient
    value, however

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?
9
Solution smooth first
Where is the edge?
10
Derivative theorem of convolution
  • This saves us one operation

11
Laplacian of Gaussian
  • Consider

Laplacian of Gaussian operator
Where is the edge?
Zero-crossings of bottom graph
12
2D edge detection filters
Laplacian of Gaussian
Gaussian
derivative of Gaussian
  • is the Laplacian operator

filter demo
13
The Canny edge detector
  • original image (Lena)

14
The Canny edge detector
norm of the gradient
15
The Canny edge detector
thresholding
16
Non-maximum suppression
  • Check if pixel is local maximum along gradient
    direction
  • requires checking interpolated pixels p and r

17
The Canny edge detector
thinning (non-maximum suppression)
18
Effect of ? (Gaussian kernel spread/size)
Canny with
original
Canny with
  • The choice of depends on desired behavior
  • large detects large scale edges
  • small detects fine features

19
Edge detection by subtraction
original
20
Edge detection by subtraction
smoothed (5x5 Gaussian)
21
Edge detection by subtraction
Why does this work?
smoothed original (scaled by 4, offset 128)
filter demo
22
Gaussian - image filter
Gaussian
delta function
Laplacian of Gaussian
23
An edge is not a line...
How can we detect lines ?
24
Finding lines in an image
  • Option 1
  • Search for the line at every possible
    position/orientation
  • What is the cost of this operation?
  • Option 2
  • Use a voting scheme Hough transform

25
Finding lines in an image
y
b
b0
m0
x
m
image space
Hough space
  • Connection between image (x,y) and Hough (m,b)
    spaces
  • A line in the image corresponds to a point in
    Hough space
  • To go from image space to Hough space
  • given a set of points (x,y), find all (m,b) such
    that y mx b

26
Finding lines in an image
y
b
y0
x0
x
m
image space
Hough space
  • Connection between image (x,y) and Hough (m,b)
    spaces
  • A line in the image corresponds to a point in
    Hough space
  • To go from image space to Hough space
  • given a set of points (x,y), find all (m,b) such
    that y mx b
  • What does a point (x0, y0) in the image space map
    to?

27
Hough transform algorithm
  • Typically use a different parameterization
  • d is the perpendicular distance from the line to
    the origin
  • ? is the angle this perpendicular makes with the
    x axis
  • Why?

28
Hough transform algorithm
  • Typically use a different parameterization
  • d is the perpendicular distance from the line to
    the origin
  • ? is the angle this perpendicular makes with the
    x axis
  • Why?
  • Basic Hough transform algorithm
  • Initialize Hd, ?0
  • for each edge point Ix,y in the image
  • for ? 0 to 180
  • Hd, ? 1
  • Find the value(s) of (d, ?) where Hd, ? is
    maximum
  • The detected line in the image is given by
  • Whats the running time (measured in votes)?

Hough line demo
29
Extensions
  • Extension 1 Use the image gradient
  • same
  • for each edge point Ix,y in the image
  • compute unique (d, ?) based on image gradient
    at (x,y)
  • Hd, ? 1
  • same
  • same
  • Whats the running time measured in votes?
  • Extension 2
  • give more votes for stronger edges
  • Extension 3
  • change the sampling of (d, ?) to give more/less
    resolution
  • Extension 4
  • The same procedure can be used with circles,
    squares, or any other shape

30
Extensions
  • Extension 1 Use the image gradient
  • same
  • for each edge point Ix,y in the image
  • compute unique (d, ?) based on image gradient
    at (x,y)
  • Hd, ? 1
  • same
  • same
  • Whats the running time measured in votes?
  • Extension 2
  • give more votes for stronger edges
  • Extension 3
  • change the sampling of (d, ?) to give more/less
    resolution
  • Extension 4
  • The same procedure can be used with circles,
    squares, or any other shape

Hough circle demo
Write a Comment
User Comments (0)
About PowerShow.com