Image Convolution
Image Boundaries: “Valid” Convolution
If I is m × n and H is k × `, then J is (m − k + 1) × (n − ` + 1)
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 14 / 26
m
E he i m COMPSCI 527 Computer Vision Correlation, Convolution, - - PowerPoint PPT Presentation
Image Convolution Image Boundaries: Valid Convolution If I is m n and H is k ` , then J is ( m k + 1 ) ( n ` + 1 ) E he i m COMPSCI 527 Computer Vision Correlation, Convolution, Filtering 14 / 26 Image Convolution
Image Convolution
Image Boundaries: “Valid” Convolution
If I is m × n and H is k × `, then J is (m − k + 1) × (n − ` + 1)
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 14 / 26
m
Image Convolution
Image Boundaries: “Full” Convolution
If I is m × n and H is k × `, then J is (m+k−1) × (n+`−1) [Pad with either zeros or copies of boundary pixels]
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 15 / 26
I I
Image Convolution
Image Boundaries: “Same” Convolution
If I is m × n and H is k × `, then J is m × n
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 16 / 26
i
Filters
Filters
Local, linear image → image transformations
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 17 / 26
Filters
Smoothing for Noise Reduction
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 18 / 26
Hlj ft
if 4 jez
0otherwise
Ath
rn
r c X
N
MEAS Mlc
I c t N c
j j
J c
t I IKL Is IN
q
H j
I
c n c
Filters
2 Dimensions: The Pillbox Kernel
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 19 / 26
BOX FILTER
a
Filters
Issues with the Pillbox
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 20 / 26
f
Filters
The Gaussian Kernel
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 21 / 26
Hca
aye I
version
ER.EE
EuEEiIEEDA
mntrTIttFe zf
ezfEY
gcx
RANK 1
TRUNCATED
GAUSSIAN
Filters
Gaussian versus Pillbox
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 22 / 26
Filters
Truncation
G(u, v) = e− 1
2 u2+v2 σ2
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 23 / 26
Filters
Normalization
G(u, v) = e− 1
2 u2+v2 σ2
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 24 / 26
get
Separable Convolution
Separability
G(u, v) = e− 1
2 u2+v2 σ2
= g(u) g(v) with g(u) = e− 1
2( u σ) 2
J(r, c) =
h
X
u=−h k
X
v=−k
H(u, v) I(r − u, c − v) =
h
X
u=−h
h(u)
k
X
v=−k
`(v) I(r − u, c − v) =
h
X
u=−h
h(u) (r − u, c) where (r, c) =
h
X
v=−h
`(v)I(r, c − v)
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 25 / 26
Separable Convolution
Computational Complexity
General: J(r, c) = Ph
u=−h
Pk
v=−k H(u, v) I(r − u, c − v)
Separable: J(r, c) = Ph
u=−h h(u) (r − u, c) where
(r, c) = Ph
v=−h `(v)I(r, c − v)
Let m = 2h + 1 and n = 2k + 1 General: About 2mn operations per pixel Separable: About 2m + 2n operations per pixel Example:
When m = n (square kernel), the gain is 2m2/4m = m/2 With m = 20: About 80 operations per pixel instead of 800
COMPSCI 527 — Computer Vision Correlation, Convolution, Filtering 26 / 26
ympheduots1pixee
2mnops
a