The high-resolution 3D radiological image represents a virtual environment for exploration. The user begins the navigation somewhere inside the 3D image and navigates through the image. A navigation path is traced out as the user travels. At each step of the navigation path, the user sees a 3D view of the local environment around that viewing site.
Figure 2 illustrates the geometry for navigation.
The 3D radiological image is represented by the large cube. A typical navigation
path is depicted by the trajectory formed by the points ,
,
...,
, where
,
, ...,
are the corresponding
time steps. At each
time step
, a small local cube of data is used to compute the
3D volume-rendered view
at viewing site
along the path. The
local cube of
data is the standard viewing pyramid encountered in ray casting [32].
For simplicity, we assume a parallel-projection geometry [33].
(While the parallel-projection geometry is not necessarily realistic for our 3D scenario, it is assumed in many 3D medical imaging problems. Further, our set-up provides much useful information -- especially given the dynamic nature of the display -- and the distortion is not necessarily that large. Section 5 provides more details.)
Figure 2. Navigation geometry. The large cube represents the 3D image environment. The curved line depicts a possible 3D navigation path traversed through the image. The small cubes represent the viewing pyramid (visible data) for various viewing sites.
The navigation path traversed by the user can be arbitrary. This implies that the viewing sites are constantly changing. Yet, for the navigation to be interactive, the volume-rendered views must be computed rapidly. Unfortunately, the associated numerical computations are intense, as noted earlier. The computational cost can be reduced by noting that the movements along a navigation path are incremental. Hence, the change in rendered views from one viewing site to the next along a path is small. An implication of this temporal coherence is that the data needed to compute the views changes little from one view to the next.
This observation motivates our method for interactive
dynamic rendering. We first compute a data structure
at that facilitates the computation of views
,
,
, etc. Then, as one changes viewing site, we either access
the data structure or update it to compute the needed view; this accessing
and updating can be done quickly using a series of
numerical procedures described in Section 3. An outline
of the basic algorithm is given below: