Kd-Jump: a path-preserving stackless traversal for faster isosurface raytracing on GPUs
Electronic versions
Documents
33.6 MB, PDF document
Abstract
Advances in Graphical Processing Units (GPUs) bring both opportunities
and challenges for the acceleration of volumetric visualisation. Many researchers
have highlighted these problems, such as GPU memory access
and low computation-throughput bottlenecks. For raytracing, stackless
traversal techniques are often used to circumvent memory bottlenecks by
avoiding the use of a stack and instead replacing return traversal with extra
computation. This thesis addresses whether the stackless traversal approaches
are useful on newer hardware and technology (such as CUDA).
In addition this work explores the possibility of accelerating volumetric
segmentation to allow real-time user interaction. As segmentation methods,
especially those based on machine-learning, will typically examine
all the voxels of a volume, they are ideally suited to the parallel nature
of GPU computation. Further, context-preserving volume rendering is explored
for segmentation data in order to see if rendering the segmentation
information of a volume can be useful for users.
In order to explore usefulness of stackless traversal on modern GPUs this
thesis presents a novel stackless approach called kd-jump. Kd-jump exploits
the benefits of index-based node traversal and formulates a return
mechanism based on applying an inverse. Kd-Jump allows traversal to
immediately return to the next valid node, when required, without having
to backtrack one node at a time or perform additional node testing, as the
case is with Kd-Backtrack. This allows kd-jump to avoid incurring extra
node visitation, which will typically incur a greater amount of redundant
work. The stackless method is achieved by the addition of a single 32-bit
integer, which is stored within a fast GPU register, and an accumulation
matrix that is stored in constant memory. In addition ray clipping to the
bounds of a node is required upon return. It is shown that Kd-Jump outperforms
a stack-based approach by an average range of 10% to 20%.
This thesis presents a context-preserving visualization method for segmentation
data derived from volumetric medical images. A segmented volumetric
image contains a number of anatomical objects which are important
features to be visualized. The context preserving rendering algorithm utilizes
the curvature at the surfaces of the segmentation objects to modulate
the opacity contribution during rendering. This results in the areas of high
curvature, typically the most important features, being opaque and visible
and everything else being transparent.
A segmentation tool utilizing support vector machines (SVM) is also presented.
This segmentation tool utilizes incremental SVM to allow for realtime
learning and unlearning of input data and background training. This
enables the SVM to train on previous input while the user continues to provide
further input. The theory for such a system is that the complex task
of training an SVM does not incur a noticeable delay, specifically after the
user has finished inputting data and requires the results. Further, in order
to expedite the class prediction of the remaining volume, using the trained
SVM, GPUs are employed. CUDA-kernels are utilized to predict the class
of each volume voxel and then store the result in a class volume. This first
entails transposing the voxel into the higher dimensional space used in the
SVM and then computing the weighted-kernel sum. These tasks are completely
parallel in respect to the voxels and are perfectly suited for GPU
acceleration.
The main contributions of this thesis can be summarized as the following;
• A novel stackless traversal approach for balanced, or left-balanced
binary trees, which provides a theorized and proven performance improvement
compared to a stack-based approach.
• A volume visualisation method for context-preservation specifically
tailored for segmentation data.
A segmentation tool, which utilizes incremental SVM training, fast
GPU-based volume prediction and fast GPU-based segmentation rendering,
to enable a user to segment volumetric data in real-time with
fewer delays.
and challenges for the acceleration of volumetric visualisation. Many researchers
have highlighted these problems, such as GPU memory access
and low computation-throughput bottlenecks. For raytracing, stackless
traversal techniques are often used to circumvent memory bottlenecks by
avoiding the use of a stack and instead replacing return traversal with extra
computation. This thesis addresses whether the stackless traversal approaches
are useful on newer hardware and technology (such as CUDA).
In addition this work explores the possibility of accelerating volumetric
segmentation to allow real-time user interaction. As segmentation methods,
especially those based on machine-learning, will typically examine
all the voxels of a volume, they are ideally suited to the parallel nature
of GPU computation. Further, context-preserving volume rendering is explored
for segmentation data in order to see if rendering the segmentation
information of a volume can be useful for users.
In order to explore usefulness of stackless traversal on modern GPUs this
thesis presents a novel stackless approach called kd-jump. Kd-jump exploits
the benefits of index-based node traversal and formulates a return
mechanism based on applying an inverse. Kd-Jump allows traversal to
immediately return to the next valid node, when required, without having
to backtrack one node at a time or perform additional node testing, as the
case is with Kd-Backtrack. This allows kd-jump to avoid incurring extra
node visitation, which will typically incur a greater amount of redundant
work. The stackless method is achieved by the addition of a single 32-bit
integer, which is stored within a fast GPU register, and an accumulation
matrix that is stored in constant memory. In addition ray clipping to the
bounds of a node is required upon return. It is shown that Kd-Jump outperforms
a stack-based approach by an average range of 10% to 20%.
This thesis presents a context-preserving visualization method for segmentation
data derived from volumetric medical images. A segmented volumetric
image contains a number of anatomical objects which are important
features to be visualized. The context preserving rendering algorithm utilizes
the curvature at the surfaces of the segmentation objects to modulate
the opacity contribution during rendering. This results in the areas of high
curvature, typically the most important features, being opaque and visible
and everything else being transparent.
A segmentation tool utilizing support vector machines (SVM) is also presented.
This segmentation tool utilizes incremental SVM to allow for realtime
learning and unlearning of input data and background training. This
enables the SVM to train on previous input while the user continues to provide
further input. The theory for such a system is that the complex task
of training an SVM does not incur a noticeable delay, specifically after the
user has finished inputting data and requires the results. Further, in order
to expedite the class prediction of the remaining volume, using the trained
SVM, GPUs are employed. CUDA-kernels are utilized to predict the class
of each volume voxel and then store the result in a class volume. This first
entails transposing the voxel into the higher dimensional space used in the
SVM and then computing the weighted-kernel sum. These tasks are completely
parallel in respect to the voxels and are perfectly suited for GPU
acceleration.
The main contributions of this thesis can be summarized as the following;
• A novel stackless traversal approach for balanced, or left-balanced
binary trees, which provides a theorized and proven performance improvement
compared to a stack-based approach.
• A volume visualisation method for context-preservation specifically
tailored for segmentation data.
A segmentation tool, which utilizes incremental SVM training, fast
GPU-based volume prediction and fast GPU-based segmentation rendering,
to enable a user to segment volumetric data in real-time with
fewer delays.
Details
Original language | English |
---|---|
Awarding Institution |
|
Supervisors/Advisors |
|
Award date | Jul 2010 |