Upload
eric-alexander
View
215
Download
0
Tags:
Embed Size (px)
Citation preview
Multi-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry Images
Pedro SanderPedro SanderHarvardHarvard
Pedro SanderPedro SanderHarvardHarvard
Hugues HoppeHugues HoppeMicrosoft ResearchMicrosoft Research
Hugues HoppeHugues HoppeMicrosoft ResearchMicrosoft Research
Steven GortlerSteven GortlerHarvardHarvard
Steven GortlerSteven GortlerHarvardHarvard
John SnyderJohn SnyderMicrosoft ResearchMicrosoft Research
John SnyderJohn SnyderMicrosoft ResearchMicrosoft Research
ZoZoë Woodë WoodCaltechCaltech
ZoZoë Woodë WoodCaltechCaltech
Geometry representationGeometry representationGeometry representationGeometry representation
semi-regularsemi-regularirregularirregular completely regularcompletely regular
Basic ideaBasic ideaBasic ideaBasic idea
cutcut
parametrizeparametrize
Basic ideaBasic ideaBasic ideaBasic idea
cutcut
samplesample
Basic ideaBasic ideaBasic ideaBasic idea
cutcut
[[rr,,gg,,bb] = [] = [xx,,yy,,zz]]
simple traversalsimple traversalto renderto render
storestore
Benefits of regularityBenefits of regularityBenefits of regularityBenefits of regularity
Simplicity in renderingSimplicity in rendering No vertex indirectionNo vertex indirection No texture coordinate indirectionNo texture coordinate indirection
Hardware potentialHardware potential Leverage image processing tools for geometric Leverage image processing tools for geometric
manipulationmanipulation
Simplicity in renderingSimplicity in rendering No vertex indirectionNo vertex indirection No texture coordinate indirectionNo texture coordinate indirection
Hardware potentialHardware potential Leverage image processing tools for geometric Leverage image processing tools for geometric
manipulationmanipulation
Limitations of single-chartLimitations of single-chartLimitations of single-chartLimitations of single-chart
Unavoidable distortion and undersamplingUnavoidable distortion and undersampling
long extremitieslong extremities high genushigh genus
Limitations of semi-regularLimitations of semi-regularLimitations of semi-regularLimitations of semi-regular
Base “charts” effectively constrained to be Base “charts” effectively constrained to be equal size equilateral trianglesequal size equilateral triangles
piecewisepiecewise regular regular400x160irregularirregular
Multi-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry Images
defineddefineddefineddefined
undefinedundefinedundefinedundefined
Multi-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry Images
Simple reconstruction rules;Simple reconstruction rules;for each 2-by-2 quad of MCGIM samples:for each 2-by-2 quad of MCGIM samples: 3 defined samples 3 defined samples render 1 triangle render 1 triangle 4 defined samples 4 defined samples render 2 triangles render 2 triangles
(using shortest diagonal) (using shortest diagonal)
Simple reconstruction rules;Simple reconstruction rules;for each 2-by-2 quad of MCGIM samples:for each 2-by-2 quad of MCGIM samples: 3 defined samples 3 defined samples render 1 triangle render 1 triangle 4 defined samples 4 defined samples render 2 triangles render 2 triangles
(using shortest diagonal) (using shortest diagonal)
Multi-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry ImagesMulti-chart Geometry Images
Simple reconstruction rules;Simple reconstruction rules;for each 2-by-2 quad of MCGIM samples:for each 2-by-2 quad of MCGIM samples: 3 defined samples 3 defined samples render 1 triangle render 1 triangle 4 defined samples 4 defined samples render 2 triangles render 2 triangles
(using shortest diagonal) (using shortest diagonal)
Simple reconstruction rules;Simple reconstruction rules;for each 2-by-2 quad of MCGIM samples:for each 2-by-2 quad of MCGIM samples: 3 defined samples 3 defined samples render 1 triangle render 1 triangle 4 defined samples 4 defined samples render 2 triangles render 2 triangles
(using shortest diagonal) (using shortest diagonal)
Cracks in reconstructionCracks in reconstructionCracks in reconstructionCracks in reconstruction
Challenge: the discrete sampling will cause Challenge: the discrete sampling will cause cracks in the reconstruction between chartscracks in the reconstruction between charts
Challenge: the discrete sampling will cause Challenge: the discrete sampling will cause cracks in the reconstruction between chartscracks in the reconstruction between charts
““zippered”zippered”
MCGIM Basic pipelineMCGIM Basic pipelineMCGIM Basic pipelineMCGIM Basic pipeline
Break mesh into charts Break mesh into charts Parameterize chartsParameterize charts Pack the chartsPack the charts Sample the charts Sample the charts Zipper chart seams Zipper chart seams Optimize the MCGIMOptimize the MCGIM
Break mesh into charts Break mesh into charts Parameterize chartsParameterize charts Pack the chartsPack the charts Sample the charts Sample the charts Zipper chart seams Zipper chart seams Optimize the MCGIMOptimize the MCGIM
Mesh chartificationMesh chartificationMesh chartificationMesh chartificationGoal: planar charts with compact boundariesGoal: planar charts with compact boundaries
Clustering optimization - Lloyd-Max Clustering optimization - Lloyd-Max (Shlafman 2002)(Shlafman 2002):: Iteratively grow chart from given seed face.Iteratively grow chart from given seed face.
(metric is a product of distance and normal)(metric is a product of distance and normal) Compute new seed face for each chart.Compute new seed face for each chart.
(face that is farthest from chart boundary)(face that is farthest from chart boundary) Repeat above steps until convergence.Repeat above steps until convergence.
Goal: planar charts with compact boundariesGoal: planar charts with compact boundaries
Clustering optimization - Lloyd-Max Clustering optimization - Lloyd-Max (Shlafman 2002)(Shlafman 2002):: Iteratively grow chart from given seed face.Iteratively grow chart from given seed face.
(metric is a product of distance and normal)(metric is a product of distance and normal) Compute new seed face for each chart.Compute new seed face for each chart.
(face that is farthest from chart boundary)(face that is farthest from chart boundary) Repeat above steps until convergence.Repeat above steps until convergence.
Mesh chartificationMesh chartificationMesh chartificationMesh chartificationBootstrappingBootstrapping
Start with single seedStart with single seed Run chartification using increasing number of Run chartification using increasing number of
seeds each phaseseeds each phase Until desired number reachedUntil desired number reached
BootstrappingBootstrapping Start with single seedStart with single seed Run chartification using increasing number of Run chartification using increasing number of
seeds each phaseseeds each phase Until desired number reachedUntil desired number reached
demodemodemodemo
Chartification ResultsChartification ResultsChartification ResultsChartification Results
Produces planar charts with compact boundariesProduces planar charts with compact boundaries Produces planar charts with compact boundariesProduces planar charts with compact boundaries
Sander et. al. 2001Sander et. al. 200180% stretch efficiency80% stretch efficiency
Our methodOur method99% stretch efficiency99% stretch efficiency
ParameterizationParameterizationParameterizationParameterization
Goal: Penalizes undersamplingGoal: Penalizes undersampling LL22 geometric stretch of Sander et. al. 2001 geometric stretch of Sander et. al. 2001 Hierarchical algorithm for solving minimizationHierarchical algorithm for solving minimization
Goal: Penalizes undersamplingGoal: Penalizes undersampling LL22 geometric stretch of Sander et. al. 2001 geometric stretch of Sander et. al. 2001 Hierarchical algorithm for solving minimizationHierarchical algorithm for solving minimization
ParameterizationParameterizationParameterizationParameterization
Goal: Penalizes undersamplingGoal: Penalizes undersampling LL22 geometric stretch of Sander et. al. 2001 geometric stretch of Sander et. al. 2001 Hierarchical algorithm for solving minimizationHierarchical algorithm for solving minimization
Goal: Penalizes undersamplingGoal: Penalizes undersampling LL22 geometric stretch of Sander et. al. 2001 geometric stretch of Sander et. al. 2001 Hierarchical algorithm for solving minimizationHierarchical algorithm for solving minimization
Angle-preserving metricAngle-preserving metric
(Floater)(Floater)
Angle-preserving metricAngle-preserving metric
(Floater)(Floater)
Chart packingChart packingChart packingChart packing
Goal: minimize wasted spaceGoal: minimize wasted space Based on Levy et al. 2002Based on Levy et al. 2002 Place a chart at a time Place a chart at a time
(from largest to smallest) (from largest to smallest) Pick best position Pick best position and rotationand rotation
(minimize wasted space) (minimize wasted space) Repeat above for multiple MCGIM rectangle shapesRepeat above for multiple MCGIM rectangle shapes
pick bestpick best
Goal: minimize wasted spaceGoal: minimize wasted space Based on Levy et al. 2002Based on Levy et al. 2002 Place a chart at a time Place a chart at a time
(from largest to smallest) (from largest to smallest) Pick best position Pick best position and rotationand rotation
(minimize wasted space) (minimize wasted space) Repeat above for multiple MCGIM rectangle shapesRepeat above for multiple MCGIM rectangle shapes
pick bestpick best
Packing ResultsPacking ResultsPacking ResultsPacking ResultsLevy packing Levy packing
efficiency 58.0%efficiency 58.0%
Our packing Our packing efficiency 75.6%efficiency 75.6%
Sampling into a MCGIMSampling into a MCGIMSampling into a MCGIMSampling into a MCGIM
Goal: discrete sampling of parameterized charts Goal: discrete sampling of parameterized charts into topological discsinto topological discs Rasterize triangles with scan conversionRasterize triangles with scan conversion Store geometryStore geometry
Goal: discrete sampling of parameterized charts Goal: discrete sampling of parameterized charts into topological discsinto topological discs Rasterize triangles with scan conversionRasterize triangles with scan conversion Store geometryStore geometry
Sampling into a MCGIMSampling into a MCGIMSampling into a MCGIMSampling into a MCGIM
Boundary Boundary rasterizationrasterization
Non-manifold dilationNon-manifold dilation
Zippering the MCGIMZippering the MCGIMZippering the MCGIMZippering the MCGIM
Goal: to form a watertight reconstructionGoal: to form a watertight reconstruction Goal: to form a watertight reconstructionGoal: to form a watertight reconstruction
Zippering the MCGIMZippering the MCGIMZippering the MCGIMZippering the MCGIM
Algorithm: Algorithm: Greedy (but robust) approach Greedy (but robust) approach
Identify cut-nodes and Identify cut-nodes and cut-path samples. cut-path samples.
Unify cut-nodes.Unify cut-nodes.
Snap cut-path samples Snap cut-path samples to geometric cut-path. to geometric cut-path.
Unify cut-path samples.Unify cut-path samples.
Algorithm: Algorithm: Greedy (but robust) approach Greedy (but robust) approach
Identify cut-nodes and Identify cut-nodes and cut-path samples. cut-path samples.
Unify cut-nodes.Unify cut-nodes.
Snap cut-path samples Snap cut-path samples to geometric cut-path. to geometric cut-path.
Unify cut-path samples.Unify cut-path samples.
Zippering: SnapZippering: SnapZippering: SnapZippering: Snap
SnapSnap Snap discrete cut-path samples to Snap discrete cut-path samples to
geometrically closest point on cut-pathgeometrically closest point on cut-path
SnapSnap Snap discrete cut-path samples to Snap discrete cut-path samples to
geometrically closest point on cut-pathgeometrically closest point on cut-path
Zippering: UnifyZippering: UnifyZippering: UnifyZippering: Unify
UnifyUnify Greedily unify neighboring samplesGreedily unify neighboring samples
UnifyUnify Greedily unify neighboring samplesGreedily unify neighboring samples
How unification worksHow unification worksHow unification worksHow unification works
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
How unification worksHow unification worksHow unification worksHow unification works
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
How unification worksHow unification worksHow unification worksHow unification works
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
UnifyUnify Test the distance of the next 3 movesTest the distance of the next 3 moves Pick smallest to unify then advancePick smallest to unify then advance
Geometry image optimizationGeometry image optimizationGeometry image optimizationGeometry image optimization
Goal: align discrete samples with mesh featuresGoal: align discrete samples with mesh features Hoppe et. al. 1993Hoppe et. al. 1993 Reposition vertices to minimize distance toReposition vertices to minimize distance to
the original surface the original surface Constrain connectivityConstrain connectivity
Goal: align discrete samples with mesh featuresGoal: align discrete samples with mesh features Hoppe et. al. 1993Hoppe et. al. 1993 Reposition vertices to minimize distance toReposition vertices to minimize distance to
the original surface the original surface Constrain connectivityConstrain connectivity
Multi-chart resultsMulti-chart resultsMulti-chart resultsMulti-chart results
genus 2; 50 chartsgenus 2; 50 charts 478x133478x133 RenderingRenderingPSNR 79.5PSNR 79.5
Multi-chart resultsMulti-chart resultsMulti-chart resultsMulti-chart results
genus 1; 40 chartsgenus 1; 40 charts174x369174x369
RenderingRenderingPSNR 75.6 PSNR 75.6
Multi-chart resultsMulti-chart resultsMulti-chart resultsMulti-chart results
genus 0; 25 chartsgenus 0; 25 charts 281X228281X228 RenderingRenderingPSNR 84.6 PSNR 84.6
Multi-chart resultsMulti-chart resultsMulti-chart resultsMulti-chart results
genus 0; 15 chartsgenus 0; 15 charts466x138466x138
RenderingRenderingPSNR 83.8 PSNR 83.8
478x133478x133
irregularirregularoriginaloriginal
singlesinglechartchart
PSNR 68.0PSNR 68.0
multi-multi-chartchart
PSNR 79.5PSNR 79.5demodemodemodemo
Multi-chart resultsMulti-chart resultsMulti-chart resultsMulti-chart results
Comparison to semi-regularComparison to semi-regularComparison to semi-regularComparison to semi-regular
Original irregularOriginal irregular Semi-regularSemi-regular MCGIMMCGIM
Comparison to semi-regularComparison to semi-regularComparison to semi-regularComparison to semi-regular
Original irregular meshOriginal irregular mesh
Semi-regular meshSemi-regular meshPSNR 87.8PSNR 87.8
MCGIM meshMCGIM meshPSNR 90.2PSNR 90.2
SummarySummarySummarySummary Contributions:Contributions:
Overall: MCGIM representationOverall: MCGIM representation– Rendering simplicityRendering simplicity
Major: zippering and optimizationMajor: zippering and optimization Minor: packing and chartificationMinor: packing and chartification
Contributions:Contributions: Overall: MCGIM representationOverall: MCGIM representation
– Rendering simplicityRendering simplicity Major: zippering and optimizationMajor: zippering and optimization Minor: packing and chartificationMinor: packing and chartification
Future workFuture workFuture workFuture work
Provide:Provide: CompressionCompression Level-of-detail rendering controlLevel-of-detail rendering control
Exploit rendering simplicity in hardwareExploit rendering simplicity in hardware
Improve zipperingImprove zippering
Provide:Provide: CompressionCompression Level-of-detail rendering controlLevel-of-detail rendering control
Exploit rendering simplicity in hardwareExploit rendering simplicity in hardware
Improve zipperingImprove zippering