Anda di halaman 1dari 11

Microsc. Microanal.

7, 1323, 2001
DOI: 10.1007/s100050010053

Microscopy
Microanalysis

AND

MICROSCOPY SOCIETY OF AMERICA 2001

Fast Algorithm for X-ray Cone-beam Microtomography


Ang Shih,1 Ge Wang,2 and Ping-Chin Cheng1*
1

Advanced Microscopy and Imaging Laboratory, Department of Electrical Engineering, State University of New York at
Buffalo, 315 Bonner Hall, Buffalo, NY 14260
2
Department of Radiology, University of Iowa, Iowa City, IA 52242

Abstract: Cone-beam X-ray microtomography attracts increasing attention due to its applications in biomedical sciences, material engineering, and industrial nondestructive evaluation. Rapid volumetric image reconstruction is highly desirable in all these areas for prompt visualization and analysis of complex structures of
interest. In this article, we reformulate a generalized Feldkamp cone-beam image reconstruction algorithm,
utilize curved voxels and mapping tables, improve the reconstruction efficiency by an order of magnitude
relative to a direct implementation of the standard algorithm, and demonstrate the feasibility with numerical
simulation and experiments using a prototype cone-beam X-ray microtomographic system. Our fast algorithm
reconstructs a 256-voxel cube from 100 projections within 2 min on an Intel Pentium II 233 MHz personal
computer, produces satisfactory image quality, and can be further accelerated using special hardware and/or
parallel processing techniques.
Key words: X-ray computed tomography, cone-beam, microtomography, image reconstruction, real-time,
nondestructive evaluation

I NTRODUCTION
Due to its penetration ability and contrast mechanism,
cone-beam X-ray microtomography is a powerful tool in
studies on 3D microstructures of opaque specimens in biological, medical, material, and industrial applications (Russ,
1988; Kinney et al., 1989; Cheng et al., 1991; Pan et al., 1997;
Wang et al., 1999). With an X-ray point source and a 2Ddetector array, X-rays intersecting a spherical specimen
form a cone, giving rise to the nomenclature cone-beam.
Compared to parallel-beam or fan-beam approaches, the
cone-beam geometry is beneficial for faster data collection,
Received January 11, 1999; accepted June 13, 2000.
*Corresponding author

higher image resolution, better radiation utilization and


easier hardware implementation (Cheng et al., 1991; Wang
et al., 1999).
Despite impressive progress in exact cone-beam reconstruction, approximate cone-beam algorithms remain important, which allow incomplete scanning loci and partial
detection coverage. The Feldkamp cone-beam image reconstruction algorithm is the most popular approximate conebeam algorithm, but it is limited by circular scanning,
spherical specimen reconstruction, and longitudinal image
blurring (Feldkamp et al., 1984; Kak et al., 1988). We developed a prototype cone-beam X-ray microtomographic
system (Cheng et al., 1991), and generalized the Feldkamp
algorithm to allow flexible scanning loci including helical/
helical-like scanning patterns, and reconstruct spherical,

14

Ang Shih et al.

rod-shaped, and planar specimens (Wang et al., 1992, 1993,


1999).
A major problem with the cone-beam image reconstruction has been lack of fast algorithms for real-time or
near real-time performance. The computational complexity
of the standard Feldkamp-type reconstruction requires expensive computing resources and/or leads to lengthy computational time, which preclude many important applications, such as on-line inspection of industrial products,
massive screening of certain objects, and dynamic studies of
time-varying specimens/processes.
Substantial efforts have been made to shorten the reconstruction time by algorithmic improvement. A
STRETCH algorithm approximates bi-linearly interpolated
projection data with nearest neighbors that are efficiently
computed with a sufficiently small step (Peters, 1981). An
incremental reconstruction algorithm utilizes beam geometry-based pixels, instead of Cartesian grid points (He et al.,
1993). The beam-oriented pixels are also useful in emission
computed tomography (CT) (Gullberg et al., 1996).
In this article, we report a fast reconstruction algorithm
for generalized Feldkamp image back-projection using a
table mapping strategy on a personal computer. In the next
section, both a prototype cone-beam X-ray microtomographic system and the generalized Feldkamp algorithm are
described, then the generalized Feldkamp algorithm is reformulated using curved voxels and mapping tables, and the
computational complexity analyzed. In the third section, a
speed performance review of our new algorithm is numerically and experimentally demonstrated using a personal
computer. In the last section, several relevant issues and
further research topics are discussed.

M ATERIALS

AND

M ETHODS

Cone-beam Microtomographic System


A cone-beam X-ray microtomographic system has been
constructed at the Advanced Microscopy and Imaging
Laboratory (AMIL), State University of New York at Buffalo
(SUNY/Buffalo). The system consists of an X-ray source, a
3D translation and rotation stage, an X-ray scintillation
phosphor screen (built at SUNY/Buffalo), a high resolution
(1288 1004) slow-scan cooled charge-coupled device
(CCD) camera (Photometric C200, Tucson, AZ; Kodak
KAF 1400, Rochester, NY), and a personal computer (Microexpert, Cheektowaga, NY). The X-ray source can be ei-

ther a dental X-ray source (Aztech 65, Boulder, CO) or a


micro-focused electron optical column, depending on the
image resolution requirement. Figures 1 and 2 are a photograph and a diagram of this cone-beam imaging system,
respectively.

Generalized Feldkamp Algorithm


The generalized Feldkamp cone-beam image reconstruction
algorithm is expressed as follows:

1
gx,y,z =
2

D2

D s Rp,,
2

h q p

D2 + p2 + 2

dpd,

(1)

where g (x,y,z) is a 3D image, D the distance between the


source and the z-axis, the source rotation angle relative to
the z axis, R(p,,) cone-beam projection data,

Dz
Ds
Dt
q=
Ds
=

(2)

x cos ysin
st==xsin
ycos ,

(3)

as illustrated in Figure 3.
The generalized Feldkamp reconstruction can be divided into the following three steps:
1. Obtain weighted projection data

Rp,, =

D2 + p2 + 2

Rp,,,

(4)

2. Filter the weighted data


Qq,, = Rq,, * hq,

(5)

3. Weight and backproject the filtered data

gx,y,z =

D
2 Qq,, d.
2D s

(6)

Cone-beam X-ray Microtomography 15

Figure 1. Diagram of the X-ray


cone-beam microtomographic
system of the Advanced
Microscopy and Imaging
Laboratory (AMIL), State
University of New York at
Buffalo (SUNY/Buffalo). CCD,
charge-coupled device.

Our first cone-beam image reconstruction software was directly based on a discrete version of the above formulas to
test the feasibility and provide the gold standard.

Fast Reconstruction Techniques


The Feldkamp-type cone-beam reconstruction is cast in the
filtered backprojection framework. Specifically, the Feldkamp-type reconstruction consists of two processes: (1) filtration, and (2) backprojection. In the filtration process,
horizontal projection profiles are ramp-filtered in the Fourier domain after zero padding. In the backprojection process, an image volume is reconstructed by backprojecting
filtered data along X-ray paths with appropriate weights. Let
us consider reconstruction of an N voxel cube from M
projections. Roughly speaking, a standard Feldkamp-type
algorithm requires MN2 weighting operations, 2MN2 +
10MN2 log2 2N filtration operations, and 17MN3 backprojection operations. Typically, more than 80% of the total
reconstruction time is devoted to backprojection. Therefore, the backprojection is the computational bottleneck of

filtered backprojection-based reconstruction and, in this


subsection, we will focus on acceleration of backprojection
for Feldkamp-type reconstruction.
The table mapping can be very effective for reduction
of computational time. The limiting factor is available random memory space. Typically, a current personal computer
has a random memory space of 128 megabytes to 1 gigabytes. As a representative problem, we consider reconstruction of a 256-voxel cube from 100 cone-beam projections. Clearly, a direct table mapping in terms of x, y, and z
indexes would require a random memory space of 4 gigabytes in this case (i.e., 2563 for every reconstruct voxel,
times 100 for different directions, and times 3 for separate
tables of x-axis index, y-axis index, and coefficients). However, this requirement may be significantly reduced if we
reformulate the generalized Feldkamp algorithm in the discrete domain as follows:
M

gx,y,z =

WsQAt,s,Az,s, ,
1

l=1

(7)

16 Ang Shih et al.

Figure 2. Photograph of the


X-ray cone-beam
microtomographic system of
AMIL, SUNY/Buffalo. X-ray
source (A); specimen holder (B);
scintillator (C); relay lens (D);
slow-scan cooled CCD (E);
x-axis translation stage (F);
z-axis translation stage (H); tilt
and yow stage (I).

Figure 3. Generalized Feldkamp cone-beam


reconstruction system and variables.

where x,y and z are defined only at finitely many prespecified locations (a regular 3D Cartesian grid), t and s depend
on x and y,

Ws =

and

D2
2D s2 ,

(8)

Au,s =

Du
Ds

(9)

are 1D and 2D, respectively.


To accumulate the terms W(s)Q[A(t,s),A(z,s),l] efficiently, we introduce curved voxels that are discretely indexed by (r, , z), as shown in Figure 4. With curved voxels,
backprojection components W(s)Q[A(t,s),A(z,s),l] for

Cone-beam X-ray Microtomography 17

Figure 5. Small intervals in t and s for reduction of quantization


errors in the mapping process.

Figure 4. Curved voxels in a cylindrical coordinate system.

each source angle l can be easily accumulated after an


appropriate translation in . Also, backprojection based on
curved voxels naturally avoids computation for voxels outside the reliable reconstruction cylinder, in which voxels are
seen from all the X-ray source positions.
To rapidly compute (t,s) from (r,), two tables are designed for conversion from polar coordinates (r,) to Cartesian coordinates (t,s), which are denoted as T(r,) and
S(r,), independent of z.
As shown in Figure 5, intervals in t and s should be
made small so that quantization errors are insignificant, but
these intervals should not be too small to result in manageable sizes of memory space for W(s) and A(u,s), T(r,) and
S(r,). For every curved voxel (r,,z) and each source angle
l, (t,s) are well approximated from T(r,) and S(r,), W(s),
A(t,s), and A(z,s) subsequently retrieved, and W(s)Q
[A(t,s),A(z,s),l] computed. After backprojection over the
curved voxels is done, the reconstructed image volume indexed by (r,,z) should be transformed into the conventional format indexed by (x,y,z) for direct use with image
visualization and analysis software. Hence, two more tables,
R(x,y) and (x,y), are needed to find values of voxels at
(x,y,z) from values at cylindrical coordinates (r,,z).
A refinement should be made to correct the drawback
of the curved voxels in Figure 4, in which voxels along inner
rings are substantially smaller than those along outer rings.

Figure 6. Arrangement of curved voxels of similar sizes.

With loss of generality, let us assume an N-voxel cubic


volume and the unit size of cubic voxels. Suppose there are
K centered rings participating a transaxial slice, as shown in
Figure 6 while K = 4, the thickness of each ring = N/2K,
the perimeter of the ith ring Pi = 2(i 1/2), i =
1, , K, and we would distribute Vi = ceil(Pi/) voxels
along the ith ring to produce a roughly squared pixel.
To loop through curved voxels rapidly, we stored Vi as
a function of the ring index i in table V(i). A trade-off must
be made in selection of K. The larger K, the higher reconstruction accuracy will be achieved, but the larger memory
space and the longer computational time will be involved.
Practically, we may just set K to N/2. In this case, only /4
voxels will be processed as compared to the Cartesian system-based reconstruction. Figure 7 shows a flowchart for
the table mapping reconstruction algorithm.

Computational Complexity
We use a Pentium II 233MHz computer under Windows
NT 4.0 and Microsoft Visual C++ 4.2. Table 1 lists the
central processing unit (CPU) time in seconds for each of

18 Ang Shih et al.

Figure 7. Flowchart for


cone-beam reconstruction using
curved voxels and mapping
tables.

basic data operations, including addition, multiplication,


division, sine, cosine, tangent, and indexing of a 1D array.
The operations time was recorded with the instruction execution time (set up in a 224 loops) subtract the empty loop

execution time. Table 2 compares time consumed by the


standard Feldkamp-type reconstruction and our accelerated
implementation for a 256-voxel cube from 100 cone-beam
projections keyed to each of basic operations. Clearly, our

Cone-beam X-ray Microtomography 19

Table 1. Central Processing Unit (CPU) Time (in seconds) for


Basic Data Processing Operations, Each of Which Was Executed
224 Times in a Loop

Short
integer
Float
Double

Sin

Cos

Index

0.778
2.564
3.447

1.798
2.314
4.713

2.937
7.272
4.480

NA
37.067
NA

NA
42.203
NA

1.313
0.904
1.059

NA, not available.

fast reconstruction schemes improve the computational efficiency by more than 22 times.

R ESULTS
Our earlier standard software for generalized Feldkamp reconstruction was used as the reference, and modified to
implement the fast reconstruction techniques described
above. The programs were coded in Microsoft Visual C++
4.2, and tested on an Intel Pentium II 233 CPU installed
on a Gigabyte 686LX2 motherboard with 128 megabyte
SDRAM under NT 4.0. Nearest neighbor interpolation
was applied whenever interpolation was needed. Both numerical simulation and physical experiments were performed to refine reconstruction parameters and verify programs.
A point X-ray source, point detectors, and circular
scanning were assumed. The source-to-origin distance was
set to 6 cm. The image volume to be reconstructed was
assumed to be a 256-voxel cube. The detector plane was 2.2
by 2.2 cm with 256 by 256 detectors, and for the ease of
computation it was scaled to pass through the z-axis of the
reconstruction coordinate system. Specifically, the detector
plane was so placed that its center is at the origin of the
xyz system, its horizontal axis p stays in the xy plane,
and its vertical axis was superimposed upon the z-axis. A
3D version of Shepp and Logans (1974) head phantom was
used as the testing object. One hundred cone-beam projections with a 3.6 angular interval were used for the reconstruction. Cone-beam projection data were synthesized
based on analytically derived formulas.
This phantom was reconstructed using both our direct
implementation of the generalized Feldkamp algorithm and
the table mapping-based software to evaluate effects of reconstruction parameters on image quality. As mentioned in

the proceeding section, over-sampling in t and s would


reduce the reconstruction error without compromising the
reconstruction speed, but this gain is at cost of enlarged
mapping tables. The standard deviation of reconstruction
errors against the over-sampling size were plotted in Figure
8, which helped determine the lengths of t and s intervals for
design of related tables. We also monitored the change in
edge sharpness as a function of table sizes, but would not
include those curves for sake of brevity. In this study, we
used 512 intervals of the same length for both t and s.
Compared to the ideal values of the phantom, the standard deviation of reconstruction errors with the direct
implementation and the table-mapping improvement was
0.03 and 0.05, respectively. The original image and two
reconstructed counterparts of a representative slice at z =
0.25 are shown in Figure 9. The intensity profiles of original and reconstructed values for the line at (y,z) = (0.2,
0.25) were plotted in Figure 10. An analysis on a 100 by
100 homogeneous region in the slice at z = 0 indicated that
the image noise standard deviation with the direct implementation and the table-mapping improvement are 0.0125
and 0.0122, respectively. Visual inspection with different
settings of brightness and contrast of display suggested that
our fast algorithm produced comparable image quality relative to our earlier standard software.
As a real example, Figure 11 includes two rendered
views of a small electrolytic capacitor, which was scanned
with our prototype microtomographic system described in
the preceding section, and reconstructed using our tablemapping-based software. The specimen-to-source distance
was 8.13 cm. The specimen-to-detector distance was 3.81
cm. Hundred cone-beam projections were taken. Each projection was exposed and integrated for 0.5 sec. The reconstruction time was 2 min, much shorter than 20 min taken
by our earlier software that directly implemented the generalized Feldkamp formula. In comparison to the incremental algorithm (He et al., 1993), our version of incremental back-projection implementation has a reconstruction time of 5 min.

D ISCUSSION

AND

C ONCLUSIONS

The system setup we described in this article was for testing


the feasibility of our table-mapping-based generalized Feldkamp reconstruction. The next step is to use a microfocused X-ray source and a higher density CCD detector
array to obtain microtomographic image volumes in near
real-time. We are actively working along this direction.

20 Ang Shih et al.

Table 2. Relative Time Consumed by the Direct Implementation of the Generalized Feldkamp Reconstruction and the Accelerated
Implementation for a 256-Voxel Cube from 100 Cone-beam Projections, Keyed to Each of Basic Operations
Basic operation
Operation

Direct implementation
Relative time per instruction

+
2.564

2.314
/
7.272
Sin
37.067
Cos
42.203
Index
0.904
Total relative time

Mapping implementation

Instruction no.

Relative time

Instruction no.

4
9
3
2
2
1
209.778

10.256
20.826
21.816
74.134
84.406
0.904

1
1
0
0
0
5
9.398

Relative time
2.564
2.314
0
0
0
4.520

Figure 8. Plots of the standard deviation


of reconstruction errors against the
over-sampling size.

Figure 9. Comparison of
reconstructed image quality for
slice z = 0.25. a: The image
reconstructed using our direct
implementation of the
generalized Feldkamp
reconstruction; b: the
counterpart using our
table-mapping algorithm.

Cone-beam X-ray Microtomography 21

Figure 10. Examination of a


representative profile at y = 0.2,
z = 0.25. a: The original
profile and the reconstructed
profile using our direct
implementation of the
generalized Feldkamp
reconstruction; b: the
counterparts using our
table-mapping algorithm.
Examination of a representative
profile at y = 0.6, z = 0.25.
c: The original profile and the
reconstructed profile using our
direct implementation of the
generalized Feldkamp
reconstruction; d: the
counterparts using our
table-mapping algorithm.

Further refinements of our table-mapping and curved


voxel techniques are possible. For example, utilization of
mapping tables can effectively shorten the backprojection
process. However, a paradox is that large mapping tables are
not practical in many cases, while small mapping tables will
not yield satisfactory image quality. A balance must be application-dependent. The general relationships between image quality indexes and table design parameters may be
analytically quantified (Kriete, 1994).
Although our emphasis was put on backprojection,
similar fast processing techniques can be applied to improve
the speed of data preprocessing and filtration. Some relatively time-consuming parts could be even implemented in

assembly language for minimum computational overhead.


Also, all the software work could surely be done by specially
designed hardware. Furthermore, Feldkamp-type reconstruction is highly parallel in its computational structure.
With rapid development of computing technologies, realtime cone-beam tomography should be a reality in near
future.
Our fast reconstruction techniques may be adapted for
iterative cone-beam reconstruction as well (Wang et al.,
1996, 1999). Currently available noniterative cone-beam algorithms require that projections should not be truncated
along at least one direction. Therefore, satisfactory conebeam reconstruction with these algorithms is impossible in

22 Ang Shih et al.

Figure 11. a,b: Two rendered views of


a small electrolytic capacitor, which
was scanned with our prototype
microtomographic system and
reconstructed using our table-mapping
algorithm.

cases where objects contain X-ray opaque components and/


or are larger than the cone-beam aperture defined by effective detection area and X-ray source position. Recently, it
was demonstrated that both EM- and ART-type algorithms
are effective for metal artifact reduction and local region
reconstruction. These iterative algorithms share a fully parallel reprojection and backprojection format, and can be
efficiently implemented using the techniques we developed
in this article.
The fast table-mapping reconstruction algorithm has
simplified the back-projection process to noncalculation intensive steps. Therefore, the reconstruction procedure
would not require high-speed floating point calculation
anymore; in fact, in our experiment, even though our workstation has three times the GFLOP performance. Our generalized personal computer outperforms our 10 times expensive workstation. Furthermore, the noncalculation intensive algorithm is a parallel process and pipe-line
architecture friendly algorithm for load distribution implementation. On the other hand, the table-mapping algorithm has less advantage on an high-performance workstation, due to the algorithm not depending on fast processors.
In conclusion, we have significantly accelerated the
generalized Feldkamp algorithm using curved voxels and
mapping tables, and improved the reconstruction efficiency
by an order of magnitude relative to a direct implementation, in comparison with an incremental implementation of
the standard algorithm which is, to our best knowledge, the
fastest method (He et al., 1993). The table-mapping algorithm improved the reconstruction efficient more than a
factor of two. The table-mapping algorithm accelerates the
generalized computer to provide a low-cost solution for
computer tomography reconstruction. Using our tech-

niques, a 256-voxel cube from 100 projections of 256 by 256


detectors can be reconstructed within 2 min on an Intel
Pentium II 233MHz personal computer. With our
method, computationally intensive backprojection has been
turned into simple mapping, which allows even faster hardware implementation. With ever-improving computing resources, we believe that real-time or near real-time conebeam tomography will play a substantial role in various
applications.

A CKNOWLEDGMENTS
The authors thank Mr. W. Schulze for excellent machining
work, Mr. C. Shen for technical assistance, and Dr. Carl
Crawford for helpful discussion. This project was supported
in part by the Academic Development Fund of the State
University of New York.

R EFERENCES
Cheng PC, Lin TH, Shinozaki DM, Newberry SP (1991) Projection
microscopy and microtomography using X-rays. J Scanning Microsc 13(I):1011
Feldkamp LA, Davis LC, Kress JW (1984) Practical cone-beam
algorithm. J Opt Soc Am 1:612619
Gullberg GT, Hsieh YL, Zeng LG (1996) An SVD reconstruction
algorithm using a natural pixel representation of the attenuated
Radon transform. IEEE Trans Nucl Sci 43:295303
He YJ, Chi A, Sun JA (1993) Increment backprojection algorithm:
modification of the searching flow scheme and utilization of the

Cone-beam X-ray Microtomography 23

relationship among projection views. IEEE Trans Med Imag 12:


555559

Russ JC (1988) Differential absorption three-dimensional microtomography. Trans Am Nucl Soc 56:14

Kak AC, Slaney M (1988) Principle of computerized tomographic


imaging. New York: IEEE Press, pp 99

Shepp LA, Logan BF (1974) The Fourier reconstruction of a head


section. IEEE Trans Nucl Sci NS21:2143

Kinney JH, Johnson QC, Nichols MC, Bonse U, Saroyan RA,


Nusshardt R, Pahl R (1989) X-ray microtomography on beamline
X at SSRL. Rev Sci Instrum 60:24712474
Kriete A (1994) Image quality considerations in computerized 2-D
and 3-D microscopy. In: Multidimensional Microscopy, Cheng PC,
Lin TH, Wu WL, Wu JL (eds). New York: Springer-Verlag, pp
209230
Pan SJ, Shih A, Liou WS, Park MS, Wang G, Bohne B, Newberry
SP, Kim H, Cheng PC (1997) Cone-beam X-ray microtomography
of human inner ear. J Anal Morphol 4:216217
Peters TM (1981) Algorithms for fast back- and re-projection in
computed tomography. IEEE Trans Nucl Sci NS28:36413647

Wang G, Lin TH, Cheng PC, Shinozaki DM (1992) Cone-beam


X-ray reconstruction of plate-like specimens. J Scanning Microsc
14:350354
Wang G, Lin TH, Cheng PC, Shinozaki DM (1993) A general
cone-beam reconstruction algorithm. IEEE Trans Med Imag 12:
486496
Wang G, Snyder DL, OSullivan JA, Vannier MW (1996) Iterative
deblurring for metal artifact reduction. IEEE Trans Med Imag 15:
657664
Wang G, Zhao SY, Cheng PC (1999) Exact and approximate conebeam X-ray microtomography. In: Focus on Multidimensional Microscopy, Vol. 1, Cheng PC, Huang PP, Wu JL, Wang G, Kim HG
(eds). Singapore: World Scientific, pp 233261

Anda mungkin juga menyukai