Information
- Publication Type: Master Thesis
- Workgroup(s)/Project(s):
- Date: July 2023
- Date (Start): October 2022
- Date (End): July 2023
- Second Supervisor: Johanna Beyer
- Diploma Examination: 27. September 2023
- Open Access: yes
- First Supervisor: Eduard Gröller
- Pages: 99
- Keywords: volume rendering, ray-guided rendering, large-scale data, out-of-core rendering, multi-resolution data, multi-channel volumes, web-based visualization
Abstract
Recent advances in imaging modalities produce large-scale volumetric data sets with a large number of channels. Interactive visualization of such data sets requires out-of-core direct volume rendering (DVR) methods such as octrees or page-table hierarchies. For this reason, data sets are both down-sampled into a multi-resolution hierarchy and divided into smaller bricks, in order to stream only those parts of the volume contributing to the rendered image to the GPU. Furthermore, rendering multiple channels requires careful optimization because the high computational cost of DVR grows with the number of channels to render. A common optimization in DVR is empty-space skipping where fully translucent regions in the volume are not sampled to reduce the number of loop iterations and texture look-ups during rendering. Previous out-of-core DVR methods are designed for single-channel volumes and are only suitable for multi-channel volumes to a limited extent. In octree-based methods, accessing cached volume data requires traversing the tree for each sample and channel. Furthermore, in previous approaches, the spatial subdivision of the octree is intrinsically coupled to the down-sampling ratio and bricking granularity in the data set. This leads to suboptimal cache utilization and makes fine-grained empty-space skipping costly. Page-table hierarchies, on the other hand, allow access to any cached brick from any resolution without traversing a tree structure. However, their support for empty-space skipping is also tied to the bricking granularity in the data set and is thus limited. We present a hybrid multi-volume rendering approach based on a novel Residency Octree that combines the advantages of out-of-core volume rendering using page tables with those of standard octrees. We enable flexible mixed-resolution out-of-core multi- volume rendering by decoupling the cache residency of multi-resolution data from a resolution-independent spatial subdivision determined by the tree. Instead of one-to-one node-to-brick correspondences, each residency octree node is mapped to a set of bricks in each resolution level. This makes it possible to efficiently and adaptively choose and mix resolutions, adapt sampling rates, and compensate for cache misses. At the same time, residency octrees support fine-grained empty-space skipping, independent of the data subdivision used for caching. Finally, to facilitate collaboration and outreach, and to eliminate local data storage, our implementation is a web-based, pure client-side renderer using WebGPU and WebAssembly. Our method is faster than prior approaches and efficient for many data channels with a flexible and adaptive choice of data resolution.Additional Files and Images
Additional images and videos
teaser:
Figure 1.1: Overview of our method. Volume bricks of different resolution levels and channels are streamed into a
brick cache (a), and referenced via a multi-channel page-table hierarchy (b). The residency octree (c) keeps track of the
correspondence between spatial regions and the cache residency of bricks of different resolutions, enabling mixed-resolution,
multi-channel rendering (d) with efficient, adaptive substitution of missing higher resolutions by available lower resolutions.
Traversal happens for spatial regions corresponding to octree nodes instead of memory pages and is also independent of the
number of channels. (e) 16-channel rendering of melanoma.
Additional files
Weblinks
BibTeX
@mastersthesis{herzberger-2023-swv, title = "Scalable Web-based Volume Rendering for Large-scale Biomedical Data Sets", author = "Lukas Herzberger", year = "2023", abstract = "Recent advances in imaging modalities produce large-scale volumetric data sets with a large number of channels. Interactive visualization of such data sets requires out-of-core direct volume rendering (DVR) methods such as octrees or page-table hierarchies. For this reason, data sets are both down-sampled into a multi-resolution hierarchy and divided into smaller bricks, in order to stream only those parts of the volume contributing to the rendered image to the GPU. Furthermore, rendering multiple channels requires careful optimization because the high computational cost of DVR grows with the number of channels to render. A common optimization in DVR is empty-space skipping where fully translucent regions in the volume are not sampled to reduce the number of loop iterations and texture look-ups during rendering. Previous out-of-core DVR methods are designed for single-channel volumes and are only suitable for multi-channel volumes to a limited extent. In octree-based methods, accessing cached volume data requires traversing the tree for each sample and channel. Furthermore, in previous approaches, the spatial subdivision of the octree is intrinsically coupled to the down-sampling ratio and bricking granularity in the data set. This leads to suboptimal cache utilization and makes fine-grained empty-space skipping costly. Page-table hierarchies, on the other hand, allow access to any cached brick from any resolution without traversing a tree structure. However, their support for empty-space skipping is also tied to the bricking granularity in the data set and is thus limited. We present a hybrid multi-volume rendering approach based on a novel Residency Octree that combines the advantages of out-of-core volume rendering using page tables with those of standard octrees. We enable flexible mixed-resolution out-of-core multi- volume rendering by decoupling the cache residency of multi-resolution data from a resolution-independent spatial subdivision determined by the tree. Instead of one-to-one node-to-brick correspondences, each residency octree node is mapped to a set of bricks in each resolution level. This makes it possible to efficiently and adaptively choose and mix resolutions, adapt sampling rates, and compensate for cache misses. At the same time, residency octrees support fine-grained empty-space skipping, independent of the data subdivision used for caching. Finally, to facilitate collaboration and outreach, and to eliminate local data storage, our implementation is a web-based, pure client-side renderer using WebGPU and WebAssembly. Our method is faster than prior approaches and efficient for many data channels with a flexible and adaptive choice of data resolution.", month = jul, pages = "99", address = "Favoritenstrasse 9-11/E193-02, A-1040 Vienna, Austria", school = "Research Unit of Computer Graphics, Institute of Visual Computing and Human-Centered Technology, Faculty of Informatics, TU Wien", keywords = "volume rendering, ray-guided rendering, large-scale data, out-of-core rendering, multi-resolution data, multi-channel volumes, web-based visualization", URL = "https://www.cg.tuwien.ac.at/research/publications/2023/herzberger-2023-swv/", }