This Article 
 Bibliographic References 
 Add to: 
A Streaming Narrow-Band Algorithm: Interactive Computation and Visualization of Level Sets
July/August 2004 (vol. 10 no. 4)
pp. 422-433

Abstract—Deformable isosurfaces, implemented with level-set methods, have demonstrated a great potential in visualization and computer graphics for applications such as segmentation, surface processing, and physically-based modeling. Their usefulness has been limited, however, by their high computational cost and reliance on significant parameter tuning. This paper presents a solution to these challenges by describing graphics processor (GPU) based algorithms for solving and visualizing level-set solutions at interactive rates. The proposed solution is based on a new, streaming implementation of the narrow-band algorithm. The new algorithm packs the level-set isosurface data into 2D texture memory via a multidimensional virtual memory system. As the level set moves, this texture-based representation is dynamically updated via a novel GPU-to-CPU message passing scheme. By integrating the level-set solver with a real-time volume renderer, a user can visualize and intuitively steer the level-set surface as it evolves. We demonstrate the capabilities of this technology for interactive volume segmentation and visualization.

[1] S. Osher and J. Sethian, Fronts Propagating with Curvature-Dependent Speed: Algorithms Based on Hamilton-Jacobi Formulations J. Computational Physics, vol. 79, pp. 12-49, 1988.
[2] R. Fedkiw and S. Osher, Level Set Methods and Dynamic Implicit Surfaces. Springer, 2002.
[3] J.A. Sethian, Level Set Methods and Fast Marching Methods Evolving Interfaces in Computational Geometry, Fluid Mechanics, Computer Vision, and Materials Science. Cambridge Univ. Press, 1999.
[4] R.T. Whitaker, Volumetric Deformable Models: Active Blobs Proc. Visualization in Biomedical Computing 1994, R.A. Robb, ed., pp. 122-134, 1994.
[5] T. Tasdizen, R. Whitaker, P. Burchard, and S. Osher, Geometric Surface Smoothing via Anisotropic Diffusion of Normals Proc. IEEE Visualization, pp. 125-132, Oct. 2002.
[6] R. Whitaker, A Level-Set Approach to 3D Reconstruction from Range Data Int'l J. Computer Vision, pp. 203-231, Oct. 1998
[7] T.S. Yoo, U. Neuman, H. Fuchs, S.M. Pizer, T. Cullip, J. Rhoades, and R. Whitaker, "Direct Visualization of Volume Data," IEEE Comput. Graphics Applic., vol. 12, no. 4, pp. 63-71, July 1992.
[8] M. Droske, B. Meyer, M. Rumpf, and C. Schaller, An Adaptive Level Set Method for Medical Image Segmentation Proc. Ann. Symp. Information Processing in Medical Imaging, R. Leahy and M. Insana, eds. 2001.
[9] D. Adalsteinson and J.A. Sethian, A Fast Level Set Method for Propogating Interfaces J. Computational Physics, pp. 269-277, 1995.
[10] D. Peng, B. Merriman, S. Osher, H. Zhao, and M. Kang, A PDE Based Fast Local Level Set Method J. Computational Physics, vol. 155, pp. 410-438, 1999.
[11] J. Owens, Computer Graphics on a Stream Architecture PhD thesis, Stanford Univ., Nov. 2002.
[12] N. Goodnight, C. Woolley, G. Lewin, D. Luebke, and G. Humphreys, A Multigrid Solver for Boundary Value Problems Using Programmable Graphics Hardware Proc. Graphics Hardware 2003, pp. 102-111, July 2003.
[13] E.S. Larsen and D. McAllister, Fast Matrix Multiplies Using Graphics Hardware Proc. Super Computing 2001, Nov. 2001.
[14] R. Strzodka and M. Rumpf, Using Graphics Cards for Quantized FEM Computations Proc. VIIP Conf. Visualization and Image Processing, 2001.
[15] M. Rumpf and R. Strzodka, Level Set Segmentation in Graphics Hardware Proc. Int'l Conf. Image Processing, pp. 1103-1106, 2001.
[16] A.E. Lefohn and R.T. Whitaker, A GPU-Based, Three-Dimensional Level Set Solver with Curvature Flow Tech Report UUCS-02-017, Univ. of Utah, Dec. 2002.
[17] J. Bolz, I. Farmer, E. Grinspun, and P. Schröder, Sparse Matrix Solvers on the GPU: Conjugate Gradients and Multigrid ACM Trans. Graphics, vol. 22, pp. 917-924, July 2003.
[18] J. Krüger and R. Westermann, Linear Algebra Operators for GPU Implementation of Numerical Algorithms ACM Trans. Graphics, vol. 22, pp. 908-916, July 2003.
[19] A.C. Beers, M. Agrawala, and N. Chaddha, Rendering from Compressed Textures Proc. SIGGRAPH '96, Computer Graphics Proc., Ann. Conf. Series, pp. 373-378, Aug. 1996.
[20] M. Kraus and T. Ertl, Adaptive Texture Maps Proc. Graphics Hardware 2002, pp. 7-16, Sept. 2002.
[21] A. Sherbondy, M. Houston, and S. Nepal, Fast Volume Segmentation with Simultaneous Visualization Using Programmable Graphics Hardware Proc. IEEE Visualization, pp. 171-176, Oct. 2003.
[22] R.A. Drebin, L. Carpenter, and P. Hanrahan, Volume Rendering Computer Graphics (Proc. SIGGRAPH '88), vol. 22, pp. 65-74, Aug. 1988.
[23] M. Levoy, “Display of Surfaces from Volume Data,” IEEE Computer Graphics and Applications, vol. 8, no. 3, pp. 29-37, 1988.
[24] P. Sabella, A Rendering Algorithm for Visualizing 3D Scalar Fields Computer Graphics (Proc. SIGGRAPH '88), vol. 22, pp. 51-58, Aug. 1988.
[25] B. Cabral, N. Cam, and J. Foran, Accelerated Volume Rendering and Tomographic Reconstruction Using Texture Mapping Hardware Proc. ACM Symp. Volume Visualization, pp. 91-98, Oct. 1994.
[26] O. Wilson, A.V. Gelder, and J. Wilhelms, Direct Volume Rendering via 3D Textures Technical Report UCSC-CRL-94-19, Univ. of California at Santa Cruz, June 1994.
[27] K. Engel, M. Kraus, and T. Ertl, High-Quality Pre-Integrated Volume Rendering Using Hardware-Accelerated Pixel Shading Proc. Graphics Hardware 2001, 2001.
[28] J.M. Kniss, G.L. Kindlmann, and C. Hansen, Multidimensional Transfer Functions for Interactive Volume Rendering IEEE Trans. Visualization and Computer Graphics, vol. 8, no. 3, pp. 270-285, July-Sept. 2002.
[29] T.J. Purcell, I. Buck, W.R. Mark, and P. Hanrahan, Ray Tracing on Programmable Graphics Hardware ACM Trans. Graphics, vol. 21, pp. 703-712, July 2002.
[30] A. Silberschatz and P. Galvin, Operating System Concepts. Addison-Wesley, 1998.
[31] U. Kapasi, W. Dally, S. Rixner, P. Mattson, J. Owens, and B. Khailany, Efficient Conditional Operations for Data-Parallel Architectures Proc. 33rd Ann. Int'l Symp. Microarchitecture, pp. 159-170, 2000.
[32] A. Lefohn, J.M. Kniss, C. Hansen, and R. Whitaker, Interactive Deformation and Visualization of Level Set Surfaces Using Graphics Hardware Proc. IEEE Visualization, pp. 75-82, 2003.
[33] A.E. Lefohn, J. Kniss, C. Hansen, and R. Whitaker, A Streaming Narrow-Band Algorithm: Supplemental Information, 2004.
[34] R. Fedkiw, T. Aslam, B. Merriman, and S. Osher, A Non-Oscillatory Eulerian Approach to Interfaces in Multimaterial Flows (the Ghost Fluid Method) J. Computational Physics, vol. 152, pp. 457-492, 1999.
[35] J. Kniss, S. Premoze, C. Hansen, P. Shirley, and A. McPherson, A Model for Volume Lighting and Modeling IEEE Trans. Visualization and Computer Graphics, vol. 9, no. 2, pp. 150-162, Apr.-June 2003.
[36] The Insight Toolkit http:/, 2003.
[37] R. Malladi, J. Sethian, and B.C. Vemuri, "Shape Modeling with Front Propagation: A Level Set Approach," IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 17, pp. 158-175, 1995.
[38] A.E. Lefohn, J. Cates, and R. Whitaker, Interactive, GPU-Based Level Sets for 3D Brain Tumor Segmentation Medical Image Computing and Computer Assisted Intervention, pp. 564-572, 2003.
[39] J. Kniss, S. Premoze, M. Ikits, A.E. Lefohn, and C. Hansen, Gaussian Transfer Functions for Multi-Field Volume Visualization Proc. IEEE Visualization, pp. 497-504, Oct. 2003.
[40] J. Percy and R. Mace, OpenGL Extensions: Siggraph 2003 , 2003.
[41] R. Whitaker and X. Xue, Variable-Conductance, Level-Set Curvature for Image Denoising Proc. IEEE Int'l Conf. Image Processing, pp. 142-145, Oct. 2001.

Index Terms:
Deformable models, image segmentation, volume visualization, GPU, level sets, streaming computation, virtual memory.
Aaron E. Lefohn, Joe M. Kniss, Charles D. Hansen, Ross T. Whitaker, "A Streaming Narrow-Band Algorithm: Interactive Computation and Visualization of Level Sets," IEEE Transactions on Visualization and Computer Graphics, vol. 10, no. 4, pp. 422-433, July-Aug. 2004, doi:10.1109/TVCG.2004.2
Usage of this product signifies your acceptance of the Terms of Use.