Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang /...

20
Journal of X-Ray Science and Technology 12 (2004) 97–116 97 IOS Press Studies on implementation of the Katsevich algorithm for spiral cone-beam CT Hengyong Yu a and Ge Wang b a College of Communication Engineering, Hangzhou Institute of Electronics Engineering, Hangzhou, Zhejiang, 310018, P.R. China E-mail: [email protected] b Department of Radiology, University of Iowa,Iowa City, Iowa 52242, USA E-mail: [email protected] Abstract. Recently, Katsevich proposed the first exact helical cone-beam reconstruction algorithm that takes longitudinally truncated data collected from part of a scanning turn. A key theoretical basis is that any point inside the scanning helix belongs to one and only one PI-line. Unfortunately, he only provided a general formulation and did not describe the implementation details. To make this complicated algorithm more transparent, we report here specifically how to program the Katsevich algorithm in the planar detector geometry. As an important component, we also analyze the effects of various implementation parameters on the image quality. Our results are intended to be valuable for those who are interested in evaluating, improving and extending the Katsevich approach. Keywords: Computed tomography (CT), spiral cone-beam, Katsevich algorithm, filtered backprojection (FBP), image artifacts 1. Introduction Spiral cone-beam computed tomography (CT) is a major area of medical imaging research. Generally speaking, the spiral cone-beam scanning mode offers significant advantages in image quality than other modes such as multiple circular scans for reconstruction of a long object. While original spiral cone-beam algorithms are approximate [1,2], in 2002 Katsevich proposed a theoretically exact filtered backprojection (FBP) algorithm for this purpose [3], and improved it to use data mainly from the Tam- Dannielson window [4], and performed some analysis [5]. Katsevich’s work is a breakthrough and has attracted increasing interests in the area of spiral cone-beam CT. However, Katsevich only formulated his algorithm in the generalized detector geometry and gave little implementation details. In this paper, the Katsevich algorithm is specialized in the planar detector geometry, and effects of various implementation options are analyzed in terms of image quality. In the next section, the Katsevich formula is briefly reviewed. In the third section, the steps of the Katsevich algorithm are formulated in the continuous domain. In the fourth section, these steps are discretized with some numerical details clarified. In the fifth section, simulation results are presented using the 3D Shepp-Logan phantom. In the last section, some relevant issues are discussed. 0895-3996/04/$17.00 2004 – IOS Press and the authors. All rights reserved

Transcript of Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang /...

Page 1: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

Journal of X-Ray Science and Technology 12 (2004) 97–116 97IOS Press

Studies on implementation of the Katsevichalgorithm for spiral cone-beam CT

Hengyong Yua and Ge WangbaCollege of Communication Engineering, Hangzhou Institute of Electronics Engineering, Hangzhou,Zhejiang, 310018, P.R. ChinaE-mail: [email protected] of Radiology, University of Iowa,Iowa City, Iowa 52242, USAE-mail: [email protected]

Abstract. Recently, Katsevich proposed the first exact helical cone-beam reconstruction algorithm that takes longitudinallytruncated data collected from part of a scanning turn. A key theoretical basis is that any point inside the scanning helix belongs toone and only one PI-line. Unfortunately, he only provided a general formulation and did not describe the implementation details.To make this complicated algorithm more transparent, we report here specifically how to program the Katsevich algorithm inthe planar detector geometry. As an important component, we also analyze the effects of various implementation parameters onthe image quality. Our results are intended to be valuable for those who are interested in evaluating, improving and extendingthe Katsevich approach.

Keywords: Computed tomography (CT), spiral cone-beam, Katsevich algorithm, filtered backprojection (FBP), image artifacts

1. Introduction

Spiral cone-beam computed tomography (CT) is a major area of medical imaging research. Generallyspeaking, the spiral cone-beam scanning mode offers significant advantages in image quality thanother modes such as multiple circular scans for reconstruction of a long object. While original spiralcone-beam algorithms are approximate [1,2], in 2002 Katsevich proposed a theoretically exact filteredbackprojection (FBP) algorithm for this purpose [3], and improved it to use data mainly from the Tam-Dannielson window [4], and performed some analysis [5]. Katsevich’s work is a breakthrough and hasattracted increasing interests in the area of spiral cone-beam CT.

However, Katsevich only formulated his algorithm in the generalized detector geometry and gavelittle implementation details. In this paper, the Katsevich algorithm is specialized in the planar detectorgeometry, and effects of various implementation options are analyzed in terms of image quality. In thenext section, the Katsevich formula is briefly reviewed. In the third section, the steps of the Katsevichalgorithm are formulated in the continuous domain. In the fourth section, these steps are discretizedwith some numerical details clarified. In the fifth section, simulation results are presented using the 3DShepp-Logan phantom. In the last section, some relevant issues are discussed.

0895-3996/04/$17.00 2004 – IOS Press and the authors. All rights reserved

Page 2: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

98 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

( )t ts s= x

( )b bs s= x

x

PI Segment

( )PIC x

Fig. 1. lllustration of PI Segment.

2. Katsevich algorithm

Let a helical scanning locus be defined as

C : ={

y ∈ R3 : y1 = R cos(s),y2 = R sin(s),y3 =

sh

2π, s ∈ R

}(1)

whereh > 0. Let U denote an open set strictly inside the helix

U ⊂ {x ∈ R3, x2

1 + x22 < r2

}0 < r < R. (2)

Let S2 is the unit sphere inR3 and

Df (y,β) :=∫ ∞

of(y + tβ)dt,β ∈ S2 (3)

β(s,x) :=x − y(s)|x − y(s)| x∈U,y(s) ∈ C. (4)

That isDf (y, β), is the cone beam transform off .As shown in Fig. 1, any pointx strictly inside the helix belongs to one and only one PI line [6]. A

PI line is a line segment with its endpoints on one helical turn. Letsb = sb(x) andst = st(x) denoteparametric values corresponding to these endpoints, we nameIPI(x) := [sb(x), st(x)] as the PI interval,and denote the part of the helix corresponding toIPI(x) asCPI(x).

Choose anyψ ∈ C∞ ([0, 2π]) with the properties{ψ(0) = 0 0 < ψ

′(t) < 1 t ∈ [0, 2π]

ψ′(0) = 0.5 ψ(2k+1)(0) = 0 k � 1

(5)

Suppose thats, s1, s2 are related by

s1 ={ψ(s2 − s) + s s < s2 < s+ 2πψ(s− s2) + s2 s− 2π < s2 < s

(6)

Page 3: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99

For example, the functionψ(t) = t/2 satisfies condition Eq. (5) and leads to

s1 = (s+ s2)/2 s− 2π < s2 < s+ 2π (7)

Let us also denote

u(s, s2) =

(y(s1)−y(s))×(y(s2)−y(s))|(y(s1)−y(s))×(y(s2)−y(s))| sgn(s2 − s) 0 < |s2 − s| < 2π

y(s)×y(s)|y(s)×y(s)| s2 = s

(8)

Fix x ∈ U ands ∈ IPI(x), find s2 ∈ IPI(x) such that the plane throughy(s), y(s2) andy(s1(s, s2))containingx. More precisely, we have to solve the following equation fors2:

(x − y(s)) · u(s, s2) = 0, s2 ∈ IPI(x) (9)

It was shown [4] that this construction defines a smooth functions2 := s2(s,x).Consequently,u(s,x) := u(s, s2(s,x)). The following theorem is Katsevich’s main result [4]:

Theorem 1. For f ∈ C∞0 (U) one has

f(x) = − 12π2

∫IPI(x)

1|x − y(s)|

∫ 2π

0

∂qDf (y(q),Θ(s,x, γ))|q=s

sin γds (10)

whereΘ(s,x, γ) := cosγβ(s,x) + sinγe(s,x) ande(s,x) := β(s,x) × u(s,x).It is clear from Eq. (9) thats2(s,x) actually depends on onlys andβ(s,x). Therefore, we have [4]

u(s,β) := u(s, s2(s,β)), e(s,β) := β × u(s,β), (11)

Ψ(s,β) :=∫ 2π

0

∂qDf (y(q), cos γβ + sin γe(s,β))|q=s

1sin γ

dγ, (12)

f(x) := − 12π2

∫IPI(x)

1|x − y(s)|Ψ(s,β(s,x))ds. (13)

Fix s2 ∈ [s − 2π + ∆, s + 2π − ∆], s2 �= s,∆ = 2cos−1(r/R), and let∏

(s2) denote the planethroughy(s), y (s2) andy(s1(s, s2)). If s = s2,

∏(s2) is determined by continuity and coincides with

the plane throughy(s) and parallel toy(s) andy(s). Then, we have a family of linesL(s2) obtained byintersecting

∏(s2) with the detector plane. By construction, for a givenx ∈ U with β(s,x) contained in∏

(s2), s2 thus determined is the same as that found by solving Eq. (9).Sincee (s,β) • β = 0, |e(s,β)| = 1, we have

β = (cos θ, sin θ), e(s,β) = (− sin θ, cos θ),β, e(s,β) ∈∏

(s2), (14)

Ψ(s,β) :=∫ 2π

0

∂qDf (y(q), (cos(θ + γ), sin(θ + γ)))|q=s

1sin γ

dγ,β ∈∏

(s2). (15)

This implies that the algorithm is in a filtered-backprojection format.

Page 4: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

100 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

1x

2x

3x

( )sy

x

( , )u v

Locus

Detector Array

u

v

3d

1d

2d

C

s

Fig. 2. Local coordinate system for cone-beam projection measurement on a planar detector.

3. Formulation for equispatial data

As shown in Fig. 2 let us define

d1 := (− sin(s), cos(s), 0) (16a)

d2 := (0, 0, 1) (16b)

d3 := (− cos(s),− sin(s), 0) (16c)

A local coordinate system is formed with cone-beam data measured using a planar detector arrayparallel tod1 andd2 at a distanceD from y(s). A detector position in the array is given by a pair ofvalues(u, ν), which are signed distances alongd1 andd2 respectively. Let(u, ν) = (0, 0) correspondto the orthogonal projection ofy (s) onto the detector array. Ifs andD are given,(u, ν) are determinedby β. SinceD is constant, the equispatial cone-beam projectiong(s, u, ν) := Df (y,β). In thislocal coordinate system, the Katsevich algorithm is implemented in the three steps: (1) the first orderderivatives of cone beam date are computed with respect tos while the orientations of involved X-raysare the same in the global coordinate systemx, (2) the shift-invariant filtering of the first derivative datais performed along aL(s2) line on the detector plane according to Eq. (12), and (3) the filtered data arebackprojected in 3D according to Eq. (13).

Page 5: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 101

3.1. Derivatives of cone-beam data

For a givenx ∈ U, its projection position in the local coordinate system is expressed as:

u =D(x − y(s)) • d1

(x − y(s)) • d3(17a)

ν =D(x − y(s)) • d2

(x − y(s)) • d3(17b)

Using the chain rule, the derivative of cone-beam data with respect tos is:

d

dsg(s, u, ν) =

∂g

∂s+∂g

∂u

∂u

∂s+∂g

∂ν

∂ν

∂s(18)

with

∂u

∂s=D2 + u2

D, (19a)

∂ν

∂s=uν

D. (19b)

The derivation of the formula Eq. (19) is in Appendix A.Denote Dg(s, u, ν) = d

dsg(s, u, ν), we have

Dg(s, u, ν) =(∂

∂s+D2 + u2

D

∂u+uν

D

∂ν

)g(s, u, ν). (20)

3.2. Filtration of derivative data

Letψ(s) = s/2, we have

s1 = (s+ s2)/2, s2 ∈ [s− 2π + ∆, s+ 2π − ∆], s1 ∈ [s− π + 0.5∆, s + π − 0.5∆] (21)

For a givens, the equation forL(s2), also denoted asL(s1), in the detector plane is derived in AppendixB as follows:

ν =Dh(s1 − s)

2πR+h(s1 − s)ctg(s1 − s)

2πRu. (22)

Figure 3 illustrates a family ofL(s1). As shown in Fig. 4 and Appendix C, let(u, ν) denote localcoordinates of a variable point on the lineL(s1) determined by(u, ν), we have

sin γ=

√D2 + u2 + ν2du

(u− u)√D2 + u2 + ν2

. (23)

Page 6: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

102 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

v

u

1( )L s

Fig. 3. lllustration of a family of L(s1).

2d

1d3d

( )sy

γ

1( )L s

P

'P

''P

∆γ

Fig. 4. Proof of Eq. (23).

Therefore, Eq. (15) is simplified as:

Ψ(s, u, ν) =∫ ∞

−∞Dg(s, u, ν)

√D2 + u2 + ν2

√D2 + u2 + ν2(u− u)

du, (24)

Page 7: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 103

which is implemented in the following three steps:

Ψ(1)(s, u, ν) = Dg(s, u, ν)D√

D2 + u2 + ν2, (25a)

Ψ(2)(s, u, ν) =∫ ∞

−∞Ψ(1)(s, u, ν)

1(u− u)

du, (25b)

Ψ(3)(s, u, ν) =

√D2 + u2 + ν2

DΨ(2)(s, u, ν). (25c)

Clearly, Eq. (25a) performs a pre-weighting operation on the first order derivates of cone-beam data,while Eq. (25b) can be regarded as a Hilbert filtering along the lineL(s1), and Eq. (25c) a post-weightingprocedure.

3.3. Backprojection of filtered data

The backprojection operation according to Eq. (13) is essentially the same as that in the well knownFeldkamp-type reconstruction. The main issue is to determineIIP (x), that is,sb(x) andst (x). For anygivenx0 = (x10, x20, x30) ∈ U, there must be a unique tripletsb, st, twith t ∈ (0, 1) and 0< st−sb < 2πsuch that

x10 = Rt cos(sb) +R(1 − t) cos(st), (26a)

x20 = Rt sin(sb) +R(1 − t) sin(st), (26b)

x30 =h

2πtsb +

h

2π(1 − t)st. (26c)

First, we consider a family of PI lines intersecting the lineV0 that containsx0 and is parallel to thex3 axis [6]. This family is parameterized bysb. Using the notationx0 = (r0 cos(ξ), r0 sin(ξ), x30) andsolving the first two equations in Eq. (26), we have

t(x10, x20, sb) =R2 − r20

2R[R− r0 cos(ξ − sb)], (27a)

st(x10, x20, sb) − sb = 2cos−1

(r0 sin(ξ − sb)√

R2 + r20 − 2Rr0 cos(ξ − sb)

). (27b)

Each PI line in the family intersects the vertical lineV0 through a point(x10, x20, x3), where

x3(x10, x20, sb) =h

2πsbt(x10, x20, sb) +

h

2πst(x10, x20, sb)[1 − t(x10, x20, sb)]. (28)

Page 8: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

104 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

It was shown [6] thatdx3dsb

> 0. Hence, there must be a uniquesb which satisfiesx3(x10, x20, sb) = x30.

Denotes0 = 2πx30h , by Eq. (26c) we have

(st − s0) =t

t− 1(sb − s0). (29)

Substitute Eq. (29) into (27b), we obtain

sb − s0 = 2(t− 1) cos−1

(r0 sin(ξ − sb)√

R2 + r20 − 2Rr0 cos(ξ − sb)

). (30)

With µ0 = r0R , 0 � µ0 < 1, the following inequalities can be readily verified:

cos−1(µ0) � cos−1

(r0 sin(ξ − sb)√

R2 + r20 − 2Rr0 cos(ξ − sb)

)� π − cos−1(µ0), (31)

−µ0 − 12

� t− 1 � µ0 − 12

(32)

Hence,

s0 − (π − cos−1(µ0))(1 + µ0) � sb � s0 − cos−1(µ0)(1 − µ0). (33)

Using the monotony ofx3(x10, x20, sb) and dichotomy, it is straightforward to search a uniquesb

satisfyingx3(x10, x20, sb) = x30 in the interval

[s0 − (π − cos−1(µ0))(1 + µ0), s0 − cos−1(µ0)(1 − µ0)].

4. Implementation for equispatial data

First, the cone beam projections are uniformly sampled with sampling intervals∆s, ∆u, ∆ν for s, uandν as follows:

g(sk, um, νn) 0 � k < K, |m| � M, |n| � N, (34)

wherek,m andn are the indexes of sampling points fors, u andν, respectively.

4.1. First order derivatives of cone-beam data

Since in the general case there are noise and errors ing(s, u, ν), to compute its derivatives a smoothconvolution is performed with a gauss function

G(s, u, ν) =1

(√

2π)3σsσuσν

exp(− s2

2σ2s

− u2

2σ2u

− ν2

2σ2ν

). (35)

Page 9: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 105

whereσs, σu, andσν are standard deviations serving as smoothing factors for the three dimensions,respectively. The partial derivatives ofg(s, u, ν) are computed as following:

∂sg(s, u, ν) ≈ ∂

∂sg(s, u, ν) ∗G(s, u, ν) = g(s, u, ν) ∗ ∂

∂sG(s, u, ν), (36a)

∂ug(s, u, ν) ≈ ∂

∂ug(s, u, ν) ∗G(s, u, ν) = g(s, u, ν) ∗ ∂

∂uG(s, u, ν), (36b)

∂νg(s, u, ν) ≈ ∂

∂νg(s, u, ν) ∗G(s, u, ν) = g(s, u, ν) ∗ ∂

∂νG(s, u, ν), (36c)

where the star * signifies a convolution operation. Using 3× 1 × 1, 1× 3 × 1 and 1× 1× 3 windowsto capture effects ofσs, σu andσν respectively, it results in the special 2-points difference formulae

Dsg(sk, um, νn) ≈ g(sk+1, um, νn) − g(sk−1, um, νn)

2∆s(37a)

Dug (sk, um, νn) ≈ g(sk, um+1, νn) − g(sk, um−1, νn)

2∆u(37b)

Dνg (sk, um, νn) ≈ g(sk, um, νn+1) − g(sk, um, νn−1)

2∆ν(37c)

Then, Eq. (20) is discretized as:

Dg(sk, um, νn) = Dsg(sk, um, νn) +

D2 + u2m

DDu

g (sk, um, νn) +umνn

DDν

g (sk, um, νn), (38)

If we denotesk+0.5 = (sk + sk+1)/2, um+0.5 = (um + um+1)/2, andνn+0.5 = (νn + νn+1)/2, anduse 2×2 × 2 windows, we have an alternative form for Eq. (38):

Dg(sk+0.5, um+0.5, νn+0.5) =Dsg(sk+0.5, um+0.5, νn+0.5)

+D2 + u2

m+0.5

DDu

g (sk+0.5, um+0.5, νn+0.5) (39)

+um+0.5νn+0.5

DDν

g (sk+0.5, um+0.5, νn+0.5)

where 8-points difference formulae are assumed:

Dsg(sk+0.5, um+0.5, νn+0.5)≈

1∑m′=0

1∑n′=0

g(sk+1, um+m′ , νn+n′)−1∑

m′=0

1∑n′=0

g(sk, um+m′ , νn+n′)

4∆s(40a)

Page 10: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

106 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

Dug (sk+0.5, um+0.5, νn+0.5)≈

1∑k′=0

1∑n′=0

g(sk+k′ , um+1, νn+n′)−1∑

k′=0

1∑n′=0

g(sk+k′ , um, νn+n′)

4∆u(40b)

Dνg (sk+0.5, um+0.5, νn+0.5)≈

1∑k′=0

1∑m′=0

g(sk+k′ , um+m′ , νn+1)−1∑

k′=0

1∑m′=0

g(sk+k′ , um+m′ , νn)

4∆ν(40c)

Evidently, with various combinations ofσs, σu, σν values we can obtain more complex formulae tocompute the derivatives ofg(s, u, ν).

4.2. Filtration of derivative data

This step is more complicated than other steps. According to Eq. (21), for anys ∈ R, s1 − s ∈[−π + 0.5∆, π − 0.5∆] with ∆ = 2cos−1(r/R). Thus, for allsk, the interval[−π + 0.5∆, π − 0.5∆]is uniformly sampled atsq, |q| � Q. Using Eq. (22), the following matrix is calculated:

νq,m =Dhsq

2πR+hsqctg(sq)

2πRum, (41)

where the only exception is thatν0,m = h2πRum.Dg(sk, sq, um, νq,m) is obtained by re-sampling

Dg(sk, um, νn) via linear interpolation along the direction ofν. After that, the filtering processesare executed as follows:

Ψ(1)(sk, sq, um, νq,m) = Dg(sk, sq, um, νq,m)D√

D2 + u2m + ν2

q,m

, (42a)

Ψ(2)(sk, sq, um, νq,m) ≈m−1∑

m′=−M

Ψ(1)(sk, sq, um′ , νq,m′)∆u(um′ − um)

(42b)

+M∑

m′=m+1

Ψ(1)(sk, sq, um′ , νq,m′)∆u(um′ − um)

,

Ψ(3)(sk, sq, um, νq,m) =

√D2 + u2

m + ν2q,m

DΨ(2)(sk, sq, um, νq,m). (42c)

Because Formula Eq. (42b) is a Hilbert transform, it can be implemented using FFT (see appendixD). Once again,Ψ(sk, um, νn) is obtained by re-samplingΨ(3)(sk, sq, um, νq,m). Givensk, um, νn, wesearch the maximalq denoted asqdmax satisfyingνqdmax,m < νn. Similarly, we find the minimalqdenoted asqumin satisfyingνqumin,m > νn. Then,ψ(sk, um, νn) is estimated by interpolating betweenΨ(3)(sk, sqdmax

, um, νqdmax,m) andΨ(3)(sk, squmin, um, νqumin,m) linearly.

Page 11: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 107

4.3. Backprojection of filtered data

For a givenx, IPI(x) is determined in terms ofsb(x) andst(x). At the same time,kb andkt aredetermined to satisfy thats(kb−1) < sb(x) < skb

andskt < st(x) < s(kt+1). Then, the backprojectionstep is implemented as follows:

f(x) = − ∆s2π2

k=kt∑k=kb

ψ(sk, u(sk,x), ν(sk,x))|x − y(sk)| , (43)

where

u(sk,x) =D(x − y(sk)) • d1

(x − y(sk)) • d3, (44a)

ν(sk,x) =D(x − y(sk)) • d2

(x − y(sk)) • d3(44b)

ψ(sk, u(sk,x), ν(sk,x)) is estimated by bilinear interpolation. To reduce artifacts due to the endpointeffects, we treatsb(x) as the interpolation betweens(kb−1) andskb

, andst(x) as the interpolation betweens(kt+1) andskt. Then, formula Eq. (43) is refined as:

f(x) = − ∆s2π2

k=kt+1∑k=kb−1

ψ(sk, u(sk,x), ν(sk,x))λ(k)|x − y(sk)| , (45)

with the coefficients

λ(k) =

0.5λ2b k = kb − 1

0.5 + λb − 0.5λ2b k = kb

1 kb + 1 � k � kt − 1,0.5 + λt − 0.5λ2

t k = kt

0.5λ2t k = kt + 1

(46)

λb =skb

− sb(x)∆s

. (47a)

λt =st(x) − skt

∆s(47b)

4.4. Selection of parameters

In the above describing implementation of the Katsevich algorithm, there are four basic discretizationparameters, which areK,M,N,Q.K is the number of sampling points ins. An appropriateK isselected based on the requirement on the desired resolution and the length of the interval ofs. In the

Page 12: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

108 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

Table 1Cone-beam imaging parameters used in the numerical simulation

Scanning radius (R) 75 cmSource to detector distance (D) 150 cmHelical pitch (h) 25 cmObject radius (r) 25 cmNumber of projections per turn 512Scanning range (K = 1536) s ∈ [−3π, 3π]Detector size (M = 136,N = 45 ) 273×91Detector width(∆u) 0.391 cmDetector height(∆ν) 0.391 cmNumber of lines L(s1) per projection (Q = 64 ) 129Reconstruction matrix 257×257×257

local coordinate system shown in Fig. 2, one can determine the maximum value of|u|max and|ν|max ofthe Tam-Dannielson window from formula Eq. (17).

|u|max =D sin ∆

1 − cos ∆(48a)

|ν|max =Dh(2π − ∆)

2πR(1 − cos ∆)(48b)

where∆ = 2cos−1(r/R). Similarly, a proper∆u andM covering the field of view|u|max = M · ∆uare determined. Assume∆ν = ∆u and|ν|max = N · ∆ν,N is determined to be consistent with theinvolved detection window.

N =⌈

h

2πR2π − ∆sin∆

M

⌉(49)

SinceL(s1) varies substantially as a function ofs1, based on the simulation results reported in thefollowing section we suggest to use0.6 N < Q < 1.5 N to achieve the desired resolution. Consideringthe local derivative operation,M andN may be slightly larger than the above theoretical values.

5. Simulation results

Our algorithmic steps for implementing the Katsevich algorithm were numerically evaluated using the3D Shepp-Logan phantom [7]. As shown in Fig. 2, cone-beam spiral data were collected with a planardetector array in the simulation. In the following, unless otherwise stated, the parameters should remainthe same as in Table 1, Formulae Eqs (38) and (45) were used for image reconstruction, and the Hilberttransform was performed in the Fourier domain using a rectangular apodization window.

To demonstrate the effect of artifact reduction using Eq. (45), Fig. 5 gives the reconstructed slicesusing Eqs (43) and (45) respectively. It can be observed in Fig. 5 that the range of the PI segment is veryimportant to the reconstruction quality. Specifically, significant artifacts were caused if the endpoints ofthe PI segment were not treated appropriately, i.e., not interpolated continuously.

There are several ways to compute the derivatives ofg(s, u, ν). Fig. 6 compares the reconstructionresults using Eqs (38) and (39) respectively. It can be seen in Fig. 6 that Eq. (38) performs better than

Page 13: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 109

Fig. 5. Reconstruction results of different backprojection formulae. The first row are the original slices of 3D head phantom,while the second and the third are the reconstruction results by formulae Eqs (43) and (45), respectively. The left column arethe slices atz = −6.25 cm, the middle column are the slices aty = 0 cm, and the right column are the slices atx = 0 cm.Gray range [1.01, 1.03] is linear mapped into [0, 255].

Table 2PSNR of the slicez = −6.25 cm with respect to Q(N = 45)

Q 5 10 15 20 25 30 35 50PSNR(dB) 23.854 25.451 25.849 26.020 26.078 26.135 26.165 26.179Q 45 50 55 60 64 65 70 75PSNR(dB) 26.189 26.195 26.215 26.216 26.226 26.222 26.226 26.230

Eq. (39). A major reason is that Eq. (38) may have better captured partial derivative information thanEq. (39), since Eq. (38) involves a larger range along the direction of interest.

A common mistake is that the partial derivatives ofu andν with respect tos are not needed. In fact,(u, ν) define a local detection coordinates and are associated withs by the unit vectorsd 1,d2 andd3,as shown in Eqs (16) and (17). To illustrate the errors due to this misunderstanding, Fig. 7 presents thereconstruction results when the partial derivative ofu andν were omitted.

Undoubtedly, the reconstruction precision depends on the selection of parameterQ. We know thatQmay be smaller thanQm, whereQm satisfies that the maximum distance between adjacent linesL(s1)along directiond2 is small than∆ν. For the parameters in Table 1, we found thatQm = 73. Todemonstrate the effect ofQ on image quality, we reconstructed the 3D phantom with different valuesof Q. Table 2 shows the peak-signal-noise-ratio (PSNR) of the reconstructed slicez = −6.25 cm with

Page 14: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

110 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

Fig. 6. Reconstruction results of different derivative formulae. The first row are reconstructed by formula Eq. (38), while thesecond row are reconstructed by formula Eq. (39). The left column are the slices atz = −6.25 cm, the middle column are theslices aty = 0 cm, and the right column are the slices atx = 0 cm. Gray range [1.01, 1.03] is linear mapped into [0, 255].

(a) (b) (c)

Fig. 7. Reconstruction results when the partial derivatives of u and v are omitted. From left to right are the reconstructed slicesatz = −6.25 cm,y = 0 cm andx = 0 cm, respectively. Gray range [0, 1] is adapted linear mapped into [0, 255].

different values ofQ. It can be seen in Table 2 that the reconstruction quality is insensitive to the variationin Q. WhenQ varies from 25 to 75, PSNR only increases 0.15 dB, and we cannot visually distinguishthe differences among the reconstructions, as shown in Fig. 8. Based on our experience, we suggest thatit 0.6N < Q < 1.5 N .

Formula Eq. (42b) can be regarded as a Hilbert transform, hence it can be implemented in the Fourierdomain. Since the impulse response of the Hilbert transform is of an infinite length, we need use awindow function of a finite length. Typical window functions include rectangular, Hamming, Hanning,Blackman, and Kaiser windows [8]. Fig. 9 gives the reconstructed slices using different windowfunctions. It can be concluded that the rectangular window is the optimal in terms of the image quality.

6. Discussions and conclusion

While preparing this manuscript, it came to our attention that Noo, Pack and Heuscher published theirprocedures for exact spiral cone-beam reconstruction using native cone-beam geometries [9]. Since

Page 15: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 111

(a) Q=5 (b) Q=10 (c) Q=15

(d) Q=20 (e) Q=25 (f) Q=75

Fig. 8. Reconstructed results of slicez = −6.25 cm for different Q. Gray range [1.015, 1.025] is linear mapped into [0, 255].

both their work and ours are about the implementation of the Katsevich algorithm, there are substantialsimilarities in the two papers. However, we would like to emphasize that there are also significantdifferences between them, which make them actually complement each other. Specifically, our paperdiffers from that by Noo, Pack and Heuscher in the following aspects. Primarily, our implementationsteps are not the same as theirs. Our experimental results show that (1) the endpoints of the PI segmentshould be treated continuously or the reconstruction artifacts would be evident; (2) in the derivativeoperation, a 2-point difference formulae outperforms a 8-point counterpart; (3) the reconstruction qualityis insensitive toQ aroundN ; for example, 0.6N < Q < 1.5 N ; and (4) if the Hilbert transformis implemented in the Fourier domain the rectangular window function is the optimal in terms ofthe image quality. Also, we have analyzed image artifacts associated with inappropriate selectionsof the imaging parameters. Furthermore, we have decided to open our source codes in MatLab on“http://dolphin.radiology.uiowa.edu/ge/CTL/Software/Katsevich”as an Appendix to this paper, whichmakes the Katsevich algorithm complete transparent to the peers.

In conclusion, we have not only described how to program the Katsevich algorithm in the planardetector geometry but also studied effects of various implementation options on the image quality.Because the Katsevich-type spiral cone-beam reconstruction is quite complicated and has become anactive new area, our results should be valuable for those who are interested in evaluating, improving andextending this new approach.

Acknowledgment

This work is partially supported by NIH/NIBIB grants (EB002667 and EB004287).

Page 16: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

112 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

Fig. 9. Reconstruction results using different window function. The top are the slices atz = −6.25 cm and the bottom arethe slices aty = 0 cm. From left to right, top to bottom, the first one is original slice, the others are reconstructed results withrectangular, Kaiser, Hamming, Hanning, Blackman window function, respectively. Gray range [0.75, 1.05] is linear mappedinto [0, 255].

Appendix A. Derivative of formulae Eq. (19)

For a givenβ ∈ S2, its projection position in the local coordinate system can be expressed as:

u =Dβ • d1

β • d3, (A1a)

ν =Dβ • d2

β • d3, (A1b)

Page 17: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 113

Hence, we have

∂u

∂s=(Dβ • d1

β • d3

)′

=Dβ • d′

1

β • d3− Dβ • d1β • d′3

(β • d3)2, (A2a)

∂ν

∂s=(Dβ • d2

β • d3

)′

=Dβ • d′

2

β • d3− Dβ • d2β • d′

3

(β • d3)2. (A2b)

Sinced′1 = d3,d′

3 = −d1,d′2 = 0, we obtain

∂u

∂s=Dβ • d3

β • d3+D(β • d1)2

(β • d3)2, (A3a)

∂ν

∂s=Dβ • d2β • d1

(β • d3)2. (A3b)

Using (A1), it follows readily that

∂u

∂s=D2 + u2

D, (A4a)

∂ν

∂s=uν

D. (A4b)

Appendix B. Derivative of Eq. (22) for L(s1)

Letψ(s) = s/2 ands = 0 without loss of generality, we have

s1 = s2/2, s2 ∈ [−2π + ∆, 2π − ∆], s1 ∈ [−π + 0.5∆, π − 0.5∆]. (B1)

Hencey(s), y(s2), and ny(s1(s, s2)) can be expressed as:

y(s) = (R, 0, 0), (B2a)

y(s1) =(R cos(s1), R sin(s1),

hs12π

), (B2b)

y(s2) =(R cos(2s1), R sin(2s1),

hs1π

). (B2c)

Page 18: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

114 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

Therefore, we have

(y(s1)−y(s))×(y(s2)−y(s)) = 2R(1 − cos(s1))(hs12π

sin(s1),−hs12πcos(s1), R sin(s1)

). (B3)

In the case ofs1 �= 0, the equation for the plane determined byy(s), y (s2) andy (s1(s, s2)) is givenby

(x − y)(s)) ·(hs12π

sin(s1),−hs12πcos(s1), R sin(s1)

)= 0. (B4)

Since an arbitrary point on the detector plane can be described by(R −D,u, ν), we have

ν =Dhs12πR

+hs1ctg(s1)

2πRu. (B5)

In the case ofs1=0, we have

ν =h

2πRu. (B6)

If s �= 0, (B5) becomes

ν =Dh(s1 − s)

2πR+h(s1 − s)ctg(s1 − s)

2πRu. (B7)

Appendix C. Derivation of Eq. (23)

Shown as in Fig. 4, for fixeds andβ, we can find the intersection positionP along the directionβin the detector plane with local coordinates(u, ν,D). There exists1 andL(s1) containingP . PickP ′ ∈ L(s1), whose coordinates can be written(u, ν,D). The angle betweenOP andOP ′ is denoted asγ. Then, we have

| sin γ| =|−→OP ×−−→

OP ′||−→OP | • |−−→OP ′|

=

√(u− u)2D2 + (ν − ν)2D2 + (uν − uν)2

|−→OP | • |−−→OP ′|. (C1)

Note that(u, ν) and(u, ν) satisfy Eq. (22), we have

sin γ =(u− u)DCs,s1

|−→OP | • |−−→OP ′|, (C2)

whereCs,s1 is constant for fixeds ands1, and

Cs,s1 =

√1 +

(h(s1 − s)

2πR sin(s1 − s)

)2

. (C3)

Page 19: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 115

Assume thatP′′ ∈ L(s1) is close toP ′ with coordinates(˜u, ˜ν), and the angle betweenOP ′ andOP

′′is

∆γ. Then, we have

sin(∆γ) =(˜u− u)DCs,s1

|−−→OP ′| • |−−→OP

′′ |. (C4)

By (C4) and (C2), we have

sin(∆γ)sin γ

=(˜u− u)|−→OP |(u− u)|

−−→OP

′′ |. (C5)

If ∆γ is so small that∆γ ≈ sin(∆γ), we have

sin γ=

du|−→OP |(u− u)|−−→OP ′|

=du

√D2 + u2 + ν2

(u− u)√D2 + u2 + ν2

. (C6)

Appendix D. Implementation of formula Eq. (42b) using FFT

In fact, formula Eq. (25b) can be rewritten as:

Ψ(2)(s, u, ν) = −π(Ψ(1)(s, u, ν)∗H(u)) (D1)

where star * signifies the convolution operator andH(u) is the kernel function of Hilbert transform incontinuous domain with the expression:

H(u) =1πu

(D2)

If discretize (D1), one can get Eq. (42b) directly, that is

Ψ(2)(sk, sq, um, νq,m) ≈ −π(Ψ(1)(sk, sq, um, νq,m)∗h(m)) (D3)

with discretized Hilbert transform kernel function:

h(m) =

1πm

m �= 0

0 m = 0(D4)

Since (D4) has an infinite duration, which lead to non-realizable filter, we can truncateh(m) by awindow functionw(m) with finite length. Typical window functions include rectangular, Hamming,Hanning, Blackman, and Kaiser windows [8]. Denoteh ′(m) = h(m)w(m), one can get:

Ψ(2)(sk, sq, um, νq,m) ≈ −π(Ψ(1)(sk, sq, um, νq,m)∗h′(m)) (D5)

Page 20: Studies on implementation of the Katsevich algorithm for ... · PDF fileH. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT 99 For example,

116 H. Yu and G. Wang / Studies on implementation of the Katsevich algorithm for spiral cone-beam CT

According to the theory of signal processing, (D5) can be computed by FFT in frequency domain.Considering the finite length of the digital Hilbert transform kernel function, (D4) is refined as:

h(m) =

2 sin2(πm/2)πm

m �= 0

0 m = 0(D6)

References

[1] G. Wang, T.H. Lin, P.C. Cheng and D.M. Shinozaki, A general cone-beam reconstruction algorithm,IEEE Transaction onMedical Imaging 12(3) (1993), 486–496.

[2] H. Kudo, F. Noo and M. Defrise, Cone-beam filtered-backprojection algorithm for truncated data,Physics in Medicineand Biology 43 (1993), 2885–2909.

[3] A. Katsevich, Theoretically exact FBP-type inversion algorithm for spiral CT,SIAM J. Appl. Math. 62(6) (2002), 2012–2026.

[4] A. Katsevich, An improved exact filtered backprojection algorithm for spiral computed tomography,Advance in AppliedAathematics 32 (2004), 681–697.

[5] A. Katsevich, Analysis of an exact inversion algorithm for spiral cone-beam CT,Phys. Med. Biol. 47 (2002), 2583–2597.[6] M. Defrise, F. Noo and H. Kudo, A solution to the long-object problem in helical cone-beam tomography,Phys. Med. Bio.

45 (2000), 623–643.[7] G. Wang, T.H. Lin, P.C. Cheng and D.M. Shinozaki, A general cone-beam reconstruction algorithm,IEEE Transaction on

Medical Imaging 12 (3) (1993), 486–496.[8] P.S.R. Diniz, E.A.B. da Silva and S.L. Netto,Digital signal processing system analysis and design, Publishing house of

electronics industry, Beijing, 2002.[9] F. Noo, J. Pack and D. Heuscher, Exact helical reconstruction using native cone-beam Geometries,Phys. Med. Biol. 48

(2003), 3787–3818.