Signal-Specialized Parametrization

24
Signal-Specialized Signal-Specialized Parametrization Parametrization Microsoft Research Microsoft Research 1 Harvard University Harvard University 2 Steven J. Steven J. Gortler Gortler 2 2 Hugues Hoppe Hugues Hoppe 1 1 Pedro V. Pedro V. Sander Sander 1,2 1,2 John Snyder John Snyder 1 1 EGRW 2002 EGRW 2002

description

EGRW 2002. Signal-Specialized Parametrization. Microsoft Research 1 Harvard University 2. Pedro V. Sander 1,2 John Snyder 1. Steven J. Gortler 2 Hugues Hoppe 1. Motivation. Powerful rasterization hardware (GeForce3,…) multi-texturing, programmable Many types of signals: - PowerPoint PPT Presentation

Transcript of Signal-Specialized Parametrization

Page 1: Signal-Specialized Parametrization

Signal-SpecializedSignal-SpecializedParametrizationParametrization

Microsoft ResearchMicrosoft Research11

Harvard UniversityHarvard University22

Steven J. GortlerSteven J. Gortler22

Hugues HoppeHugues Hoppe11

Pedro V. SanderPedro V. Sander1,21,2 John SnyderJohn Snyder11

EGRW 2002EGRW 2002

Page 2: Signal-Specialized Parametrization

MotivationMotivationPowerful rasterization hardware Powerful rasterization hardware (GeForce3,…)(GeForce3,…)

multi-texturing, programmablemulti-texturing, programmable

Many types of signals:Many types of signals: texture maptexture map (color)(color) bump mapbump map (normal)(normal) displacement mapdisplacement map (geometry)(geometry) irradiance transferirradiance transfer (spherical harmonics)(spherical harmonics) ……

Page 3: Signal-Specialized Parametrization

Texture mapping: two scenariosTexture mapping: two scenarios

Authoring: map a texture image onto a surfaceAuthoring: map a texture image onto a surface

Sampling: store an existing surface signalSampling: store an existing surface signalnormal mapnormal map normal signalnormal signal

Page 4: Signal-Specialized Parametrization

(128x128 texture)(128x128 texture)

Geometry-basedGeometry-basedparametrizationparametrization

Signal-specializedSignal-specializedparametrizationparametrization

demodemo

GoalGoal

Page 5: Signal-Specialized Parametrization

Previous work:Previous work:Signal-independent parametrizationSignal-independent parametrization

Angle-preserving metricsAngle-preserving metrics Eck et al. 1995Eck et al. 1995 Floater 1997Floater 1997 Hormann and Greiner 1999Hormann and Greiner 1999 Hacker et al. 2000Hacker et al. 2000

Other metricsOther metrics Maillot et al. 1993Maillot et al. 1993 Levy and Mallet 1998Levy and Mallet 1998 Sander et al. 2001Sander et al. 2001

Page 6: Signal-Specialized Parametrization

Previous work:Previous work:Signal-specialized parametrizationSignal-specialized parametrization

Terzopoulos and Vasilescu 1991Terzopoulos and Vasilescu 1991 Approximate 2D image with warped grid.Approximate 2D image with warped grid.

Hunter and Cohen 2000Hunter and Cohen 2000 Compress image as set of texture-mapped rectangles.Compress image as set of texture-mapped rectangles.

Sloan et al. 1998Sloan et al. 1998 Warp texture domain onto itself.Warp texture domain onto itself.

Page 7: Signal-Specialized Parametrization

ParametrizationParametrization

2D texture domain2D texture domain surface in 3Dsurface in 3Dlinear maplinear map

singular values: singular values: γγ , , ΓΓ

Page 8: Signal-Specialized Parametrization

ParametrizationParametrization

length-preserving (length-preserving (isometricisometric)) γγ = = ΓΓ = 1= 1 angle-preserving (angle-preserving (conformalconformal))γγ = = ΓΓ area-preservingarea-preserving γγ ΓΓ = 1= 1

2D texture domain2D texture domain surface in 3Dsurface in 3Dlinear maplinear mapTT

singular values: singular values: γγ , , ΓΓ

Page 9: Signal-Specialized Parametrization

Geometric stretch metricGeometric stretch metric

2D texture domain2D texture domain surface in 3Dsurface in 3Dlinear maplinear mapTT

singular values: singular values: γγ , , ΓΓ

Geometric stretch = Geometric stretch = γγ22 + + ΓΓ22 = = trtr((MM((TT)) )) where metric tensor where metric tensor MM((TT) = ) = JJ((TT))TT J J((TT))EE((SS) = surface integral of geometric stretch) = surface integral of geometric stretch

high stretch!high stretch!

Page 10: Signal-Specialized Parametrization

Signal stretch metricSignal stretch metric

ff

hh gg

geometric stretch: geometric stretch: EEff = = γγff2 2 + + ΓΓff

2 2 = tr(M= tr(Mff))

signal stretch: signal stretch: EEhh = = γγhh2 2 + + ΓΓhh

2 2 = tr(M= tr(Mhh))

domaindomain surfacesurface

signalsignal

Page 11: Signal-Specialized Parametrization

Integrated metric tensor (IMT)Integrated metric tensor (IMT) computed over each triangle using numerical integration.computed over each triangle using numerical integration. 2x2 symmetric matrix2x2 symmetric matrix recomputed for affinely warped triangle using simple recomputed for affinely warped triangle using simple

transformation rule.transformation rule. No need to reintegrate the signal.No need to reintegrate the signal.

hhee

hh´́

DD´́

DD

SignalSignal

MMhh´́ = = JJeeTT M Mhh J Jee

Page 12: Signal-Specialized Parametrization

Taylor expansion to signal approximation errorTaylor expansion to signal approximation error locally constant reconstructionlocally constant reconstruction asymptotically dense samplingasymptotically dense sampling

Deriving signal stretchDeriving signal stretch

signal approximation errorsignal approximation error

originaloriginal reconstructedreconstructed

Page 13: Signal-Specialized Parametrization

Boundary optimizationBoundary optimization Optimize boundary verticesOptimize boundary vertices

Texture domain grows to infinity.Texture domain grows to infinity. SolutionSolution

Multiply by domain area (scale invariant):Multiply by domain area (scale invariant): E Ehh´́= E= Ehh * area(D) = tr(M * area(D) = tr(Mhh(S)) * area(D)(S)) * area(D)

Fixed boundaryFixed boundary Optimized boundaryOptimized boundary

Page 14: Signal-Specialized Parametrization

Boundary optimizationBoundary optimization

Grow to bounding square/rectangle:Grow to bounding square/rectangle: Minimize E Minimize Ehh

Constrain vertices to stay inside bounding square.Constrain vertices to stay inside bounding square.

Optimized boundaryOptimized boundary Bounding square boundaryBounding square boundary

Page 15: Signal-Specialized Parametrization

Geometric stretchGeometric stretch

FloaterFloater

Signal stretchSignal stretch

Page 16: Signal-Specialized Parametrization

Hierarchical Parametrization algorithmHierarchical Parametrization algorithm Advantages:Advantages:

Faster.Faster. Finds better minimum (nonlinear metric).Finds better minimum (nonlinear metric).

Algorithm:Algorithm: Construct Construct PMPM.. Parametrize Parametrize “coarse-to-fine”.“coarse-to-fine”.

demodemo

Page 17: Signal-Specialized Parametrization

Iterated multigrid strategyIterated multigrid strategy Problem:Problem:

Coarse mesh does not capture signal detail.Coarse mesh does not capture signal detail.

Traverse PM fine-to-coarse.Traverse PM fine-to-coarse. For each edge collapse, For each edge collapse, sum up metric tensors sum up metric tensors and store them at each face. and store them at each face.

Traverse PM coarse-to-fine. Traverse PM coarse-to-fine. Optimize signal-stretch Optimize signal-stretch of introduced vertices using the of introduced vertices using the stored metric tensors. stored metric tensors.

Repeat last 2 steps until convergence.Repeat last 2 steps until convergence. Use bounding rectangle optimization Use bounding rectangle optimization

on last iteration.on last iteration.

Page 18: Signal-Specialized Parametrization

ResultsResults

Page 19: Signal-Specialized Parametrization

Geometric stretchGeometric stretch

Signal stretchSignal stretch

(64x64 texture)(64x64 texture)

ScannedScannedColorColor

Page 20: Signal-Specialized Parametrization

Painted ColorPainted Color

128x128 texture - multichart128x128 texture - multichartGeometric stretchGeometric stretch Signal stretchSignal stretch

Page 21: Signal-Specialized Parametrization

Precomputed Radiance TransferPrecomputed Radiance Transfer

25D signal – 256x256 texture25D signal – 256x256 texturefrom [Sloan et al. 2002]from [Sloan et al. 2002]

Geometric stretchGeometric stretch Signal stretchSignal stretch

Page 22: Signal-Specialized Parametrization

Normal MapNormal Map

demodemo

Geometric stretchGeometric stretch Signal stretchSignal stretch

128x128 texture - multichart128x128 texture - multichart

Page 23: Signal-Specialized Parametrization

SummarySummary

Many signals are unevenly distributed over area Many signals are unevenly distributed over area and direction. and direction.

Signal-specialized metricSignal-specialized metric Integrates signal approximation error over surfaceIntegrates signal approximation error over surface Each mesh face is assigned an IMT.Each mesh face is assigned an IMT. Affine transformation rules can exactly transform IMTs.Affine transformation rules can exactly transform IMTs.

Hierarchical parametrization algorithmHierarchical parametrization algorithm IMTs are propagated fine-to-coarse.IMTs are propagated fine-to-coarse. Mesh is parametrized coarse-to-fine.Mesh is parametrized coarse-to-fine. Boundary can be optimized during the process.Boundary can be optimized during the process.

Significant increase in quality for same texture size.Significant increase in quality for same texture size.Texture size reduction up to 4x for same quality.Texture size reduction up to 4x for same quality.

Page 24: Signal-Specialized Parametrization

Future workFuture work

Metrics for locally linear reconstruction.Metrics for locally linear reconstruction. Parametrize for specific sampling density.Parametrize for specific sampling density. Adapt mesh chartification to surface signal.Adapt mesh chartification to surface signal. Propagate signal approximation error Propagate signal approximation error

through rendering process.through rendering process. Perceptual measures.Perceptual measures.