image deblurring
DESCRIPTION
Image Deblurring. Introduction Inverse filtering Suffer from noise amplification Wiener filtering Tradeoff between image recovery and noise suppression Iterative deblurring* Landweber algorithm. Introduction. Where does blur come from? Optical blur: camera is out-of-focus - PowerPoint PPT PresentationTRANSCRIPT
EE465: Introduction to Digital Image Processing
1
Image Deblurring Introduction Inverse filtering
Suffer from noise amplification Wiener filtering
Tradeoff between image recovery and noise suppression
Iterative deblurring* Landweber algorithm
EE465: Introduction to Digital Image Processing
2
Introduction
Where does blur come from? Optical blur: camera is out-of-focus Motion blur: camera or object is moving
Why do we need deblurring? Visually annoying Wrong target for compression Bad for analysis Numerous applications
EE465: Introduction to Digital Image Processing
3
Application (I): Astronomical Imaging
The Story of Hubble Space Telescope (HST) HST Cost at Launch
(1990): $1.5 billion Main mirror
imperfections due to human errors
Got repaired in 1993
EE465: Introduction to Digital Image Processing
4
Restoration of HST Images
EE465: Introduction to Digital Image Processing
5
Another Example
EE465: Introduction to Digital Image Processing
6
The Real (Optical) Solution
Before the repair After the repair
EE465: Introduction to Digital Image Processing
7
Application (II): Law Enforcement
Motion-blurred license plate image
EE465: Introduction to Digital Image Processing
8
Restoration Example
EE465: Introduction to Digital Image Processing
9
Application into Biometrics
out-of-focus iris image
EE465: Introduction to Digital Image Processing
10
h(m,n) +x(m,n) y(m,n)
),( nmw
• Linear degradation model
),( nmh blurring filter
),0(~),( 2wNnmw additive white Gaussian noise
Modeling Blurring Process
EE465: Introduction to Digital Image Processing
11
Blurring Filter Example
)2
exp(),(2
22
21
21 ww
wwH
)2
exp(),(2
22
nm
nmh
FT
Gaussian filter can be used to approximate out-of-focus blur
EE465: Introduction to Digital Image Processing
12
Blurring Filter Example (Con’t)
),( 21 wwH
FT
Motion blurring can be approximated by 1D low-pass filter along the moving direction
MATLAB code: h=FSPECIAL('motion',9,30);
),( nmh
EE465: Introduction to Digital Image Processing
13
2
2
10log10w
zBSNR
Blurring SNR
The Curse of Noise
h(m,n) +x(m,n) y(m,n)
),0(~),( 2wNnmw
z(m,n)
EE465: Introduction to Digital Image Processing
14
h(m,n): 1D horizontal motion blurring [1 1 1 1 1 1 1]/7
BSNR=40dB
Image Example
BSNR=10dBx(m,n)
EE465: Introduction to Digital Image Processing
15
Blind vs. Nonblind Deblurring
Blind deblurring (deconvolution): blurring kernel h(m,n) is unknown
Nonblind deconvolution:blurring kernel h(m,n) is known
In this course, we only cover the nonblind case (the easier case)
EE465: Introduction to Digital Image Processing
16
Image Deblurring
Introduction Inverse filtering
Suffer from noise amplification Wiener filtering
Tradeoff between image recovery and noise suppression
Iterative deblurring* Landweber algorithm
EE465: Introduction to Digital Image Processing
17
Inverse Filter
h(m,n)
blurring filter
hI(m,n)x(m,n)
y(m,n)
inverse filter
k l
I
Icombi
nmnmlkhlnkmh
nmhnmhnmh
),(),,(),(),(
),(),(),(
),(
1),(
2121 wwH
wwH I
To compensate the blurring, we requirehcombi (m,n)
x(m,n)^
EE465: Introduction to Digital Image Processing
18
Inverse Filtering (Con’t)
h(m,n) +x(m,n) y(m,n)
),( nmw
hI(m,n)
inverse filter
x(m,n)^
Spatial:
),()),(),(),((),(),(),(ˆ nmhnmwnmhnmxnmhnmynmx II
Frequency:
),(
),(),(
),(
),(),(),(),(),(),(ˆ
21
2121
21
212121212121
wwH
wwWwwX
wwH
wwWwwHwwXwwHwwYwwX I
amplified noise
EE465: Introduction to Digital Image Processing
19
Image Example
Q: Why does the amplified noise look so bad?A: zeros in H(w1,w2) correspond to poles in HI (w1,w2)
motion blurred image at BSNR of 40dB
deblurred image afterinverse filtering
EE465: Introduction to Digital Image Processing
20
Pseudo-inverse Filter
Basic idea:
To handle zeros in H(w1,w2), we treat them separatelywhen performing the inverse filtering
|),(|0
|),(|),(
1),(
21
212121
wwH
wwHwwHwwH
EE465: Introduction to Digital Image Processing
21
Image Example
motion blurred image at BSNR of 40dB
deblurred image afterPseudo-inverse filtering
(=0.1)
EE465: Introduction to Digital Image Processing
22
Image Deblurring
Introduction Inverse filtering
Suffer from noise amplification Wiener filtering
Tradeoff between image recovery and noise suppression
Iterative deblurring* Landweber algorithm
EE465: Introduction to Digital Image Processing
23
Norbert Wiener (1894-1964)
The renowned MIT professor Norbert Wiener was famed for his absent-mindedness. While crossing the MIT campus one day, he was stopped by a student with a mathematical problem. The perplexing question answered, Norbert followed with one of his own: "In which direction was I walking when you stopped me?" he asked, prompting an answer from the curious student. "Ah," Wiener declared, "then I've had my lunch”
Anecdote of Norbert Wiener
EE465: Introduction to Digital Image Processing
24
Wiener Filtering
KwwH
wwHwwHmmse
2
21
2121 |),(|
),(*),(
Also called Minimum Mean Square Error (MMSE) or Least-Square (LS) filtering
constant
Example choice of K:2
2
z
wK
noise energy
signal energy
K=0 inverse filtering
EE465: Introduction to Digital Image Processing
25
Image Example
motion blurred image at BSNR of 40dB
deblurred image afterwiener filtering
(K=0.01)
EE465: Introduction to Digital Image Processing
26
Image Example (Con’t)
K=0.1 K=0.001K=0.01
EE465: Introduction to Digital Image Processing
27
Constrained Least Square Filtering
221
221
2121 |),(||),(|
),(*),(
wwCwwH
wwHwwHmmse
Similar to Wiener but a different way of balancing the tradeoff between
Example choice of C:
010
141
010
),( nmC
Laplacian operator=0 inverse filtering
EE465: Introduction to Digital Image Processing
28
Image Example
=0.1 =0.001 =0.01
EE465: Introduction to Digital Image Processing
29
Image Deblurring
Introduction Inverse filtering
Suffer from noise amplification Wiener filtering
Tradeoff between image recovery and noise suppression
Iterative deblurring* Landweber algorithm
EE465: Introduction to Digital Image Processing
30
Method of Successive Substitution
A powerful technique for finding the roots of any function f(x)
Basic idea Rewrite f(x)=0 into an equivalent
equation x=g(x) (x is called fixed point of g(x))
Successive substitution: xi+1=g(xi) Under certain condition, the iteration will
converge to the desired solution
EE465: Introduction to Digital Image Processing
31
Numerical Example
23)( 2 xxxf
2,1 21 xxTwo roots:
)(3
2023)(
22 xg
xxxxxf
3
22
1
ii
xxsuccessive substitution:
EE465: Introduction to Digital Image Processing
32
Numerical Example (Con’t)
Note that iteration quickly converges to x=1
EE465: Introduction to Digital Image Processing
33
Landweber Iteration
Successive substitution:
00 X
)(1 nnn HXYXX
HXYXf )(
),(),(),( 212121 wwXwwHwwY Linear blurring
We want to find the root of
)()()(0)( XgHXYXXfXXXf relaxation parameter – controls convergence property
EE465: Introduction to Digital Image Processing
34
Asymptotic Analysis
HIRRXYX nn ,1
YRIRIYRX nn
i
in )()( 11
0
Assume convergence condition: 0lim 1
YRk
k
XYHYRIXX nn
11)(lim
inverse filtering
)(1 nnn HXYXX
we have
)1(,1
11
0
rr
rr
NN
n
n
EE465: Introduction to Digital Image Processing
35
Advantages of Landweber Iteration
No inverse operation (e.g., division) is involved
We can stop the iteration in the middle way to avoid noise amplification
It facilitates the incorporation of a priori knowledge about the signal (X) into solution algorithm More detailed analysis is included in EE565: Advanced Image Processing