Post on 07-Mar-2021
1
TT Liu, BE280A, UCSD Fall 2015
Bioengineering 280A ���Principles of Biomedical Imaging���
���Fall Quarter 2015���
CT/Fourier Lecture 5
TT Liu, BE280A, UCSD Fall 2015
Projection-Slice Theorem
Modified from Prince&Links 2006
kx
ky
kU kx ,ky( )µ x, y( )
€
kx = k cosθky = k sinθ
k = kx2 + ky
2
€
G(k,θ) = g(l,θ)e− j2πkl−∞
∞
∫ dl€
U(kx,ky ) =G(k,θ)g(l,θ )
TT Liu, BE280A, UCSD Fall 2015
Example (sinc/rect) Exampleµ(x, y) =Π(x)Π(y)U(kx ,ky ) = sinc(kx )sinc(ky )
-1/2 1/2
1/2
-1/2
x
y
TT Liu, BE280A, UCSD Fall 2015
Example (sinc/rect) Exampleµ(x, y) =Π(x)Π(y)U(kx ,ky ) = sinc(kx )sinc(ky )
Projection at θ = 0;g(l,0) = rect(l)→ F(g(l,0)) = sinc(k)kx = k cosθ = k; ky = k sinθ = 0
U(kx ,ky ) k cosθ ,k sinθ= sinc(k)sinc(0) = sinc(k)
Projection at θ = 90;g(l,90) = rect(l)→ F(g(l,90)) = sinc(k)kx = k cosθ = 0; ky = k sinθ = k
U(kx ,ky ) k cosθ ,k sinθ= sinc(0)sinc(k) = sinc(k)
2
TT Liu, BE280A, UCSD Fall 2015
Example (sinc/rect) Exampleµ(x, y) =Π(x)Π(y)U(kx ,ky ) = sinc(kx )sinc(ky )
Projection at θ = 45;
g(l,45) = 2Λ l2 / 2
#
$%
&
'(= 2rect l
2 / 2#
$%
&
'(* rect l
2 / 2#
$%
&
'(
→ F(g(l,45)) = 2 22
sinc k 22
#
$%
&
'(
22
sinc k 22
#
$%
&
'(= sinc2 k 2
2
#
$%
&
'(
kx = k cosθ = k 22
; ky = k sinθ = k 22
U(kx ,ky ) k cosθ ,k sinθ= sinc k 2
2
#
$%
&
'(sinc k 2
2
#
$%
&
'(= sinc2 k 2
2
#
$%
&
'(
2
− 2 / 2 2 / 2
TT Liu, BE280A, UCSD Fall 2015
Example (sinc/rect) Exampleµ(x, y) =Π(x)Π(y)U(kx ,ky ) = sinc(kx )sinc(ky )
Projection at 0 <θ < 90kx = k cosθ; ky = k sinθ
U(kx ,ky ) k cosθ ,k sinθ= sinc k cosθ( )sinc k sinθ( )
g(l,θ ) = F−1 sinc k cosθ( )sinc k sinθ( )( )= F−1 sinc k cosθ( )( )*F−1 sinc k sinθ( )( )
=1
cosθrect l
cosθ#
$%
&
'(* 1
sinθrect l
sinθ#
$%
&
'(
=1
cosθ sinθrect l
cosθ#
$%
&
'(* rect l
sinθ#
$%
&
'(
TT Liu, BE280A, UCSD Fall 2015 TT Liu, BE280A, UCSD Fall 2015
3
TT Liu, BE280A, UCSD Fall 2015
µ(x, y) = rect(x, y)cos 2π (x + y)( )
In-class Exercise
Sketch this object. What are the projections at theta = 0 and 90 degrees? For what angle is the projection maximized?
PollEv.com/be280a
TT Liu, BE280A, UCSD Fall 2015
g(l) = cos 2π l + y( )( )−1/2
1/2∫ dy
=12πsin 2π l + y( )( )
−1/2
1/2
=12π
sin 2π l + 12
#
$%
&
'(
#
$%
&
'(− sin 2π l − 1
2#
$%
&
'(
#
$%
&
'(
#
$%
&
'(
= 0
µ(x, y) = rect(x, y)cos 2π (x + y)( )Projection at 0 degrees
Peaks occur along the lines y = n− x where n is an integer.
Valleys occur along the lines
y = 2n+12
− x
g(l) = cos 2π x + l( )( )−1/2
1/2∫ dx
= 0
Projection at 90 degrees x
y
TT Liu, BE280A, UCSD Fall 2015
U(kx ,ky ) =12sinc(kx −1,ky −1)+ sinc(kx +1,ky +1)( )
F g(l)[ ] =U(kx ,ky ) k ,0
=12sinc(k −1,0−1)+ sinc(k +1,0+1)( )
=12sinc(k −1)sinc(−1)+ sinc(k +1)sinc(1)( )
= 0
Fourier transform of projection at 0 degrees:
TT Liu, BE280A, UCSD Fall 2015
F g(l)[ ] =U(kx ,ky ) 22k , 22k
=12sinc 2
2k −1, 2
2k −1
"
#$
%
&'+ sinc 2
2k +1, 2
2k +1
"
#$
%
&'
"
#$$
%
&''
=12sinc2 2
2k − 2( )
"
#$
%
&'+ sinc2 2
2k + 2( )
"
#$
%
&'
"
#$$
%
&''
= sinc2 22k
"
#$
%
&'∗12δ k − 2( )+δ k + 2( )( )
at 45 degrees
g(l) = 22rect 2
2l
!
"#
$
%&∗
22rect 2
2l
!
"#
$
%&
!
"#
$
%&⋅cos 2π 2l( )
= 2Λ 22l
!
"#
$
%&cos 2π 2l( )
4
TT Liu, BE280A, UCSD Fall 2015
g(l) = 2Λ 22l
"
#$
%
&'cos 2π 2l( )
22
222
2rect 2
2l
!
"#
$
%&∗
22rect 2
2l
!
"#
$
%&
!
"#
$
%&= 2Λ 2
2l
!
"#
$
%&
* = 22
−22
2
24
−24
24
−24
2 2
TT Liu, BE280A, UCSD Fall 2015
dx = 0.01;xax = -1:dx:1; [x,y] = meshgrid(xax,xax); z = (abs(x)<=0.5 & abs(y)<=0.5); z0 = z.*cos(2*pi*(x+y)); figure(1); % The object imagesc(xax,xax,z0);colorbar; axis equal; set(gca,’YDir’,’normal’); figure(2);% Image of Fourier Transform kax = -4:.1:4; [kx,ky] = meshgrid(kax,kax); z1 = 0.5*(sinc(kx-1).*sinc(ky-1) + sinc(kx+1).*sinc(ky+1)); imagesc(kax,kax,z1);colorbar;axis equal; set(gca,’YDir’,’normal’); figure(3);% Mesh plot of Fourier Transform mesh(kax,kax,z1); axis([-4 4 -4 4 -0.2 0.5]); view(16,48); figure(4);% Fourier Transform along 45 degree line. plot(diag(kx),diag(z1),’LineWidth’,2);grid; figure(5);% approximate the projection at 45 degrees. % and compare to exact formulation [nr,nc] = size(z0) ; ind = toeplitz(nr:-1:1,[1:nc]+nr-1) ; z0t = flipud(z0);; % approximation proj = accumarray(ind(:),z0t(:))*sqrt(2)*dx; pax = (dx*sqrt(2)/2)*(-(length(proj)-1)/2:(length(proj)-1)/2); % exact formulation. proj2 = sqrt(2).*cos(2*pi*sqrt(2)*pax).*tripuls(pax,sqrt(2)); plot(pax,proj,’b’,pax,proj2,’g--’,’LineWidth’,2);grid; figure(6); % plot consituent parts of the projection at 45 degrees. plot(pax,sqrt(2)*tripuls(pax,sqrt(2)),pax,cos(2*pi*sqrt(2)*pax),pax,proj2,’LineWidth’,2); grid;
TT Liu, BE280A, UCSD Fall 2015
Fourier Reconstruction
Suetens 2002
F
Interpolate onto Cartesian grid then take inverse transform
TT Liu, BE280A, UCSD Fall 2015
Fourier Interpretation
Kak and Slaney; Suetens 2002
€
Density ≈ Ncircumference
≈N
2π k
Low frequencies are oversampled. So to compensate for this, multiply the k-space data by |k| before inverse transforming.
5
TT Liu, BE280A, UCSD Fall 2015
Polar Version of Inverse FT
Suetens 2002
€
µ(x,y) = G(kx,ky−∞
∞
∫−∞
∞
∫ )e j 2π (kxx+kyy )dkxdky
= G(k,θ0
∞
∫0
2π∫ )e j2π (xk cosθ +yk sinθ )kdkdθ
= G(k,θ−∞
∞
∫0
π
∫ )e j 2πk(x cosθ +y sinθ ) k dkdθ
€
Note :g(l,θ + π ) = g(−l,θ)SoG(k,θ + π ) =G(−k,θ)
TT Liu, BE280A, UCSD Fall 2015
Filtered Backprojection
Suetens 2002
€
µ(x,y) = G(k,θ−∞
∞
∫0
π
∫ )e j 2π (xk cosθ +yk sinθ ) k dkdθ
= kG(k,θ−∞
∞
∫0
π
∫ )e j2πkldkdθ
= g∗(l,θ)dθ0
π
∫
€
g∗(l,θ) = kG(k,θ−∞
∞
∫ )e j2πkldk
= g(l,θ)∗F −1 k[ ]= g(l,θ)∗q(l)€
where l = x cosθ + y sinθ
Backproject a filtered projection
TT Liu, BE280A, UCSD Fall 2015
Ram-Lak Filter
Suetens 2002
kmax=1/Δs
TT Liu, BE280A, UCSD Fall 2015
Reconstruction Path
Suetens 2002
F
x F-1
Projection
Filtered Projection
Back- Project
6
TT Liu, BE280A, UCSD Fall 2015
Reconstruction Path
Suetens 2002
Projection
Filtered Projection
Back- Project
*
TT Liu, BE280A, UCSD Fall 2015
Example
Kak and Slaney
TT Liu, BE280A, UCSD Fall 2015
Example
Prince and Links 2005 TT Liu, BE280A, UCSD Fall 2015
Example
Prince and Links 2005
7
TT Liu, BE280A, UCSD Fall 2015
Filters
Filtered Projections
TT Liu, BE280A, UCSD Fall 2015
TT Liu, BE280A, UCSD Fall 2015
(a) (b)
PollEv.com/be280a
Which image used the Hanning filter?
TT Liu, BE280A, UCSD Fall 2015
CT Sampling Requirements
Suetens 2002
What should the size of the detectors be? How many detectors (or lines) do we need? How many views do we need?
8
TT Liu, BE280A, UCSD Fall 2015
View Aliasing
Kak and Slaney TT Liu, BE280A, UCSD Fall 2015
Aliasing
Kak and Slaney
TT Liu, BE280A, UCSD Fall 2015
Artifacts
Suetens 2002
Object Effect of Noise
Aliasing due to insufficient number of detectors
Aliasing due to insufficient number of views
TT Liu, BE280A, UCSD Fall 2015
Analog vs. Digital The Analog World: Continuous time/space, continuous valued signals or images, e.g. vinyl records, photographs, x-ray films. The Digital World: Discrete time/space, discrete-valued signals or images, e.g. CD-Roms, DVDs, digital photos, digital x-rays, CT, MRI, ultrasound.
9
TT Liu, BE280A, UCSD Fall 2015
The Process of Sampling g(x)
g[n]=g(n Δx)
Δx sample
TT Liu, BE280A, UCSD Fall 2015
Questions
How finely do we need to sample? What happens if we don’t sample finely enough?
Can we reconstruct the original signal or image from its samples?
TT Liu, BE280A, UCSD Fall 2015
Sampling in the Time Domain
TT Liu, BE280A, UCSD Fall 2015
Comb Function
€
comb(x) = δ(x − n)n=−∞
∞
∑
Other names: Impulse train, bed of nails, shah function.
-5 -4 -3 -2 -1 0 1 2 3 4 5 x
10
TT Liu, BE280A, UCSD Fall 2015
Scaled Comb Function
€
comb xΔx#
$ %
&
' ( = δ( x
Δx− n)
n=−∞
∞
∑
= δ( x − nΔxΔx
)n=−∞
∞
∑
= Δx δ(x − nΔx)n=−∞
∞
∑
x
Δx
TT Liu, BE280A, UCSD Fall 2015
1D spatial sampling
€
gS (x) = g(x) 1Δx
comb xΔx#
$ %
&
' (
= g(x) δ(x − nΔx)n=−∞
∞
∑
= g(nΔx)δ(x − nΔx)n=−∞
∞
∑
€
Recall the sifting property g(x)δ(x − a) = g(a)−∞
∞
∫
But we can also write g(a)δ(x − a) = g(a)−∞
∞
∫ δ(x − a)−∞
∞
∫ = g(a)
So, g(x)δ(x − a) = g(a)δ(x − a)
TT Liu, BE280A, UCSD Fall 2015
1D spatial sampling g(x)
x
Δx
x
comb(x/Δx)/ Δx
gS(x)
TT Liu, BE280A, UCSD Fall 2015
Fourier Transform of comb(x)
€
F comb(x)[ ] = comb(kx )
= δ(kx − n)n=−∞
∞
∑
€
F 1Δx
comb( xΔx)
#
$ % &
' ( =1Δx
Δxcomb(kxΔx)
= δ(kxΔx − n)n=−∞
∞
∑
=1Δx
δ(kx −nΔx)
n=−∞
∞
∑
11
TT Liu, BE280A, UCSD Fall 2015
Fourier Transform of comb(x/ Δx)
x
Δx
comb(x/ Δx)/ Δx
kx
comb(kx Δx)
1/Δx
1/Δx
F
TT Liu, BE280A, UCSD Fall 2015
Fourier Transform of gS(x)
€
F gS (x)[ ] = F g(x) 1Δx
comb xΔx#
$ %
&
' (
)
* +
,
- .
=G(kx )∗F1Δx
comb xΔx#
$ %
&
' (
)
* +
,
- .
=G(kx )∗1Δx
δ kx −nΔx
#
$ %
&
' (
n=−∞
∞
∑
=1Δx
G(kx )∗δ kx −nΔx
#
$ %
&
' (
n=−∞
∞
∑
=1Δx
G kx −nΔx
#
$ %
&
' (
n=−∞
∞
∑
TT Liu, BE280A, UCSD Fall 2015
Fourier Transform of gS(x)
G(kx)
GS(kx)
1/Δx
kx
kx
1/Δx
TT Liu, BE280A, UCSD Fall 2015
Nyquist Condition
G(kx)
GS(kx)
KS=1/Δx
kx
kx
B -B
To avoid overlap, we require that 1/Δx>2B or KS > 2B where KS=1/ Δx is the sampling frequency
KS
12
TT Liu, BE280A, UCSD Fall 2015
Example
Assume that the highest spatial frequency in an object is B = 2 cm-1. Thus, smallest spatial period is 0.5 cm. .
Nyquist theorem says we need to sample with Δx < 1/2B = 0.25 cm This corresponds to 2 samples per spatial period.
TT Liu, BE280A, UCSD Fall 2015
Example
PollEv.com/be280a
Assume that the Nyquist sampling periods of f (x) and g(x)are Δf and Δg, respectively. Determine the Nyquist sampling periods fora) f (x − x0 )b) f (x)+ g(x)c) f (x)* f (x)
from Prince and Links 2006