Professional Documents
Culture Documents
William E. Lorensen
Harvey E. Cline
General Electric Company
Corporate Research and Development
Schenectady, New York 12301
Abstract
We present a new algorithm, called marching cubes, that
creates triangle models of constant density surfaces from 3D
medical data. Using a divide-and-conquer approach to generate inter-slice connectivity, we create a case table that
defines triangle topology. The algorithm processes the 3D
medical data in scan-line order and calculates triangle vertices
using linear interpolation. We find the gradient of the original data, normalize it, and use it as a basis for shading the
models. The detail in images produced from the generated
surface models is the result of maintaining the inter-slice
connectivity, surface data, and gradient information present
in the original 3D data. Results from computed tomography
(CT), magnetic resonance (MR), and single-photon emission
computed tomography (SPECT) illustrate the quality and
functionality of marching cubes. We also discuss improvements that decrease processing time and add solid modeling
capabilities.
After describing the information flow for 3D medical applications, we describe related work and discuss the drawbacks of that work. Then we describe the algorithm as well
as efficiency and functional enhancements, followed by case
studies using three different medical imaging techniques to illustrate the new algorithm's capabilities.
1. I N T R O D U C T I O N .
Three-dimensional surfaces of the anatomy offer a valuable medical tool. Images of these surfaces, constructed
from multiple 2D slices of computed tomography (CT), magnetic resonance (MR), and single-photon emission computed
tomography (SPECT), help physicians to understand the
complex anatomy present in the slices. Interpretation of 2D
medical images requires special training, and although radiologists have these skills, they must often communicate their
interpretations to the referring physicians, who sometimes
have difficulty visualizing the 3D anatomy.
Researchers have reported the application of 3D medical
images in a variety of areas. The visualization of complex
Permissionto copy without fee all or part of this material is granted
provided that the copies are not made or distributedfor direct
commercial advantage, the ACM copyright noticeand the title of the
publicationand its date appear, and noticeis giventhat copyingksby
permissionof the Associationfor Computing Machinery.To copy
otherwise, or to republish,requires a fee and/or specificpermission.
~1 9 8 7
ACM-0-89791-227-6/87/007/0163
$00.75
Medical applications of 3D consist of four steps (Figure 1). Although one can combine the last three steps into
one algorithm, we logically decompose the process as follows:
1. Data acquisition.
This first step, performed by the medical imaging
hardware, samples some property in a patient and produces multiple 2D slices of information. The,data sampled depends on the data acquisition technique.
MData
R SPECT.~.~/
C'CT
Acquisition
Image I
Processing I
Connectivity
Mask
Surface Value
Booleans
ode,
"] Creation I
Vie.,og t--.(Oi.p,ay I
IOperati?s/L------J
Viewing
Clipping
Animation
163
2. Image processing.
S o m e a l g o r i t h m s use image processing t e c h n i q u e s to find
s t r u c t u r e s w i t h i n t h e 3D data [1,32,30,29] or to filter the
original data. M R data, in particular, n e e d s image processing to select appropriate structure.
3. Surface construction.
Surface c o n s t r u c t i o n , the topic of this paper, i n v o l v e s
the creation of a surface m o d e l f r o m t h e 3D data. T h e
m o d e l usually consists o f 3D v o l u m e e l e m e n t s (voxels)
or polygons. U s e r s select the desired surface by specifying a density value, T h i s step can also include t h e creation o f cut or capped surfaces.
4. Display.
H a v i n g created the surface, the final step displays that
surface u s i n g display t e c h n i q u e s that include ray casting,
d e p t h s h a d i n g , a n d color shading.
3. R E L A T E D WORK.
T h e r e are several a p p r o a c h e s to t h e 3D surface g e n e r a t i o n
p r o b l e m . A n early t e c h n i q u e [23] starts with c o n t o u r s of the
surface to be c o n s t r u c t e d a n d c o n n e c t s c o n t o u r s o n c o n s e c u tive slices with triangles. U n f o r t u n a t e l y , if m o r e t h a n o n e
c o n t o u r o f surface exists o n a slice, a m b i g u i t i e s arise w h e n
d e t e r m i n i n g w h i c h c o n t o u r s to c o n n e c t [14]. I n t e r a c t i v e int e r v e n t i o n by the user can o v e r c o m e s o m e o f t h e s e a m b i g u i ties [8]; h o w e v e r , in a clinical e n v i r o n m e n t , user i n t e r a c t i o n
s h o u l d b e kept to a m i n i m u m .
A n o t h e r approach, d e v e l o p e d by G. H e r m a n a n d colleagues [19] creates surfaces f r o m cuberilles. A cuberille is
" d i s s e c t i o n o f space into equal c u b e s (called voxels) by t h r e e
o r t h o g o n a l sets of parallel planes [ 7 ] . " A l t h o u g h t h e r e are
m a n y ways to display a cuberille m o d e l , the m o s t realistic images result w h e n t h e gradient, calculated f r o m cuberilles in a
n e i g h b o r h o o d , is used to find the s h a d e o f a point on t h e
m o d e l [15]. M e a g h e r [25] u s e s an octree r e p r e s e n t a t i o n to
c o m p r e s s the storage o f t h e 3D data, allowing rapid m a n i p u lation a n d display o f voxels.
Farrell [12] uses ray casting to find t h e 3D surface, b u t
r a t h e r t h a n s h a d e t h e image with a gray scale, uses h u e lightness to display the surface. In a n o t h e r ray casting m e t h o d ,
H o h n e [22], after locating the surface a l o n g a ray, calculates
t h e g r a d i e n t along the surface a n d uses this gradient, scaled
164
CUBES ALGORITHM.
Marching cubes uses a d i v i d e - a n d - c o n q u e r a p p r o a c h to locate the surface in a logical cube created f r o m eight pixels;
four each f r o m two adjacent slices (Figure 2).
T h e a l g o r i t h m d e t e r m i n e s h o w t h e surface intersects this
c u b e , t h e n m o v e s (or marchs) to the n e x t cube. To find the
surface i n t e r s e c t i o n in a cube, we assign a o n e to a c u b e ' s
v e r t e x if the data value at t h a t v e r t e x e x c e e d s (or equals) the
v a l u e of the surface we are constructing. T h e s e vertices are
inside (or o n ) the s u r f a c e . C u b e vertices with values below
the surface receive a zero a n d are outside the surface. T h e
surface intersects t h o s e c u b e edges w h e r e o n e v e r t e x is outside the surface ( o n e ) a n d the o t h e r is inside the surface
(zero). W i t h this a s s u m p t i o n , we d e t e r m i n e t h e topology of
the surface within a cube, finding the location of t h e intersection later.
/<"J+I'"U
{ + , , ,+
Shee~
~,~j
i
pixel
I
Figure 2. Marching Cube.
(~) ~
~(x,y,z) = x77"(x,y,z).
v8S
D ( i + l,.j,k) - D ( i - 1,.j,k)
Ax
(2)
(3)
])
(4)
G:(i, Lk) = D ( i , j , k + l ) -
D(i,j,k-
Az
~(~v7
e3
0
e8
e6
~2
04
v5
oe7
index =
i vsi v, I v8 v5 v, v31v21 v, I
Figure 4. Cube Numbering.
165
5. Using the densities at each edge vertex, find the surfaceedge intersection via linear interpolation.
We have added a solid modeling capability to the algorithm. Boolean operations permit cutting and capping of
solid models, as well as the extraction of multiple surfaces.
In a medical application, cutting is analogous to performing
surgery and capping (and texture mapping) is analogous to
the medical imaging technique of reformatting.
4. Using the index, look up the list of edges from a precalculated table.
C 7
e6
Figure 6. Point/Surface Relations.
'-P
dP
-S
dS
Figure 5. Coherence.
166
(~
each triangle from one surface against each triangle from the
other, using the Sutherland-Hodgman clipping algorithm
[281.
This technique applies to any .surfaces that have
inside/outside functions. We have used it with planes and
with connectivity masks generated by separate image processing algorithms [9]. Application of a "logical or" truth table
provides the capability for multiple surface extraction.
We implement texture mapping by finding the triangles
on a plane's surface and attenuating the normal's length using the original slice data.
6. I M P L E M E N T A T I O N .
7. RESULTS.
We have applied marching cubes to data obtained from
CT, MR, and SPECT, as well as data generated from analytic
functions, We present three case studies that illustrate the
quality of the constructed surfaces and some modeling options. Each image was rendered at 512 by 512 resolution
without antialiasing.
SIGGRAPH'87,Anaheim,July27-31,1987
Marching cubes, a new algorithm for 3D surface construction, complements 2D CT, MR, and SPECT data by giving
physicians 3D views of the anatomy. The algorithm uses a
case table of edge intersections to describe how a surface cuts
through each cube in a 3D data set. Additional realism is
achieved by the calculation, from the original data, of the
normalized gradient. The resulting polygonal structure can
be displayed on conventional graphics display systems.
Although these models often contain large n u m b e r s of triangles, surface cutting and connectivity can reduce this number. As CAD hardware increases in speed and capacity, we
expect that marching cubes will receive increased use in practical, clinical environments.
Recently
construction
points rather
medical data
168
(~ ~
10. R E F E R E N C E S
[1]
struction: Methodology.
1985), 727-733.
Artzy, E., Frieder, G., and Herman, G.T. The Theory, Design, Implementation and Evaluation of a
Three-Dimensional Surface Detection Algorithm.
Comptlter Graphics and Ima~,,e Processinj,, 15, 1 (January
1981), 1-24.
[2]
[3]
Bates, R. H., Garden, K. L., and Peters, T. M. Overview of Computerized Tomography with Emphasis on
Future Developments. Proc. of the IEEE 71, 3 (March
1983), 356-372.
[19] Herman, G. T. and Udupa, J. K. Display of 3D Digital Images: Computational Foundations and Medical
Applications. IEEE Computer Graphics and Applications
3, 5 (August 1983), 39-46.
[4]
Bloch, P. and Udupa, J. K. Application of Computerized Tomography to Radiation Therapy and Surgical
Planning. Proc. oi' the IEEE 71, 3 (March 1983),
351-355.
[5]
[6]
Burk, D. L., Mears, D. C., Kennedy, W. H., Cooperstein, L. A., and Herbert, D. L. Three-Dimensional
Computed Tomography of Acetabula Fractures. Radiology 155, 1 (1985), 183-186.
[21] Hoffman, E. A. and Ritman, E. L. Shape and Dimensions of Cardiac Chambers: Importance of CT Section
Thickness and Orientation. Radiology 155, 3 (June
1985), 73%744.
[7]
Chen, L., Herman, G. T., Reynolds, R. A., and Udupa, J. K. Surface Shading in the Cuberille Environment. IEEE Computer Graphics and Applications 5, 12
(December 1985), 33-43.