Stefan ZellmannUniversity of Cologne | UOC · Department of Mathematics and Computer Science
Stefan Zellmann
Priv.-Doz., Dr. rer. nat., Dipl.-Wirt.-Inf.
About
57
Publications
15,172
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
249
Citations
Introduction
Also check out my Visionaray project on github:
https://github.com/szellmann/visionaray
Publications
Publications (57)
We present the software architecture of the C++ ray tracing template library Visionaray, which provides generic algorithms and data structures as building blocks for applications that traverse rays through 3-D space. While many state of the art ray tracing libraries are vendor specific and focus only on acceleration data structure traversal, Vision...
While k-d trees are known to be effective for spatial indexing of sparse 3-D volume data, full reconstruction, e.g. due to changes to the alpha transfer function during rendering, is usually a costly operation with this hierarchical data structure. We pick a serial state of the art implementation that is based on summed-volume tables and propose a...
Graph drawing with spring embedders employs a V x V computation phase over the graph's vertex set to compute repulsive forces. Here, the efficacy of forces diminishes with distance: a vertex can effectively only influence other vertices in a certain radius around its position. Therefore, the algorithm lends itself to an implementation using search...
Structured Adaptive Mesh Refinement (Structured AMR) enables simulations to adapt the domain resolution to save computation and storage, and has become one of the dominant data representations used by scientific simulations; however, efficiently rendering such data remains a challenge. We present an efficient approach for volume- and iso-surface ra...
In parallel ray tracing, techniques fall into one of two camps: image- parallel techniques aim at increasing frame rate by replicating scene data across nodes and splitting the rendering work across different ranks, and data-parallel techniques aim at increasing the size of the model that can be rendered by splitting the model across multiple ranks...
Interactively visualizing large finite element simulation data on High-Performance Computing (HPC) systems poses several difficulties. Some of these relate to unstructured data, which, even on a single node, is much more expensive to render compared to structured volume data. Worse yet, in the data parallel rendering context, such data with highly...
We propose and discuss a paradigm that allows for expressing \emph{data-parallel} rendering with the classically non-parallel ANARI API. We propose this as a new standard for data-parallel sci-vis rendering, describe two different implementations of this paradigm, and use multiple sample integrations into existing apps to show how easy it is to ado...
Adaptive Mesh Refinement (AMR) is becoming a prevalent data representation for HPC, and thus also for scientific visualization. AMR data is usually cell centric (which imposes numerous challenges), complex, and generally hard to render. Recent work on GPU‐accelerated AMR rendering has made much progress towards real‐time volume and isosurface rende...
Figure 1. CAVE virtual environments use off-axis stereo projection so the user can move freely in front of the viewing plane. Off-axis projection is not supported by the perspective camera model that many ray tracing libraries use. We show how to still implement off-axis projection without having to adapt the internal implementation of the ray trac...
Fig. 1: The "Cabana Dam Break" data set, rendered interactively with our method at 46 FPS, 4 samples-per-pixel per-frame with volumetric shadows (left is 1 frame, right is 1024 averaged frames, bottom row are progressing time steps). GPU-accelerated tree construction and blue noise approach enable interactive animation and improved perception over...
We propose a novel approach to data‐parallel path tracing on single‐node/multi‐GPU hardware that builds on ray forwarding, but which aims—above all else—at generality and practicability. We do this by avoiding any attempts at reducing the number of traces or forward operations performed, and instead focus on always using all GPUs' aggregate compute...
A common way to render cell‐centric adaptive mesh refinement (AMR) data is to compute the dual mesh and visualize that with a standard unstructured element renderer. While the dual mesh provides a high‐quality interpolator, the memory requirements of the dual mesh data structure are significantly higher than those of the original grid, which preven...
Volume data these days is usually massive in terms of its topology, multiple fields, or temporal component. With the gap between compute and memory performance widening, the memory subsystem becomes the primary bottleneck for scientific volume visualization. Simple, structured, regular representations are often infeasible because the buses and inte...
To visually compare ensembles of volumes, dynamic volume lines (DVLs) represent each ensemble member as a 1D polyline. To compute these, the volume cells are sorted on a space-filling curve and scaled by the ensemble's local variation. The resulting 1D plot can augment or serve as an alternative to a 3D volume visualization free of visual clutter a...
Author version. Definitive version to be presented at EuroVis 2023.
Adaptive Mesh Refinement (AMR) is becoming a prevalent data representation for scientific visualization. Resulting from large fluid mechanics simulations, the data is usually cell centric, imposing a number of challenges for high quality reconstruction at sample positions. While recent work has concentrated on real-time volume and isosurface render...
Computational fluid dynamic simulations often produce large clusters of finite elements with non-trivial, non-convex boundaries and uneven distributions among compute nodes, posing challenges to compositing during interactive volume rendering. Correct, in-place visualization of such clusters becomes difficult because viewing rays straddle domain bo...
NeRF-based techniques fit wide and deep multi-layer perceptrons (MLPs) to a continuous radiance field that can be rendered from any unseen viewpoint. However, the lack of surface and normals definition and high rendering times limit their usage in typical computer graphics applications. Such limitations have recently been overcome separately, but s...
We describe a systematic approach for rendering time-varying simulation data produced by exa-scale simulations, using GPU workstations. The data sets we focus on use adaptive mesh refinement (AMR) to overcome memory bandwidth limitations by representing interesting regions in space with high detail. Particularly, our focus is on data sets where the...
We present volkit, an open source library with high performance implementations of image manipulation and computer vision algorithms that focus on 3D volumetric representations. Volkit implements a cross-platform, performance-portable API targeting both CPUs and GPUs that defers data and resource movement and hides them from the application develop...
Modern graphics processing units come with dedicated hardware to perform ray/triangle intersections and bounding volume hierarchy traversal. While the primary use case for this hardware is photorealistic 3-D computer graphics, with careful algorithm design scientists can also use this special-purpose hardware to accelerate general-purpose computati...
Modern GPUs come with dedicated hardware to perform ray/triangle intersections and bounding volume hierarchy (BVH) traversal. While the primary use case for this hardware is photorealistic 3D computer graphics, with careful algorithm design scientists can also use this special-purpose hardware to accelerate general-purpose computations such as poin...
We propose an image warping-based remote rendering technique for volumes that decouples the rendering and display phases. For that we build on prior work where we sample the volume on the client using ray casting and reconstruct z-values based on heuristics. Color and depth buffers are then sent to the client, which reuses this depth image as a sta...
Accurate radiance estimates of high dynamic range textures require importance sampling to direct rays toward influential regions. However, traditional inverse transform sampling involves several expensive searches to locate these highly influential pixels. We propose a reformulation of inverse transform sampling that replaces these texture space se...
A well-known method for rendering unstructured volumetric data is tetrahedral marching (tet marching), where rays are marched through a series of tetrahedral elements. However, existing tet marching techniques do not easily generalize to rays with arbitrary origin and direction required for advanced shading effects or non-convex meshes. Additionall...
In theory, efficient and high-quality rendering of unstructured data should greatly benefit from modern GPUs, but in practice, GPUs are often limited by the large amount of memory that large meshes require for element representation and for sample reconstruction acceleration structures. We describe a memory-optimized encoding for large unstructured...
We describe a technique for GPU and RTX accelerated space skipping of structured volumes that improves on prior work by replacing clustered proxy boxes with a GPU-extracted triangle mesh that bounds the active regions. Unlike prior methods, our technique avoids costly clustering operations, significantly reduces data structure construction cost, an...
The coalescence of two neutron stars was recently observed in a multi-messenger detection of gravitational wave (GW) and electromagnetic (EM) radiation. Binary neutron stars that merge within a Hubble time, as well as many other compact binaries, are expected to form via common envelope evolution. Yet five decades of research on common envelope evo...
With the recent addition of hardware ray tracing capabilities, GPUs have become incredibly efficient at ray tracing both triangular geometry, and instances thereof. However, the bounding volume hierarchies that current ray tracing hardware relies on are known to struggle with long, thin primitives like cylinders and curves, because the axis-aligned...
div>
We propose an image warping-based remote rendering technique for volumes that decouples the rendering and display phases. Our work builds on prior work that samples the volume on the client using ray casting and reconstructs a z-value based on some heuristic. The color and depth buffer are then sent to the client that reuses this depth image...
div>
We propose an image warping-based remote rendering technique for volumes that decouples the rendering and display phases. Our work builds on prior work that samples the volume on the client using ray casting and reconstructs a z-value based on some heuristic. The color and depth buffer are then sent to the client that reuses this depth image...
Figure 1: Glyph visualizations with several different shapes and appearance. Left: Particle flow in a combustion chamber visualized with arrow glyphs and high-quality rendering with path tracing and filmic BRDF. Second from left: Diffusion tensor imaging with tensor eigen-values mapped as RGB colors. Middle: Diffusion tensor imaging rendered with a...
Instancing is commonly used to reduce the memory footprint of massive 3-d models. Nevertheless, large production assets often do not fit into the memory allocated to a single rendering node or into the video memory of a single GPU. For memory intensive scenes like these, distributed rendering can be helpful. However, finding efficient data distribu...
div>
Most ray tracing libraries allow the user to provide custom functionality that is executed when a potential ray surface interaction was encountered to determine if the interaction was valid or traversal should be continued. This is e.g. useful for alpha mask validation and allows the user to reuse existing ray object intersection routines ra...
div>
Most ray tracing libraries allow the user to provide custom functionality that is executed when a potential ray surface interaction was encountered to determine if the interaction was valid or traversal should be continued. This is e.g. useful for alpha mask validation and allows the user to reuse existing ray object intersection routines ra...
div>
Empty space skipping can be efficiently implemented with hierarchical data structures such as k-d trees and bounding volume hierarchies. This paper compares several recently published hierarchical data structures with regard to construction and rendering performance. The papers that form our prior work have primarily focused on interactively...
div>
Empty space skipping can be efficiently implemented with hierarchical data structures such as k-d trees and bounding volume hierarchies. This paper compares several recently published hierarchical data structures with regard to construction and rendering performance. The papers that form our prior work have primarily focused on interactively...
Shallow k-d trees are an efficient empty space skipping data structure for sparse volume rendering and can be constructed in real-time for moderately sized data sets. Larger volume data sets however require deeper k-d trees that sufficiently cull empty space but take longer to construct. In contrast to k-d trees, uniform grids have inferior culling...
While k-d trees are known to be effective for spatial indexing of sparse 3-d volume data, full reconstruction, e.g. due to changes to the alpha transfer function during rendering, is usually a costly operation with this hierarchical data structure. In a recent publication we showed how to port a clever state of the art k-d tree construction algorit...
Shallow k-d trees are an efficient empty space skipping data structure for sparse volume rendering and can be constructed in real-time for moderately sized data sets. Larger volume data sets however require deeper k-d trees that sufficiently cull empty space but take longer to construct. In contrast to k-d trees, uniform grids have inferior culling...
While fast spatial index construction for triangle meshes has gained a lot of attention from the research community in recent years, fast tree construction algorithms for volume data are still rare and usually do not focus on real-time processing. We propose a linear time bounding volume hierarchy construction algorithm based on a popular method fo...
Reducing the amount of conditional branching instructions in innermost loops is crucial for high performance code on contemporary hardware architectures. In the context of ray tracing algorithms, typical examples for branching in inner loops are the decisions what type of primitive a ray should be tested against for intersection, or which BRDF impl...
Clipping is an important operation in the context of direct volume rendering to gain an understanding of the inner structures of scientific datasets. Rendering systems often only support volume clipping with geometry types that can be described in a parametric form, or they employ costly multi-pass GPU approaches. We present a SIMD-friendly clippin...
https://github.com/szellmann/visionaray A C++ based, cross platform ray tracing library
Reconstruction of 2-d image primitives or of 3-d volumetric primitives is one of the most common operations performed by the rendering components of modern visualization systems. Because this operation is often aided by GPUs, reconstruction is typically restricted to first-order interpolation. With the advent of in situ visualization, the assumptio...
A popular class of reconstruction filters that are used in signal and image processing is based on cubic B-splines. One reason for their popularity is the fact that they can be efficiently implemented. This is specifically true with modern GPUs where cubic B-spline filtering can be implemented by means of linearly interpolating texture fetches so t...
This thesis is about Direct Volume Rendering on high performance computing systems. As direct rendering methods do not create a lower-dimensional geometric representation, the whole scientific dataset must be kept in memory. Thus, this family of algorithms has a tremendous resource demand. Direct Volume Rendering algorithms in general are well suit...
Terrestrial laser scanning was conducted to document and analyse sites of geoarchaeological interest in Jordan, Egypt and Spain. In those cases, the terrestrial laser scanner LMS-Z420i from Riegl was used in combination with an accurate RTK-GPS for georeferencing of the point clouds. Additionally, local surveying networks were integrated by establi...
In order to avoid load imbalances on the GPU during direct volume rendering, a common scheme was to move the generation of proxy geometry, that quite often consists of polygons retrieved through box-plane intersections, from the CPU to the vertex stage of the GPU. Nowadays, with the unified shader architectures implemented by modern graphics hardwa...
We present a scalable software architecture for distributed direct volume rendering on HPC systems. Our approach allows for generically replacing components along the distributed volume rendering pipeline. Renderer components range from highly specialized GPU renderers that implement state of the art features to more versatile remote renderers, tha...
Remote rendering is employed when the visualization task is too challenging for the hardware used to display a dataset or when it is too time consuming to transfer the complete dataset. Volume visualization with its dataset sizes growing with the 3rd power of their spatial resolution is such a task. Since remote rendering introduces additional sour...