Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
468918 | Computer Methods and Programs in Biomedicine | 2010 | 8 Pages |
Cone-beam spiral backprojection is computationally highly demanding. At first sight, the backprojection requirements are similar to those of cone-beam backprojection from circular scans such as it is performed in the widely used Feldkamp algorithm. However, there is an additional complication: the illumination of each voxel, i.e. the range of angles the voxel is seen by the X-ray cone is a complex function of the voxel position. The weight function has no analytically closed form and must be numerically determined. Storage of the weights is prohibitive since the amount of memory required equals the number of voxels per spiral rotation times the number of projections a voxel receives contributions and therefore is in the order of 109109 to 10111011 floating point values for typical spiral scans. We propose a new algorithm that combines the spiral symmetry with the ability of today’s 64 bit CPUs to store large amounts of precomputed weights. Using the spiral symmetry in this way allows to exploit data-level parallelism and thereby to achieve a very high level of vectorization. An additional postprocessing step rotates these slices back to normal images. Our new backprojection algorithm achieves up to 24.6 Giga voxel updates per second (GUPS) on our systems that are equipped with two standard Intel X5570 quad core CPUs (Intel Xeon 5500 platform, 2.93 GHz, Intel Corporation). This equals the reconstruction of 410 images per second assuming each slice consists of 512×512512×512 pixels, receiving contributions from 512 projections.