General Pinhole Camera

Summary
We introduce the general pinhole camera (GPC), defined by a center of projection (i.e. the pinhole), an image plane, and a set of sampling locations in the image plane. We demonstrate the advantages of the GPC in the contexts of remote visualization, of focus plus context visualization, and of extreme antialiasing, which benefit from the GPC sampling flexibility. For remote visualization we describe a GPC that allows zooming-in at the client without the need for transferring additional data from the server. For focus plus context visualization we describe a GPC with multiple regions of interest with sampling rate continuity to the surrounding areas. For extreme antialiasing we describe a GPC variant that allows supersampling locally with a very high number of color samples per output pixel (e.g. 1024x), supersampling levels that are out of reach for conventional approaches that supersample the entire image. The GPC supports many types of data, including surface geometry, volumetric, and image data, as well as many rendering modes, including highly view-dependent effects such as volume rendering. Finally GPC visualization is efficient—GPC images are rendered and resampled with the help of graphics hardware at interactive rates.
Remote Visualization
We propose to improve interactivity in remote visualization by transferring GPC images instead of conventional PPC images. The idea is to reuse a GPC image at the local site to compute several high-quality output frames, without the need of any additional data from the remote site. The GPC is designed to produce images with a sampling rate higher at the center and lower at the periphery. The resulting image has size and coherence similar to those of a PPC image, thus the transfer costs are comparable. At the local site the GPC image is resampled into a conventional PPC output frame at interactive rates. The higher sampling rate at the GPC image center allows the user to zoom in with little quality loss. Once the output frame sampling rate exceeds that provided by the GPC image, a new GPC image is requested and transferred from the remote site. The GPC also has a larger field of view than the output frame, which allows the user to rotate the view direction without the need of transferring new images. Like the PPC, the GPC is a pinhole so a GPC reference image cannot accurately support viewpoint translation due to occlusions. However, the approximate translation support provided is sufficient to allow the user to select a novel viewpoint for which a new GPC image is rendered and transferred.

(Top) Conventional planar pinhole camera (PPC) reference image and two output frames resampled from it and (bottom) general pinhole camera (GPC) reference image and corresponding frames. The GPC image has a higher sampling rate at the center which produces higher quality frames when zooming in.
Focus Plus Context Visualization
The second context in which the GPC infrastructure pays dividends is focus plus context visualization. Many methods have been developed in visualization and computer-human interaction that capitalize on the perceptual advantages of visualizing a region of interest in detail (i.e. focus) while keeping it seamlessly integrated into the surrounding area (i.e. context). The GPC naturally supports higher sampling rates for one or several focus regions. We describe a GPC variant suitable for focus plus context visualization with advantages that include sampling rate continuity from focus region to surrounding context, distortion free focus regions, efficiency, and support for many types of data.
GPC-based focus-plus-context visualization of DNA molecule. The GPC image has two focus regions with 3x and 6x magnification factors, respectively.
eXtreme Antialiasing
The GPC proves to be a powerful tool in a third context—antialiasing. As the acuity of measuring instruments and the sophistication of simulations increase, visualization will face the increasing challenge of alleviating mismatches between output image resolution and dataset resolution. Antialiasing techniques can prevent the disturbing visual artifacts that occur when the dataset resolution exceeds the output image resolution. Antialiasing for image data is a solved problem. Antialiasing for 3-D data is more challenging, requiring the computation of multiple color samples for each output pixel. When the resolution mismatch is severe, the required supersampling factor is large, making conventional full-frame antialiasing prohibitively expensive. A possible approach is to address the resolution mismatch offline by precomputing lower levels of detail (LoDs), which is challenging and delays the visualization of real-time datasets.
GPC-based 361x extreme antialiasing (left) and conventional hardware supported 16x antialiasing (right). Images are also shown magnified at 400% for illustration purposes.
Publications
People