O-buffer: A Framework for Sample-base Graphics

 

 

Project Description:

    

Investigate the basic forms, quantization, data structures, and construction of the O-buffer
Develop the fundamental algorithms for the O-buffer such as rendering and multi-resolution
Explore applications of the O-buffer in flythrough systems, network graphics, solid modeling, and medical VR system
Develop a software system (ObVis) which will integrate our developments related to O-buffers

 

Research Group

    Arie E. Kaufman Distinguished Professor and Chairman
    Huamin Qu PhD Candidate
    Haitao Zhang PhD Candidate
    Feng Qiu PhD Candidate
    Jin Zhou PhD Student
    Ankush Kumar

Master Student

       

What is an O-buffer?
 

The O-buffer is basically a conventional image or volume except that the positions of sampling points are recorded by offsets to a regular grid. The regular grid can be rectangular, cylindrical, spherical, etc.  The O-buffer can be either 2D or 3D. The number of samples in every grid cell of an O-buffer can be the same or different. 

The O-buffer can be classified into three categories:

Uniform O-buffer: The number of offset samples stored in every grid cell of the O-buffer is the same
Nonuniform O-buffer: the number of offset samples stored in every grid cell of the O-buffer is not the same
Adaptive O-buffer: the regular grid is adaptive.

Following figures show a  small portion of a 2D uniform, nonuniform, and adaptive O-buffers

               

 

Advantages of the O-buffer
   
Accuracy: The O-buffer can provide much higher spatial precision for samples than the same resolution images and volumes. Even though the O-buffer still has a limited resolution, its spatial precision is often adequate or can be tailored to the application.
Efficiency: Samples position in the O-buffer is encoded as offsets to an implicitly defined regular grid, thus it is compact compared to other sample-based representations (e.g., sample lists). The O-buffer can be warped efficiently by incremental computation. It can further provide better image quality by avoiding multiple resamplings and delaying reconstruction to the final rendering stage. 
Semi-regularity: The O-buffer strikes a middle ground between regular representations (images and volumes) and irregular representations (sample lists) for samples. It is a semi-regular structure which lends itself to efficient construction and rendering. 
Uniformity: The O-buffer provides a uniform framework to represent various irregular and regular sample primitives in computer graphics, such as images, points, and volumes. Thus, the O-buffer also provides a unified framework to mix these primitives in the same scene.
Versatility: The O-buffer is a versatile representation and can be used to solve a variety of problems in graphics, such as limited resolution of images and volumes, antialiasing for surface rendering,  sample caching for image-based or point sample rendering, data mixing for hybrid volume rendering, irregular sample organization, and level-of-detail management for samples, to name a few.
Flexibility:   Storing more spatial information with samples makes it possible for O-buffers to store multiple samples in one cell. Therefore, more flexible and accurate multi-resolution schema can be developed for images and volumes

 

Applications of the O-buffer

 

Image-based rendering 
Point-based rendering
Volume rendering
Solid modeling
Image processing and computer vision

 

 

Selected Publications
 
O-Buffer: A Framework for Sample-based Graphics
Huamin Qu, Arie Kaufman
To appear in IEEE Transactions on Visualization and Computer Graphics, 2004
Abstract: This paper extends our IEEE Visualization 2003 paper with a more detailed exposition of the concept, algorithms, and applications of the O-buffer. A more systematic classification of O-buffers and a more accurate analysis of storage requirements for O-buffers are presented. We also give a high level overview of motivations and methods to convert other primitives to O-buffers. More importantly, we introduce the O-buffer tree as a structure to compress sparse O-buffers and to organize samples in a hierarchy. In addition, we explore three new applications of O-buffers in image-based rendering and point sample rendering. Our main contribution in this paper is the introduction of the O-buffer as a new modeling and rendering primitive, a uniform framework for sample-based graphics, a unified way for hybrid rendering and a versatile representation which can be exploited to solve a wide range of problems in computer graphics and visualization.

 

(download paper: PDF)
A Framework for Sample-based Rendering with O-buffers
Huamin Qu, Arie Kaufman, Ran Shao, Ankush Kumar
IEEE Visualization, 2003
Abstract: We present an innovative modeling and rendering primitive, called the O-buffer, for sample-based graphics, such as images, volumes, and points. The 2D or 3D O-buffer is in essence a conventional image or a volume, respectively, except that samples are not restricted to a regular grid. A sample position in the O-buffer is recorded as an offset to the nearest grid point of a regular base grid (hence the name O-buffer). The offset is typically quantized for compact representation and efficient rendering. The O-buffer emancipates pixels and voxels from the regular grids and can greatly improve the modeling power of images and volumes. It is a semi-regular structure which lends itself to efficient construction and rendering. Image quality can be improved by storing more spatial information with samples and by avoiding multiple resamplings and delaying reconstruction to the final rendering stage. Using O-buffers, we can develop more accurate multiresolution representations for images and volumes. It can also be exploited to represent and render unstructured primitives, such as points, particles, curvilinear or irregular volumes. The O-buffer is therefore a uniform representation for a variety of graphics primitives and supports mixing them in the same scene. We demonstrate the effectiveness of the O-buffer with hierarchical O-buffers, layered depth O-buffers, and hybrid volume rendering with O-buffers.

 

 

(download paper: PDF)
Image Based Rendering With Stable Frame Rates
Huamin Qu, Ming Wan, Jiafa Qin, Arie Kaufman
IEEE Visualization, 2000
Abstract: This paper presents an efficient keyframeless image-based rendering technique. An intermediate image is used to exploit the coherences among neighboring frames. The pixels in the intermediate image are first rendered by a ray-casting method and then warped to the intermediate image at the current viewpoint and view direction. We use an offset buffer to record the precise positions of these pixels in the intermediate image. Every frame is generated in three steps: warping the intermediate image onto the frame, filling in holes, and selectively rendering a group of "old" pixels. By dynamically adjusting the number of those "old" pixels in the last step, the workload at every frame can be balanced. The pixels generated by the last two steps make contributions to the new intermediate image. Unlike occasional keyframes in conventional image-based rendering which need to be totally rerendered, intermediate images only need to be partially updated at every frame. In this way, we guarantee more stable frame rates and more uniform image qualities. The intermediate image can be warped efficiently by a modified incremental 3D warp algorithm. As a specific application, we demonstrate our technique with a voxel-based terrain rendering system.

 

Other Publications Supported by this Project
   
Visual Simulation of Chemical Gardens, Xiaoming Wei, Feng Qiu, Wei Li, Suzanne Yoakum-Stover and Arie Kaufman, to appear Proceedings of IEEE Computer Graphics International 2005
Surface Reconstruction Using Oriented Charges, Jianning Wang, Manuel M. Oliveira, Hui Xie, Arie E. Kaufman, to appear Proceedings of IEEE Computer Graphics International 2005
Front Spreading on 3D Surfaces, Ye Zhao and Arie Kaufman, to appear Proceedings of IEEE Computer Graphics International 2005
GPU-based Object-Order Ray-Casting for Large Datasets, Wei Hong, Feng Qiu, and Arie Kaufman, Volume Graphics, 2005 
Lattice-based flow field modeling, Xiaoming Wei, Ye Zhao, Zhe Fan, Wei Li, Feng Qiu, Suzanne Yoakum-Stover and Arie Kaufman, IEEE Transactions on Visualization and Computer Graphics, Vol 10, No 6, Nov 2004 (PDF)
GPU Cluster for High Performance Computing, Zhe Fan, Feng Qiu, Arie Kaufman, and SuzanneYoakum-Stover, Proceedings of ACM/IEEE Supercomputing Conference, Pittsburgh, PA, Nov, 2004 (PDF)
Fast Hybrid Approach for Texturing Point Models, Haitao Zhang, Feng Qiu, Arie Kaufman, Computer Graphics Forum, 2004 (PDF)
Dispersion Simulation And Visualization For Urban Security, Feng Qiu, Ye Zhao, Zhe Fan, Xiaoming Wei, Haik Lorenz, Jianning Wang, Suzanne Yoakum-Stover, Arie Kaufman, and Klaus Mueller, Proceeding of IEEE Visualization, 2004 (PDF)

Range Image Registration via Probability Field, Haitao Zhang,  Olaf Hall-Holt, Arie Kaufman, Computer Graphics International, 2004, (PDF)

A Sketch-Based Interface for Collaborative Design, Z. Fan, M. Oliveira, C. Ma, and A. Kaufman, Proceedings of Eurographics Workshop on Sketch-Based Interfaces and Modeling, pp. 143-150, Aug 2004 (PDF)
GPU Cluster for Scientific Computing and Large-Scale Simulation, Z. Fan, F. Qiu, A. Kaufman, and S. Yoakum-Stover, ACM GP^2 Workshop (extended abstract and poster),  Los Angeles, CA, Aug 2004 (PPT, PDF)
Lattice-Based Flow Simulation on GPU, Ye Zhao, Zhe Fan, Wei Li, Arie Kaufman and Suzanne Yoakum-Stover, ACM GP2 Workshop (extended abstract and poster), Los Angeles, CA, Aug 2004, (PPT, PDF)
Hybrid Volumetric Ray-Casting, Wei Hong, Feng Qiu, Arie Kaufman, ACM GP2 Workshop (extended abstract and poster), Los Angeles, CA, Aug 2004, (PPT, PDF
GPU Accelerated Dispersion Simulation for Urban Security, Feng Qiu, Ye Zhao, Zhe Fan, Xiaoming Wei, Haik Lorenz, Jianning Wang, Suzanne Yoakum-Stover, Arie Kaufman, and Klaus Mueller, ACM GP2 Workshop (extended abstract and poster), Los Angeles, CA, Aug 2004  (PPT, PDF)

GPU-based Voxelization and its Application in Flow Modeling, Z. Fan, W. Li, X. Wei, and A. Kaufman, ACM GP2 Workshop (extended abstract and poster), Los Angeles, CA, Aug 2004  (PPT, PDF)

 

Acknowledgement:   

    This project is supported by NSF grant CCR-0306438.