Compressing Texture Coordinates Martin IsenburgJack Snoeyink University of North Carolina at Chapel Hill with h Selective Linear Predictions.

Slides:



Advertisements
Similar presentations
Shape Compression using Spherical Geometry Images
Advertisements

Multi-chart Geometry Images Pedro Sander Harvard Harvard Hugues Hoppe Microsoft Research Hugues Hoppe Microsoft Research Steven Gortler Harvard Harvard.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Building Models modified by Ray Wisman Ed Angel Professor of Computer Science,
2D/3D Shape Manipulation, 3D Printing
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
Least-squares Meshes Olga Sorkine and Daniel Cohen-Or Tel-Aviv University SMI 2004.
Geometry Image Xianfeng Gu, Steven Gortler, Hugues Hoppe SIGGRAPH 2002 Present by Pin Ren Feb 13, 2003.
3D Surface Parameterization Olga Sorkine, May 2005.
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
Inter-Surface Mapping John Schreiner, Arul Asirvatham, Emil Praun (University of Utah) Hugues Hoppe (Microsoft Research)
Consistent Spherical Parameterization Arul Asirvatham, Emil Praun (University of Utah) Hugues Hoppe (Microsoft Research)
Geometry Images Steven Gortler Harvard University Steven Gortler Harvard University Xianfeng Gu Harvard University Xianfeng Gu Harvard University Hugues.
Angle-Analyzer: A Triangle-Quad Mesh Codec Haeyoung Lee USC Mathieu Desbrun USC Pierre Alliez INRIA.
CS CS 175 – Week 4 Mesh Decimation General Framework, Progressive Meshes.
Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech.

Spherical Parameterization and Remeshing Emil Praun, University of Utah Hugues Hoppe, Microsoft Research.
Iso-charts: Stretch-driven Mesh Parameterization using Spectral Analysis Kun Zhou, John Snyder*, Baining Guo, Heung-Yeung Shum Microsoft Research Asia.
Max-Plank Institut für Informatik systematic error parallelogram rule polygonal rules exact prediction Geometry Prediction for High Degree Polygons Martin.
Compressing Hexahedral Volume Meshes Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis.
Bounded-distortion Piecewise Mesh Parameterization
Lapped Textures SIGGRAPH 2000 Emil Praun Adam Finkelstein Hugues Hoppe.
Binary Compression Rates for ASCII Formats Martin IsenburgJack Snoeyink University of North Carolina at Chapel Hill.
Martin Isenburg Jack Snoeyink University of North Carolina Chapel Hill Mesh Collapse Compression.
Martin Isenburg University of North Carolina at Chapel Hill Triangle Fixer: Edge-based Connectivity Compression.
Face Fixer Compressing Polygon Meshes with Properties Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill.
Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill Reverse Decoding of the Edgebreaker Encoding S PIRALE R EVERSI.
Surface Simplification & Edgebreaker Compression for 2D Cel Animations Vivek Kwatra & Jarek Rossignac GVU Center, College of Computing Georgia Institute.
Lossless Compression of Floating-Point Geometry Martin Isenburg UNC Chapel Hill Peter Lindstrom LLNL Livermore Jack Snoeyink UNC Chapel Hill.
With Parallelogram Prediction Compressing Polygon Mesh Geometry Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis.
Compressing the Property Mapping of Polygon Meshes Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill.
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
Compressing Polygon Mesh Connectivity
Kumar, Roger Sepiashvili, David Xie, Dan Professor Chen April 19, 1999 Progressive 3D Mesh Coding.
Streaming Compression of Triangle Meshes Martin Isenburg University of California at Berkeley Jack Snoeyink University of North Carolina at Chapel Hill.
Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity.
Mesh Parameterization: Theory and Practice Non-Planar Domains.
Progressive Encoding of Complex Iso-Surfaces Peter Schröder Caltech ASCI Alliance Center for Simulation of Dynamic Response of Materials Joint work with:
Coding with ASCII: compact, yet text-based 3D content Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill and INRIA Sophia-Antipolis.
An Introduction to 3D Geometry Compression and Surface Simplification Connie Phong CSC/Math April 2007.
Consistent Parameterizations Arul Asirvatham Committee Members Emil Praun Hugues Hoppe Peter Shirley.
Topological Surgery Progressive Forest Split Papers by Gabriel Taubin et al Presented by João Comba.
Out-of-Core Compression for Gigantic Polygon Meshes Martin IsenburgStefan Gumhold University of North CarolinaWSI/GRIS at Chapel Hill Universität Tübingen.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Projective Texture Atlas for 3D Photography Jonas Sossai Júnior Luiz Velho IMPA.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Parameterization.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
Geometry Images Xiang Gu Harvard University Steven J. Gortler Harvard university Hugues Hoppe Microsoft Research Some slides taken from Hugues Hoppe.
3D Geometry Coding using Mixture Models and the Estimation Quantization Algorithm Sridhar Lavu Masters Defense Electrical & Computer Engineering DSP GroupRice.
Computer Graphics Some slides courtesy of Pierre Alliez and Craig Gotsman Texture mapping and parameterization.
Semi-regular 3D mesh progressive compression and transmission based on an adaptive wavelet decomposition 21 st January 2009 Wavelet Applications in Industrial.
Random-Accessible Compressed Triangle Meshes Sung-eui Yoon Korea Advanced Institute of Sci. and Tech. (KAIST) Peter Lindstrom Lawrence Livermore National.
Spectral Compression of Mesh Geometry (Karni and Gotsman 2000) Presenter: Eric Lorimer.
Mesh Coarsening zhenyu shu Mesh Coarsening Large meshes are commonly used in numerous application area Modern range scanning devices are used.
1 Polygonal Techniques 이영건. 2 Introduction This chapter –Discuss a variety of problems that are encountered within polygonal data sets The.
Vertices, Edges and Faces By Jordan Diamond. Vertices In geometry, a vertices is a special kind of point which describes the corners or intersections.
1 Compressing TINs Leila De Floriani, Paola Magillo University of Genova Genova (Italy) Enrico Puppo National Research Council Genova (Italy)
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
04 MPEG-4, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June D Compression Jarek Rossignac GVU Center and College of Computing Georgia Tech,
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
CASA 2006 CASA 2006 A Skinning Approach for Dynamic Mesh Compression Khaled Mamou Titus Zaharia Françoise Prêteux.
11/12/02(c) University of Wisconsin, CS559 Last Time Texturing Details Homework 5.
Streaming Compressed 3D Data on the Web using JavaScript and WebGL Université de Lyon, INSA-Lyon LIRIS UMR CNRS 5205 Guillaume Lavoué Florent Dupont Velvet.

POLYGON MESH Advance Computer Graphics
Morphing and Shape Processing
A Brief History of 3D MESH COMPRESSION ORAL, M. ELMAS, A.A.
Mesh Parameterization: Theory and Practice
Wavelet-based Compression of 3D Mesh Sequences
Presentation transcript:

Compressing Texture Coordinates Martin IsenburgJack Snoeyink University of North Carolina at Chapel Hill with h Selective Linear Predictions

Take this home: “We predict texture coordinates with four different rules – taking into account the presence of mapping discontinuities.” “We compress the corresponding corrective vectors with different arithmetic contexts.”

Overview Background Compressing Vertex Positions Linear Prediction Schemes Texture Coordinate Mappings Compressing Texture Coordinates Alternative Approaches Summary

Background

Meshes - Basic Ingredients connectivity geometry face face face face f vertex 1 ( x 1 y 1 z 1 ) vertex 2 ( x 2 y 2 z 2 ) vertex 3 ( x 3 y 3 z 3 ) vertex v ( x v y v z v )

Meshes - Optional Properties mapping values face face face face f texcoord 1 ( u 1 v 1 ) texcoord 2 ( u 2 v 2 ) texcoord 3 ( u 3 v 3 ) texcoord t ( u t v t )

– Fast Rendering – Progressive Transmission – Maximum Compression Geometry Compression [ Deering, 95 ] Mesh Compression Maximum Compression

Geometry Compression [ Deering, 95 ] – Fast Rendering – Progressive Transmission – Maximum Compression Connectivity Geometry Properties Geometry Compression [ Deering, 95 ] Mesh Compression Properties Maximum Compression

Geometry Compression [ Deering, 95 ] – Fast Rendering – Progressive Transmission – Maximum Compression Connectivity Geometry Properties – Mapping – Values Geometry Compression [ Deering, 95 ] Mesh Compression Properties Values Maximum Compression Normals Colors Material Attributes Texture Coordinates Texture Coordinates

Triangle Mesh Compression Texture Coordinates ??? Triangle Mesh Compression [ Touma & Gotsman, Graphics Interface 98 ] “… treat like vertex positions …” Yes! But … “parallelogram prediction” - most popular! Geometry “coding with vertex degrees” - optimal? Connectivity

Generalization of TG coder Connectivity Compressing Polygon Mesh Connectivity with Degree Duality Prediction [ Isenburg, 02 ] Near-optimal connectivity coding of Polygonal Meshes [ Khodakovsky et al, 02 ] Compressing Polygon Mesh Geometry with Parallelogram Prediction [ Isenburg & Alliez, 02 ] Geometry

Compressing Vertex Positions

Classic approaches [ 95 – 98 ]: – linear prediction Geometry Compression [ Deering, 95 ] Java3D Geometric Compression through topological surgery [ Taubin & Rossignac, 98 ] MPEG - 4 Triangle Mesh Compression [ Touma & Gotsman, 98 ] Virtue3D

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based Spectral Compression of Mesh Geometry [ Karni & Gotsman, 00 ] expensive numerical computations

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based Progressive Geometry Compression [ Khodakovsky et al., 00 ] modifies mesh prior to compression

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based Geometric Compression for interactive transmission [ Devillers & Gandoin, 00 ] poly-soups; complex geometric algorithms

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based Vertex data compression for triangle meshes [ Lee & Ko, 00 ] local coord-system + vector-quantization

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based certain 3D models + expensive matching Compression of engineering models by repeated feature [ Shikhare et al., 01 ] discovery

Compressing Vertex Positions Classic approaches [ 95 – 98 ]: – linear prediction Recent approaches [ 00 – 02 ]: – spectral – re-meshing – space-dividing – vector-quantization – feature discovery – angle-based Angle-Analyzer: A triangle- quad mesh codec [ Lee, Alliez & Desbrun, 02 ] dihedral + internal = heavy trigonometry

Linear Prediction Schemes

1.quantize positions with b bits 2.traverse positions 3.linear prediction from neighbors 4.store corrective vector ( , , ) ( 1008, 68, 718 ) floating point integer

Linear Prediction Schemes 1.quantize positions with b bits 2.traverse positions 3.linear prediction from neighbors 4.store corrective vector use traversal order implied by the connectivity coder

Linear Prediction Schemes 1.quantize positions with b bits 2.traverse positions 3.linear prediction from neighbors 4.store corrective vector ( 1004, 71, 723 ) apply prediction rule prediction

Linear Prediction Schemes 1.quantize positions with b bits 2.traverse positions 3.linear prediction from neighbors 4.store corrective vector position distribution corrector distribution ( 1004, 71, 723 )( 1008, 68, 718 ) position ( 4, -3, -5 ) correctorprediction

Deering, 95 Prediction: Delta-Coding A processed region unprocessed region P P = A

Taubin & Rossignac, 98 Prediction: Spanning Tree A B C D E processed region unprocessed region P P = α A + βB + γC + δD + εE + …

Touma & Gotsman, 98 Prediction: Parallelogram Rule processed region unprocessed region P P = A – B + C A B C

Parallelogram Rule good prediction bad prediction “non-convex” bad prediction “non-planar”

Not Triangles … Polygons! Face Fixer [ Isenburg & Snoeyink, 00 ]

Non-triangular Faces Question:Why would a mesh have a non-triangular face?

Non-triangular Faces Question:Why would a mesh have a non-triangular face? Answer:Because there was no reason to triangulate it! This face was “convex” and “planar”.  use this info for better predictions

 within-predictions often find existing parallelograms (  quadrilaterals ) “within” versus “across”  within-predictions avoid creases within-prediction across-prediction

Texture Coordinate Mappings

Texture Mapping (1) “the process of applying a texture image to a mesh” mesh textured mesh texture image

Texture Mapping (2) “putting every 3D polygon of the mesh in correspondence with a 2D polygon in the image”

“some vertices of the mesh have multiple corresponding locations in texture space” Discontinuities in Mapping (1)

Discontinuities in Mapping (2) “vertices may have multiple associated texture coordinates”

crease corner 0 smooth corner 0 Encoding the Mapping (1) 1. distinguish vertices 2. distinguish corners smooth vertex crease vertex corner vertex

Encoding the Mapping (2)

Encoding the Mapping (3)

Why Discontinuities ? cuts required to flatten mesh – no boundary – non-zero genus piece-wise texture mapping – author / artist decision – easier for automated techniques additional cuts to meet objectives – angle/area preserving parameterization – minimizing texture stretch

Piece-wise Mappings (1)

Piece-wise Mappings (2)

Compressing Texture Coordinates

Selective Linear Prediction analyze neighborhood use most promising predictor  “within” ( for polygon meshes only )  “across”  “nearby”  “center” avoid unreasonable predictions compress with different contexts

Unreasonable Predictions

Example Scenarios (1) processed vertex ring within-prediction T 16 – T 11 + T 13

Example Scenarios (2) smooth edge within-prediction T 20 – T 19 + T 21 across-prediction T 22 – T 25 + T 26

Example Scenarios (3) processed vertex ring 1 57 crease edge 50 nearby-prediction T

Example Scenarios (4) within-prediction T 81 – T 74 + T 80 center-prediction BB mid

Example Bit-Rates ( 10 bit ) within by prediction type model acrossnearbycenter “1398” “1412” “1510” lion wolf raptor total

Selection Histogram within frequency of prediction type model acrossnearbycenter %35 %10 % %39 %12 % %36 %11 % “1398” “1412” “1510” lion wolf raptor 82 %14 %3 %1 % 84 %13 %2 %1 % 78 %18 %5 %1 %

Alternative Approaches

“make texture coordinates implicit ” change the mesh (re-meshing) Geometry Images [ Gu et al, 02 ] Bounded Distortion piece-wise Mesh Parameterization [ Sorkine et al, 02 ] Space-Optimized Texture Maps [ Balmelli et al, 02 ] change the image (re-texturing)

Summary & Acknowledgments

Summary (1) use the parallelogram predictor for texture coordinates avoid unreasonable predictions across discontinuities (“seams”) switch to less-promising predictor compress resulting corrective vectors with separate arithmetic contexts

Summary (2) compression software as benchmark for future research is available on the Web local link

Acknowledgments Archaeology Technology Labs, North Dakota State University Curious Labs, California

Thank You!