ee4328, section 005 introduction to digital image processing linear image restoration zhou wang...
TRANSCRIPT
EE4328, Section 005 Introduction to Digital Image
Processing
Linear Image Restoration
Zhou Wang
Dept. of Electrical EngineeringThe Univ. of Texas at Arlington
Fall 2006
Blur
out-of-focus blur motion blur
Question 1: How do you know they are blurred?I’ve not shown you the originals!
Question 2: How do I deblur an image?
From Prof. Xin
Li
Linear Blur Model
h(m,n)
blurring filter
x(m,n) y(m,n)
Gaussian blur motion blur
•Spatial domain
From Prof. Xin
Li
Linear Blur Model
H(u,v)
blurring filter
X(u,v) Y(u,v)
Gaussian blur motion blur
•Frequency (2D-DFT) domain
From Prof. Xin
Li
Blurring Effect
Gaussian blur
motion blur
From [Gonzalez & Woods]
Image Restoration: Deblurring/Deconvolution
h(m,n)
blurring filter
g(m,n)x(m,n) y(m,n)
deblurring/deconvolution
filter
x(m,n)^
• Non-blind deblurring/deconvolutionGiven: observation y(m,n) and blurring function h(m,n)
Design: g(m,n), such that the distortion between x(m,n) and is minimized
• Blind deblurring/deconvolutionGiven: observation y(m,n)
Design: g(m,n), such that the distortion between x(m,n) and is minimized
x(m,n)^
x(m,n)^
Deblurring: Inverse Filtering
h(m,n)
blurring filter
g(m,n)x(m,n) y(m,n)
inverse filter
x(m,n)^
X(u,v) H(u,v) = Y(u,v)
X(u,v) =Y(u,v
)H(u,v)
1
H(u,v)= Y(u,v)
G(u,v) =1
H(u,v)
Exact recovery!
Deblurring: Pseudo-Inverse Filtering
h(m,n)
blurring filter
g(m,n)x(m,n) y(m,n)
deblur filter
x(m,n)^
G(u,v) =1
H(u,v)
|),(|0
|),(|),(
1),(
vuH
vuHvuHvuG
Inverse filter: What if at some (u,v), H(u,v) is 0 (or very close to 0) ?
Pseudo-inverse filter: small threshold
Inverse and Pseudo-Inverse Filtering
),(
1),(
vuHvuG
|),(|0
|),(|),(
1),(
vuH
vuHvuHvuG
= 0.1Adapted from Prof. Xin Li
blurred image
More Realistic Distortion Model
h(m,n) +x(m,n) y(m,n) g(m,n)
deblur filter
x(m,n)^
blurring filter
w(m,n)
),(
),(),(
),(
),(),(),(),(),(),(ˆ
vuH
vuWvuX
vuH
vuWvuHvuXvuGvuYvuX
• What happens when an inverse filter is applied?
close to zero at high frequencies
additive white Gaussian noise
Y(u,v) = X(u,v) H(u,v) + W(u,v)
Radially Limited Inverse Filtering
Radially limited inverse filter:
Rvu
RvuvuHvuG
22
22
0
),(
1
),(
R
• Motivation– Energy of image signals is
concentrated at low frequencies
– Energy of noise uniformly is distributed over all frequencies
– Inverse filtering of image signal dominated regions only
Radially Limited Inverse Filtering
Radially limitedinversefiltering:
Image size:
480x480
Original Blurred Inverse filtered
R = 40 R = 70 R = 85
From [Gonzalez & Woods]
Wiener (Least Square) Filtering
KvuH
vuHvuG
2|),(|
),(*),(
2
2
X
WK
• Optimal in the least MSE sense, i.e.G(u, v) is the best possible linear filter that minimizes
noise power
signal power
Wiener filter:
2),(),(ˆ vuXvuXEenergyerror
•Have to estimate signal and noise power
Weiner Filtering
Inverse filtering
Radially limited inverse
filteringR = 70
Weiner filtering
Blurred image
From [Gonzalez & Woods]
Inverse vs. Weiner Filtering
From [Gonzalez & Woods]
distorted inverse filtering
Wiener filtering
motion
blur +noise
less noise
less noise
Weiner Image Denoising
h(m,n) +x(m,n) y(m,n)
w(m,n)
• What if no blur, but only noise, i.e. h(m,n) is an impulse or H(u, v) = 1 ?
KvuH
vuHvuG
2|),(|
),(*),( 2
2
X
WK
Wiener filter:
22
2
22 /1
1
1
1),(
WX
X
XWKvuG
Wiener denoising
filter:
where
for H(u,v) = 1
Typically applied locally in space
Weiner Image Denoising
adding noisenoise var = 400
local Wiener denoising
Summary of Linear Image Restoration Filters
KvuH
vuHvuG
2|),(|
),(*),( 2
2
X
WK
Wiener filter:
22
2
),(WX
XvuG
Wiener
denoising filter:
where
G(u,v) =1
H(u,v)
|),(|0
|),(|),(
1),(
vuH
vuHvuHvuG
Inverse filter:
Pseudo-inverse filter:
Radially limited inverse filter:
Rvu
RvuvuHvuG
22
22
0
),(
1
),(
Examples
jj
jj
jj
vuH
1.001.03.03.0
0000
1.001.03.03.0
3.03.003.03.01
),(
6252 X
• A blur filter h(m,n) has a 2D-DFT given by
• Find the deblur filter G(u,v) using
1) The inverse filtering approach
2) The pseudo-inverse filtering approach, with = 0.05
3) The pseudo-inverse filtering approach, with = 0.2
4) Wiener filtering approach, with and
1252 W
1) Inverse filter
2) Pseudo-inverse filter, with = 0.05
Examples
jInfj
InfInfInfInf
Infjj
jInfj
vuHvuG
101067.167.1
101067.167.1
67.167.167.167.11
),(
1),(
jj
jj
jj
vuH
vuHvuHvuG
1001067.167.1
0000
1001067.167.1
67.167.1067.167.11
|),(|0
|),(|),(
1),(
Examples
00067.167.1
0000
00067.167.1
67.167.1067.167.11
|),(|0
|),(|),(
1),(
j
j
jj
vuH
vuHvuHvuG
6252 X 1252 W
3) Pseudo-inverse filter, with = 0.2
4) Wiener filter, with and
jj
jj
jj
KvuH
vuHvuG
48.0048.079.079.0
0000
48.0048.079.079.0
79.079.0079.079.083.0
|),(|
),(*),(
2
2.0625
1252
2
X
WK
• Adaptive Processing– Spatial adaptive– Frequency adaptive
• Nonlinear Processing– Thresholding, coring …– Iterative restoration
• Advanced Transformation / Modeling– Advanced image transforms, e.g., wavelet …– Statistical image modeling
• Blind Deblurring / Deconvolution
Advanced Image Restoration