|
Creating the Intermediate Image
|
|
In usual datasets there are often much more transparent than non-transparent
samples. To make the Shear-Warp Algorithm more efficient, Lacroute
suggests to use runlength encoding of the volume.
Runlength encoding speeds up the algorithm by making it possible to
skip runs of transparent voxels and runs of opaque pixels while
tracing through the volume.
|
|
Skipping transparent voxels
|
|
The algorithm steps through
each row of pixels in the intermediate image. At the same time it
steps through the two rows of voxels that influence this
one row of pixels. For skipping runs of transparent voxels,
both lines of the processed
slice have to be transparent over the total skipping-interval. So
the minimum number of transparent voxels in both lines
is the size of the skipping-interval.
The following picture illustrates skipping of transparent
voxels. The black grid represents the two rows of
voxels that are processed where the dark gray fields are
non-transparent and the white fields are transparent voxels.
The red grid represents the pixels in the
intermediate image.
|

Skip run of transparent voxels
|
|
Skipping opaque pixels
|
|
Skipping opaque pixels works in a similar way. When the algorithm
traces through lines of pixels in the intermediate image
it simply skipps pixels that have no transparence left.
The following picture illustrates this. The black grid
again represents the two rows of voxels that are processed.
The red grid represents the pixels in the intermediate image
where the white fields are transparent (at least
a threshold of transparency is left) and the gray fields are
totally opaque pixels.
|
|

Skip run of non-transparent pixels
|
|