Next: Voxel Storage
Up: Voxel Elimination
Previous: Neighborhood-based Elimination
  Contents
Figure 4.4:
Removal of hidden voxels in 2D: a) viewpoint-independent
preprocessing: relevance of voxel
depends on rays passing through eight
neighbors. b) 4 view-sets: relevance of
depends on three
neighbors. c) 8 view-sets: dependency minimized (two neighbors).
![\includegraphics[width=\linewidth]{Figures/vpdep.eps}](img96.png) |
Although the above approach is able to remove approximately half of a
data set, many voxels have to remain in the volume even if they
only contribute to a MIP for a narrow range of viewing directions.
If enough memory is available for redundant storage of the data,
more efficient preprocessing can be
performed by subdividing all possible viewing directions into disjoint
view-sets in a way which minimizes dependencies among voxels
(figure 4.4). The highest efficiency of removal in 3D
can be achieved if 24 such view-sets are used. For each view-set a set of
potentially visible voxels is computed using a two-pass procedure:
Figure 4.5:
View-point dependent voxel removal (2D). a) Shadowed voxel
sweep. b) Leading voxel sweep.
![\includegraphics[height=6cm]{Figures/sweeps.eps}](img97.png) |
- Shadowed voxel sweep: Mark all voxels
in shadow of
(local) maxima as non-contributing. This is the case when
is
lower than the smallest
ray maximum of rays through
collected before reaching
. This can be easily performed by sweeping through the volume and
processing voxels in the order in which they are hit by an advancing
front of rays. During this
process a front is propagated which contains the smallest maximum
values for rays entering each voxel directly ahead of the front.
Considering the example in figure 4.5a, all
viewing-rays of the given view-set through voxel
have first to pass
either through
or
. The lowest possible values of
rays at
and
respectively are
and
, as
both
and
are on the border of the volume. Thus the
lowest possible value of a ray arriving at
is
.
As
,
may influence some of the arriving rays,
and can not be removed. The value of the rays after passing
equals
and influences the values of rays arriving at the
successive voxels
and
.
- Leading voxel sweep: During the second pass all low-valued
voxels in
front of voxels containing unremoved (local) maxima are
removed. The removal is performed in the same
way as step 1 with the difference that the scan is performed
opposite to the direction of the viewing rays (figure
4.5b). Note, that
voxels removed during the shadowing sweep have no influence on ray
maxima during the second sweep.
Direction dependent preprocessing allows to remove about three
quarters of all
voxels for each view-set (see table 4.1). During rendering,
voxels of the view-set which contains the current viewing direction
are selected and rendered.
Next: Voxel Storage
Up: Voxel Elimination
Previous: Neighborhood-based Elimination
  Contents
Lukas Mroz, May 2001, mailto:mroz@cg.tuwien.ac.at.