3-d computater vision csc 83020
DESCRIPTION
3-D Computater Vision CSc 83020. Revisit filtering (Gaussian and Median) Introduction to edge detection. Linear Filters. Given an image In ( x , y ) generate a new image Out ( x , y ): - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/1.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Revisit filtering (Gaussian and Median)Revisit filtering (Gaussian and Median) Introduction to edge detectionIntroduction to edge detection
3-D Computater Vision3-D Computater VisionCSc 83020CSc 83020
![Page 2: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/2.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Linear FiltersLinear Filters
Given an image Given an image InIn((xx,,yy) generate a) generate anew image new image OutOut((xx,,yy):): For each pixel (For each pixel (xx,,yy))OutOut((xx,,yy) is a linear combination of pixels) is a linear combination of pixelsin the neighborhood of in the neighborhood of InIn((xx,,yy))
This algorithm isThis algorithm is Linear in input intensityLinear in input intensity Shift invariantShift invariant
![Page 3: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/3.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete ConvolutionDiscrete Convolution This is the discrete analogue of convolutionThis is the discrete analogue of convolution The pattern of weights is called the “kernel”The pattern of weights is called the “kernel”
of the filterof the filter Will be useful in smoothing, edge detectionWill be useful in smoothing, edge detection
![Page 4: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/4.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Computing ConvolutionsComputing Convolutions
What happens near edges of image?What happens near edges of image? Ignore (Ignore (OutOut is smaller than is smaller than InIn)) Pad with zeros (edges get dark)Pad with zeros (edges get dark) Replicate edge pixelsReplicate edge pixels Wrap aroundWrap around ReflectReflect Change filterChange filter
i j
jyixInjifyxOut ),(),(),(
![Page 5: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/5.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Example: SmoothingExample: Smoothing
Original: MandrillOriginal: Mandrill Smoothed withSmoothed withGaussian kernelGaussian kernel
![Page 6: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/6.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Gaussian FiltersGaussian Filters
One-dimensional GaussianOne-dimensional Gaussian
Two-dimensional GaussianTwo-dimensional Gaussian
2
2
21 2
1)(
x
exG
2
22
22 2
1),(
yx
eyxG
![Page 7: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/7.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Gaussian FiltersGaussian Filters
![Page 8: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/8.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Gaussian FiltersGaussian Filters
![Page 9: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/9.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Gaussian FiltersGaussian Filters Gaussians are used because:Gaussians are used because:
SmoothSmooth Decay to zero rapidlyDecay to zero rapidly Simple analytic formulaSimple analytic formula Limit of applying multiple filters is GaussianLimit of applying multiple filters is Gaussian
(Central limit theorem)(Central limit theorem) Separable:Separable:
G G22(x,y) = G(x,y) = G11(x) G(x) G11(y)(y)
![Page 10: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/10.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Size of the maskSize of the mask
![Page 11: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/11.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Edges & Edge DetectionEdges & Edge Detection
What are Edges?What are Edges? Theory of Edge Detection.Theory of Edge Detection. Edge Operators (Convolution Masks)Edge Operators (Convolution Masks) Edge Detection in the Brain?Edge Detection in the Brain? Edge Detection using Resolution PyramidsEdge Detection using Resolution Pyramids
![Page 12: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/12.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
EdgesEdges
![Page 13: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/13.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What are Edges?What are Edges?
Rapid Changes of intensity in small region
![Page 14: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/14.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What are Edges?What are Edges?
Surface-Normal discontinuity
Depth discontinuity
Surface-Reflectance Discontinuity
Illumination Discontinuity
Rapid Changes of intensity in small region
![Page 15: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/15.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Local Edge DetectionLocal Edge Detection
![Page 16: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/16.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What is an Edge?What is an Edge?
Edge easy to findEdge easy to find
![Page 17: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/17.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What is an Edge?What is an Edge?
Where is edge? Single pixel wide or multiple pixels?Where is edge? Single pixel wide or multiple pixels?
![Page 18: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/18.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What is an Edge?What is an Edge?
Noise: have to distinguish noise from actual edgeNoise: have to distinguish noise from actual edge
![Page 19: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/19.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What is an Edge?What is an Edge?
Is this one edge or two?Is this one edge or two?
![Page 20: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/20.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
What is an Edge?What is an Edge?
Texture discontinuityTexture discontinuity
![Page 21: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/21.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Local Edge DetectionLocal Edge Detection
![Page 22: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/22.jpg)
Edge TypesEdge Types
Ideal Step Edges
Ideal Ridge Edges
Ideal Roof Edges
![Page 23: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/23.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Real EdgesReal EdgesI
x
Problems: Noisy Images Discrete Images
![Page 24: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/24.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Real EdgesReal EdgesWe want an Edge Operator that produces:
Edge Magnitude (strength)Edge directionEdge normalEdge position/center
High detection rate & good localization
![Page 25: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/25.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
The 3 steps of Edge DetectionThe 3 steps of Edge Detection
Noise smoothingNoise smoothing Edge EnhancementEdge Enhancement Edge LocalizationEdge Localization
Nonmaximum suppressionNonmaximum suppression ThresholdingThresholding
![Page 26: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/26.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Theory of Edge DetectionTheory of Edge Detection
x
y B1,L(x,y)>0
B2,L(x,y)<0t
Unit Step Function:
t
dsstu
ttt
tu
)()(
0,00,2/1
0,1)(
![Page 27: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/27.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Theory of Edge DetectionTheory of Edge Detection
x
y B1,L(x,y)>0
B2,L(x,y)<0t
Unit Step Function:
t
dsstu
ttt
tu
)()(
0,00,2/1
0,1)(
Ideal Edge: 0cossin),( yxyxL
Image Intensity (Brightness):
)cossin()12(1),( yxuBBByxI
![Page 28: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/28.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Theory of Edge DetectionTheory of Edge Detection
x
y B1,L(x,y)>0
B2,L(x,y)<0t
Partial Derivatives:
)cossin()12(cos/)cossin()12(sin/
yxBByI
yxBBxI
Directional!
![Page 29: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/29.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Theory of Edge DetectionTheory of Edge Detection
x
y B1,L(x,y)>0
B2,L(x,y)<0t
222 )]cossin()12[()/()/(),( yxBByIxIyxS
Rotationally Symmetric, Non-Linear
),( yxSEdge Magnitude
)/,/tan( yIxIa Edge Orientation
Squared Gradient:
![Page 30: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/30.jpg)
Theory of Edge DetectionTheory of Edge Detection
x
y B1,L(x,y)>0
B2,L(x,y)<0t
Laplacian:
)cossin()12(// '22222 yxBByIxII
(Rotationally Symmetric & Linear)
I
x
xI /
x
xI 22 /
Zero Crossing
![Page 31: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/31.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Difference OperatorsDifference OperatorsIi,j+1 Ii+1,j+1
Ii,j Ii+1,jε
))())((2/1(/
))())((2/1(/
,1,,11,1
,,11,1,1
jijijiji
jijijiji
IIIIyI
IIIIxI
Finite Difference Approximations
![Page 32: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/32.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Squared GradientSquared Gradient
x
y
),( yxf
22
yf
xff
![Page 33: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/33.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Squared GradientSquared Gradient
1111
1111
2
1
22
21if threshold then we have an edge
[Roberts ’65]
![Page 34: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/34.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Squared GradientSquared Gradient– Sobel – Sobel
101202101
1111
1111
1
121000121
1111
1111
2
Mean filter convolved with first derivative filter
![Page 35: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/35.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
ExamplesExamples
First derivative Sobel operator
![Page 36: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/36.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Second DerivativeSecond Derivative
f
f
f
Edge occurs at the zero-crossing of the second derivative
![Page 37: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/37.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
LaplacianLaplacian
2
2
2
22
yf
xf
• Rotationally symmetric• Linear computation (convolution)
![Page 38: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/38.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete LaplacianDiscrete Laplacian
Ii,j+1 Ii+1,j+1
Ii,j Ii+1,j
)2)(/1(/
)2)(/1(/
1,,1,222
,1,,1222
jijiji
jijiji
IIIyI
IIIxI
Finite Difference Approximations
Ii+1,j-1Ii,j-1Ii-1,j-1
Ii-1,j
Ii-1,j+1
![Page 39: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/39.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete LaplacianDiscrete Laplacian
• Rotationally symmetric• Linear computation (convolution)
010141010
2
1414204141
612
More accurate
![Page 40: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/40.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete LaplacianDiscrete Laplacian
Laplacian of an image
![Page 41: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/41.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete LaplacianDiscrete Laplacian
Laplacian is sensitive to noiseFirst smooth image with Gaussian
![Page 42: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/42.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
From Forsyth & Ponce.
![Page 43: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/43.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
FromShreeNayar’snotes.
![Page 44: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/44.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Discrete Laplacian w/ Discrete Laplacian w/ SmoothingSmoothing
IGIGI 22LoG
![Page 45: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/45.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
FromShreeNayar’snotes.
![Page 46: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/46.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Difference Operators – Second Difference Operators – Second DerivativeDerivative
IGIGI 22LoG
0010002210121621
0121000100
![Page 47: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/47.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
From Forsyth & Ponce.
![Page 48: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/48.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
Edge Detection – Human VisionEdge Detection – Human Vision
LoG convolution in the brain – biological evidence!
LoGFlipped LoG
![Page 49: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/49.jpg)
Image Resolution PyramidsImage Resolution Pyramids
Can save computations.Consolidation: Average pixels at one level to find
value at higher level.Template Matching: Find match in COARSE resolution.
Then move to FINER resolution.
![Page 50: 3-D Computater Vision CSc 83020](https://reader035.vdocuments.us/reader035/viewer/2022062520/56815b9f550346895dc9a4f8/html5/thumbnails/50.jpg)
3-D Computer Vision CSc83020 / Ioannis Stamos3-D Computer Vision CSc83020 / Ioannis Stamos
From Forsyth & Ponce.