Sie sind auf Seite 1von 11

Microsc. Microanal. 7, 13–23, 2001 DOI: 10.1007/s100050010053

Microscopy AND

Microanalysis

© MICROSCOPY SOCIETY OF AMERICA 2001

Fast Algorithm for X-ray Cone-beam Microtomography

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

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 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 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

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,

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 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,

14 Ang Shih et al.

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 =

2

2

0

1

D

2

s 2

D

R

p, ,

D

h q p D 2 + p 2 + 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,

=

q

=

Dz

D s

Dt

D s

t = x cos ysin

s = −xsin ycos

,

(2)

(3)

as illustrated in Figure 3. The generalized Feldkamp reconstruction can be di- vided into the following three steps:

1. Obtain weighted projection data

D

R p, , = D 2 + p 2 + 2 R p, , ,

2. Filter the weighted data

Q q, , = R q, , * h q ,

(4)

(5)

3. Weight and backproject the filtered data

g x,y,z = 0

2

2

D s 2 Q q, , d . D

2

(6)

Cone-beam X-ray Microtomography

15

Cone-beam X-ray Microtomography 15 Figure 1. Diagram of the X-ray cone-beam microtomographic system of the Advanced

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 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 MN 2 weighting operations, 2MN 2 + 10MN 2 log 2 2N filtration operations, and 17MN 3 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., 256 3 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:

M

g x,y,z = W s Q A t,s ,A z,s , 1 ,

l=1

(7)

16 Ang Shih et al.

16 Ang Shih et al. Figure 2. Photograph of the X-ray cone-beam microtomographic system of AMIL,

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).

(F); z -axis translation stage (H); tilt and yow stage (I). Figure 3. Generalized Feldkamp cone-beam

Figure 3. Generalized Feldkamp cone-beam reconstruction system and variables.

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,

and

W s =

D 2

2 D s 2 ,

(8)

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), l ] effi- ciently, we introduce curved voxels that are discretely in- dexed by (r, , z), as shown in Figure 4. With curved voxels, backprojection components W(s)Q[A(t,s),A(z,s), l ] for

Figure 4. Curved voxels in a cylindrical coordinate system. each source angle l can be

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 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, ), two tables are de- signed for conversion from polar coordinates (r, ) to Car- tesian 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 manage- able 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 in- dexed by (r, ,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 (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.

Cone-beam X-ray Microtomography

17

those along outer rings. Cone-beam X-ray Microtomography 17 Figure 5. Small intervals in t and s

Figure 5. Small intervals in t and s for reduction of quantization errors in the mapping process.

for reduction of quantization errors in the mapping process. Figure 6. Arrangement of curved voxels of

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 P i = 2 (i − 1/2), i = 1, , K, and we would distribute V i = ceil(P i / ) voxels along the ith ring to produce a roughly squared pixel. To loop through curved voxels rapidly, we stored V i 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 /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 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.

18 Ang Shih et al. Figure 7. Flowchart for cone-beam reconstruction using curved voxels and mapping

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 ex- ecution time (set up in a 2 24 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

Central Processing Unit (CPU) Time (in seconds) for

Basic Data Processing Operations, Each of Which Was Executed

Table 1.

2 24 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.

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 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 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 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

Cone-beam X-ray Microtomography

19

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.

20

Ang Shih et al.

Table 2.

Implementation for a 256-Voxel Cube from 100 Cone-beam Projections, Keyed to Each of Basic Operations

Relative Time Consumed by the Direct Implementation of the Generalized Feldkamp Reconstruction and the Accelerated

Basic operation

Direct implementation

Mapping implementation

Operation

Relative time per instruction

Instruction no.

Relative time

Instruction no.

Relative time

+ × / Sin Cos Index Total 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

37.067

2

74.134

0

0

42.203

2

84.406

0

0

0.904

1

0.904

5

4.520

209.778

9.398

0 0.904 1 0.904 5 4.520 209.778 9.398 Figure 8. Plots of the standard deviation of

Figure 8. Plots of the standard deviation of reconstruction errors against the over-sampling size.

of reconstruction errors against the over-sampling size. Figure 9. Comparison of reconstructed image quality for

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

Cone-beam X-ray Microtomography 2 1 Figure 10. Examination of a representative profile at y = 0.2,

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 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

22 Ang Shih et al.

22 Ang Shih et al. Figure 11. a,b: Two rendered views of a small electrolytic capacitor,

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 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 II 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

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

Cone-beam X-ray Microtomography

23

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