Computer graphics & visualization Point-Based Computer Graphics.

Slides:



Advertisements
Similar presentations
Point-based Graphics for Estimated Surfaces
Advertisements

Geometry Clipmaps: Terrain Rendering Using Nested Regular Grids
COMPUTER GRAPHICS SOFTWARE.
Multilevel Streaming for Out-of-Core Surface Reconstruction
VIS Group, University of Stuttgart Tutorial T4: Programmable Graphics Hardware for Interactive Visualization Pre-Integrated Splatting (Stefan Roettger)
Object Space EWA Surface Splatting: A Hardware Accelerated Approach to High Quality Point Rendering Liu Ren Hanspeter Pfister Matthias Zwicker CMU.
RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
Computer Graphics methods
An Introduction to Light Fields Mel Slater. Outline Introduction Rendering Representing Light Fields Practical Issues Conclusions.
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
03/16/2009Dinesh Manocha, COMP770 Texturing Surface’s texture: its look & feel Graphics: a process that takes a surface and modifies its appearance using.
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
Rapid Visualization of Large Point-Based Surfaces Tamy Boubekeur Florent Duguet Christophe Schlick Presented by Xavier Granier.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
Sampling, Aliasing, & Mipmaps
Advanced Computer Graphics (Spring 2006) COMS 4162, Lecture 8: Intro to 3D objects, meshes Ravi Ramamoorthi
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 4: 3D Objects and Meshes Ravi Ramamoorthi
Pointshop 3D An Interactive System for Point-based Surface Editing
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Irregular to Completely Regular Meshing in Computer Graphics Hugues Hoppe Microsoft Research International Meshing Roundtable 2002/09/17 Hugues Hoppe Microsoft.
Spectral Processing of Point-sampled Geometry
CSCE 641: Computer Graphics Image-based Rendering Jinxiang Chai.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Introduction to Computer Graphics
The Story So Far The algorithms presented so far exploit: –Sparse sets of images (some data may not be available) –User help with correspondences (time.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
Queensland University of Technology CRICOS No J INB382/INN382 Real-Time Rendering Techniques Lecture 13: Revision Ross Brown.
Lecture 4 - Introduction to Computer Graphics
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Sebastian Enrique Columbia University Real-Time Rendering Using CUReT BRDF Materials with Zernike Polynomials CS Topics.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
3D Graphics for Game Programming Chapter IV Fragment Processing and Output Merging.
Stream Processing Main References: “Comparing Reyes and OpenGL on a Stream Architecture”, 2002 “Polygon Rendering on a Stream Architecture”, 2000 Department.
03/24/03© 2003 University of Wisconsin Last Time Image Based Rendering from Sparse Data.
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
Advanced Computer Graphics Advanced Shaders CO2409 Computer Graphics Week 16.
Shadow Mapping Chun-Fa Chang National Taiwan Normal University.
INT 840E Computer graphics Introduction & Graphic’s Architecture.
Tone Mapping on GPUs Cliff Woolley University of Virginia Slides courtesy Nolan Goodnight.
Game Programming 06 The Rendering Engine
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
Reconstruction of Solid Models from Oriented Point Sets Misha Kazhdan Johns Hopkins University.
03/15/03© 2005 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.
04/23/03© 2003 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.
112/5/ :54 Graphics II Image Based Rendering Session 11.
Computer Graphics 3 Lecture 6: Other Hardware-Based Extensions Benjamin Mora 1 University of Wales Swansea Dr. Benjamin Mora.
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
Single Pass Point Rendering and Transparent Shading Paper by Yanci Zhang and Renato Pajarola Presentation by Harmen de Weerd and Hedde Bosman.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
What are shaders? In the field of computer graphics, a shader is a computer program that runs on the graphics processing unit(GPU) and is used to do shading.
CDS 301 Fall, 2008 From Graphics to Visualization Chap. 2 Sep. 3, 2009 Jie Zhang Copyright ©
DPL3/10/2016 CS 551/651: Simplification Continued David Luebke
1cs426-winter-2008 Notes. 2 Atop operation  Image 1 “atop” image 2  Assume independence of sub-pixel structure So for each final pixel, a fraction alpha.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
1 Interactive Volume Isosurface Rendering Using BT Volumes John Kloetzli Marc Olano Penny Rheingans UMBC.
Acquiring, Stitching and Blending Diffuse Appearance Attributes on 3D Models C. Rocchini, P. Cignoni, C. Montani, R. Scopigno Istituto Scienza e Tecnologia.
Applications and Rendering pipeline
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
1 Real-Time High-Quality View-dependent Texture Mapping using Per-Pixel Visibility Damien Porquet Jean-Michel Dischler Djamchid Ghazanfarpour MSI Laboratory,
POLYGON MESH Advance Computer Graphics
Image-Based Rendering
Graphics Processing Unit
Chapter 6 GPU, Shaders, and Shading Languages
Mesh Parameterization: Theory and Practice
Presentation transcript:

computer graphics & visualization Point-Based Computer Graphics

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Why Points? huge geometry complexity of current CG models overhead introduced by connectivity of polygonal meshes acquisition devices generate point samples “digital 3D photography” points complement triangles

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Polynomials Rigorous mathematical concept Robust evaluation of geometric entities Shape control for smooth shapes Require proper parameterization Discontinuity modeling Topological flexibility

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Polynomilas  Triangles Piecewise linear approximations Irregular sampling of the surface No parameterization needed (geometry only)

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Triangles Simple and efficient representation Hardware pipelines support triangles Advanced geometric processing The widely accepted queen of graphics primitives Sophisticated modeling is difficult (Local) parameterizations still needed Complex LOD management Compression and streaming is highly non-trivial

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Triangles  Points Piecewise linear functions to Delta distributions Discrete samples of geometry No connectivity or topology – most simple Store all attributes per surface sample

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Points geometry complexity of current CG models connectivity overhead of polygonal meshes acquisition devices generate point samples points complement triangles holes compression

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group AcquisitionRendering RepresentationProcessing & Editing Point Based Graphics Taxonomy

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group How can we capture reality?

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Acquisition Contact digitizers – intensive manual labor Passive methods – require texture, Lambertian BRDF Active light imaging systems – restrict types of materials in general fuzzy, transparent, and refractive objects are difficult

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group First Method, Laser Range Scanner

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Basic Idea Laser Detector Laser Detector

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Computing the Distance Laser Detector H L O d d’ a’ a

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Scattering Issues How optically cooperative is marble?

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Image based Acquisition

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Image based Acquisition Acquisition Stage 2

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Image based Acquisition Acquisition Stage 3

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group IBA - Process

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Visual Hull

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Visual Hull the quality of the visual hull geometry is a function of the number of viewpoints / silhouettes the method is unable to capture all concavities  image based lighting

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Point Based Rendering Surfels (surface element)

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Extended Surfels

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Rendering Pipeline

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Uniform Reconstruction For uniform samples, use signal processing theory Reconstruction by convolution with low-pass (reconstruction) filter Exact reconstruction of band-limited signals using ideal low-pass filters

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Non-Uniform Reconstruction Signal processing theory not applicable for nonuniform samples Local weighted average filtering – Normalized sum of local reconstruction kernels

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Reconstruction 1D in 2D

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Reconstruction 2D in 3D

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Algorithm for each sample point { shade surface sample; splat = projected reconstruction kernel; rasterize and accumulate splat; } for each output pixel { normalize; }

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Results without Normalization with Normalization

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Visibility ε-z-buffering

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Implementation Use a three pass algorithm: 1.Draw depth image with a small depth offset ε away from the viewpoint Perform regular z-buffering (depth tests and updates), no color updates

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Second Pass Draw colored splats with additive blending enabled Perform depth tests, but no updates Accumulate – Weighted colors of visible splats in the color channels – Weights of visible footprint functions in the alpha channel

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Third Pass Normalization of the color channels by dividing through the alpha channel Implemented by – render to texture – drawing a screen filling quad with this texture – performing the normalization in the pixel shader

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Efficient Data Structures DuoDecim A Structure for Point Scan Compression and Rendering

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group a.d created beautiful statues … but missed to make them portable David:434 cm Atlas:208 cm Barbuto:248 cm … Florence, Galleria dell'Accademia

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group a.d Marc Levoy et al. (Stanford University) did a great job scanning the statues … but still “missed” to make them “portable” David:1.1 GB Atlas:10 GB … All in all 32 gigabytes raw data !!! Jens Krüger - Computer Graphics and Visualization Group, TU- München Image courtesy of Marc Levoy

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Today… … we present novel algorithms to make the statues of Michelangelo „portable“ and „viewable“ on PCs.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group The Numbers The Atlas Statue Scan Size of raw scans: approx 600 mio. points Reconstruction: at 1/4 mm Size of reconstruction:approx 250 mio. vertices, approx 500 mio. triangles Filesize (without normals):9.94 GB „Your Home PC“ Size of Main Memory: 1 – 2 GB Size of Graphics Card Memory:0.125 – 0.5 GB

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 230 MB vs. 10 GB Rendering and decoding time in full resolution 4 sec.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group The Key Idea CPU Sample the point scan into a regular grid Divide the grid up into 2D slices Look for connected runs within the slices Store the starting position/normal per run Store position/normal delta for the rest GPU Store the compressed runs into textures Upload the compressed runs onto the GPU Decode the points with normals on the fly

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 1. Sample the point scan into a regular grid Hexagonal close sphere packing (HCP) grid

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Cell Search (HCP) 2D Simplification

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 2. Divide the grid up into 2D slices

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 3. Look for connected runs within the slices l k f g i j h m n o q p d b e c a abc dklmn op oq def gh gij defghgijigfedklmnopoq opoq ghgij

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 3. Connected runs (cont.)

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 4. Store the starting position/normal per run Start Position  two (16bit) indices per point – one (16bit) index per slice Start Normal  one (16bit) index – one (16bit) Codebook per dataset

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 5. Store position/normal delta for the rest Delta Position  6 cases  2.25 bit Delta Normal  5bit index – one (5bit) Codebook per dataset contains sin/cos of delta angles

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Rendering GPU Decoding and Rendering Store the compressed runs into textures Upload the compressed runs onto the GPU Decode the points with normals on the fly

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group 1. Store the compressed runs into textures Start Position/Normal Delta Position/Normal 16bit (RG)(B) 8bit (3+5) Per Slice: 16bit height 8 Floats to the GPU

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group n m 3. Decode the points with normals on the fly Start Position/Normal n m Position Normal Render as Points via: PBO/VBO Copy Cast to Vertex Array Vertex Texture Fetch

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group n m 3. Decode the points with normals on the fly Start Position/Normal n m Position Normal Delta Position/Normal 1 n m n m Position Normal Pixelshader Render as Points

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group One Image about quality…