An efficient and fast GPU-based algorithm for visualizing large volume of 4D data from virtual heart simulations

https://doi.org/10.1016/j.bspc.2017.01.015Get rights and content

Highlights

  • A 4D visualization method of large virtual heart simulation data is proposed.

  • A N-nearest neighbor searching strategy for compressing original data is proposed.

  • An adaptive sampling method for rendering compressed data is presented.

  • The method obtains high image quality and real time rendering speed simultaneously.

Abstract

An efficient and fast visualization algorithm is important for analyzing a large volume of physical data conformed to 3D anatomical geometry that evolves with time (i.e., 4D data). Such 4D visualization helps to study the evolution of cardiac excitation waves in normal and pathological conditions and understand the mechanisms underlying the genesis and maintenance of cardiac arrhythmias. However, due to limited hardware resources, so far we have not found any report about real time methods to visualize a large volume of 4D data of virtual heart simulation data. In this study, we propose a GPU-based method to address this issue, our method consists of two phases, and the first is the data compression phase, implementing an improved hierarchical vector quantization method with N-nearest neighbor searching strategy in GPU, which reduces compression time dramatically. In the second phase, the compressed data is directly decompressed in GPU and rendered with ray casting method. What is more, an adaptive sampling strategy and empty space skipping methods are further used to accelerate the rendering process, resulting in a high rendering speed. The proposed method has been evaluated for the visualization of large time-varying cardiac electrophysiological simulation data by using our simulation datasets and has achieved promising results. For about 27G bytes dataset, our method can render the data with above 35 frames per second (FPS), which exceeds the real-time frame rate for interactive observing. It significantly decreases the time in the compression phase and achieves real time rendering speed with high image quality in the visualization phase, which demonstrates the accuracy and efficiency of our method.

Introduction

Virtual physiological heart provides a powerful computational platform to simulate and analyze the underlying mechanisms for normal and abnormal cardiac electrical activities [1]. For example, Multi-scale heart simulation and visualization methods have been used to study pathological mechanisms of cardiac arrhythmias by analyzing the evolution of re-entrant electrical excitation waves in the heart [2]. In these studies, due to large volume of physical data in 3D space, which evolves with time (i.e., 4D data), it is still a challenge to visualize dynamical cardiac excitation waves with high quality in an efficient and interactive way. As the size of the 4D data (such as heart data) may be up to dozens of gigabytes, it is hard to store them in the RAM or the video memory, data transmission between the RAM and the video memory is time consuming, which makes it difficult for a rapid manipulation (i.e., “real-time”) of the visualization. Some out-of-core methods, such as volume compression methods [3], [4], [5], [6], can solve some of the storing and transferring problems, but most of these methods are still time-consuming, which may take minutes or hours to complete the tasks of compression. Furthermore, such compressed data cannot be decompressed directly in graphics processing unit (GPU), which seriously restricts rendering speed, so they need to make a necessary trade-off between the image quality and the speed.

Visualization methods have been applied in heart models for several years. A 3D human atrial model and the corresponding visualization method were used by Colman et al. [7] to simulate and analyze how re-entrant excitation waves degenerate into persistent and erratic wavelets underlying atrial fibrillation. Aslanidi et al. [8] used 2D and 3D models to investigate how the frequency, wavelength, meandering pattern and stability of the re-entrant spiral waves evolve with time in cardiac tissue. Their works presented insights into underlying possible mechanisms of cardiac arrhythmias, but their 3D visualization results were presented only as discrete snapshots of animation, which normally took a large amount of computing time, limiting an efficient and interactive visualization of simulations. To our best knowledge, among the intense research of cardiac visualization methods, few of them focused on the issue of 4D visualization problems. For example, Wang et al. [9] presented a simplified LH histogram-based transfer function design method to interactively visualize multi-boundary and electrophysiology simulation data, but this method was based on CPU, which cannot be implemented interactively with simulation courses. Zhang et al. [10] provided a visualization method to display dynamic 4D real-time MDCT images and later expanded the system to 4D cardiac MRI and ultrasound images [11], but the data size were relatively small as compared to the large volume data of whole heart simulations.

With the great advance of graphic hardware technology, GPU-based methods for data visualization have been proposed. Garcia et al. [4] introduced a GPU-based algorithm for reconstructing 3D wavelets using fragment programs and tile-boards to distribute the 3D wavelet coefficients. Wetekam et al. [12] used an FPGA decoder to decompress wavelet coefficients based on Huffman variable bit decoding; Villa et al. [13] proposed a hardware-accelerated pipeline to resample the slice using 3D texture. Lamas-Rodriguez et al. [14] presented a brick-based GPU-accelerated method in which bricks were decompressed and rendered with a specific level of resolution depending on their distances to the eye point. The method was a GPU implementation of Ihm and Park's classic wavelet-based rendering [15]. Transforming domain approaches stated above are kind of pre-defined models [16], and are often computationally economic, but the disadvantage of these approaches is that the compressed data cannot be decompressed or rendered directly in GPU because of the sophisticated decoding process, that is a large waste of the strong computational capability of the hardware.

Vector quantization (VQ) is another strategy to compress volume data. The idea of VQ is to divide the space into small blocks and then represent these blocks with a set of vectors named codewords or dictionary. VQ was first introduced in volume rendering by Paul et al. [17]. Schneider et al. [5] proposed a hierarchical VQ method (HVQ) with three hierarchical levels and a dictionary of 1024 elements. The learning of the codebooks is performed through a modification of the Linde–Buzo–Gray (LBG) algorithm [18]. Fout et al. [19] combined HVQ with a previous domain transformation. Some methods based on sparse coding have been proposed in recent years which can be seen as a generalization of VQ [20], Gobbetti et al. [21] compactly described the small blocks of datasets by sparse linear combinations of prototype blocks stored in an over-complete dictionary, applying the concept of corset [22], [23]. VQ-based methods are very popular in the papers of volume rendering since the decompression is extremely fast and can be done directly on GPU. However, a main problem of these methods is the computationally expensive cost in pre-processing massive volumes for obtaining a good codebook.

In recent years, tensor approximation (TA) has been applied to interactively visualize large volume data, such as the hierarchical brick-tensor composition method and the tensor-specific quantization strategy developed by Suter et al. [6], [24]. However, the reconstructive costs in GPU are very high and real time reconstruction is feasible only for small blocks. Other methods treat the 4D data as a 3D video [25], which means combining the spatial compression with time compression. For example, Jang et al. [26] used the functional representative approach for time-varying data, encoding the data by utilizing temporal similarities of the evolving datasets. Wang et al. [27] built a hierarchical structure for each time step, then grouped and encoded space-corresponding nodes together. This method is very easy to implement and each frame can be encoded separately, but it cannot exploit the space coherence of the data since the data is separated by time step.

In this paper, we present a solution to tackle the aforementioned challenges, i.e., limited hardware resource to store the GB bytes of volume data, time-consuming compression process, not real-time visualization and poor image quality, for visualization of the 4D cardiac electrophysiological simulation data in a dynamic style, so that the data can be interpreted in an interactive way (for example users can explore the 4D object from any viewing angles, and visualize the inside volume by simply rotating or changing the opacity of any parts of the target). The solution consists of two main aspects: one is to compress the data rapidly and the other is to develop a method to render the compressed data directly in GPU without loss of image quality and rendering speed.

Specifically, in the compression phase, a N-nearest searching method and a GPU-based compression architecture were proposed to speed up the VQ and encoding processes. In the rendering phase, some techniques were employed to accelerate the rendering process. Firstly, we expanded the hierarchical data structure to skip the empty blocks in the rendering stage. Secondly, an adaptive sampling strategy was presented to find a valid block as fast as possible, avoiding the redundant computations. Third, an advanced feature, texture object in CUDA (Compute Unified Device Architecture, a parallel computing platform and programming model which enables dramatic increases in computing performance by harnessing the power of the GPU) [28], was employed to control the rendering flow flexibly. We also tried to render the compressed data with the ray casting method and tri-linear interpolation by taking advantage of these methods.

Section snippets

Overview

For real-time rendering of time-varying volumetric data sets, it is essential to implement a compressed representation of the data. In fact, due to the bandwidth at various stages of the pipeline, it is often not feasible to interactively load, decode and render data at each time step in GPU in real time. To overcome this problem, we propose a new method with architecture shown in Fig. 1. First, the volume is decomposed into hierarchical structure, which consists of two sets of vectors and

Results

We have implemented our GPU-based compression and visualization method on a computer with an Intel i5 2.6 GHz CPU, 4G DDR3 memory, and an NVidia GT640 video card and 1G GDDR5 video memory, CUDA driver version is 5.5, and the operating system is windows 7. The simulation data are generated through the methods described in section 2.2. Since there are two main stages, compress stage and rendering stage, in our method, which are relatively independent, we evaluate our work on the two stages

Advantages of the proposed method

We have demonstrated the efficiency of our compression and visualization method. As for data compression, the compression time has been shortened to about 60 times less than the conventional method, just like Fig. 6(b) has showed. There are two main factors contributing to the speed of compression. The first one is the N-nearest neighbor searching strategy. Since there is usually redundant searching in all of the codewords, our searching strategy can restrict the searching range into a

Conclusion

Visualization methods play an important role in the study of cardiac functions at normal/abnormal conditions by simulations. However, it is still a challenge to visualize the large and dynamically varying data because of the restricted performance of hardware.

In this paper, we have proposed an approach to tackle these difficulties. We have introduced a novel visualization method based on GPU both in compression phase and rendering phase. A GPU-based compression method, along with an N-nearest

Conflict of interest statement

The authors do not hold any conflicts of interest that could inappropriately influence this manuscript.

Acknowledgements

This work was supported by the National Nature Science Foundation of China (Nos. 61571165). Special thanks to Songjun Xie for providing the cardiac electrophysiological simulation data.

References (37)

  • K. Wang et al.

    Effective transfer function for interactive visualization and multivariate volume data

    Biomedical Engineering and Informatics (BMEI), 2011 4th International Conference on IEEE

    (2011)
  • Q. Zhang et al.

    GPU-based visualization and synchronization of 4-D cardiac MR and ultrasound images

    Information Technology in Biomedicine, IEEE Transactions on, 16

    (2012)
  • G. Wetekam et al.

    A hardware architecture for multi-resolution volume rendering

    Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware

    (2005)
  • I. Viola et al.

    GPU-based frequency domain volume rendering

    Proceedings of the 20th spring conference on Computer graphics

    (2004)
  • J. Lamas-Rodríguez et al.

    A gpu-based multiresolution pipeline for compressed volume rendering

    Proc. International Conference on Parallel and Distributed, Processing Techniques and Applications

    (2013)
  • I. Ihm et al.

    Wavelet-Based 3D Compression Scheme for Interactive Visualization of Very Large Volume Data

    Comput Graph Forum

    (1999)
  • M. Balsa Rodríguez et al.

    State-of-the-Art in Compressed GPU-Based Direct Volume Rendering

    Comput Graph Forum

    (2014)
  • P. Ning et al.

    Fast volume rendering of compressed data

    Visualization, 1993. Visualization’93, Proceedings., IEEE Conference on

    (1993)
  • Cited by (10)

    • MR and ultrasound cardiac image dynamic visualization and synchronization over Internet for distributed heart function diagnosis

      2021, Computerized Medical Imaging and Graphics
      Citation Excerpt :

      Since the beginning of medical imaging, technology has been pushing the boundaries of 4D cardiac visualization and enhancing the capabilities in cardiac therapy. For example, Levin et al. (Levin et al., 2005) exploit consumer graphics hardware to perform real-time processing and visualization of high-resolution 4D cardiac data, and a GPU-based method is proposed by Yu et al. (2017) to display a large volume of 4D medical data in the application of virtual heart simulation. Using multi-phase contrast-enhanced cardiac data sets, Kidoh et al. (2017) have developed an algorithm to display and assess the relationship between left ventricular wall segments and abnormal regional wall motion.

    • A CT-guided robotic needle puncture method for lung tumours with respiratory motion

      2020, Physica Medica
      Citation Excerpt :

      It is worth noting that the rendered image can be synchronized with the actual breathing, which makes it reflect the natural variations and non-linearities in the respiratory motion of a patient. Several approaches have been devised to render the beating of the heart [30,31], one of which used electrocardiographic (ECG) gating to synchronize dynamic cardiac images, but the image had a cardiac cycle delay relative to the ECG signal. In this paper, the Hilbert transform is introduced to determine the phase of the respiratory signal as a criterion for synchronization, eliminating the aforementioned delay.

    • Interactive spatio-temporal exploration of massive time-Varying rectilinear scalar volumes based on a variable bit-rate sparse representation over learned dictionaries

      2020, Computers and Graphics (Pergamon)
      Citation Excerpt :

      Early successful approaches used simple hardware-accelerated fixed-rate codecs based on some form of block truncation coding (BTC [16]) and supporting random access and interpolation [17–19], at the cost of limiting achievable compression and rate-distortion performance [20,21]. Vector quantization solutions [22–25] also support real-time visualization, since decoding can be achieved by simple dictionary lookups that can be accelerated by texture caches. Their quality is, however, limited by the dictionary size [26].

    • Compression and Rendering of Time-Varying Space Environment Volumes

      2022, 2022 7th International Conference on Image, Vision and Computing, ICIVC 2022
    View all citing articles on Scopus
    View full text