In this paper they are using Frame-to-Frame coherence and another
rendering method. Based in a previous work that was just for parallel projection. It is useful
for external views since the distance from the viewer to the data is
relatively large but it is not useful to go inside the volume where the viewer is
inside the data.
- Previous statements
-
It is supposed that the volume is isotropic. The sampling
distance is . All the units in the paper are written
in units of the voxel spacing .
The view frustum :
- Size of the view frustum volume.
- View frustum position and orientation is defined by
position p and with an orientation .
- Depth of view is fixed d.
- An arbitrary path is traced through the volume and is defined
by a discrete sequence of viewing sites
where whose values are not known in
advance.
- The path is sequence of incremental steps in a
direction or rotations about an axis.
The coherence between nearby frames f is used.
The results from the computation of a given view are used to
compute f successive frames, after which a refresh view must
be produced.
Sampling is obtaining the color and opacity of a point in
the ray. (Interpolation, Transfer functions mapping, and
shading or light calculation).
Composition is Volumetric composition equation in a
front to back.
The algorithm is divided in 2 phases.
- Phase 1
- (figure ):
Short ray segments are cast composite color computing the
composite color and transparency for each segment.
Assumed that the sampling rate is for simplicity.
- The sample points are divided into L levels where
based on the distance from the viewpoint.
- distance of the first sample of level l.
- Each level l consist of a set of ray segments
or that treat the samples from to
( samples).
- or
- Result phase 1 L two-dimensional arrays.
- Each level can be sampled at different
resolutions.
horizontal and vertical resolutions of
the segments casts in level l.
With that they can get adaptive sampling to avoid
undersampling of distance points. Trying to maintain
similar lateral sampling.
Avoid oversampling in the regions near the
viewpoint. The few levels near the view point cast
very few rays /it Acceleration.
Figure: 2D illustration of the segments computed by the
two-phase algorithm. The horizontal lines represent the
rectangles into which the segments are to be mapped
- Phase 2
-
Construct approximations of the full rays in the second phase.
- do from to Screen
resolution.
- alpha blending
Done using 2D-texture-Mapping for each level
(acceleration hardware).
- Define a rectangle for any level
- Drawn with mapped at distance
perpendicular two the view direction and
from front to back and Alpha blending.
- Special treatment of Drawn between 0 and
.
or from l=0 to l=L-2 resampling level l from
to and composing with level
l+1. not used
- Performance
- Brute force raycasting is an special case of two-phase
algorithm in which are cast to Depth d in a single
level.
- 10 Levels and 0.385 times as many sample steps as the
brute force approach. See table 1 in figure .
- Composing operation is nonlinear reordering
interpolation and the composite steps will incur some
error. See figure to do a visual comparison
between brute force and two phase ray casting.
Figure: Rendering comparison:
a) Brute force perspective raycasting.
b) The two phase algorithm.
c) Difference between the two multiplied by 10.
Figure: Tables of times and comparisons
- Interactive Navigation
- :
Phase 1 can be reused to approximate frames from viewpoint
near the base position (the position from where the phase
1 was calculated).
- radius from the base position.
- angle of the original viewing
direction.
- levels that need to be recalculated in
every step. So reused .
To avoid jerky motion due to the periodic pause to fresh
the samples when the view position is out of
. New position of refresh can be estimated
(long translations in a direction or rotations about an
axis) and spread it during the frames calculation.
- Viewpoint Translation.
- (See figure ).given
- Viewpoint Rotation
- (figure )given
Figure: The initial segment data structure is depicted in
gray and should be 2 wider that the field of view
- incremental in angle rotation in a
axes.
- the size of the viewing frustum in the
direction of rotation is wider.
- is the next
predicted structure.
- levels from 0 to don't need to be
recomputed at each step.
- More resampling accuracy than translation. No
error in the orientation of the segments. Relative
distance are well defined.
- Times
- See table 2 in figure )
in order to compare time savings.
Figure: Tables of times and comparisons