Shih2001-Fast Algorithm for X-ray Cone-beam Microtomography
Transcript of Shih2001-Fast Algorithm for X-ray Cone-beam Microtomography
Fast Algorithm for X-ray Cone-beam Microtomography
Ang Shih,1 Ge Wang,2 and Ping-Chin Cheng1*
1Advanced Microscopy and Imaging Laboratory, Department of Electrical Engineering, State University of New York at
Buffalo, 315 Bonner Hall, Buffalo, NY 142602Department of Radiology, University of Iowa, Iowa City, IA 52242
Abstract: Cone-beam X-ray microtomography attracts increasing attention due to its applications in biomedi-
cal sciences, material engineering, and industrial nondestructive evaluation. Rapid volumetric image recon-
struction 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 IIt 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
INTRODUCTION
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 bio-
logical, 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 2D-
detector 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,
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 recon-
struction, approximate cone-beam algorithms remain im-
portant, which allow incomplete scanning loci and partial
detection coverage. The Feldkamp cone-beam image recon-
struction algorithm is the most popular approximate cone-
beam algorithm, but it is limited by circular scanning,
spherical specimen reconstruction, and longitudinal image
blurring (Feldkamp et al., 1984; Kak et al., 1988). We de-
veloped 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,Received January 11, 1999; accepted June 13, 2000.
*Corresponding author
Microsc. Microanal. 7, 13–23, 2001DOI: 10.1007/s100050010053 Microscopy AND
Microanalysis© MICROSCOPY SOCIETY OF AMERICA 2001
rod-shaped, and planar specimens (Wang et al., 1992, 1993,
1999).
A major problem with the cone-beam image recon-
struction has been lack of fast algorithms for real-time or
near real-time performance. The computational complexity
of the standard Feldkamp-type reconstruction requires ex-
pensive computing resources and/or leads to lengthy com-
putational time, which preclude many important applica-
tions, 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 re-
construction 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 geom-
etry-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 microtomo-
graphic system and the generalized Feldkamp algorithm are
described, then the generalized Feldkamp algorithm is re-
formulated using curved voxels and mapping tables, and the
computational complexity analyzed. In the third section, a
speed performance review of our new algorithm is numeri-
cally and experimentally demonstrated using a personal
computer. In the last section, several relevant issues and
further research topics are discussed.
MATERIALS AND METHODS
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 (Mi-
croexpert, 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 pho-
tograph 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:
g~x,y,z! =1
2 *0
2pD2
~D − s!2 *−`
`
R~p,z,b!
h~q − p!D
=D2 + p2 + z2dpdb, (1)
where g (x,y,z) is a 3D image, D the distance between the
source and the z-axis, b the source rotation angle relative to
the z axis, R(p,z,b) cone-beam projection data,
5 z =Dz
D − s
q =Dt
D − s
(2)
H t = x cos b − ysin bs = −xsin b − ycos b, (3)
as illustrated in Figure 3.
The generalized Feldkamp reconstruction can be di-
vided into the following three steps:
1. Obtain weighted projection data
R8~p,z,b! =D
=D2 + p2 + z2R~p,z,b!, (4)
2. Filter the weighted data
Q~q,z,b! = R8~q,z,b! * h~q!, (5)
3. Weight and backproject the filtered data
g~x,y,z! = *0
2p D2
2~D − s!2 Q~q,z,b!db. (6)
14 Ang Shih et al.
Our first cone-beam image reconstruction software was di-
rectly 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 Feld-
kamp-type reconstruction consists of two processes: (1) fil-
tration, and (2) backprojection. In the filtration process,
horizontal projection profiles are ramp-filtered in the Fou-
rier domain after zero padding. In the backprojection pro-
cess, 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 backpro-
jection operations. Typically, more than 80% of the total
reconstruction time is devoted to backprojection. There-
fore, 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 ran-
dom memory space. Typically, a current personal computer
has a random memory space of 128 megabytes to 1 gi-
gabytes. As a representative problem, we consider recon-
struction of a 256-voxel cube from 100 cone-beam projec-
tions. Clearly, a direct table mapping in terms of x, y, and z
indexes would require a random memory space of 4 gi-
gabytes 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). How-
ever, this requirement may be significantly reduced if we
reformulate the generalized Feldkamp algorithm in the dis-
crete domain as follows:
g~x,y,z! = (l=1
M
W~s!Q@A~t,s!,A~z,s!,b1#, (7)
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.
Cone-beam X-ray Microtomography 15
where x,y and z are defined only at finitely many prespeci-
fied locations (a regular 3D Cartesian grid), t and s depend
on x and y,
W~s! =D2Db
2~D − s!2,
(8)
and
A~u,s! =Du
D − s(9)
are 1D and 2D, respectively.
To accumulate the terms W(s)Q[A(t,s),A(z,s),bl] effi-
ciently, we introduce curved voxels that are discretely in-
dexed by (r, u, z), as shown in Figure 4. With curved voxels,
backprojection components W(s)Q[A(t,s),A(z,s),bl] for
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.
16 Ang Shih et al.
each source angle bl can be easily accumulated after an
appropriate translation in u. Also, backprojection based on
curved voxels naturally avoids computation for voxels out-
side the reliable reconstruction cylinder, in which voxels are
seen from all the X-ray source positions.
To rapidly compute (t,s) from (r,u), two tables are de-
signed for conversion from polar coordinates (r,u) to Car-
tesian coordinates (t,s), which are denoted as T(r,u) and
S(r,u), 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 manage-
able sizes of memory space for W(s) and A(u,s), T(r,u) and
S(r,u). For every curved voxel (r,u,z) and each source angle
bl, (t,s) are well approximated from T(r,u) and S(r,u), W(s),
A(t,s), and A(z,s) subsequently retrieved, and W(s)Q
[A(t,s),A(z,s),bl] computed. After backprojection over the
curved voxels is done, the reconstructed image volume in-
dexed by (r,u,z) should be transformed into the conven-
tional format indexed by (x,y,z) for direct use with image
visualization and analysis software. Hence, two more tables,
R(x,y) and U(x,y), are needed to find values of voxels at
(x,y,z) from values at cylindrical coordinates (r,u,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.
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 D = N/2K,
the perimeter of the ith ring Pi = 2pD(i − 1/2), i =
1, ? ? ? , K, and we would distribute Vi = ceil(Pi/D) 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 recon-
struction 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 p/4
voxels will be processed as compared to the Cartesian sys-
tem-based reconstruction. Figure 7 shows a flowchart for
the table mapping reconstruction algorithm.
Computational Complexity
We use a Pentium IIt 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
Figure 6. Arrangement of curved voxels of similar sizes.
Figure 4. Curved voxels in a cylindrical coordinate system.
Figure 5. Small intervals in t and s for reduction of quantization
errors in the mapping process.
Cone-beam X-ray Microtomography 17
basic data operations, including addition, multiplication,
division, sine, cosine, tangent, and indexing of a 1D array.
The operations time was recorded with the instruction ex-
ecution 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
Figure 7. Flowchart for
cone-beam reconstruction using
curved voxels and mapping
tables.
18 Ang Shih et al.
fast reconstruction schemes improve the computational ef-
ficiency by more than 22 times.
RESULTS
Our earlier standard software for generalized Feldkamp re-
construction 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 IIt 233 CPU installed
on a Gigabytet 686LX2 motherboard with 128 megabyte
SDRAM under NTt 4.0. Nearest neighbor interpolation
was applied whenever interpolation was needed. Both nu-
merical simulation and physical experiments were per-
formed to refine reconstruction parameters and verify pro-
grams.
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
x–y–z system, its horizontal axis p stays in the x–y plane,
and its vertical axis z was superimposed upon the z-axis. A
3D version of Shepp and Logan’s (1974) head phantom was
used as the testing object. One hundred cone-beam projec-
tions with a 3.6° angular interval were used for the recon-
struction. 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 re-
construction 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 stan-
dard 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 origi-
nal 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 imple-
mentation 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 rela-
tive 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 table-
mapping-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 pro-
jection was exposed and integrated for 0.5 sec. The recon-
struction time was 2 min, much shorter than 20 min taken
by our earlier software that directly implemented the gen-
eralized Feldkamp formula. In comparison to the incre-
mental algorithm (He et al., 1993), our version of incre-
mental back-projection implementation has a reconstruc-
tion time of 5 min.
DISCUSSION AND CONCLUSIONS
The system setup we described in this article was for testing
the feasibility of our table-mapping-based generalized Feld-
kamp reconstruction. The next step is to use a micro-
focused 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.
Table 1. Central Processing Unit (CPU) Time (in seconds) for
Basic Data Processing Operations, Each of Which Was Executed
224 Times in a Loop
+ × / Sin Cos Index
Short
integer 0.778 1.798 2.937 NA NA 1.313
Float 2.564 2.314 7.272 37.067 42.203 0.904
Double 3.447 4.713 4.480 NA NA 1.059
NA, not available.
Cone-beam X-ray Microtomography 19
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 Direct implementation Mapping implementation
Operation Relative time per instruction Instruction no. Relative time Instruction no. Relative time
+ 2.564 4 10.256 1 2.564
× 2.314 9 20.826 1 2.314
/ 7.272 3 21.816 0 0
Sin 37.067 2 74.134 0 0
Cos 42.203 2 84.406 0 0
Index 0.904 1 0.904 5 4.520
Total relative time 209.778 9.398
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.
20 Ang Shih et al.
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 ap-
plication-dependent. The general relationships between im-
age 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 rela-
tively 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 recon-
struction is highly parallel in its computational structure.
With rapid development of computing technologies, real-
time 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 al-
gorithms require that projections should not be truncated
along at least one direction. Therefore, satisfactory cone-
beam reconstruction with these algorithms is impossible in
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.
Cone-beam X-ray Microtomography 21
cases where objects contain X-ray opaque components and/
or are larger than the cone-beam aperture defined by effec-
tive 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 par-
allel 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 in-
tensive steps. Therefore, the reconstruction procedure
would not require high-speed floating point calculation
anymore; in fact, in our experiment, even though our work-
station has three times the GFLOP performance. Our gen-
eralized personal computer outperforms our 10 times ex-
pensive workstation. Furthermore, the noncalculation in-
tensive algorithm is a parallel process and pipe-line
architecture friendly algorithm for load distribution imple-
mentation. On the other hand, the table-mapping algo-
rithm has less advantage on an high-performance worksta-
tion, 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 implementa-
tion, 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 algo-
rithm 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 IIt 233MHz personal computer. With our
method, computationally intensive backprojection has been
turned into simple mapping, which allows even faster hard-
ware implementation. With ever-improving computing re-
sources, we believe that real-time or near real-time cone-
beam tomography will play a substantial role in various
applications.
ACKNOWLEDGMENTS
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.
REFERENCES
Cheng PC, Lin TH, Shinozaki DM, Newberry SP (1991) Projection
microscopy and microtomography using X-rays. J Scanning Mi-
crosc 13(I):10–11
Feldkamp LA, Davis LC, Kress JW (1984) Practical cone-beam
algorithm. J Opt Soc Am 1:612–619
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:295–303
He YJ, Chi A, Sun JA (1993) Increment backprojection algorithm:
modification of the searching flow scheme and utilization of the
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.
22 Ang Shih et al.
relationship among projection views. IEEE Trans Med Imag 12:
555–559
Kak AC, Slaney M (1988) Principle of computerized tomographic
imaging. New York: IEEE Press, pp 99
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:2471–2474
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
209–230
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:216–217
Peters TM (1981) Algorithms for fast back- and re-projection in
computed tomography. IEEE Trans Nucl Sci NS28:3641–3647
Russ JC (1988) Differential absorption three-dimensional mi-
crotomography. Trans Am Nucl Soc 56:14
Shepp LA, Logan BF (1974) The Fourier reconstruction of a head
section. IEEE Trans Nucl Sci NS21:21–43
Wang G, Lin TH, Cheng PC, Shinozaki DM (1992) Cone-beam
X-ray reconstruction of plate-like specimens. J Scanning Microsc
14:350–354
Wang G, Lin TH, Cheng PC, Shinozaki DM (1993) A general
cone-beam reconstruction algorithm. IEEE Trans Med Imag 12:
486–496
Wang G, Snyder DL, O’Sullivan JA, Vannier MW (1996) Iterative
deblurring for metal artifact reduction. IEEE Trans Med Imag 15:
657–664
Wang G, Zhao SY, Cheng PC (1999) Exact and approximate cone-
beam X-ray microtomography. In: Focus on Multidimensional Mi-
croscopy, Vol. 1, Cheng PC, Huang PP, Wu JL, Wang G, Kim HG
(eds). Singapore: World Scientific, pp 233–261
Cone-beam X-ray Microtomography 23