GPU-Based Spherical Light Field Rendering with Per-Fragment Depth Correction
Image-based rendering techniques are a powerful alternative to traditional polygon-based computer graphics. This paper presents a novel light field rendering technique which performs per-pixel depth correction of rays for high-quality reconstruction. Our technique stores combined RGB and depth values in a parabolic 2D texture for every light field sample acquired at discrete positions on a uniform spherical setup. Image synthesis is implemented on the GPU as a fragment program which extracts the correct image information from adjacent cameras for each fragment by applying per-pixel depth correction of rays. We show that the presented image-based rendering technique provides a significant improvement compared to previous approaches. We explain two different rendering implementations which make use of a uniform parametrisation to minimise disparity problems and ensure full six degrees of freedom for virtual view synthesis. While one rendering algorithm implements an iterative refinement approach for rendering light fields with per pixel depth correction, the other approach employs a raycaster, which provides superior rendering quality at moderate frame rates. GPU based per-fragment depth correction of rays, used in both implementations, helps reducing ghosting artifacts to a non-noticeable amount and provides a rendering technique that performs without exhaustive pre-processing for 3D object reconstruction and without real-time ray-object intersection calculations at rendering time.
light fields light field rendering image-based rendering