Correlation is a standard technique for recognizing known patterns in two-dimensional grid (pixel) images. Its obvious importance has led to numerous hardware implementations and variations. Images captured directly onto 3D voxel grids are becoming more common, including those from confocal microscopy and medical imaging technologies. To our knowledge, no one has yet addressed correlation as a technique for recognizing 3D templates in such 3D voxel data. We find that this problem includes a number of issues: efficient three-axis rotation of a template with respect to 3D image, large volume of results from the correlation, and the possibility of a template matching an image multiple times. We briefly review techniques that have been used in 2D template matching, and examine analogies to a molecule interaction problem in computational chemistry, including its similarity to multispectral images. We report on a hardware accelerator for the 3D correlation problem, based on a commodity coprocessor board containing field programmable logic arrays (FPGAs). Because the convolution processor is built from reconfigurable logic, it can be adapted to non-linear scoring algorithms using complex data values at each voxel, and can be tailored to solve other problems such as anisotropic grid axes. We present initial performance results for the FPGA implementation, and note that accelerator performance is likely to grow roughly linearly with FPGA capacity, process improvements, and number of FPGAs.
['Tom VanCourt', 'Yongfeng Gu', 'Martin C. Herbordt']
Three-dimensional template correlation: object recognition in 3D voxel data