725 research outputs found

    Hardware-accelerated interactive data visualization for neuroscience in Python.

    Get PDF
    Large datasets are becoming more and more common in science, particularly in neuroscience where experimental techniques are rapidly evolving. Obtaining interpretable results from raw data can sometimes be done automatically; however, there are numerous situations where there is a need, at all processing stages, to visualize the data in an interactive way. This enables the scientist to gain intuition, discover unexpected patterns, and find guidance about subsequent analysis steps. Existing visualization tools mostly focus on static publication-quality figures and do not support interactive visualization of large datasets. While working on Python software for visualization of neurophysiological data, we developed techniques to leverage the computational power of modern graphics cards for high-performance interactive data visualization. We were able to achieve very high performance despite the interpreted and dynamic nature of Python, by using state-of-the-art, fast libraries such as NumPy, PyOpenGL, and PyTables. We present applications of these methods to visualization of neurophysiological data. We believe our tools will be useful in a broad range of domains, in neuroscience and beyond, where there is an increasing need for scalable and fast interactive visualization

    Progressive ray casting for volumetric models on mobile devices

    Get PDF
    Mobile devices have experienced an incredible market penetration in the last decade. Currently, medium to premium smartphones are relatively affordable devices. With the increase in screen size and resolution, together with the improvements in performance of mobile CPUs and GPUs, more tasks have become possible. In this paper we explore the rendering of medium to large volumetric models on mobile and low performance devices in general. To do so, we present a progressive ray casting method that is able to obtain interactive frame rates and high quality results for models that not long ago were only supported by desktop computers.Peer ReviewedPostprint (author's final draft

    Direct volume rendering of unstructured tetrahedral meshes using CUDA and OpenMP

    Get PDF
    Cataloged from PDF version of article.Direct volume visualization is an important method in many areas, including computational fluid dynamics and medicine. Achieving interactive rates for direct volume rendering of large unstructured volumetric grids is a challenging problem, but parallelizing direct volume rendering algorithms can help achieve this goal. Using Compute Unified Device Architecture (CUDA), we propose a GPU-based volume rendering algorithm that itself is based on a cell projection-based ray-casting algorithm designed for CPU implementations. We also propose a multicore parallelized version of the cell-projection algorithm using OpenMP. In both algorithms, we favor image quality over rendering speed. Our algorithm has a low memory footprint, allowing us to render large datasets. Our algorithm supports progressive rendering. We compared the GPU implementation with the serial and multicore implementations. We observed significant speed-ups that, together with progressive rendering, enables reaching interactive rates for large datasets

    GPGPU computation and visualization of three-dimensional cellular automata

    Get PDF
    This paper presents a general-purpose simulation approach integrating a set of technological developments and algorithmic methods in cellular automata (CA) domain. The approach provides a general-purpose computing on graphics processor units (GPGPU) implementation for computing and multiple rendering of any direct-neighbor three-dimensional (3D) CA. The major contributions of this paper are: the CA processing and the visualization of large 3D matrices computed in real time; the proposal of an original method to encode and transmit large CA functions to the graphics processor units in real time; and clarification of the notion of top-down and bottom-up approaches to CA that non-CA experts often confuse. Additionally a practical technique to simplify the finding of CA functions is implemented using a 3D symmetric configuration on an interactive user interface with simultaneous inside and surface visualizations. The interactive user interface allows for testing the system with different project ideas and serves as a test bed for performance evaluation. To illustrate the flexibility of the proposed method, visual outputs from diverse areas are demonstrated. Computational performance data are also provided to demonstrate the method’s efficiency. Results indicate that when large matrices are processed, computations using GPU are two to three hundred times faster than the identical algorithms using CPU

    A texture-based framework for improving CFD data visualization in a virtual environment

    Get PDF
    In the field of computational fluid dynamics (CFD) accurate representations of fluid phenomena can be simulated but require large amounts of data to represent the flow domain. Inefficient handling and access of the data at initialization and runtime can limit the ability of the engineering to quickly visualize and investigate the entire flow simulation, and thus hampering the ability to make a quality engineering decision in a timely manner. This problem is amplified n-fold if the solution set is time dependent, or transient. To visualize the data efficiently, dataset access should be decreased if not eliminated at runtime to provide an interactive environment to the end user. Also a reduction in the size of the initial datasets should be reduced as much as possible while maintaining validity of the solution so that larger (i.e. transient) solution datasets can be visualized. To accomplish this, the format in which the dataset is stored should be changed from conventional formats. With the recent advancements of graphical processor unit (GPU) technology, current research in the computer graphics community has lead a novel approach for efficiently storing and accessing flow field data as texture data during a visualization. A so-called texture-based solution for visualization of flow fields allows the end user to visualize complex three-dimensional flow fields in an intuitive fashion while remaining interactive. This work presents a framework for incorporating texture-based analysis techniques into a current CFD visualization application to improve the capabilities for investigating flow fields. The framework presented easily extendible to allow for research and incorporation of progressive visualization methods, in keeping with current technology. Comparisons of the current framework with the texture-based framework are shown to effectively visualize a dataset that could not be visualized in its entirety with the current framework. Comparisons of common visualization techniques, such as contour planes and streamlines, are made to show how the texture-based framework out performs the current framework

    Mobile graphics: SIGGRAPH Asia 2017 course

    Get PDF
    Peer ReviewedPostprint (published version

    GPU ray casting

    Get PDF
    For many applications, such as walk-throughs or terrain visualization, drawing geometric primitives is the most efficient and effective way to represent the data. In contrast, other applications require the visualization of data that is inherently volumetric. For example, in biomedical imaging, it might be necessary to visualize 3D datasets obtained from CT or MRI scanners as a meaningful 2D image, in a process called volume rendering. As a result of the popularity and usefulness of volume data, a broad class of volume rendering techniques has emerged. Ray casting is one of these techniques. It allows for high quality volume rendering, but is a computationally expensive technique which, with current technology, lacks interactivity when visualizing large datasets, if processed on the CPU. The advent of efficient GPUs, available on almost every modern workstations, combined with their high degree of programmability opens up a wide field of new applications for the graphics cards. Ray casting is among these applications, exhibiting an intrinsic parallelism, in the form of completely independent light rays, which allows to take advantage of the massively parallel architecture of the GPU. This paper describes the implementation and analysis of a set of shaders which allow interactive volume rendering on the GPU by resorting to ray casting techniques
    corecore