Adapting Frequency Domain Volume Rendering to the BCC lattice
The input data for 3D volume rendering is usually given by a spatial location (coordinates) in the 3D space and an associated density value. Volume rendering algorithms usually have to traverse the whole data set to generate a 2D image from the 3D data set, hence their complexity is O(n^3). n denotes the number of data values along one axis. Frequency Domain Volume Rendering (also called Fourier Volume Rendering) speeds up the 2D image generation process from O(n^3) to O(n^2 log(n)) by making use of the Fourier Projection Slice Theorem. This theorem states, that you get the the same result when you first transform the given data from the spatial domain into the frequency domain (decomposition of spatial data into its frequency components), then extracting a slice containing the origin (which contains to low frequencies of the data) and which is perpendicular to the viewing direction and transforming back this 2D data set to the spatial domain in contrast to directly generate a 2D image by computing line integrals along the viewing direction. But one has to keep in mind that the first transform is of O(n^3 log(n)) and has to be done only once. Up to now, this algorithm was mostly used on the regular cubic lattice with its orthogonal coordinate system. The goal of this project is to exploit the advantages of the BCC (body centered cubic) lattice which turns out to be abround 30 % savings in memory and therefore a speed-up in the image generation itself, too.