• No results found

MARCHING CUBES: A HIGH RESOLUTION 3D SURFACE CONSTRUCTION ALGORITHM. William E. Lorensen Harvey E. Cline

N/A
N/A
Protected

Academic year: 2021

Share "MARCHING CUBES: A HIGH RESOLUTION 3D SURFACE CONSTRUCTION ALGORITHM. William E. Lorensen Harvey E. Cline"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

( ~ ~ Computer Graphics, Volume 21, Number 4, July 1987

M A R C H I N G C U B E S : A H I G H R E S O L U T I O N 3D S U R F A C E C O N S T R U C T I O N A L G O R I T H M

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 gen- erate 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 origi- nal 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 improve- ments that decrease processing time and add solid modeling capabilities.

CR Categories: 3.3, 3.5

Additional Keywords: computer graphics, medical imaging, surface reconstruction

1. I N T R O D U C T I O N .

Three-dimensional surfaces of the anatomy offer a valu- able medical tool. Images of these surfaces, constructed from multiple 2D slices of computed tomography (CT), mag- netic 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 radiol- ogists 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 Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying ks by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission.

¢~ 1 9 8 7 ACM-0-89791-227-6/87/007/0163 $00.75

acetabular fractures [6], craniofacial abnormalities [17,18], and intracranial structure [13] illustrate 3D's potential for the study of complex bone structures. Applications in radiation therapy [27,11] and surgical planning [4,5,31] show interac- tive 3D techniques combined with 3D surface images. Cardi- ac applications include artery visualization [2,16] and non- graphic modeling applications to calculate surface area and volume [21].

Existing 3D algorithms lack detail and sometimes intro- duce artifacts. We present a new, high-resolution 3D surface construction algorithm that produces .models with unpre- cedented detail. This new algorithm, called marching cubes, creates a polygonal representation of constant density sur- faces from a 3D array of data. The resulting model can be displayed with conventional graphics-rendering algorithms implemented in software or hardware.

After describing the information flow for 3D medical ap- plications, we describe related work and discuss the draw- backs 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 il- lustrate the new algorithm's capabilities.

2. I N F O R M A T I O N FLOW F O R 3D M E D I C A L A L G O R I T H M S ,

Medical applications of 3D consist of four steps (Fig- ure 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 pro- duces multiple 2D slices of information. The,data sam- pled depends on the data acquisition technique.

C•'•CT MData

Acquisition

R SPECT.~.~/

/

Image I Processing I

Connectivity Mask

J

ode,

Vie.,og t--.(Oi.p,ay I

"] Creation I I O p e r a t i ° ? s / L - - - J

Viewing Surface Value Clipping Booleans Animation

Figure 1. 3D Medical Information Flow.

(2)

~ SIGGRAPH '87, Anaheim, July 27-31, 1987

X-ray c o m p u t e d t o m o g r a p h y ( C T ) m e a s u r e s t h e spatially v a r y i n g X-ray a t t e n u a t i o n coefficient [3], C T i m a g e s s h o w i n t e r n a l s t r u c t u r e . F o r 3D applications, C T is fre- q u e n t l y u s e d to look at b o n e s t r u c t u r e , a l t h o u g h we h a v e h a d success v i s u a l i z i n g soft tissue.

M a g n e t i c r e s o n a n c e ( M R ) m e a s u r e s t h r e e physical prop- e r t i e s [20]. O n e p r o p e r t y is t h e d i s t r i b u t i o n o f " m o b i l e "

h y d r o g e n n u c l e i a n d s h o w s overall s t r u c t u r e w i t h i n t h e slices. T h e o t h e r two p r o p e r t i e s m e a s u r e r e l a x a t i o n t i m e s o f t h e nuclei. M R , a r e c e n t t e c h n i q u e , s h o w s ex- cellent c o n t r a s t b e t w e e n a v a r i e t y o f soft tissues. H o w - e v e r , t h e v a r i e t y o f s u r f a c e s p r e s e n t s a c h a l l e n g e to 3D s u r f a c e c o n s t r u c t i o n a n d r e q u i r e s t e c h n i q u e s for selec- tive s u r f a c e e x t r a c t i o n a n d display.

A t h i r d a c q u i s i t i o n t e c h n i q u e , s i n g l e - p h o t o n e m i s s i o n c o m p u t e d t o m o g r a p h y ( S P E C T ) m e a s u r e s t h e e m i s s i o n o f g a m m a rays [24]. T h e s o u r c e o f t h e s e rays is a ra- d i o i s o t o p e d i s t r i b u t e d w i t h i n t h e body. [n a d d i t i o n to s t r u c t u r e , S P E C T can s h o w t h e p r e s e n c e o f b l o o d in s t r u c t u r e s w i t h a m u c h l o w e r d o s e t h a n t h a t r e q u i r e d by CT.

2. Image processing.

S o m e a l g o r i t h m s use i m a g e p r o c e s s i n g 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 t h e original data. M R data, in particular, n e e d s i m a g e pro- cessing to select a p p r o p r i a t e s t r u c t u r e .

3. Surface construction.

S u r f a c e c o n s t r u c t i o n , t h e topic o f this paper, i n v o l v e s t h e c r e a t i o n o f a s u r f a c e m o d e l f r o m t h e 3 D data. T h e m o d e l usually c o n s i s t s o f 3 D v o l u m e e l e m e n t s ( v o x e l s ) or polygons. U s e r s select t h e d e s i r e d s u r f a c e by specify- ing a d e n s i t y value, T h i s step can also i n c l u d e t h e crea- tion o f cut or c a p p e d surfaces.

4. Display.

H a v i n g c r e a t e d t h e s u r f a c e , t h e final step displays t h a t s u r f a c e u s i n g display t e c h n i q u e s t h a t i n c l u d e 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 W O R K .

T h e r e are s e v e r a l a p p r o a c h e s to t h e 3D s u r f a c e 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] s t a r t s w i t h c o n t o u r s of t h e s u r f a c e 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 s u r f a c e 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 in- t e r v e n t i o n by t h e u s e r 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 , u s e r i n t e r a c t i o n s h o u l d b e k e p t to a m i n i m u m .

A n o t h e r a p p r o a c h , d e v e l o p e d by G. H e r m a n a n d col- l e a g u e s [19] c r e a t e s s u r f a c e s f r o m cuberilles. A c u b e r i l l e is

" d i s s e c t i o n o f space into e q u a l c u b e s (called v o x e l s ) by t h r e e o r t h o g o n a l sets o f parallel p l a n e s [ 7 ] . " A l t h o u g h t h e r e are m a n y ways to display a c u b e r i l l e m o d e l , t h e m o s t realistic im- ages r e s u l t w h e n t h e g r a d i e n t , calculated f r o m c u b e r i l l e s in a n e i g h b o r h o o d , is u s e d to find the s h a d e o f a p o i n t o n t h e m o d e l [15]. M e a g h e r [25] u s e s a n o c t r e e r e p r e s e n t a t i o n to c o m p r e s s t h e s t o r a g e 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] u s e s 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 i m a g e w i t h a gray scale, u s e s h u e light- n e s s to display t h e 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 t h e s u r f a c e a l o n g a ray, calculates t h e g r a d i e n t a l o n g t h e s u r f a c e a n d uses this g r a d i e n t , scaled

by an " a p p r o p r i a t e " v a l u e , to g e n e r a t e gray scales for t h e image.

A d i f f e r e n t a p p r o a c h , u s e d at the M a y o Clinic [26], dis- plays t h e d e n s i t y v o l u m e r a t h e r t h a n t h e surface. T h i s m e t h o d p r o d u c e s , in effect, a c o n v e n t i o n a l s h a d o w g r a p h t h a t can b e v i e w e d f r o m a r b i t r a r y angles. M o t i o n e n h a n c e s t h e t h r e e - d i m e n s i o n a l effect o b t a i n e d u s i n g the v o l u m e m o d e l .

Each o f t h e s e t e c h n i q u e s for surface c o n s t r u c t i o n a n d dis- play s u f f e r s h o r t c o m i n g s b e c a u s e they t h r o w away u s e f u l in- f o r m a t i o n in t h e original data. T h e c o n n e c t e d c o n t o u r algo- r i t h m s t h r o w away t h e inter-slice c o n n e c t i v i t y t h a t exists in t h e original data. T h e c u b e r i l l e a p p r o a c h , u s i n g t h r e s h o l d i n g to r e p r e s e n t t h e s u r f a c e as b l o c k s in 3 D space, a t t e m p t s to r e c o v e r s h a d i n g i n f o r m a t i o n f r o m t h e blocks. T h e ray cast- ing m e t h o d s e i t h e r u s e d e p t h s h a d i n g a l o n e , or try to a p p r o x - i m a t e s h a d i n g with a n u n n o r m a l i z e d g r a d i e n t . Since t h e y display all v a l u e s a n d n o t j u s t t h o s e visible f r o m a g i v e n p o i n t o f view, v o l u m e m o d e l s rely o n m o t i o n to p r o d u c e a t h r e e - d i m e n s i o n a l s e n s a t i o n .

O u r a p p r o a c h u s e s i n f o r m a t i o n f r o m t h e original 3D data to d e r i v e i n t e r - s l i c e c o n n e c t i v i t y , s u r f a c e l o c a t i o n , a n d s u r - face g r a d i e n t . T h e r e s u l t i n g triangle m o d e l can be displayed o n c o n v e n t i o n a l g r a p h i c s disptay s y s t e m s u s i n g s t a n d a r d r e n d e r i n g a l g o r i t h m s .

4. M A R C H I N G C U B E S A L G O R I T H M .

T h e r e are two p r i m a r y s t e p s in o u r a p p r o a c h to t h e s u r - face c o n s t r u c t i o n p r o b l e m . First, we locate t h e s u r f a c e c o r r e s p o n d i n g to a u s e r - s p e c i f i e d v a l u e a n d c r e a t e triangles.

T h e n , to e n s u r e a quality image o f t h e s u r f a c e , we calculate t h e n o r m a l s to t h e s u r f a c e at each v e r t e x o f e a c h triangle.

Marching cubes u s e s 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 lo- cate t h e s u r f a c e in a logical cube c r e a t e d f r o m e i g h t pixels;

f o u r e a c h f r o m two a d j a c e n t slices ( F i g u r e 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 s u r f a c e i n t e r s e c t s this c u b e , t h e n m o v e s (or marchs) to t h e n e x t c u b e . T o find t h e s u r f a c e i n t e r s e c t i o n in a c u b e , we assign a o n e to a c u b e ' s v e r t e x if t h e data v a l u e at t h a t v e r t e x e x c e e d s (or equals) t h e v a l u e o f t h e s u r f a c e we are c o n s t r u c t i n g . T h e s e v e r t i c e s are i n s i d e (or o n ) t h e s u r f a c e . C u b e v e r t i c e s with v a l u e s b e l o w t h e s u r f a c e r e c e i v e a z e r o a n d are o u t s i d e t h e surface. T h e s u r f a c e i n t e r s e c t s t h o s e c u b e e d g e s w h e r e o n e v e r t e x is o u t - side the s u r f a c e ( o n e ) a n d the o t h e r is inside t h e s u r f a c e (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 t o p o l o g y of t h e s u r f a c e w i t h i n a c u b e , f i n d i n g the l o c a t i o n o f t h e i n t e r s e c - tion later.

/ /<"J+I'"U

{ + , , ,+

S h e e ~ i

~ , ~ j . pixel

I

Figure 2. Marching Cube.

(3)

(~) ~ Computer Graphics, Volume 21, Number 4, July 1987

Since t h e r e are eight v e r t i c e s in e a c h c u b e a n d two slates, inside a n d o u t s i d e , t h e r e are o n l y 28 = 256 ways a surface can i n t e r s e c t t h e c u b e . By e n u m e r a t i n g t h e s e 256 cases, we create a t a b l e to look u p s u r f a c e - e d g e i n t e r s e c t i o n s , g i v e n t h e labeling o f a c u b e s vertices. T h e table c o n t a i n s t h e e d g e s in- t e r s e c t e d for e a c h case.

T r i a n g u l a t i n g t h e 256 cases is possible b u t t e d i o u s a n d e r r o r - p r o n e . T w o d i f f e r e n t s y m m e t r i e s o f t h e c u b e r e d u c e the p r o b l e m f r o m 256 cases to 14 p a t t e r n s . First, the topolo- gy o f t h e t r i a n g u l a t e d s u r f a c e is u n c h a n g e d if t h e r e l a t i o n s h i p o f t h e surface v a l u e s to the c u b e s is r e v e r s e d . C o m p l e m e n - tary cases, w h e r e v e r t i c e s g r e a t e r t h a n t h e s u r f a c e v a l u e are i n t e r c h a n g e d with t h o s e less t h a n the value, are e q u i v a l e n t . T h u s , only cases with zero to f o u r v e r t i c e s g r e a t e r t h a n t h e surface v a l u e n e e d be c o n s i d e r e d , r e d u c i n g the n u m b e r o f cases to 128. U s i n g t h e s e c o n d s y m m e t r y p r o p e r t y , r o t a t i o n - al s y m m e t r y , we r e d u c e d the p r o b l e m to 14 p a t t e r n s by in- spection. F i g u r e 3 s h o w s the t r i a n g u l a t i o n for t h e 14 pat- t e r n s .

T h e s i m p l e s t p a t t e r n , 0, o c c u r s if all v e r t e x v a l u e s are a b o v e (or below) the selected v a l u e a n d p r o d u c e s n o trian- gles. T h e n e x t p a t t e r n , 1, o c c u r s if the s u r f a c e s e p a r a t e s o n v e r t e x f r o m t h e o t h e r s e v e n , r e s u l t i n g in o n e t r i a n g l e d e f i n e d by t h e t h r e e edge i n t e r s e c t i o n s . O t h e r p a t t e r n s p r o d u c e m u l - tiple triangles. P e r m u t a t i o n o f t h e s e 14 basic p a t t e r n s u s i n g c o m p l e m e n t a r y a n d r o t a t i o n a l s y m m e t r y p r o d u c e s t h e 256 cases.

W e create a n i n d e x for each case, b a s e d o n t h e state o f the v e r t e x . U s i n g the v e r t e x n u m b e r i n g in F i g u r e 4, the eight bit i n d e x c o n t a i n s o n e bit for each v e r t e x .

T h i s i n d e x s e r v e s as a p o i n t e r into a n edge table t h a t gives all edge i n t e r s e c t i o n s for a g i v e n c u b e c o n f i g u r a t i o n .

U s i n g t h e i n d e x to tell w h i c h edge the s u r f a c e i n t e r s e c t s , we can i n t e r p o l a t e t h e s u r f a c e i n t e r s e c t i o n a l o n g t h e edge.

W e u s e linear i n t e r p o l a t i o n , b u t h a v e e x p e r i m e n t e d with h i g h e r d e g r e e i n t e r p o l a t i o n s . Since the a l g o r i t h m p r o d u c e s at least o n e a n d as m a n y as four triangles per c u b e , t h e h i g h e r d e g r e e s u r f a c e s s h o w little i m p r o v e m e n t o v e r linear i n t e r p o - lation.

T h e final step in marching cubes calculates a u n i t n o r m a l for e a c h triangle vertex. T h e r e n d e r i n g a l g o r i t h m s use this n o r m a l to p r o d u c e G o u r a u d - s h a d e d images. A surface o f c o n s t a n t d e n s i t y has a zero g r a d i e n t c o m p o n e n t a l o n g the surface t a n g e n t i a l d i r e c t i o n ; c o n s e q u e n t l y , t h e d i r e c t i o n o f the g r a d i e n t vector, 7, is n o r m a l to t h e surface. W e can use this fact to d e t e r m i n e s u r f a c e n o r m a l v e c t o r , -~, if the m a g n i - t u d e o f t h e g r a d i e n t , ]gl, is n o n z e r o . F o r t u n a t e l y , at t h e sur- face o f i n t e r e s t b e t w e e n two tissue types o f d i f f e r e n t d e n s i - ties, the g r a d i e n t v e c t o r is n o n z e r o . T h e g r a d i e n t v e c t o r , ~, is t h e d e r i v a t i v e o f t h e d e n s i t y f u n c t i o n

~ ( x , y , z ) = x77"(x,y,z). (1) To e s t i m a t e t h e g r a d i e n t v e c t o r at the surface o f i n t e r e s t , we first e s t i m a t e the g r a d i e n t v e c t o r s at t h e c u b e v e r t i c e s a n d linearly i n t e r p o l a t e the g r a d i e n t at t h e point o f i n t e r s e c t i o n . T h e g r a d i e n t at c u b e v e r t e x (i,.L k), is e s t i m a t e d u s i n g c e n t r a l d i f f e r e n c e s a l o n g t h e t h r e e c o o r d i n a t e a x e s by:

Gv(i,J k) = D ( i + l,.j,k) - D ( i - 1,.j,k) (2) A x

G>.(i,L h) = D(i,j-t- l, k) - D(i, ] - 1, k) (3) A y

G:(i, L k ) = D ( i , j , k + l ) - D ( i , j , k -

])

(4) Az

v

w -

_ A

v v

Figure 3. Triangulated Cubes.

e3

0

04

oe7 ~(~v7

Y

v5

v 8 S

e8 e6

~2

i vsi v, I v8 v5 v, v31v21 v, I

index =

Figure 4. Cube Numbering.

w h e r e D(L./, k) is t h e d e n s i t y at pixel (i,j) in slice k a n d Ax, Ay, Az are t h e l e n g t h s o f t h e c u b e edges. D i v i d i n g t h e gra- d i e n t by its l e n g t h p r o d u c e s the u n i t n o r m a l at t h e v e r t e x re- q u i r e d f o r r e n d e r i n g . W e linearly i n t e r p o l a t e this n o r m a l to t h e p o i n t o f i n t e r s e c t i o n . N o t e t h a t to calculate t h e g r a d i e n t at all vertices o f t h e c u b e , we k e e p f o u r slices in m e m o r y at

once.

(4)

~ SIGGRAPH '87, Anaheim, July 27-31, 1987

In summary, marching cubes creates a surface from a three-dimensional set of data as follows:

1. Read four slices into memory.

2. Scan two slices and create a cube from four neighbors on one slice and four neighbors o n the next slice.

3. Calculate an index for the cube by comparing the eight density values at the cube vertices with the surface con- stant.

4. Using the index, look up the list o f edges from a precal- culated table.

5. Using the densities at each edge vertex, find the surface- edge intersection via linear interpolation.

6. Calculate a unit normal at each cube vertex using central differences. Interpolate the n o r m a l to each triangle ver- tex.

7. Output the triangle vertices and vertex normals.

5. E N H A N C E M E N T S T O T H E B A S I C A L G O R I T H M . We have made several i m p r o v e m e n t s to the original marching cubes that m a k e the algorithm run faster and that add solid modeling capabilities.

5.1 E ~ c i e n c y Enhancements.

The efficiency e n h a n c e m e n t s allow the algorithm to take advantage of pixel-to-pixel, line-to-line, and slice-to-slice coherence. For cubes interior to the original data limits (those not including slice 0, line 0, or pixel 0), only three new edges need to be interpolated for each cube. We can obtain the other nine edges from previous slices, lines, or pixels. In F i g u r e 5, the shaded circles represent values avail- able from prior calculations; only edges 6, 7, and 12 have to be calculated for the new cube.

Special cases are present along the boundaries of the data, but, by e n u m e r a t i n g these cases, we can limit vertex calcula- tions to once per vertex. In practice, we only save the previ- ous pixel and line intersections because the m e m o r y required to save the previous slice's intersections is large. Using the coherence speeds up the algorithm by a factor of three.

C 7

e6

y

×

®

Figure 5. Coherence.

Reducing the slice resolution, by averaging four pixels into one, decreases the n u m b e r of triangles, improves the surface construction efficiency and s m o o t h s the image.

Although there is some loss of detail in the averaged slices, the averaging makes the n u m b e r of triangles more manage- able for high-resolution slices.

5.2 Functional Enhancements.

We have added a solid modeling capability to the algo- rithm. 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.

We use the cube index described earlier to do Boolean operations on the surfaces. Here, just consider three values of the index:

index = 0 for cubes outside the surface.

index = 255 for cubes inside the surface.

0 < index < 255 for cubes on the surface.

Solid modeling uses these notions of inside, outside, and on to create a surface. Analytic functions also provide the same information; so, for example the equation of a plane, ax + by + c z - d, tells where a given point lies with respect to the plane. Let - - S , 8S, and S represent sets of points that are outside, on, and inside a surface, respectively. Referring to Figure 6, we build a truth table, s h o w n in Figure 7, for the Boolean intersection operation.

Nine entries in the .truth table describe what to do when two surfaces have a given index. With x ' s representing no operation, the entry for (S, - - P ) shows that the cube in question is inside one surface but outside the other, resulting in no triangles. The (8S, P) entry produces triangles from the S surface, while the (S, 8P) entry produces triangles from the P surface. The (8S, 8P) entry, created w h e n a cube is o n b o t h surfaces, requires special processing. We clip

- p

Figure 6. Point/Surface Relations.

p '-P dP

S x x p

-S x x x

dS S x ,

Figure 7. Truth Table.

166

(5)

( ~ ~ Computer Graphics, Volume 21, Number 4, July 1987

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 process- ing algorithms [9]. Application of a "logical o r " 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 us- ing the original slice data.

6. I M P L E M E N T A T I O N .

Marching cubes, written in C, runs on Sun Workstations x under Unix 2, V A X ' s under VMS 3, and an IBM 3081 under IX/3704. We display the models using an in-house z-buffer program or a General Electric Graphicon 7005 . For our models, the Graphicon displays at a rate of 10,000 triangles per second. In addition to surfaces of constant density, the software allows any n u m b e r of planes that can be transpar- ent, capped with triangles, or textured with interpolated den- sity data. Medical practitioners refer to this texture mapping as reformatting. Execution times depend on the n u m b e r of surfaces and resolution of the original data. Model creation times on a VAX 11/780 vary from 100 seconds for 64 by 64 by 48 SPECT data to 30 minutes for 260 by 260 by 93 CT studies. Times for the same studies on the IBM 3081 are twelve times faster. The n u m b e r of triangles in a surface m o d e l is proportional to the area of the surface. This num- ber can get large (over 500,000 in some cases), so we reduce it using cut planes and surface connectivity. Also, sometimes we reduce the resolution of the original data by filtering, pro- ducing a somewhat smoother surface with some loss of reso- lution.

7. R E S U L T S .

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 op- tions. Each image was rendered at 512 by 512 resolution without antialiasing.

7.1 Computed Tomography.

The first case is a CT study of the head of a twelve year old male with a hole in the skull near the left side of the nose. The 93 axial slices are 1.5 m m thick, with pixel dimen- sions of 0.8 ram. This study by D.C. Hemmy, MD, of the Medical College of Wisconsin, illustrates the detail present in surfaces constructed by marching cubes. Figures 8 and 9 show the bone and soft tissue surfaces respectively. The tube in the patient's mouth is present to administer anesthet- ic during the scanning process. The soft tissue image shows fine detail that includes the patient's pierced ear and the im- pression of adhesive tape on the face. Although these details are not clinically significant, they do show the resolution present in the constructed surface. Figure 10 is a tilted view of the soft tissue surface that shows nasal and ear passages.

In Figure 11, a sagittal cut, texture mapped with the original 1 Sun Workstation is a trademark of Sun Microsystems.

2 Unix is a trademark of Bell Laboratories.

3 VAX and VMS are trademarks of Digital Equipment Corporation 4 IX/370 is a trademark of IBM.

5 Graphicon is a trademark of General Electric Company.

Figure 8. Bone Surface.

Figure 9. Soft Tissue Surface.

Figure 10. Soft Tissue, Top View.

(6)

~ SIGGRAPH '87, Anaheim, July 27-31, 1987

Figure II. Sagittal Cut with Texture Mapping.

CT data, shows the slice data in relation to the constructed surface. The b o n e surface contains 550,000 triangles while the soft tissue surface has 375,000.

7.2 Magnetic Resonance.

The MR case of an adult male volunteer consists of 128 1.9 m m coronal slices. A 3D FT, flow compensated, fast se- quence acquired the 128 slices in only 9 minutes. This pulse sequence, contrasting the unsaturated spins of the fresh blood flowing into the excited region of saturated spins, was produced by G. G l o v e r of G E Medical Systems Group. Be- cause of the complex anatomy present in the MR slices, we show, in Figure 12, the texture mapped cut surfaces inter- sected with the surface of the skin. Although the original slices are coronal, we show sagittal cuts to illustrate the algorithm's ability to interpolate texture o n a cut plane. The largest surface model in the sequence contains 330,000 trian- gles, including triangles on the cut surface.

7.3 Single-Photon E m i s s i o n Computed Tomography.

The SPECT study consisting of 29 coronal slices of the heart shows the algorithm's performance on low resolution data. D. Nowak from G E Medical Systems provided the 64 by 64 pixel data. Figure 13, showing the surface of the blood pool in the diastolic heart, contains 5,000 triangles. The de- scending aorta is the large vessel in the left of the picture.

8. C O N C L U S I O N S .

Marching cubes, a new algorithm for 3D surface construc- tion, c o m p l e m e n t s 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 trian- gles, surface cutting and connectivity can reduce this n u m - ber. As C A D hardware increases in speed and capacity, we expect that marching cubes will receive increased use in practi- cal, clinical e n v i r o n m e n t s .

Recently we developed a n o t h e r high-resolution surface construction algorithm called dividing cubes that generates points rather than triangles [10]. As the resolution of the 3D medical data increases, the n u m b e r of triangles approaches

Figure 12. Rotated Sequence of Cut MR Brain.

Figure 13. Blood Pool in the Diastolic Heart.

the n u m b e r of pixels in the displayed image. The density of surface points is chosen to cover the raster display. Both al- gorithms produce the same quality images, since the shading governs the perceived quality of the image.

9. A C K N O W L E D G M E N T .

We t h a n k C. Crawford from General Electric's Medical Systems for stimulating our work in this area. T h r o u g h o u t the project, he has provided us with data and e n c o u r a g e m e n t to improve the algorithm. R. Redington from our laboratory's Medical Diagnostics Branch provided a stable re- search e n v i r o n m e n t and insight into the practical applications of 3D in medicine. W. Leue assisted us in converting be- tween the different medical data formats and provided inter- faces to our M R equipment.

(7)

( ~ ~ Computer Graphics, Volume 21, Number 4, July 1987

10. R E F E R E N C E S

[1] Artzy, E., Frieder, G., and Herman, G . T . The Theo- ry, Design, Implementation and Evaluation of a Three-Dimensional Surface Detection Algorithm.

Comptlter Graphics and Ima~,,e Processinj,, 15, 1 (January 1981), 1-24.

[2] Barillot, C., Gibaud, B., Scarabin, J., and Coatrieux, J.

3D Reconstruction of Cerebral Blood Vessels. IEEE Comlmwr Graphk's attd Applk'ations 5, 12 (December 1985), 13-19.

[3] Bates, R. H., Garden, K. L., and Peters, T. M. Over- view of Computerized Tomography with Emphasis on Future Developments. Proc. of the IEEE 71, 3 (March 1983), 356-372.

[4] Bloch, P. and Udupa, J. K. Application of Computer- ized Tomography to Radiation Therapy and Surgical Planning. Proc. oi' the IEEE 71, 3 (March 1983), 351-355.

[5] Brewster, L. J., Trivedi, S. S., Tut, H. K., and Udupa, J. K. Interactive Surgical Planning. IEEE Computer

Graphics and Applications 4, 3 (March 1984), 31-40.

[6] Burk, D. L., Mears, D. C., Kennedy, W. H., Cooper- stein, L. A., and Herbert, D. L. Three-Dimensional Computed Tomography of Acetabula Fractures. Ra- diology 155, 1 (1985), 183-186.

[7] Chen, L., Herman, G. T., Reynolds, R. A., and Udu- pa, J. K. Surface Shading in the Cuberille Environ- ment. IEEE Computer Graphics and Applications 5, 12 (December 1985), 33-43.

[8] Christiansen, H. N. and Sederberg, T. W. Conversion of Complex Contour Line Definitions into Polygonal Element Meshes. Computer Graphics 12, 3 (August 1978), 187-192.

[9] Cline, H. E., Dumoulin, C. L., Lorensen, W. E., Hart, H. R., and Ludke, S. 3D Reconstruction of the Brain from Magnetic Resonance Images. Magnetic Reso- nance Imaging (1987, to appear).

[10] Cline, H. E., Lorensen, W. E., Ludke, S,, Crawford, C. R., and Teeter, B. C. High-Resolution Three- Dimensional Reconstruction of Tomograms. Medical Physics (1987, to appear).

[11] Cook, L. T., Dwyer, S. J., Batnitzky, S., and Lee, K.

R. A Three-Dimensional Display System for Diagnos- tic Imaging Applications. IEEE Computer Graphics and Applications 3, 5 (August 1983), 13-19.

[121 Farrell, E. J. Color Display and Interactive Interpreta- tion of Three-Dimensional Data. IBM J. Res. Develop 27, 4 (July 1983), 356-366.

[13] Farrell, E. J., Zappulla, R., and Yang, W. C. Color 3D Imaging of Normal and Pathologic Intracranial Struc- tures. IEEE Computer Graphics and Applications 4, 9

(September 1984), 5-17.

[14] Fuchs, H., Kedem, Z. M., and Uselton, S. P. Optimal Surface Reconstruction from Planar Contours. Comm.

o['the ACM 20, 10 (October 1977), 693-702.

[151 Gordon, D. and Reynolds, R. A. Image Space Shad- ing of 3-Dimensional Objects. Computer Graphics and Image Processing 29, 3 (March 1985), 361-376.

[16] Hale, J. D., Valk, P. E., and Watts, J. C. MR Imaging of Blood Vessels Using Three-Dimensional Recon-

struction: Methodology. Radiolo,xv 157, 3 (December 1985), 727-733.

[17] Hemmy, D. C., David, D. J., and Herman, G. T.

Three-Dimensional Reconstruction of Craniofacial De- formity Using Computed Tomography. Neurosurgery

13, 5 (November 1983), 534-541.

[18] Hemmy, D. C. and Tessier, P. L. CT of Dry Skulls with Craniofacial Deformities: Accuracy of Three- Dimensional Reconstruction. Radiology 157, 1 (Oc- tober 1985), 113-116.

[19] Herman, G. T. and Udupa, J. K. Display of 3D Digi- tal Images: Computational Foundations and Medical Applications. IEEE Computer Graphics and Applications 3, 5 (August 1983), 39-46.

[20] Hinshaw, W. S. and Lent, A. H. An Introduction to NMR Imaging: From the Bloch Equation to the Imag- ing Equation. Proc. of the IEEE 71, 3 (March 1983), 338-350.

[21] Hoffman, E. A. and Ritman, E. L. Shape and Dimen- sions of Cardiac Chambers: Importance of CT Section Thickness and Orientation. Radiology 155, 3 (June 1985), 73%744.

[22] Hohne, K. H. and Bernstein, R. Shading 3D-Images from CT Using Gray-Level Gradients. IEEE Trans. on Medical Imaging MI-5, 1 (March 1986), 45-47.

[23] Keppel, E. Approximating Complex Surfaces by Tri- angulation of Contour Lines. IBM J. Res. Develop 19, 1 (January 1975), 2-11.

[24] Knoll, G. F. Single-Photon Emission Computed To- mography. Proc. of the IEEE 71, 3 (March 1983), 320-329.

[25] Meagher, D. J. Geometric Modeling Using Octree Encoding. Computer Graphics and Image Processing 19, 2 (June 1982), 129-147.

[26] Robb, R. A., Hoffman, E. A., Sinak, L. J., Harris, L.

D., and Ritman, E. L. High-Speed Three-Dimensional X-Ray Computed Tomography: The Dynamic Spatial Reconstructor. Proc. of the IEEE 71, 3 (March 1983), 308-319.

[27] Sunguroff, A. and Greenberg, D. Computer Generat- ed Images for Medical Application. Computer Graphics

12, 3 (August 1978), 196-202.

[28] Sutherland, I. E. and Hodgman, G. W. Reentrant Po- lygon Clipping. Comm. of the ACM 17, 1 (January

1974), 32-42.

[29] Trivedi, S, S., Herman, G. T., and Udupa, J. K. Seg- mentation Into Three Classes Using Gradients. 1EEE

Trans. on Medical Imaging MI-5, 2 (June 1986), 116-119.

[30] Udupa, J. K. Interactive Segmentation and Boundary Surface Formation for 3-D Digital Images. Computer Graphics and Image Processing 18, 3 (March 1982), 213-235.

[31] Vannier, M. W., Marsh, J. L., and Warren, J. O.

Three Dimensional CT Reconstruction Images for Craniofacial Surgical Planning and Evaluation. Radiol-

ogy 150, 1 (January 1984), 179-184.

[32] Zucker, S. W. and Hummel, R. A. A Three- Dimensional Edge Operator. IEEE Trans. on Pattern Analysis and Machine Intelligence PAMI-3, 3 (May

References

Related documents

Change agility in a bureaucratic organization is not necessarily “natural”, but organizations such as the AFSC can gain many benefits when they can maintain this effort over time,

Project ENABLE (Educate, Nurture, Advise, Before Life Ends) brought palliative care to advanced cancer patients at a major cancer center, and it also showed that these services can

of hide Astuccio per ance Corno Inglese tipo semi-professionale (da 8) finto cuoio € 30,00 S/4 Cover for Oboe case, professional model, with. pocket Copriastuccio per Oboe

I£ the dispute submitted to the Council is not settled by it as provided in paragraph 3 of the said Article 15, the Council o shall en- deavor to persuade the parties

We have no way of knowing if they were thinking about iron manufacture; seven years later, they were merchants in Worcester County and had been involved for some time

A deterministic model for deteriorating items with displayed inventory level dependent demand rate incorporating marketing decisions with transportation cost.. In addition, the

Consider two points which are approximately 180 ° apart in longitudinal direction. It is clear that the route pass along the meridian is shorter than the pass along the