You are on page 1of 35

Outline

• Introduction to X-ray radiographic imaging


• Forward problem of CT
• Projection slice theorem
• Forward problem and backprojection in
Matlab
X-ray Computed tomography (CT):
X-ray Computed tomography (CT):
– Tomography refers to a picture (graph) of a slice (tomo)
– Produced by passing x-rays through the body at a large number of
angles, by rotating the x-ray tube around the body.
– Resulting in images of individual slabs of tissue in the patient.
(A) sagittal, (B) coronal, and (C) axial images

Advantages: Fast
acquisition,
High-quality diagnostic
images, Widespread
availability

Disadvantages: Ionizing
radiation
X-ray: high energy photons
• X-ray: a form of high-energy electromagnetic radiation.
• Wavelength: 0.01 to 10 nanometers.
– Visible light has wavelength of around 1 micron
• X-ray photon energy: 100 eV to 100 keV.
• Tissues are semi-transparent to X-ray!
– It can transmit through the body.
– Attenuation depends on tissues.
• Ionizing radiation
– Use only necessary

X-rays are produced by colliding high


energy electrons into a metal target
(anode).
Projection radiography
• Measurements of the transmissions of X-rays through the body.
• Negative shadow of the object: brighter pixels mean more
attenuation or less transmission. Pixel value represents the integrated
loss of photons due to scattering and absorption in the body.
• Projection radiography:
– General projection radiography
– Fluoroscopy: a real-time x-ray movie of the patient
– Mammography: projection radiography of the breast
Problems in Projection radiography
• No depth (z axis) resolution
– We can’t tell where along a particular line the
lesion is located
• Decrease of contrast
– The contrast in attenuation coefficient is
better than the projection image.

Projection Tomography
X-ray imaging on tissue attenuation
I0: intensity of
incident X-ray
beam. X-ray tube (I0)

I: intensity of
transmitted X-
ray beam.

µ(x): attenuation
coefficient of
tissue to X-ray.
Different tissues
have different µ. Single detector (I = I0e-μt)

t: the thickness
of the tissue.
From X-ray intensity to projection

   i ti
I  I 0e i

 

   i  x

I  I 0e  i 

I 
ln    i x
 I0  i

A projection is a line integral of


attenuation coefficients along path of x-
ray beam
Example of projection

1 1 1

1 3 1

2 1 2
CT scanners

First-generation Third-generation
Rotated coordinate system (l,s)
θ: the angle between the x-axis and the detection line D

L(l, θ): the integration (projection) line, which is along the x-ray propagation direction

Zero point of line D: projection of the coordinate origin onto the line D
s
From (x,y) to (l,s), (showing the meaning of l and s)

D
Find the l (in cm) corresponding
to the projection of point A(4 cm,
1 cm) onto the shown line?
(a) 2.3
(b) -3.96
(c) -2.3
(d) 3.96
Clicker question 1

Find the l (in cm) corresponding


to the projection of point A(4 cm,
1 cm) onto the shown line?
(a) 4.3
(b) -2.96
(c) -4.3
(d) 2.96
Definition of projection in CT

Id (l) = I0 exp [ -∫ µ(l, s) ds]

Define projection:
Geometry of projection at angle θ
θ: the angle between the x-axis and the detection line D

L(l, θ): the integration (projection) line, which is along the x-ray propagation direction

Zero point of line D: projection of the coordinate origin onto the line D
s

Radon transform R[ ]:

D
Relation between the projection at
θ and θ+π

In principle, 180-degree scanning is sufficient due to this


symmetry.
Example
What is the 2-D Radon transform of a disk with a radius of r0 in
cm, located at (0,0) cm? Assume the attenuation coefficient is 1
cm-1 inside the disk, and zero otherwise.
Object at origin and its sinogram
-40

-20

y (mm)
0

20

40

-40 -20 0 20 40
x (mm)

The data obtained


-50
at one angle is
put as one
0
column of the
l

data matrix g.
50
Different columns
represents 0 50 100 150 200 250 300 350
different angles.  (degrees)
Find the Radon transform of
a disk with a unit (in cm)
radius located at (3,4) cm at
θ = 30 degree. Assume the
attenuation coefficient is 1
cm-1 inside the disk, and zero
otherwise.
g
(a)  30 (l )  2 1  (l  4.6) 2

(b) g 30 (l )  2 1  (l  3.5)2


(c)g 30 (l )  2 1  (l  3.1)2
(d) g 30 (l )  2 1  (l  4)2
Off-center object and its sinogram
-40

-20

y (mm)
0

20

40

-40 -20 0 20 40
x (mm)

-50

0
l

50

0 50 100 150 200 250 300 350


 (degrees)
Multiple objects and the sinogram
-40

-20

y (mm)
0

20

40

-40 -20 0 20 40
x (mm)

-50 30

20
0
l

10
50
0
0 50 100 150 200 250 300 350
 (degrees)
Radon
transform
table

Χ(r) is a unit disk.


Χ(r)=1, only when r<1.
2D square

By using the following symmetry, we can get the projection at


other angles:

This can be used to implement Radon transform numerically


by dividing an object into many squares/pixels.
Derivation of Projection slice
theorem
Projection slice (Central section) theorem
The 1D Fourier transform of a projection at angle  gives us a
line in the polar 2D Fourier space at the same angle .
Estimates of the Fourier transform of the object
along radial lines
The 1D FT of the projection at one
angle θ gives the spectrum data in
one line along θ. Multiple angles will
cover the whole spectrum.

However, the sampling points are


uniformly distributed in a polar
coordinate systems. We need the
sampling points uniformly distributed
in a 2D Cartesian coordinate system
to apply the inverse Fourier transform
to obtain the reconstructed image.

The zero-frequency of the spectrum along different angles has the same amplitude.
Why?
Implement projection in Matlab
• Discretize the object and the detection line
– Object is represented by a matrix (Nx by Ny)and each element of
the matrix is a pixel/voxel of the object.
– Detection line is divided into Nl bins, each of which represents
the center of a detector element.
• Find out the projected position and assign the projection to nearby
detection points.
Implement projection in Matlab
• Ray-driven approaches : integration is calculated
along a ray step by step
• Voxel/pixel driven approaches: a projection, a
footprint, of each voxel is accumulated/ splatted,
onto the detector.
Voxel/pixel-driven approaches (nearest neighbor)
Change the line integration into a 2D integration

Ny
Nx
xy
g n ( nl )    f (nx , n y ) (round (l  x cos   y sin  ))
nx 1 n y 1 l
You have an object shown as below. It has only four pixels. The size of each
pixel is 1cm X 1 cm. Assume you are working with Matlab to calculate the
projection at the angle of 30 degrees. The origin of the detection line is the
projection of the center of the image (point O) onto the detection line (point
B). The bins A, B, C, D, and E are located at l= -0.8 , -0.3, 0.2, 0.7 and 1.2
cm, respectively. The width of each bin is 0.5 cm. For example, any pixel
with a projection between -1.05 cm and -0.55cm will add its value to bin A,
and so on. What is the coordinate (l) is the projection of the center of the
element 7 on the detection line,?

A 0.71
B 0.68
C 1.41
D 1.36
E 1
You have an object shown as below. It has only four pixels. The size of each
pixel is 1cm X 1 cm. Assume you are working with Matlab to calculate the
projection at the angle of 30 degrees. The origin of the detection line is the
projection of the center of the image (point O) onto the detection line (point
B). The bins A, B, C, D, and E are located at l= -0.8 , -0.3, 0.2, 0.7 and 1.2
cm, respectively. The width of each bin is 0.5 cm. Which detector will the
contribution from element 7 fall into?

A
B
C
D
E
You have an object shown as below. It has only four pixels. The size of each
pixel is 1cm X 1 cm. Assume you are working with Matlab to calculate the
projection at the angle of 45 degrees. The origin of the detection line is the
projection of the center of the image (point O) onto the detection line (point
B). The bins A, B, and C are located at l= -1 cm, 0, and 1 cm, respectively.
The size of each bin is 1 cm. For example, any pixel with a projection
between -1.5 cm and -0.5cm will add its value to bin A, and so on. The value
of each bin is the summation of the value of the pixels that are projected to
the bin. Find the value of bin B.

A 5
B 20
C 25
D 7
E 11
Interpolation in projection
• Nearest neighbor is inaccurate.
• Two-point linear interpolation
– When the projection of a pixel is between the nl-th and the (nl
+1)-th bin, the pixel’s value will be proportionally (linear
interpolation) split between the two bins according to their
distance to the bin center.
You have an object shown as below. It has only four pixels. The size of each
pixel is 1cm X 1 cm. Assume you are working with Matlab to calculate the
projection at the angle of 45 degrees. The origin of the detection line is the
projection of the center of the image (point O) onto the detection line (point
B). The bins A, B, and C are located at l= -1 cm, 0, and 1 cm, respectively.
The size of each bin is 1 cm. For example, any pixel with a projection
between -1.5 cm and -0.5cm will add its value to bin A, and so on. The value
of each bin is the summation of the value of the pixels that are projected to
the bin. The contribution of element 7 to bin B will be:

A 1.5
B 2.1
C 3.5
D 7
E 4.9
Clicker question
You have an object shown as below. It has only four pixels. The size of each
pixel is 1cm X 1 cm. Assume you are working with Matlab to calculate the
projection and backprojection at the angle of 45 degrees. The origin of the
detection line is the projection of the center of the image onto the detection
line (point B). The detectors A, B, and C are located at l= -1 cm, 0, and 1 cm,
respectively. Calculate the projection value at the detector B. You are
required to use the linear interpolation method in the projection.

a. 25.2
b. 43.0
c. 35.2
d. 30.3
Improvement of the simple Voxel-
driven approaches
The algorithm first divides pixels in the image into four subpixels
and projects each subpixel separately.

See Matlab help on Radon

You might also like