Edges & the Hough Transform
Instructor - Simon Lucey
16-423 - Designing Computer Vision Apps
Edges & the Hough Transform Instructor - Simon Lucey 16-423 - - - PowerPoint PPT Presentation
Edges & the Hough Transform Instructor - Simon Lucey 16-423 - Designing Computer Vision Apps Today Motivation. What is an Edge? Oriented Filters. Hough Transform. Advance Methods. Today Motivation. What is
Instructor - Simon Lucey
16-423 - Designing Computer Vision Apps
1968
Canny edge detector human annotator
Taken from Isola et al. “Crisp Boundary Detection Using Pointwise Mutual Information”
“John Canny”
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
D.H. Hubel & T.N. Wiesel. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 160(1):106, 1962.
Olshausen & Field 1996
x1
x1 x2
x1
x2 xN−1
x1
x2 xN−1 xN
x1
x2 xN−1 xN
M × N
0.05 0.1 0.15 0.2 0.25
2 4 6
3.19 bits
Olshausen & Field 1996
H(x) = −
n
X
n=1
p(xn) · log[p(xn)] =
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
2 4 6
1.41 bits
Olshausen & Field 1996
H(x) = −
n
X
n=1
p(xn) · log[p(xn)] =
Not Always Zero Always Zero
Olshausen & Field 1996
Not Always Zero Always Zero
Olshausen & Field 1996
∗
1, 0, −1 1, 0, −1 1, 0, −1
(Prewitt)
∗
1, 0, −1 2, 0, −2 1, 0, −1
(Sobel)
=
99.6% sparse per patch
99.6% sparse per patch
Not Always Zero Always Zero
dK
d1
Not Always Zero Always Zero
dK
d1
Adapted from: Elder “Are Edges Incomplete?” IJCV 1999.
How do we recover edges?
Adapted from: Computer vision: models, learning and inference. Simon J.D. Prince
Compute horizontal and vertical gradient images h and v
Adapted from: Computer vision: models, learning and inference. Simon J.D. Prince
=
combination of x- and y- gradient filters.
Quantize to 4 directions
Adapted from: Computer vision: models, learning and inference. Simon J.D. Prince
Non-maximal suppression
Adapted from: Computer vision: models, learning and inference. Simon J.D. Prince
coding.
X
D
Z
Hysteresis Thresholding
Simple Step Edge Filtering Response Texture Edge Filtering Response
Original Color Image
(a)
Appearance Edges Found by Linear Filtering
(b)
Taken from: “Occlusion Boundaries: Low-Level Detection to High-Level Reasoning” - A. Stein (Ph.D. Thesis)
y = m · x + c
m = ∞ (θ, ρ)
θ → angle from horizontal axis to perpendicular ρ → perpendicular distance between the origin and the line
Adapted from: Robotics, Vision and Control. Peter Corke.
x y
“Hough Transform Parameters”
ρ θ
Adapted from: Robotics, Vision and Control. Peter Corke.
x (pixels) y (pixels) y (pixels) x (pixels) ρ (pixels) ρ (pixels)
θ (radians) θ (radians)
infuriatingly badly.
edges are indistinct.
thresholds within the Hough peak detector.
Original Color Image
(a)
Appearance Edges Found by Linear Filtering
(b)
Sobel & Feldman 1968 Arbeláez et al. 2011 (gPb) ez et al. Dollár & Zitnick 2013 (SE) Our method Human labelers
Taken from Isola et al. “Crisp Boundary Detection Using Pointwise Mutual Information”
Isola et al. 2014
Pointwise Mutual Information”, ECCV 2014.