You are on page 1of 74

Persamaan Lambert-Beer

I0 It

−𝜇𝑥
𝐼𝑡 = 𝐼 0 𝑒
 
Radiasi melewati bahan non homogin
∆s1 ∆ s2 ∆ s3 ∆ s4
I0
− 𝜇1 ∆ 𝑠 1
1
 
𝐼 1 =𝐼 0 𝑒
2
− 𝜇2 ∆ 𝑠 2
 
𝐼 2 =𝐼 1 𝑒
3 − 𝜇3 ∆ 𝑠 3
4
 
𝐼 3 =𝐼 2 𝑒
−𝜇 ∆ 𝑠4
 
𝐼 4=𝐼 3 𝑒 4

Jika ∆s1 = ∆s2 = ∆s3 = ∆s4 = ∆s


  − ( 𝜇 1 + 𝜇 2+ 𝜇 3 + 𝜇 4) ∆ 𝑠
𝐼 4=𝐼 0 𝑒

Radon Transform
Id
Given g (l ,  )   ln( ) and f ( x, y )   ( x, y )
Io
x( s )  l  cos( )  s  sin( )
y ( s )  l  sin( )  s  cos( )


g (l , )   f ( x(s), y(s))ds


Id
In CT we measure g (l ,  )   ln( )
Io
and need to find f ( x, y )   ( x, y )

using g (l ,  )   f ( x(s), y(s))ds


x( s )  l  cos( )  s  sin( )
y ( s )  l  sin( )  s  cos( )
Radon Transform

In CT we measure g (l ,  )
and need to find f ( x, y )

We use
 
g (l , )    f ( x, y)   ( x cos   y sin   l )dxdy
  
Example
y
= xray attenuation of 0

x = xray attenuation of 2.5

 = xray attenuation of 5


Our First Projection

g (  0, l )

 l
Our First Projection

g (  0, l )

 l

l




Rotate and Take Another Projection

g (  45 , l )
o


  45 o

 
Rotate and Take Another Projection

g (  90 , l )
o

l l
  90 o



This is called a sinogram
l


This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l


Sinogram
This is called a sinogram
l

Sinogram 
This is called a sinogram
l

Sinogram 
This is called a sinogram
l

Sinogram 
This is called a sinogram
l


The sinogram is what is measured by a CT machine.
The real trick is how do we reconstruct the
unknown image from the sinogram data?
Reconstruction
The Problem

In imaging we measure g(l,q) and need to determine f(x,y)


 
g (l , )    f ( x, y)   ( x cos   y sin   l )dxdy
  
q y
p

??
g(q,l)
x

l f(x,y)
0
Back Projection Method
A little trick that almost works!

Object Back Projection


Back Projection Method
A little trick that almost works!
Back Projection

Object

We do this for every angle and then add


together all the back projected images
Back Projection Method
Step #1: Generate a complete an image for each projection (e.g. for
each angle q)
b ( x, y )  g ( x cos( )  y sin( ), )
These are called back projected images

Step #2: Add all the back projected images together



f b ( x, y )   b ( x, y )d
0
Back Projection Method
Original object Reconstructed object
Reconstructed Image

Kind of worked but we need to do better than


this. Need to come up with a better
reconstruction algorithm.
Projection-Slice Theorem
This is a very important theorem in CT imaging
First take the 1D Fourier transform a projection g(l,q )


G (  , )  1D  g (l ,    g (l ,  ) e  j 2l
dl


g (l ,  )
Projection-Slice Theorem
This is a very important theorem in CT imaging
First take the 1D Fourier transform a projection g(l,q)

G (  , )  1D  g (l ,    g (l ,  ) e  j 2l
dl


Next we substitute the Radon transform for g(l,q)


 
g (l , )    f ( x, y)   ( x cos   y sin   l )dxdy
  
  
G (  , )  
   
f ( x, y )   ( x cos   y sin   l )e  j 2l dxdydl
Projection-Slice Theorem
This is a very important theorem in CT imaging
First take the 1D Fourier transform a projection g(l,q)

G (  , )  1D  g (l ,    g (l ,  ) e  j 2l
dl

Next we substitute the Radon transform for g(l,q)
 
g (l ,  )    f ( x, y)   ( x cos   y sin   l )dxdy
  
  
G (  , )  
   
f ( x, y )   ( x cos   y sin   l )e  j 2l dxdydl

Next we do a little rearranging


 
 
G (  ,  )    f ( x, y )   ( x cos   y sin   l )e  j 2l
dl dxdy
     
Projection-Slice Theorem
This is a very important theorem in CT imaging
Next we do a little rearranging
 
 
G (  ,  )    f ( x, y )   ( x cos   y sin   l )e  j 2l
dl dxdy
     

Applying the properties of the delta function


 
G (  , )    
f ( x, y ) e  j 2  x cos  y sin   dxdy
  
 
G (  , )    
f ( x, y ) e  j 2  x cos  y sin   dxdy
  

What does this look like?


Projection-Slice Theorem
This is a very important theorem in CT imaging
 
G(  , )    
f ( x, y ) e  j 2  x cos  y sin   dxdy
  
 
G(  , )    
f ( x, y ) e  j 2  x cos  y sin   dxdy
  

What does this look like?

 

This looks a lot like F (u, v)   f ( x, y )e  j 2  xu  yv  dxdy


  

with u   cos( ), v   sin( )


Projection-Slice Theorem
This is a very important theorem in CT imaging
 
G (  , )   f ( x, y )e  j 2  x cos  y sin  dxdy
  

G (  , )  F (  cos( ),  sin( ))

So what does this mean?


Projection-Slice Theorem
This is a very important theorem in CT imaging
 
G (  , )   f ( x, y )e  j 2  x cos  y sin  dxdy
  

G (  , )  F (  cos( ),  sin( ))

Question: So what does this mean?

Answer: If I take the 1D FT of a projection at an angle q the


result is the same as a slice of the 2D FT of the original
object f(x,y)
Projection-Slice Theorem
This is a very important theorem in CT imaging
 
 j 2  x cos  y sin 
G(  , )    f ( x, y )e
  
dxdy

G (  , )  F (  cos( ),  sin( ))

So what does this mean?

If I take the 1D FT of a projection at an angle q the result is the same as a


slice of the 2D FT of the original object f(x,y)
Projection-Slice Theorem
If I take the 1D FT of a projection at an angle q the result is the same as a
slice of the 2D FT of the original object f(x,y)
u   cos( ), v   sin( )

2D FT

qo

f(x,y) F(u,v)
qo
g (l , o )


G (  ,  o )  1D  g (l ,  o )   g (l ,  o ) e  j 2l
dl

u   cos( ), v   sin( )
v
  u 2  v 2 ,   tan 1  
u
The Fourier Reconstruction Method
2D IFT

f(x,y) F(u,v)
g (l ,  o ) qo
u   cos( ), v   sin( )


G (  , o )  1D  g (l , o )   g (l ,  o ) e  j 2l
dl


Take projections at all angles q.


Take 1D FT of each projection to build F(u,v) one slice at a time.
Take the 2D inverse FT to reconstruct the original object based on F(u,v)

f ( x, y )   1
2D  G (  , )
Image Reconstruction Using Filtered
Backprojection

g ( , l )

Filter
t


Backprojection
Filtered Back Projection
The Fourier method is not widely used in CT because of the
computational issues with creating the 2D FT from projections.
However, the method does lead to a popular technique called
filtered back projection.
 
j 2  xu  yv 
f ( x, y )   
  
F (u , v ) e dudv

In polar coordinates the inverse Fourier transform can be written as


2 
j 2  x cos  y sin 
f ( x, y )  
0 
 F (  cos  ,  sin  ) e dd

with u   cos( ), v   sin( )


Filtered Back Projection
The Fourier method is not widely used in CT because of the
computational issues with creating the 2D FT from projections.
However, the method does lead to a popular technique called
filtered back projection.
In polar coordinates the inverse Fourier transform can be written as
2 
j 2  x cos  y sin 
f ( x, y )  
0 
 F (  cos  ,  sin  ) e dd

with u   cos( ), v   sin( )

From the projection theorem G (  ,  )  F (  cos( ),  sin( ))


2 
j 2  x cos  y sin 
We can write this as f ( x, y )   
0 
G (  ,  ) e dd
Filtered Back Projection
The Fourier method is not widely used in CT because of the computational
issues with creating the 2D FT from projections. However, the method does
lead to a popular technique called filtered back projection.

2 
j 2  x cos  y sin  
We can write this as f ( x, y )  
0 
 G (  ,  ) e dd

Since g (l , )  g (l ,   ) you can show


 
f ( x, y )    G (  , )e j 2  x cos  y sin   dd
0 

which can be rewritten as




f ( x, y )     G (  ,  )e j 2 l
 d  d
0    l  x cos( )  y sin( )
Filtered Back Projection
verses Back Projection
A. Back Projection
b ( x, y )  g ( x cos( )  y sin( ), )

f b ( x, y )   b ( x, y )d
0

B. Filtered Back Projection



G (  , )  1D  g (l ,    g (l ,  ) e  j 2l
dl



 
f ( x, y )     G (  ,  )e j 2 l
 d  d
0   l  x cos( )  y sin( )
Filtered Back Projection Method
Filtered Back Projection

This always works!

Object

Digital Filter
1) take 1D FFT of projection
2) multiply by ramp filter
3) take 1D inverse FFT
4) make a back projection
Filtered Back Projection Method
Always works! Filtered Back Projection

Object

Digital Filter
1) take 1D FFT of projection
2) multiply by ramp filter
3) take 1D inverse FFT
4) make a back projection
Filtered Back Projection Method
Always works! Filtered Back Projection

Object

Digital Filter
We do this for every angle 1) take 1D FFT of projection
and then add together all 2) multiply by ramp filter
the filtered back projected 3) take 1D inverse FFT
images 4) make a back projection
Filtered Back Projection
verses Back Projection
A. Back Projection
Matlab Demo
b ( x, y )  g ( x cos( )  y sin( ), )
Your Assignment 


(b)
f b (Write
x, y ) a matlab
b ( x, yfunction
) d that reconstructs an image
using the filtered
0
back projection method

B. Filtered Back Projection



G (  , )  1D  g (l ,    g (l ,  ) e  j 2l
dl



 
f ( x, y )     G (  ,  )e j 2 l
 d  d
0   l  x cos( )  y sin( )
Convolution Back Projection
From the filtered back projection algorithm we get

 
f ( x, y )     G (  ,  )e j 2 l
 d  d
0   l  x cos( )  y sin( )

It may be easier computationally to compute the inner 1D IFT


using a convolution

 
recall 1D F1 ( )  F2 ( )  f1 ( x)  f 2 ( x)
1



f ( x, y )   g (l ,  )  1D1 (  )  l  x cos( )  y sin( )
d
0
Convolution Back Projection


f ( x, y )   g (l ,  )  1D1 (  )  l  x cos( )  y sin( )
d
0

c(l )  1D1 (  )
Let 
f ( x, y )    g (l , )  c(l ) l  x cos( )  y sin( ) d
0
Convolution Back Projection
c(l )  1D1 (  )

f ( x, y )    g (l ,  )  c(l ) l  x cos( )  y sin( ) d
0

The problem is c(l )  1D (  )    e j 2l d does not exist


1


Convolution Back Projection
c(l )  1D1 (  )

f ( x, y )    g (l ,  )  c(l ) l  x cos( )  y sin( ) d
0

The problem is c(l )  1D (  )    e j 2l d does not exist


1



The solution c~ (l )  1D (  W (  ))    W (  )e j 2l d


1



where W (  ) is called a weighting function



f ( x, y )    g (l ,  )  c~ (l ) d
0


c~ (l )  1D1 (   W (  ))    W (  )e j 2l d

Convolution Back Projection

f ( x, y )    g (l ,  )  c~ (l ) d
0


c~ (l )  1D1 (   W (  ))    W (  )e j 2l d


Common window functions


 Hamming window
 Lanczos window (sinc function)
 Simple rectangular window
 Ram-Lak window
 Kaiser window
 Shepp-Logan window
• Incorporated
linear array of
30 detectors
• More data
acquired to
improve
image quality
(600 rays x
540 views)
• Shortest scan
time was 18
seconds/slice
• Narrow fan
beam allows
more
scattered
radiation to
be detected
• Number of
detectors increased
substantially (to
more than 800
detectors)
• Angle of fan beam
increased to cover
entire patient
– Eliminated
need for
translational
motion
• Mechanically
joined x-ray tube
and detector array
rotate together
• Newer systems
have scan times of
½ second
3G
2G
Ring artifacts
• The rotate/rotate geometry of 3rd generation
scanners leads to a situation in which each
detector is responsible for the data
corresponding to a ring in the image
• Drift in the signal levels of the detectors over
time affects the t values that are
backprojected to produce the CT image,
causing ring artifacts
Ring artifacts
• Designed to overcome
the problem of ring
artifacts
• Stationary ring of
about 4,800 detectors
• Designed to overcome
the problem of ring
artifacts
• Stationary ring of
about 4,800 detectors
• Developed
specifically for
cardiac tomographic
imaging
• No conventional x-
ray tube; large arc of
tungsten encircles
patient and lies
directly opposite to
the detector ring
• Electron beam
steered around the
patient to strike the
annular tungsten
target
• Capable of 50-msec
scan times; can
produce fast-frame-
rate CT movies of
the beating heart
• Helical CT scanners acquire data while the table is moving
• By avoiding the time required to translate the patient table, the total scan time
required to image the patient can be much shorter
• Allows the use of less contrast agent and increases patient throughput
• In some instances the entire scan be done within a single breath-hold of the
patient
Computer Assignment
1. Write a MATLAB program that reconstructs an image from its projections using
the back projection method. Your program should allow the user to input a
phantom object and a set (e.g. vector) of projection angle. Your program should
then: (a) compute the sinogram of the object (you can use Matlab’s radon.m
command to do this), (b) compute the reconstructed image from the sinogram
and vector of projection angles, (c) try your program out for several different
objects and several different ranges of projection angles

2. Do the same as #1 using the filter back projection method.

3. (grad students only) Do the same with the convolution back projection method

You might also like