Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Abstract In recent years point-based geometry has gained increasing attention as an alternative surface representation, both for efficient rendering and for flexible geometry processing of highly complex 3D-models. Traditional geometry based rendering methods use triangles as primitives which make rendering complexity dependent on complexity of the model to be rendered. But point based models overcome that problem as points don't maintain connectivity information and just represents surface information. Based on their fundamental simplicity, points have motivated a variety of research on topics such as shape modeling, object capturing, simplification, rendering and hybrid point-polygon methods. Rendering the points is inherently a big problem due to lack of connectivity information. But lack of connectivity introduces several artifacts while in the process of rendering like aliasing and holes in the rendered model. Several algorithms have been proposed for rendering point models efficiently and with high quality. The major challenge of point-based rendering (PBR) algorithms is to achieve a continuous interpolation between discrete point samples that are irregularly distributed on a surface. Furthermore, correct visibility must be supported as well as efficient level-of-detail (LOD) rendering for large data sets. Our work has the basis of understanding of the various popular algorithms for point rendering like qsplat and elliptical weighted average splatting. We will discuss advantages and disadvantages of each of the approaches and we will define and compare the result of all various algorithms. Keywords- computer graphics, point based rendering, qsplat, surfel, surface splatting, randomized Z-buffer algirithm
engineered program, based on a selective mixture of disciplines related to light physics, visual perception, mathematics, and software development. In rendering, a modeling primitive (an object representation) and a rendering primitive are different issues. An object can be stored in one format, and converted into another one for rendering. An example of this is parametric patches, which are tessellated into triangles for rendering. On the other hand, many representations, such as points and polygon meshes, can be rendered directly. We can distinguish two fundamental approaches to rendering: geometry-based and image-based rendering. In geometry-based rendering, a scene is described using geometrical primitives, which are discretized into points, lines and triangles for rendering. In image-based rendering, a scene is rendered making use of multiple input images, without any 3D object or scene information. Most rendering algorithms are a combination of these two paradigms, for example texture mapping (image-based) in polygon rendering (geometry-based). II. POINT AS OVERVIEW OF RENDERING
I.
INTRODUCTION
Rendering is the process of generating an image from a model by means of a software program. The model is a description of three dimensional objects in a strictly defined data structure. It contains geometry, viewpoint, texture and lighting information. Rendering is one of the major field of 3D computer graphics. In the graphics pipeline its the last major step, giving the final appearance to the models and animation. With the increasing sophistication of computer graphics since the 1970s onward, it has become a more distinct subject. It has uses in computer and video games, simulators, movies or TV special effects, and design visualization, each employing a different balance of features and techniques. As a product, a wide variety of renderers are available. some are integrated into larger modeling and animation packages, some are stand-alone, some are free open-source projects. On the inside, a renderer is a carefully
A. rendering premitives In the world of computer graphics, rendered images are represented by a collection of objects. These objects are often composite, constructed from a number of more basic primitive objects. Typically these primitives have been based on volumes (Constructive Solid Geometry) or manifold representations (splines, polygons). Although these methods are good for large objects of reasonable complexity, they become somewhat inefficient at representing objects with high levels of detail (LOD). Recently another type of primitive has been introduced, which uses points. Using points as the rendering primitive, output images are constructed from a cloud of points and this is known as Point-Based Rendering (PBR). Comparing polygon meshes with points is analogous to comparing vector graphics with pixel graphics. Points in 3D are analogous to pixels in 2D, replacing textured triangles or higher order surfaces by zero-dimensional elements. Thus point based rendering is a geometry based rendering method inspired by the image based rendering techniques whose rendering method is output sensitive. Point sample rendering can be done in two different approaches, point
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 18
Rendering is the process of generating an image from a model, by means of a software program. The model is a description of three dimensional objects in a strictly defined data structure. It would contain geometry, viewpoint, texture and lighting information. Rendering is one of the major fields of interest of 3D computer graphics, and in practice always connected to the others. In the graphics pipeline it's the last major step, giving the final appearance to the models and animation. With the increasing sophistication of computer graphics since the 1970s onward, it has become a more distinct subject. It has
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 19
Point rendering has received a lot of attention because of the need to store and render objects of high complexity. In this context, point rendering is potentially more efficient than other known rendering methods. Point rendering algorithms
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 20
Figure 3: QSplat DataStructure - Left: Quadtree representation where R is radius of the bounding sphere Right: Corresponding division of bunny model [5] QSplat is mainly a two step algorithm. Read the triangle mesh (surface reconstructed over the input point model) and form a hierarchy of bounding spheres. This hierarchy is encoded and stored in a file optimally. This step also involves calculating appropriate radius of splat (disks centered around a point) and bounding spheres, using mesh connectivity information, so as to prevent any holes while rendering. Next is the rendering step which is just level order traversal of the preprocessed hierarchy. Surfels as Rendering Primitives: Pfister uses visibility splatting for hole detection and Gaussian filtering for image reconstruction. Even though different at first sight, the visibility splatting is very similar to Grossmans hierarchical z-buffer. Hole detection: The visibility splatting assumes that each point represents a small circular area in object space. This area projects to screen space as a shape similar to an ellipse. Visibility splatting scan converts this ellipse to the z-buffer, with the depth computed from the tangent plane at the point. The density of the point set is needed to set up the size of the rasterized ellipses. The comparison of visibility splatting to Grossmans hierarchical z-buffering reveals that both are similar in spirit: the points are written to the z-buffer enlarged to the size that assures no holes. Visibility splatting does this explicitly by rasterizing the projected surfel disc, Grossman uses a lower-resolution zbuffer to effectively grow the projected surfels, which is equivalent to visibility splatting constrained to squares (pixels of the lower resolution z-buffer). Image reconstruction: Image reconstruction is done by centering a Gaussian filter in the center of each hole and computing the weighted average of foreground point colors. To estimate the radius of the filter, the density of the point set is needed. Surface Splatting: Zwicker [4] proposed a framework for antialiased rendering coined Surface Splatting. The technique is an extension of Levoy et al. [5]: Elliptical Gaussian splats around each sample point are projected to
QSplat: Point Rendering Approach Rusinkiewicz and Mark Levoy[5] designed a system named QSplat for representing and progressively displaying large, complex models, that combine a multi resolution hierarchy based on bounding spheres with a rendering system based on points. A single data structure( See Figure 2) is used for view frustum culling, backface culling, level-of-detail selection, and rendering. The representation is compact and can be computed quickly, making it suitable for large data sets. Qsplat implementation, written for use in a large-scale 3D digitization project, launches quickly, maintains a usersettable interactive frame rate regardless of object complexity or camera position, yields reasonable image quality during motion, and refines progressively when idle to a high final image quality.
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 21
QSplat approach has its own limitations and assumptions, which are listed as follows: Input models for preprocessing are triangular not raw point cloud. Appropriate radius for each point is calculated so that there wont be any holes in the model is based on the connected triangle mesh which supplied as input. Aliasing artifacts are not handled. (occurs when overlapping of splats is more) No proper texture filtering method is used. Input has to be sampled sufficiently. No surface reconstruction is handled Pfister proposes a new datastructure called surfel. In this algorithm, surfels are regularly sampled froma given scene and subsequently forms an hierarchy. But the creation of surfel datastructure itself involves a complex task. Zwicker extended surfel data structure to handle high quality texture filtering using Surface splatting framework proposed for conventional texture mapping. This Surface splatting approach provides following benefits. Advantages of Surface Splatting: It provides a mathematical formulation of screen space resampling filter useful for efficient implementation Handles both artifacts like aliasing and holes Supports volume rendering, which is integrated in the same framework. Effects like transparency and texture mapping can be effectively handled The cons of splatting include: Circular splats in the object space are not adapted to surface orientation which may leads to artifacts at the corners and edges of the rendered model. Intersecting surfaces cannot be rendered correctly. The problem can be alleviated, but not completely removed by increasing the object sampling rate. Relatively high memory cost due to the use of an A-buffer. Disadvantages of Surface Splatting: Application of low pass filter to magnified areas may lead to blurring artifact.
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 22
Having motivation and applications of using point as better rendering primitive, we had an overview of several popular rendering algorithms like QSplat and Surface splatting. We discussed advantages and disadvantages of both approaches. But surface splatting cant exactly represent the surfaces at the corners and edges efficiently.
. Figure 3: Rendering using qsplat algorithm from left to right 16k, 7k and 1k points
Figure 4: With simple point rendering and with Surface splating We discussed a various rendering algorithm which includes benefits and limitations. VII. REFERENCES [1] Baoquan Chen and Minh Xuan Nguyen, POP: A hybrid point and polygon rendering system for large data, IEEE Visualization, 2001. [2] J. P. Grossman and William J. Dally, Point sample rendering, Proceedings of the 9th Eurographics Workshop on Rendering, 1998, pp. 181-192.
[3] Marc Levoy, Kari Pulli, Brian Curless, Szymon Rusinkiewicz, David Koller, Lucas Pereira, Matt Ginzton, Sean Anderson, James Davis, Jeremy Ginsberg, Jonathan Shade, and Duane Fulk, The digital michelangelo project: 3D scanning of large statues, Siggraph 2000, Computer Graphics Proceedings (Kurt Akeley, ed.), ACM Press /ACM SIGGRAPH / Addison Wesley Longman, 2000, pp. 131-144. [4] Hanspeter Pfister, Matthias Zwicker, Jeroen van Baar, and Markus Gross, Surfels: Surface elements as rendering primitives, Proceedings of SIGGRAPH 2000 (2000), 335-342. [5] Szymon Rusinkiewicz and Marc Levoy, QSplat: A multiresolution point rendering system for large meshes, Proceedings of SIGGRAPH 2000 (2000), 343-352. [6] R. Wahl, M. Guthe, and R. Klein, Identifying planes in point-clouds for efficient hybrid rendering, The 13th Pacific Conference on Computer Graphics and Applications, October 2005. [7] Michael Wand, Matthias Fischer, Ingmar Peter, Friedhelm Meyer auf der Heide, and Wolfgang Straber, The randomized z-buffer algorithm: Interactive rendering of highly complex scenes, Siggraph 2001 Proceedings, 2001. [8] Matthias Zwicker, Hanspeter Pfister, Jeroen van Baar, and Markus Gross, Surface splatting, Proceedings of ACM SIGGRAPH 2001, Computer Graphics Proceedings, Annual Conference Series, ACM Press / ACM SIGGRAPH, August 2001, ISBN 1-58113-292-1, pp. 371-378. [9] Matthias Zwicker, Jussi Rsnen, Mario Botsch, Carsten Dachsbacher, and Mark Pauly, Perspective accurate splatting, Proceedings of Graphics Interface, 2004. [10] Jonathan D. Cohen, Daniel G. Aliaga, and Weiqiang Zhang. Hybrid simplification: Combining multi-resolution polygon and point rendering. In Proceedings of IEEE Visualization,2001. [11] Aravind Kalaiah and Amitabh Varshney. Differential point rendering. In Proceedings of the 12th Eurographics Workshop on Rendering, August 2001.
ISSN: 2231-2803
http://www.internationaljournalssrg.org
Page 23