The major steps in our current experiment come in three parts: calibration, data acquisition, and image generation. There is a separate page for a discussion of the calibration portion.
The HMD and ultrasound tracking data is taken from our ceiling tracker, and stored to disk. The HMD and ultrasound video streams are stored on D2 digital tape. Note that currently we cannot track two things at a time with our ceiling tracker, so first the HMD data was acquired, then the ultrasound data was.
The belly's surface geometry is collected as a set of points. To find the points, we use the ultrasound transducer as a pointing device.
All the tracker data collected is filter with a non-causal low-pass filter. For the ultrasound transducer tracking at cut off frequency of 1 Hz is used. For the HMD tracking the cut off frequency we use is 6 Hz.
To collect the video images, first they were stored on D2 digital tape. The they were grabbed from the video tape using our VME frame grabber.
The ultrasound images can be arbitrarily oriented and position in space. Thus for each ultrasound video image, we have a tracker record of its position and orientation. Then we take all the images and reconstruct them into a regularly gridded volume. The reconstruction algorithm is described in Ryutarou Ohbuchi's dissertation.
The HMD video data is used to generate the see-through aspects of the virtual environment. The HMD tracking data is used to match the virtual viewpoint with the HMD camera's viewpoint. Thus the virtual data appears combined with the real world through the video camera.
The metaphor we use for the visualization in our augmented reality system is of a pit. So we simulate a pit within the belly of the patient. Previous experiments simply overlayed the virtual display over the video camera. This proved to be a very artifical looking display. Therefore we created the pit to give the HMD wearer more 3D visual cues in the display. To properly define the pit, we use the shape and position of the belly.
The computer graphics images are rendered using the vol2 volume render on Pixel Planes 5. Then they are combined with the video camera images using a video chroma-keyer.