hands on - scientific computing and imaging instituteshireen/pdfs/tutorials/elhabian_ct09.pdf ·...

43
Hands on … Reconstruction From Projection Shireen Y. Elhabian Amal A. Farag Aly A. Farag University of Louisville January 2009

Upload: others

Post on 10-May-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Hands on …Reconstruction From Projection

Shireen Y. ElhabianAmal A. FaragAly A. Farag

University of LouisvilleJanuary 2009

Page 2: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

An Analogy

Page 3: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Agenda

• Reconstruction from projections (general)

– projection geometry and radon transform

• Reconstruction methodology

– Backprojection, (Fourier slice theorem), FilteredBackprojection.

• Reconstruction examples

Page 4: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Introduction

• Only photography (reflection) and planar x-ray (attenuation) measure spatial propertiesof the imaged object directly.

• Otherwise, measured parameters are somehow related to spatial properties of imagedobject.

– CT, SPECT and PET (integral projections ofparallel rays), MRI (amplitude, frequency andphase) etc...

• Objective: We want to construct the object(image) which creates the measured parameters.

Page 5: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Problem Statement

• Given a set of 1-Dprojections and the angles atwhich these projectionswere taken.

• How do we reconstruct the2-D image from which theseprojections were taken?

• Lets look at the nature ofthose projections … L

Page 6: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Parallel Beams Projections

),( yxgy

x

)(tPq

θt

Page 7: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Ray Geometry

• Let x and y be rectilinearcoordinates in a givenplane.

• A line in this plane at adistance t1 from the originis the given by:

where θ is the angle between a unitnormal to the line and the x-axis.

x

yt

Pq (t)

θ

t1

A

B

dsdx

dy

qq sincos1 yxt += g(x,y)

Page 8: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

What is Projection ?!!• Let g(x,y) be a 2-D function.

• A line running throughg(x,y) is called a ray.

• The integral of g(x,y) alonga ray is called ray integral.

• The set of ray integralsforms a projection definedas :

x

yt

Pq (t)

θ

t1

A

B

dsdx

dy

g(x,y)

( ) ( )ò ò¥

¥-

¥

¥--+= dxdytyxyxgtP 11 sincos,)( qqdq

Impulse sheath placed at the points constituting the ray

Page 9: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Radon Transform

• Coordinate transformation:

• Radon transform x

yt

Pq (t)

θ

t1

A

B

dsdx

dy

g(x,y)

t

s

úû

ùêë

éúû

ùêë

é-

=úû

ùêë

éyx

st

cossin

sincos

qq

qq

( ) ( )

ò

ò ò¥

¥-

¥

¥-

¥

¥-

=

-+=

.),(

sincos,)(

dsstg

dxdytyxyxgtP qqdq

Page 10: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Radon Space• Projections with different

angles are stored in sinogram(raw data).

• Each vertical line in asinogram is a projectionwith a different angle

Θ : Angles of projections

t : p

roje

ctio

n ra

ys

Page 11: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

The Myth Jf

),( yxgy

x

)(tPq

θt

),( yxgy

x

)(tPq

θt

50 100 150 200 250 300 350

50

100

150

200

250

300

350

400

Theta = 180

[ )pq ,0Î

Since Radon transform is a group of projections which are basically line integrals, the difference between the projection at θo and θo +πwill be the direction of the integration.

Page 12: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

The Fourier Slice Theorem• This theorem relates the 1D Fourier Transform of a projection and the 2D

Fourier transform of the object. It relates the Fourier transform of the objectalong a radial line.

1D Fourier Transform

)( fSq fu

v

),( vuG

uf =qcosvf =qsin

),( yxgy

x

)(tPq

θt

Frequency DomainSpace Domain

( ){ } ( )ò¥

¥-

-=Á= dtetPtPfS ftjD

pqqq

21)(

( ) ( )q,, fGvuG ºwhere

Page 13: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

The Fourier Slice Theorem• This theorem relates the 1D Fourier Transform of a projection and the 2D

Fourier transform of the object. It relates the Fourier transform of the objectalong a radial line.

1D Fourier Transform

),( vuG

),( yxgy

x

)(tPq

θt

Frequency DomainSpace Domain

v

u

Page 14: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

The Fourier Slice TheoremFrequency Domain

S(f,θ)Space Domain

Page 15: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

A Problem

• All projections contribute tolow freqencies

Solution:

use filtered projection

Page 16: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Filtered Back-projection

Projections (raw data from the scanner)

Fourier Transform of all Projections

Filter Projections

Back-projection to uv-space

Inverse Fourier

Transform

( )!

( ) q

qq

pp

q

q

ddfefSfyxg

yxttQ

ftj

sincos

0

)(

2

ResponseFilter

,

+=

¥

¥-ò ò ú

ú

û

ù

êê

ë

é=

"""" #"""" $%

Estimate of g(x,y)

Page 17: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Tasks :-• Scanner simulation

– Phantom Generation

– Projections computation

• Reconstruction from projections

• Analysis:

– Experiment 1: the effect of filter type.

– Experiment 2: the effect of number of projections.

– Experiment 3: the effect of number of rays

Let’s do it …

Page 18: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Phantom Generation

• Given the spatial support of ourphantom.

• We assume that our phantom isconstructed of a set of ellipses, eachhas the following parameters:

– Intensity, ellipse center (x0,y0), ellipsemajor and minor axes length (a,b), andthe orientation (φ i.e. rotation angle)

X - direction

Y -

dire

ctio

nEllipse Center (x0,y0)

φ

Intensity

Page 19: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Phantom Generation

X - direction

Y -

dire

ctio

n

Page 20: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Phantom Generation

Page 21: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Phantom Generation

Page 22: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Projections Generation

• To be able to study different reconstruction techniques, we first neededto write a program that take projections of a known image.

• Basically, we take the image (which is just a matrix of intensities),rotate it, and sum up the intensities.

• In MATLAB this is easily accomplished with the 'imrotate' and 'sum'commands.

• But first, we zero pad the image so we don't lose anything when werotate.

Page 23: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Projections Generation from 0 to π

Page 24: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Scanner Simulation – Projections Generation from 0 to 2π

Page 25: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction From Projections• Given the projections, we first filter them as shown

below.

Page 26: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction From Projections• Given the angles where the projections were taken, and the filtered

projections, the following will reconstruct an estimate of the original image.

θ

fPoint on the current radial line which corresponds to the 1D fourier transform of the current projection

( ) ( ) q

qq

pp

q

q

ddfefSfyxg

yxttQ

ftj

sincos

0

)(

2,

+=

¥

¥-ò ò ú

û

ùêë

é=

!!! "!!! #$

Page 27: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Experiment One

Studying the effect of using different filter types compared to the unfiltered

case.

Page 28: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using unfiltered projections

Page 29: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using Ramp filter

Page 30: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using LPF filter

Page 31: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using Butterworth filter

Page 32: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using Sinusoidal filter

Page 33: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using Ramp filter vs unfiltered caseOriginal image

50 100 150 200 250 300

50

100

150

200

250

300

Reconstructed - unfiltered

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

Reconstructed - ramp filter

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

-4 -3 -2 -1 0 1 2 3 40

0.5

1

1.5

2

2.5

3

3.5

w

H(w)

Ramp filter frequency response

Page 34: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Original image

50 100 150 200 250 300

50

100

150

200

250

300

Reconstructed - unfiltered

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

Reconstructed - LPF filter

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

-4 -3 -2 -1 0 1 2 3 40

0.5

1

1.5

2

2.5

3

3.5

w

H(w)

Low pass filter frequency response

Reconstruction using LPF filter vs unfiltered case

Page 35: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Original image

50 100 150 200 250 300

50

100

150

200

250

300

Reconstructed - unfiltered

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

Reconstructed - butterworth filter

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

-4 -3 -2 -1 0 1 2 3 40

1

2

3

4

5

6

7

8

w

H(w)

Butterworth filter frequency response

Reconstruction using Butterworth filter vs unfiltered case

Page 36: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Original image

50 100 150 200 250 300

50

100

150

200

250

300

Reconstructed - unfiltered

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

Reconstructed - sinusoidal filter

50 100 150 200 250 300 350 400

50

100

150

200

250

300

350

400

-4 -3 -2 -1 0 1 2 3 40

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

w

H(w)

Sinusoidal filter frequency response

Reconstruction using Sinusoidal filter vs unfiltered case

Page 37: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Experiment Two

Studying the effect of reconstruction using different number of projections

Page 38: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using different number of projections

Using sinusoidal filter and number of rays equal to image number columns

Page 39: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Quantifying the reconstruction error

20 40 60 80 100 120 140 160 1800

1

2

3

4

5

6

7

Number of Projections

Mea

n Sq

uare

Err

orMean square error using different number of projections

Page 40: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Experiment Three

Studying the effect of reconstruction using different number of rays

Page 41: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Reconstruction using different number of rays

Using sinusoidal filter and fixed number of projections

Page 42: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Quantifying the reconstruction error

0 50 100 150 200 250 300 350 400 4500

20

40

60

80

100

120

140

160

180

Number of rays

Mea

n Sq

uare

Err

or

Mean square error using different number of rays

Page 43: Hands on - Scientific Computing and Imaging Instituteshireen/pdfs/tutorials/Elhabian_CT09.pdf · Fourier Transform of all Projections Filter Projections Back-projection to uv-space

Thank You