You are on page 1of 3

Convolution as Matrix Multiplication

HT

chapt05p3.sxi

0
3
2
1
0

0
0
3
2
1

1
0
0
3
2

2
1
0
0
3

3
0
0
1
2

2
3
0
0
1

1
2
3
0
0

0
1
2
3
0

0
0
1
2
3

1
3
2
1

2
4
1
1

chapt05p3.sxi

Another Example
3
2
1
0
0

1
0
0
1

Circulant matrix each row is a circular


shift of the previous row
1

chapt05p3.sxi

0
0
1
1

f x

a3
a2
a1
a0
a 1

0
1
1
0

h x

1
1
0
0

a2
a1
a0
a 1
a 2






Toeplitz matrix constant along every diagonal

a1
a0
a 1
a 2
a 3

a0
a 1
a 2
a 3
a 4

1
4
1
1
1

1
3
2
1

g x

h(x)
g x

0
0
0
1
1

f x

f x

0
0
1
1
0

0
1
1
0
0

h x

g x
1
1
0
0
0

g x

h(x)

f x

Convolution as Matrix Multiplication

a0
a3
a2
a1

a1
a0
a3
a2

a2
a1
a0
a3

a3
a2
a1
a0

2-d Convolution as Matrix Multiplication

H0
H3
H2
H1

H1
H0
H3
H2

H2
H2
H0
H3

H3
H3
H1
H0

Each block is a circulant matrix.


H is a doubly block circulant matrix.

chapt05p3.sxi




xT y

f x

x2

y x

f x

xN

Px

xT P x

f x

PT x

Computing (H H) H directly is not feasible


Solution is subject to numerical instability
Looking ahead: we will convert a bad problem to a good
problem by looking for a well behaved or smooth solution

-1

f x

x1

H f






f and g are 262144 by 1


H is 262144 by 262144

A Little Matrix Calculus

For a 512 by 512 image:




2-d Convolution as Matrix Multiplication

1. Choose an initial guess for


2. Calculate the reconstruction
H

F u ,v

H u,v

u ,v
P u ,v

G u ,v

H u ,v F u ,v




1 N

1


1
MN

R u,v
u

0 v

for x and

G u ,v


R u ,v

3. Calculate the residual

g x

x,

Then optimization problem can be solved by solving

g x

f x

Constrained Least Squares Algorithm

Minimize f(x) subject to g(x) = 0.


x,

chapt05p3.sxi

Lagrange Multiplier Method

define:

2P P x

chapt05p3.sxi

x P Px

4. Compare residual to target value, and either


a. Choose a better value for , and go to 2 above, or
b. We are done

chapt05p3.sxi

chapt05p3.sxi

Blind Deconvolution

Assume a form for the degradation function such as motion blur or


lens defocus, then estimate model parameters by examining zeros in
the frequency plane
Assume undegraded image is an autoregressive (AR) process and
that the degradation function is a moving average (MA) process,
then fit data to a ARMA model

chapt05p3.sxi

Constraints for the image:




The image data is a non-negative


The image has a limited region of support
The image contains sharp edges or point features

Constraints for the degradation function:




D. Kundur and D. Hatzinakos, Blind image deconvolution,


IEEE Signal Processing Magazine, May 1996.
Reconstruct image with imperfect knowledge of degradation
function H(u,v)
If there is no noise, then blind deconvolution in 2 or more
dimensions can be solved using polynomial factorization
In general, problem is ill-conditioned, solution may not be unique
Need to use a priori assumptions about the undegraded image, the
degradation function, or both:


Blind Deconvolution

The degradation function is circularly symmetric


The degradation function is non-negative
The degradation function has a limited region of support

10

chapt05p3.sxi

Iterative Blind Deconvolution

Iterative Blind Deconvolution


F k u ,v

u ,v G u ,v

Fk

u ,v

u ,v

u ,v

hk x , y

FFT

IFFT

F k u ,v

chapt05p3.sxi

Impose Blur
Constraints

fk x,y

Hk

hk x , y

Impose Image
Constraints

u ,v G u ,v

Fk

FFT

fk x ,y

Fk

2


u ,v

H k u ,v

IFFT

Hk

Hk u ,v

Hk

Fk u ,v

Impose Fourier
Constraints

11

chapt05p3.sxi

Impose Fourier
Constraints

H k u,v

12

You might also like