user-guided simplification

Post on 31-Dec-2015

23 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

User-Guided Simplification. Youngihn Kho Michael Garland University of Illinois at Urbana–Champaign. Surface Simplification. 5,804 faces. 780 faces. Previous simplifications. Most of previous algorithms are fully automatic generally work well, but weak at higher-level semantics - PowerPoint PPT Presentation

TRANSCRIPT

User-Guided Simplification

Youngihn KhoYoungihn Kho

Michael GarlandMichael GarlandUniversity of Illinois at Urbana–ChampaignUniversity of Illinois at Urbana–Champaign

Youngihn KhoYoungihn Kho

Michael GarlandMichael GarlandUniversity of Illinois at Urbana–ChampaignUniversity of Illinois at Urbana–Champaign

Surface Simplification

5,804 faces5,804 faces 780 faces780 faces

Previous simplifications

Most of previous algorithms are fully automatic• generally work well, butgenerally work well, but• weak at higher-level semanticsweak at higher-level semantics• user-guidance can improve the qualityuser-guidance can improve the quality

Semi-automatic methods• Zetaeta (Cignoni (Cignoni et alet al. ’97). ’97)

• SemisimpSemisimp (Li and Watson ’01) (Li and Watson ’01)

• User-Controlled Creation of Multiresolution User-Controlled Creation of Multiresolution MeshesMeshes

((Pojar and Pojar and Schmalstieg Schmalstieg ’03’03))

Most of previous algorithms are fully automatic• generally work well, butgenerally work well, but• weak at higher-level semanticsweak at higher-level semantics• user-guidance can improve the qualityuser-guidance can improve the quality

Semi-automatic methods• Zetaeta (Cignoni (Cignoni et alet al. ’97). ’97)

• SemisimpSemisimp (Li and Watson ’01) (Li and Watson ’01)

• User-Controlled Creation of Multiresolution User-Controlled Creation of Multiresolution MeshesMeshes

((Pojar and Pojar and Schmalstieg Schmalstieg ’03’03))

User Guidance can be Useful

We propose a user-guided simplificationWe propose a user-guided simplification• directly guide simplification processesdirectly guide simplification processes

• users freely interact at any levelusers freely interact at any level

• Built Built on top of on top of quadric-based simplification quadric-based simplification

(Garland and Heckbert ’97)(Garland and Heckbert ’97)

We propose a user-guided simplificationWe propose a user-guided simplification• directly guide simplification processesdirectly guide simplification processes

• users freely interact at any levelusers freely interact at any level

• Built Built on top of on top of quadric-based simplification quadric-based simplification

(Garland and Heckbert ’97)(Garland and Heckbert ’97)

Iterative Edge Contraction

Starting from the original model, Starting from the original model, iterativelyiteratively• rank all edges with some cost metricrank all edges with some cost metric

• contract minimum cost edgecontract minimum cost edge

• update edge costsupdate edge costs

• generate vertex treegenerate vertex tree

Starting from the original model, Starting from the original model, iterativelyiteratively• rank all edges with some cost metricrank all edges with some cost metric

• contract minimum cost edgecontract minimum cost edge

• update edge costsupdate edge costs

• generate vertex treegenerate vertex tree

Quadric-Error Metric

Given a plane, a Given a plane, a quadricquadric Q is defined as Q is defined asGiven a plane, a Given a plane, a quadricquadric Q is defined as Q is defined as

Squared distance of point to plane isSquared distance of point to plane isSquared distance of point to plane isSquared distance of point to plane is

Sum of quadrics represents set of planesSum of quadrics represents set of planesSum of quadrics represents set of planesSum of quadrics represents set of planes

Quadric-Error Metric

Each edge has an associated quadric Each edge has an associated quadric • sum of quadrics for its two verticessum of quadrics for its two vertices

• find a vertex find a vertex vv** minimizing minimizing QQ((vv**))

Each edge has an associated quadric Each edge has an associated quadric • sum of quadrics for its two verticessum of quadrics for its two vertices

• find a vertex find a vertex vv** minimizing minimizing QQ((vv**))

After the edge contraction After the edge contraction • the vertex the vertex vv** accumulates the associated accumulates the associated

quadricsquadrics

After the edge contraction After the edge contraction • the vertex the vertex vv** accumulates the associated accumulates the associated

quadricsquadrics

How to Guide Simplification:Manipulate Quadrics

In the quadric-based algorithmIn the quadric-based algorithm• contraction order and optimal positions are contraction order and optimal positions are

crucialcrucial

• quadrics determine bothquadrics determine both

We manipulate quadrics in two main waysWe manipulate quadrics in two main ways• weighting quadricsweighting quadrics

• adding constraint quadricsadding constraint quadrics

In the quadric-based algorithmIn the quadric-based algorithm• contraction order and optimal positions are contraction order and optimal positions are

crucialcrucial

• quadrics determine bothquadrics determine both

We manipulate quadrics in two main waysWe manipulate quadrics in two main ways• weighting quadricsweighting quadrics

• adding constraint quadricsadding constraint quadrics

Weighting Quadrics:Control Contraction Costs

We weight quadricsWe weight quadricsWe weight quadricsWe weight quadrics

Heavy weights are appliedHeavy weights are applied• on feature areason feature areas

• increase contraction costsincrease contraction costs

Also changes optimal positionsAlso changes optimal positions• a desirable side effecta desirable side effect

Heavy weights are appliedHeavy weights are applied• on feature areason feature areas

• increase contraction costsincrease contraction costs

Also changes optimal positionsAlso changes optimal positions• a desirable side effecta desirable side effect

Feature areas are paintedFeature areas are painted

Constraint Quadrics:Control Optimal Positions

We can define constraint planes We can define constraint planes • add their quadrics to appropriate vertices add their quadrics to appropriate vertices

• bias optimal positionsbias optimal positions

• increase contraction costs -> store separatelyincrease contraction costs -> store separately

We can define constraint planes We can define constraint planes • add their quadrics to appropriate vertices add their quadrics to appropriate vertices

• bias optimal positionsbias optimal positions

• increase contraction costs -> store separatelyincrease contraction costs -> store separately

We Propose Three types ofConstraint Quadrics

Contour ConstraintsContour Constraints Point ConstraintsPoint ConstraintsPlane ConstraintsPlane Constraints

Example : Contour Constraint

Example : Point Constraint

We Need:New Propagation Rules

Users want to freely interact at any levelUsers want to freely interact at any level• affect both simplification and refinement affect both simplification and refinement

processprocess

• vertex tree structures may be changedvertex tree structures may be changed

• constraint quadrics and constraint quadrics and representative representative weightsweights

should be appropriately propagated.should be appropriately propagated.

Users want to freely interact at any levelUsers want to freely interact at any level• affect both simplification and refinement affect both simplification and refinement

processprocess

• vertex tree structures may be changedvertex tree structures may be changed

• constraint quadrics and constraint quadrics and representative representative weightsweights

should be appropriately propagated.should be appropriately propagated.

Propagation:Constraint Quadrics

Propagation:Representative Weight

Error Analysis:Relative Error Distribution

Fully automaticFully automatic User-guidedUser-guided

Conclusion

New interactive simplification systemNew interactive simplification system• extends an existing QSlim algorithmextends an existing QSlim algorithm

• allows user-guidance to improve allows user-guidance to improve approximationsapproximations

• little user effort, still efficientlittle user effort, still efficient

Changes vertex tree structuresChanges vertex tree structures• can be used for further applicationscan be used for further applications

New interactive simplification systemNew interactive simplification system• extends an existing QSlim algorithmextends an existing QSlim algorithm

• allows user-guidance to improve allows user-guidance to improve approximationsapproximations

• little user effort, still efficientlittle user effort, still efficient

Changes vertex tree structuresChanges vertex tree structures• can be used for further applicationscan be used for further applications

Future Work

Better weights selectionBetter weights selection• currently chosen by userscurrently chosen by users

• automatic suggestion would be goodautomatic suggestion would be good

Perceptually based error metricPerceptually based error metric• low-level perception modelslow-level perception models

(Reddy ‘97, (Reddy ‘97, Luebke and Hallen ’01Luebke and Hallen ’01))

• but also high-level : eg. actual feature vs but also high-level : eg. actual feature vs noise noise

• machine learning techniques?machine learning techniques?

Better weights selectionBetter weights selection• currently chosen by userscurrently chosen by users

• automatic suggestion would be goodautomatic suggestion would be good

Perceptually based error metricPerceptually based error metric• low-level perception modelslow-level perception models

(Reddy ‘97, (Reddy ‘97, Luebke and Hallen ’01Luebke and Hallen ’01))

• but also high-level : eg. actual feature vs but also high-level : eg. actual feature vs noise noise

• machine learning techniques?machine learning techniques?

The End

Thanks!Thanks!

Contact InformationContact Information

Youngihn kho Michael GarlandYoungihn kho Michael Garland

kho@uiuc.edu garland@uiuc.edukho@uiuc.edu garland@uiuc.edu

Thanks!Thanks!

Contact InformationContact Information

Youngihn kho Michael GarlandYoungihn kho Michael Garland

kho@uiuc.edu garland@uiuc.edukho@uiuc.edu garland@uiuc.edu

top related