![]() |
A simple approach for the identification of ``hidden'' voxels is to examine
direct neighbors
of a voxel
. If
does not influence the
maximum of any ray passing through
and any of it's neighbors
,
it can be removed. Obviously, this is the case if all rays
through
pass through a neighbor
with
either before of after passing through
.This condition can be
tested by examining the values of all 26 direct neighbors
of
:
Voxel elimination which is based on these two tests can be performed
rapidly (see table 4.1) and just requires access to
direct neighbors of each
voxel. If the above tests fail for a group of rays through
,
,
and
, with
and
, the influence of a larger
neighborhood of
on the value of these rays can be
checked. Each ray passes through a sequence of voxels
with
,
and
as the volume is
traversed. If each of those rays passes through some voxel
with
and
,
has no influence on the
values of the rays through
and
(figure 4.2c). Similarly, if all
rays through
and
pass through voxels
with
and
,
has no influence on the values of those rays
(figure 4.2d).
![]() |
The check of the influence of more
distant volume areas can be realized by recursively propagating
bundles of rays starting at direct neighbors of
(see
table 4.1). If a voxel
is hit by a bundle of rays and
the tracking of the
bundle is terminated, as
has no influence on the rays. If
the bundle is split and tracked in a subset of the
neighbors of
(figure 4.3).
To improve efficiency and avoid unnecessary recursive checks, values
of voxels scheduled for removal are replaced by the minimum of their
obscuring values (which is always larger or equal to
their original value). To compensate for noise in the data and
to increase the number of rejected voxels a user specified tolerance
value
can be included in the comparison process, which artificially lowers the
value of each checked voxel
by
. For voxel reduction
rates using different elimination efforts and tolerance values
please refer to table 4.1. Although
recursive elimination requires significantly more time, it may be the
method of choice if data is prepared on a high-end machine for viewing
with low-end hardware over a network.