Download - Blur

Transcript
Page 1: Blur

EE4328, Section 005 Introduction to Digital Image

Processing

Linear Image Restoration

Zhou Wang

Dept. of Electrical EngineeringThe Univ. of Texas at Arlington

Fall 2006

Page 2: Blur

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

Page 3: Blur

Linear Blur Model

h(m,n)

blurring filter

x(m,n) y(m,n)

Gaussian blur motion blur

•Spatial domain

From Prof. Xin

Li

Page 4: Blur

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

Page 5: Blur

Blurring Effect

Gaussian blur

motion blur

From [Gonzalez & Woods]

Page 6: Blur

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)^

Page 7: Blur

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!

Page 8: Blur

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

Page 9: Blur

Inverse and Pseudo-Inverse Filtering

),(

1),(

vuHvuG

|),(|0

|),(|),(

1),(

vuH

vuHvuHvuG

= 0.1Adapted from Prof. Xin Li

blurred image

Page 10: Blur

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)

Page 11: Blur

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

Page 12: Blur

Radially Limited Inverse Filtering

Radially limitedinversefiltering:

Image size:

480x480

Original Blurred Inverse filtered

R = 40 R = 70 R = 85

From [Gonzalez & Woods]

Page 13: Blur

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

Page 14: Blur

Weiner Filtering

Inverse filtering

Radially limited inverse

filteringR = 70

Weiner filtering

Blurred image

From [Gonzalez & Woods]

Page 15: Blur

Inverse vs. Weiner Filtering

From [Gonzalez & Woods]

distorted inverse filtering

Wiener filtering

motion

blur +noise

less noise

less noise

Page 16: Blur

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

Page 17: Blur

Weiner Image Denoising

adding noisenoise var = 400

local Wiener denoising

Page 18: Blur

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

),(

Page 19: Blur

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

Page 20: Blur

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),(

Page 21: Blur

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

Page 22: Blur

• 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