816 research outputs found

    Efficient GPU-Based Texture Interpolation using Uniform B-Splines

    Full text link

    Scalable GPU acceleration of b-spline signal processing operations

    Get PDF
    B-Splines are a useful tool in signal processing, and are widely used in the analysis of two and three-dimensional images. B-Splines provide a continuous representation of the signal, image, or volume, which is useful for interpolation, resampling, noise removal, and differentiation - all important steps in many signal processing algorithms. These splines are defined entirely by an array of coefficients that is roughly the same size as the original signal and of values in the same order of magnitude, making storage and representation trivial. What is not trivial, however, is the quick calculation and processing of those coefficients, especially for very large data. As technology improves in fields such as medical imaging, algorithms that use B-Splines will need to process increasingly higher resolution images and voxel volumes. New implementations are needed to make use of modern parallel architectures to keep these algorithms practical. This thesis presents a library for performing many common B-Splines operations in CUDA, the parallel programming framework for NVIDIA GPUs, and analyzes the considerations necessary when implementing a large-scale parallel version of such a well-established sequential algorithm. This library is meant to be used both by C++ programs as well as algorithms implemented in MATLAB without requiring significant changes. Significant speedups are obtained using this library to perform various common B-Spline image processing operations (as much as 30x for some), and the scalability limitations of the GPU implementation are addressed

    Fast hyperbolic Radon transform represented as convolutions in log-polar coordinates

    Full text link
    The hyperbolic Radon transform is a commonly used tool in seismic processing, for instance in seismic velocity analysis, data interpolation and for multiple removal. A direct implementation by summation of traces with different moveouts is computationally expensive for large data sets. In this paper we present a new method for fast computation of the hyperbolic Radon transforms. It is based on using a log-polar sampling with which the main computational parts reduce to computing convolutions. This allows for fast implementations by means of FFT. In addition to the FFT operations, interpolation procedures are required for switching between coordinates in the time-offset; Radon; and log-polar domains. Graphical Processor Units (GPUs) are suitable to use as a computational platform for this purpose, due to the hardware supported interpolation routines as well as optimized routines for FFT. Performance tests show large speed-ups of the proposed algorithm. Hence, it is suitable to use in iterative methods, and we provide examples for data interpolation and multiple removal using this approach.Comment: 21 pages, 10 figures, 2 table

    GPU Prefilter for Accurate Cubic B-spline Interpolation

    Get PDF
    Achieving accurate interpolation is an important requirement for many signal-processing applications. While nearest-neighbor and linear interpolation methods are popular due to their native GPU support, they unfortunately result in severe undesirable artifacts. Better interpolation methods are known but lack a native GPU support. Yet, a particularly attractive one is prefiltered cubic-spline interpolation. The signal it reconstructs from discrete samples has a much higher fidelity to the original data than what is achievable with nearest-neighbor and linear interpolation. At the same time, its computational load is moderate, provided a sequence of two operations is applied: first, prefilter the samples, and only then reconstruct the signal with the help of a B-spline basis. It has already been established in the literature that the reconstruction step can be implemented efficiently on a GPU. This article focuses on an efficient GPU implementation of the prefilter, on how to apply it to multidimensional samples (e.g. RGB color images), and on its performance aspect

    Rendering Curved Triangles on the GPU

    Get PDF
    This Thesis presents a new approach to render triangular BĂ©zier patches in real time. The goal is to achieve a very good visual quality, avoid artifacts in the silhouette, and get in nite detail. Our approach consists in a ray casting technique to render tri- angular B ezier patches in real time. It is based on previous work explained in this document to implement a fast ray-surface intersec- tion technique. This previous work consists in adapting Newton's method to implement the intersections achieving interactive framer- ates ray casting di erent surfaces. The main contributions of our approach are adapting New- ton's method to perform intersections with triangular bicubic B ezier patches and implementing it in GPU to optimize performance using graphics hardware. Finally, we also contribute adapting the normal mapping tech- nique to shade the models and, thus, achieve even greater detail

    Meshless Animation Framework

    Get PDF
    This report details the implementation of a meshless animation framework for blending surfaces. The framework is meshless in the sense that only the control points are handled on the CPU, and the surface evaluation is delegated to the GPU using the tessellation shader steps. The framework handles regular grids and some forms of irregular grids. Different ways of handling the evaluation of the local surfaces are investigated. Directly evaluating them on the GPU or pre-evaluating them and only sampling the data on the GPU. Four different methods for pre-evaluation are presented, and the surface accuracy of each one is tested. The framework contains two methods for adaptively setting the level of detail on the GPU depending on position of the camera, using a view-based metric and a pixel-accurate rendering method. For both methods the pixel-accuracy and triangle size is tested and compared with static tessellation. Benchmarking results from the framework are presented. With and without animation, with different local surface types, and different resolution on the pre-evaluated data
    • …
    corecore