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

Post on 10-May-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Hands on …Reconstruction From Projection

Shireen Y. ElhabianAmal A. FaragAly A. Farag

University of LouisvilleJanuary 2009

An Analogy

Agenda

• Reconstruction from projections (general)

– projection geometry and radon transform

• Reconstruction methodology

– Backprojection, (Fourier slice theorem), FilteredBackprojection.

• Reconstruction examples

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.

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

Parallel Beams Projections

),( yxgy

x

)(tPq

θt

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)

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

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

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

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.

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

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

The Fourier Slice TheoremFrequency Domain

S(f,θ)Space Domain

A Problem

• All projections contribute tolow freqencies

Solution:

use filtered projection

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)

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 …

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

Scanner Simulation – Phantom Generation

X - direction

Y -

dire

ctio

n

Scanner Simulation – Phantom Generation

Scanner Simulation – Phantom Generation

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.

Scanner Simulation – Projections Generation from 0 to π

Scanner Simulation – Projections Generation from 0 to 2π

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

below.

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,

+=

¥

¥-ò ò ú

û

ùêë

é=

!!! "!!! #$

Experiment One

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

case.

Reconstruction using unfiltered projections

Reconstruction using Ramp filter

Reconstruction using LPF filter

Reconstruction using Butterworth filter

Reconstruction using Sinusoidal filter

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

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

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

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

Experiment Two

Studying the effect of reconstruction using different number of projections

Reconstruction using different number of projections

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

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

Experiment Three

Studying the effect of reconstruction using different number of rays

Reconstruction using different number of rays

Using sinusoidal filter and fixed number of projections

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

Thank You

top related