Interactive visualisation techniques for large time-dependent data sets |
The research described in this thesis was part of a larger research project about multi-phase flows, in cooperation with researchers from Fluid Mechanics and Numerical Analysis. Multi-phase flows are characterised by a sharp transition between the fluids, the so-called phase front. There is no mixture between these fluids, therefore the transition from one fluid or phase to another is sharp and coincides with large jumps in physical quantities such as density and viscosity. One of the goals of the project was to study the evolution of the phase fronts using CFD, i.e. to study the development of the surfaces over time and to understand how they change and interact with each other. In order to study the evolving fronts, methods were needed for detecting and extracting them in the first place, and subsequently for tracking the phase fronts over time, and finding a way to visualise them interactively. Initially, feature extraction and tracking techniques were studied for this. However, after about a year into this project, it became apparent that the numerical method that was to be used for the simulation could provide an implicit surface representation of the phase front. This surface could easily be extracted from the data as an isosurface. Therefore, the research into feature extraction techniques was abandoned at that time and the focus of the research was redirected towards efficient techniques for interactive isosurfacing from very large time-dependent data sets.
Fast-access data structures that were designed to perform one particular visualisation task efficiently were examined first. These data structures make use of the properties of a particular visualisation algorithm and are made to fit the algorithm closely. One such data structure was explored in detail: the temporal index tree, in combination with the interval tree. The interval tree was designed for very fast isosurface cell selection. This data structure is combined with a temporal index tree that makes use of data coherence in time to compress the data set in this dimension. The combined application of these data structures results in high speed isosurface cell extraction from time-dependent data sets. The extraction algorithm was combined with a special-purpose fast direct-rendering algorithm in order to prevent the rendering from becoming the bottleneck. The advantage of data structures like these is that they are designed to perform a particular visualisation task very fast. However, the drawback is that they are also limited to perform only that visualisation task. For extracting isosurfaces from time-dependent data sets, the index tree works very well, but the resulting visualisation cannot be combined with another type of visualisation.
The data is stored in such a way in the index tree, that only isosurface cells can be extracted from it. The original, raw data set is not available, so the isosurface cannot be coloured with another scalar, or combined with streamlines, for example.
The second approach that was explored is the use of multi-resolution data struc- tures. These structures enable the data to be accessed at several levels of resolution.
The original data can be retrieved, but if available time or memory is limited, a lower resolution version of the data can also be requested. Whatever resolution is used, raw data is returned, which means that the visualisation is as flexible as in the original data. Unlike the fast-access data structures described above, (most) multi-resolution structures are not designed for one specific visualisation algorithm. This is a large difference between the two approaches, and a huge advantage of the latter.
A multi-resolution data structure provides the flexibility to switch between different visualisations and is designed to handle large data sets by trading off data resolution for speed. There are many different ways to create a multi-resolution data structure. The method that was implemented in this project reorders the data in such a way that low resolution (subsampled) data is at the front of the data set and data points from consecutive higher levels of resolution are stored consecutively on disk.
This has a number of advantages. First, there is no data replication, so the size of the multi-resolution data set is the same as that of the original data set; there is no spatial overhead. Secondly, data points from a single level of resolution are stored coherently on disk and therefore cache-friendly. Thirdly, because the data is merely reordered, lower resolution data is part of the higher resolution data. This means that the lower resolution data can be reused and less data has to be read when increasing the resolution. The fact that the low resolution data is only a subset of the high resolution data is also a disadvantage: if the data would be downsampled (filtered) instead of subsampled (unfiltered), less information would be lost in the lower levels of resolution, resulting in the data and visualisation being more smooth.
The multi-resolution approach was extended to time-dependent data sets. Techniques for region-of-interest selection and time-window management were added to provide interactive visualisation and space-time navigation of these large 4D data sets.
Images and movies
BibTex references
@PhdThesis { VR07a, author = "Vrolijk, Benjamin", title = "Interactive visualisation techniques for large time-dependent data sets", school = "Delft University of Technology", month = "", year = "2007", note = "978-90-8559-293-8", type = "phdthesis", url = "http://graphics.tudelft.nl/Publications-new/2007/VR07a" }