Filtered Backprojection Algorithm in MATLAB.ppt

15
The Filtered Backprojection Algorithm in MATLAB Greg Gallardo 51:185

Transcript of Filtered Backprojection Algorithm in MATLAB.ppt

The Filtered Backprojection Algorithm in MATLAB

Greg Gallardo

51:185

Filtered Backprojection Algorithm

1. Measure the family of projections

K = # of projections (angles), N=# of rays (detector size)

2. Perform FFT[ ]

3. Multiply FFT[ ] by FFT[ ].

4. Perform IFFT[ product from step 3]

5. Perform backprojection as:

NnKinPi

,...,2,1;,...,2,1,

KinPi

,...,2,1,

nPi

nh

K

iii yxQ

Kyxf

i1

sincos,

1) Measure the family of projections

[R,Xp] = RADON(...) returns two variables Matrix R – columns are the

Radon transform for the angles . Rows are detector position

Vector Xp - containing the radial coordinates corresponding to each row of R.

1) Measure the family of projections

Function parameters size(): gets N and K nextpow2(): get width for FFT

2) Perform FFT[ ]

MATLAB stands for MATrix LABoratory Matrix operations are faster than visiting

each element in a loop.

KinPi

,...,2,1,

3) Multiply FFT[ ] by FFT[ ]

Backprojection filters Shepp-Logan: Ram-Lak

multiplied by sinc function (see iradon help)

Cosine: Ram-Lak multiplied by cosine

Hamming: Ram-Lak multiplied by Hamming window

Hanning, Blackman, etc.

nh nPi

3) Multiply FFT[ ] by FFT[ ]

Ram-Lak, Shepp-Logan and Cosine filters in frequency domain

nh nPi

3) Multiply FFT[ ] by FFT[ ]

FIR Filters. Commonly used Windows

nh nPi

Figure from “Discrete-Time Signal Processing”, Oppenheim & Schafer, Prentice-Hall

3) Multiply FFT[ ] by FFT[ ]

Rectangular

Bartlett (triangular)

Hanning (von Hann)

Hamming

Blackman

nh nPi

otherwise

Mnnw

,0

,0,1][

otherwise

MnMMn

MnMn

nw

,0

2/,/22

2/0,/2

][

otherwise

MnMnnw

,0

,0),/2cos(5.05.0][

otherwise

MnMnnw

,0

,0),/2cos(46.054.0][

otherwise

MnMnMnnw

,0

,0),/4cos(08.0)/2cos(5.042.0][

from “Discrete-Time Signal Processing”, Oppenheim & Schafer, Prentice-Hall

3) Multiply FFT[ ] by FFT[ ] nh nPi

3) Multiply FFT[ ] by FFT[ ] nh nPi

3) Multiply FFT[ ] by FFT[ ]

Filter step. Element by element multiplication

nh nPi

4) IFFT[product from step 3]

5) Perform Backprojection as:

K

iii yxQ

Kyxf

i1

sincos,

Results

Results