Archived Pages from 20th Century!!
The National Library of Medicine is creating a digital atlas of the human body. This project, called the Visible Human, has already produced computed tomography, magnetic resonance imaging and physical cross-sections of a human male cadaver. This paper describes a methodology and results for extracting surfaces from the Visible Male's CT data. We use surface connectivity and isosurface extraction techniques to create polygonal models of the skin, bone, muscle and bowels. Early experiments with the physical cross-sections are also reported. There is a companion paper on the Visible Woman.
Make Your Own Visible Woman shows how to use the Visualization Toolkit to make and render surface models of the Visible Woman.
For more examples of 3D medical imaging done in our laboratory go to our Scientific Movie Library.
In 1989, the National Library of Medicine (NLM) began an ambitious project to create a digital atlas of the human anatomy. The NLM Planning Panel on Electronic Image Libraries  recommended a project to create XRAY Computed Tomography (XRAY-CT), Magnetic Resonance Imaging (MRI) and physical sections of a human cadaver. The project is called "The Visible Man." Another cadaver, that of a 59 year-old woman, "The Visible Woman", was completed in the Summer of 1995. See the companion paper.
Our laboratory has a long history of constructing 3D models from contiguous CT and MRI cross-sections. The Visible Man data sets provide an opportunity to test our algorithms on publicly available data. The data is interesting because of its size and variety of modalities. Also, its availability on the Internet means that other researchers can apply their algorithms to a common data set. In the past it has been difficult to obtain medical data because of patient confidentiality.
This paper reports our early experiments with the Visible Man CT data in the hopes that others will benefit from our experiences. The paper proceeds as follows. First we briefly discuss the background on the "Visible Man" and the four data sets. We describe the logistics of working with such large data sets and summarize the various parameters for the fresh CT data. Then, we propose a methodology for reporting algorithm results. We describe the methods and materials we used to create the models illustrated in subsequent sections.
In August of 1991 NLM awarded a contract to the University of Colorado Health Sciences Center to create the digital cross-sections of a 39-year old convicted murderer who had donated his body to science. The radiological data was created using commercial MRI and XRAY-CT. Two CT data sets were created: one of the fresh cadaver, the other after the cadaver was frozen. Then, the cadaver was embedded in gelatin, frozen and sliced from head to toe. As each layer was exposed, a color RGB photograph was taken. Over 1800 24-bit images 2048 by 1216 were created.
Since we have experience working with radiological cross-sections from CT and MRI, our initial experiments used the CT data. We chose the fresh CT data because there is better soft tissue contrast from the data taken before the subject was frozen. Also, the fresh CT data is the most manageable of the four data sets. And, segmentation of soft tissue / air boundaries and bone are particularly easy for CT data. Compared to the MRI data, the slice spacing of the CT data is sufficient to produce decent 3D models.
We obtained the fresh CT data using ftp via the Internet. Internet access is available to users that sign a license agreement with NLM. The data is stored one slice per file and the files have been compressed using the unix compress program. Uncompressed, each slice is 512 x 512 x 16 bits with a 3416 byte header. The format of the headers is General Electric Genesis described in the Medical Image Format FAQ. The image header contains among other things the table position and field of view. These are important quantities when working with this data since the spacing between the slices and the pixel size changes several times throughout the data set. The slices are named as follows: c_vmxxxx.fre where xxxx is the location in mm's of the slice. There are 522 slices in the fresh CT data set using about 274 megabytes of disk storage.
The first step to understand the data was to print the header information. In particular, we need to know the size of the pixels, and the distance between each slice. Also the order of acquisition is important so that we retain the proper left / right correspondence. In the fresh CT data set, the order of acquisition was from top to bottom.
The fresh CT data was acquired in several sections with varying pixel size and slice spacing. Because of this, we broke the data set into nine sections. We created a new section when at least one of three changes occurred in the slice headers:
The following summarizes the data for the nine sections.
Section Slice # Fov Pixel Spacing Aspect Location # Range Size Ratio ---------------------------------------------------------------- 0 1-8 8 250 .48828 1 2.048 390-383 1 9-67 59 460 .8984375 1 1.11304 382-324 2 68-150 83 345 .673828 1 1.48406 323-241 3 151-191 41 450 .8789063 3 3.41333 240-120 4 192-246 55 460 .8984375 3 3.33913 117- -45 5 247-258 12 460 .8984375 3 3.33913 -51 - -84 6 259-418 160 460 .8984375 3 3.33913 -90 - -565 7 419-480 62 480 .9375 5 5.33333 520 - 215 8 481-522 42 480 .9375 5 5.33333 -210 - -415
We propose a simple methodology to report results on the Visible Human data sets. These are by no means rigid rules, just guidelines for reporting results. The goal is to allow researchers to reproduce the results reported by others and to compare their results.
If additional images or animations are available report the site where they can be obtained. Use Uniform Resource Locators (URL's) when appropriate.
This work was done on an Onyx Reality Engine 2 (Silicon Graphics, Mountain View, CA) with the following configuration:
2 150 MHZ IP19 Processors CPU: MIPS R4400 Processor Chip Revision: 5.0 FPU: MIPS R4010 Floating Point Chip Revision: 0.0 Data cache size: 16 Kbytes Instruction cache size: 16 Kbytes Secondary unified instruction/data cache size: 1 Mbyte Main memory size: 256 Mbytes, 2-way interleaved
The Reality Engine was running Irix 5.3. We used a variety of software tools we call the Research Workstation, all developed in-house. All of the software works with 16-bit medical images.
We applied a single methodology to extract skin, bone, muscle, and the bowels from the fresh CT data.
We used the same threshold throughout the 9 sections of the CT data set to extract the skin and bone. For the skin, we applied the connectivity algorithm followed by Marching Cubes with a density value of 600 to remove the patient table and internal air passages from the extracted surfaces. We also applied two iterations of the decimation algorithm to the skin surface. We started with a decimation value of .0002 (or 2%) of the field of view. The skin has less detail than the internal surfaces and we can afford to reduce the number of skin triangles more heavily than for the internal surfaces. We did not apply connectivity for the bone surface since there are many disconnected pieces of bone in the body. A density value of 1224 was used for the bone, the same value we have used successfully on other CT data sets. Table 2 shows triangle counts and timings for the skin surfaces. Table 3 shows the timings and counts for the bone. The times for each step are central processor unit (CPU) times. The images in Figure 2 where created using LYMB. The surfaces for each section were manually aligned using an interactive rendering interface in LYMB. We chose section 6 as the center of the model and moved the other sections relative to this surface. Table 4 shows the relative movements of each section measured in millimeters.
Section Connect Time Cubes Time Decimate Time(sec) 0 31616 0.67 63662 4.14 27168 14.24 1 65584 4.01 131448 18.17 53362 28.27 2 139922 6.20 281013 30.00 96354 68.54 3 115732 3.28 231683 18.52 77861 54.01 4 139624 4.38 277848 23.71 70773 82.61 5 27213 0.91 54476 4.76 12480 20.28 6 524253 14.04 1049476 79.69 29507 322.05 7 167288 5.07 334643 30.32 84342 89.46 8 93266 2.90 186630 17.08 71485 43.04 ----- ----- ------- ----- ----- ----- Totals 1304498 41.46 2610877 226.39 798227 722.50 TABLE 2. Triangle Counts and Times for Skin.
Section Cubes Time Decimate Time(sec) 0 38394 6.23 17799 7.64 1 257356 49.06 139852 47.31 2 865454 93.78 541654 135.41 3 193102 34.24 137717 28.63 4 915904 77.94 679246 125.05 5 158174 14.58 118091 20.90 6 1990946 199.20 1501322 273.11 7 74864 41.58 49610 12.46 8 220916 33.16 168579 28.39 Totals 4715110 549.77 3353870 678.9 TABLE 3. Triangle Counts and Times for Bone.
Section x y z 0 104 165 482 1 0 0 473 2 57 57 413 3 5 5 330 4 0 0 207 5 0 0 39 6 0 0 0 7 -13 -8 -480 TABLE 4. Offsets (in mm's) for each section.
We also reconstructed coronal cross-sections for each of the data sets using the softreformat program of the Research Workstation, composing the reformatted image in Figure 2 using Jeff Poskanzer's Portable Bitmap utilities. The gaps in the reformatted images show the boundaries of the 8 sections (the 9th contains the feet and is not contiguous with the other sections).
The bowels were extracted from section 6 by first running the connectivity algorithm and then Marching Cubes with a density of 700. The muscle was similarly extracted using connectivity and Marching Cubes with a density of 1010. The region of interest for the muscle was restricted to slices 100 - 160 because the CT scan artifacts higher in the body caused the connectivity algorithm to leak. Two decimation iterations were applied to both the muscle and bowel surfaces. The bowels were colored with (red, green, blue) values of (.89, .81, .34) with a specular component of .4 and a specular power of 10. The muscle color is (.6980, .1333, .1333), specular component .4 and specular power 10. We created a separate back face property for these two surfaces by reducing the diffuse component of each material to .4. This surface visualization technique is useful to give the viewer a clue as to which surface is an outward surface and which is an inward surface.
The thigh muscles are in section 7. We extracted them using the same density value, 1010, that we used in section 6. A separate connectivity seed was specified for each muscle.
We created a flight through the bone surfaces extracted for the whole data set. We first rendered the skin model for each section properly displaced. Then, using the picking facility in LYMB, we selected 40 points with a mouse from the skin to serve as key frames for an animation. We key framed both the camera look from and look at points using consecutive picked points. LYMB created a smooth camera motion by interpolating the from and to points using splines . We specified 1 second of animation between each key frame point, resulting in 1200 animation frames. Before rendering the sequence, we turned off the skin surface, rendered each frame and saved them to disk. The Silicon Graphics movieconvert program created a lossless QuickTime movie. After transferring the 550 megabyte QuickTime movie to a Macintosh, we single frame recorded the animation using the DiaQuest animaq software controlling a JVC BR-S811U S-VHS VCR. Figures 5 and 6 shows two frames from the resulting animation.
We also produced animations to view the torso and fly around the thighs.
We have done some preliminary investigation of the physical cross-sections. Here we split each color physical cross-section into its red, green and blue components shown in Figure 7. Then, we applied the grey-scale algorithms described above to the red channel only. Figure 8 shows a front view and a profile of the extracted skin surface from 215 slices. We selected the outer skin by first running the connectivity program marking 1538827 voxels and then extracting 3106832 triangles in 181 seconds. We ran two decimation iterations that removed 1226351 triangles.
The National Library of Medicine through the Visible Human Project has provided the medical research and educational community with a rich set of anatomical data. The general availability of the data will encourage researchers to develop new algorithms and compare their work with others. Our experience with that data has been positive although any group working with the data must be prepared to dedicate large amounts of disk storage and computer resources to the project. Practically, most groups will work with subsets of the data, concentrating on perhaps a few anatomical parts of regions. We expect that the major effort in the next few years will be to segment the Visible Man (and Woman). Such a large task will require cooperation of many research groups throughout the world. Central repositories of segment information will be required and we hope the NLM will be able to provide such facilities.
Most of this work was performed while the author was a visiting scientist at the Center for In-Vivo Microscopy at Duke University Medical Center. Al Johnson, Director of the Laboratory, and his staff provided a rich hardware and software environment for these experiments. Others will find that working with such large data sets puts pressure on most laboratory resources.
From the fresh CT data
From the physical slice data
Last Updated: Tuesday, 27-Aug-96 10:26:04
GE Home Page | GE Research and Development