Real-Time Surface Extraction and Visualization of Medical Images using OpenCL and GPUs
Norwegian University of Science and Technology
Norsk informatikkonferanse, 2012
@article{smistad2012real,
title={Real-Time Surface Extraction and Visualization of Medical Images using OpenCL and GPUs},
author={Smistad, E. and Elster, A.C. and Lindseth, F.},
journal={Norsk informatikkonferanse},
volume={2012},
year={2012},
publisher={Akademika forlag}
}
Marching Cubes (MC) is an algorithm that extracts surfaces from volumetric scalar data. It is used extensively in visualization and analysis of medical data from modalities like CT and MR, usually after a 3D segmentation of the structures of interest have been performed. Implementations of MC on CPUs are slow, using several seconds (even minutes) to extract the surface before sending it to the Graphics Processing Unit (GPU) for rendering. Fast surface extraction implementations are very beneficial in medical applications, where large datasets are used and time is crucial. Analysis of medical image data often entails changing different parameters, thus real-time implementations are very desirable. MC is a completely dataparallel algorithm, making it ideal for execution on GPUs. GPU processing enables the result to be rendered on screens in a few milliseconds. In this paper, a MC implementation written in OpenCL that runs entirely on the GPU is presented. We show that our implementation uses a more efficient storage scheme than previous GPU implementations, and that this enables real-time processing of large medical datasets. Our implementation also shows that GPU implementations written in OpenCL has the potential of being just as fast and efficient as CUDA or shader implementations.
November 14, 2012 by hgpu