Probabilis)c Reasoning for Assembly-Based 3D Modeling - - PowerPoint PPT Presentation

probabilis c reasoning for assembly based 3d modeling
SMART_READER_LITE
LIVE PREVIEW

Probabilis)c Reasoning for Assembly-Based 3D Modeling - - PowerPoint PPT Presentation

Probabilis)c Reasoning for Assembly-Based 3D Modeling Siddhartha Chaudhuri, Evangelos Kalogerakis, Leonidas Guibas, Vladlen Koltun Stanford University


slide-1
SLIDE 1

Probabilis)c ¡Reasoning ¡for ¡ ¡ Assembly-­‑Based ¡3D ¡Modeling ¡

Siddhartha ¡Chaudhuri, ¡Evangelos ¡Kalogerakis, ¡ ¡ Leonidas ¡Guibas, ¡Vladlen ¡Koltun ¡

¡

Stanford ¡University ¡

slide-2
SLIDE 2

Crea)ng ¡detailed ¡3D ¡content ¡is ¡hard ¡

slide-3
SLIDE 3
slide-4
SLIDE 4

Probabilis)c ¡model ¡for ¡presen)ng ¡relevant ¡components ¡

Current shape Probabilistic model Observed data Ranked components Inference

slide-5
SLIDE 5

The ¡model ¡is ¡learned ¡from ¡an ¡input ¡shape ¡repository ¡

Input repository Probabilistic model Learning

slide-6
SLIDE 6

Related ¡work: ¡assembly-­‑based ¡3D ¡modeling ¡

  • Modeling ¡by ¡example ¡[Funkhouser ¡et ¡al. ¡2004] ¡
slide-7
SLIDE 7

Related ¡work: ¡assembly-­‑based ¡3D ¡modeling ¡

  • Sketch-­‑based ¡retrieval ¡of ¡components ¡

¡ ¡ ¡ ¡[Shin ¡and ¡Igarashi ¡2007] ¡ ¡ ¡ ¡ ¡ ¡ ¡& ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡[Lee ¡and ¡Funkhouser ¡2008] ¡

¡

slide-8
SLIDE 8

Related ¡work: ¡assembly-­‑based ¡3D ¡modeling ¡

  • Model ¡Composi)on ¡from ¡Interchangeable ¡Components ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡[Kraevoy ¡et ¡al. ¡2007] ¡

¡

slide-9
SLIDE 9

Related ¡work: ¡Spore ¡[Maxis ¡SoXware ¡2008] ¡

slide-10
SLIDE 10

Related ¡work: ¡Data-­‑driven ¡sugges)ons ¡

Crea)vity ¡support ¡in ¡3D ¡modeling ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

¡

slide-11
SLIDE 11

Related ¡work: ¡Data-­‑driven ¡sugges)ons ¡

Crea)vity ¡support ¡in ¡3D ¡modeling ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

¡

slide-12
SLIDE 12

Related ¡work: ¡Data-­‑driven ¡sugges)ons ¡

Crea)vity ¡support ¡in ¡3D ¡modeling ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

¡

slide-13
SLIDE 13

Related ¡work: ¡Data-­‑driven ¡sugges)ons ¡

Crea)vity ¡support ¡in ¡3D ¡modeling ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

¡

slide-14
SLIDE 14

Related ¡work: ¡Data-­‑driven ¡sugges)ons ¡

Crea)vity ¡support ¡in ¡3D ¡modeling ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

¡

slide-15
SLIDE 15

Should ¡sugges)ons ¡be ¡agnos)c ¡to ¡ ¡ the ¡structure ¡of ¡shapes ¡being ¡modeled? ¡

slide-16
SLIDE 16

Our ¡probabilis)c ¡model ¡

  • ¡Represents ¡both ¡seman&c ¡and ¡geometric ¡rela)onships ¡
  • ¡Learned ¡automa&cally ¡from ¡a ¡shape ¡database ¡
  • ¡Interac&ve ¡sugges&ons ¡of ¡components ¡
  • ¡Increases ¡relevance ¡of ¡presented ¡components ¡

¡

slide-17
SLIDE 17

Outline ¡

  • 1. Probabilis&c ¡model ¡defini&on ¡
  • 2. Learning ¡
  • 3. Inference ¡
  • 4. Results ¡
slide-18
SLIDE 18

Our ¡probabilis)c ¡model: ¡ ¡a ¡Bayesian ¡Network ¡

Shape ¡a]ributes ¡ ¡ Dependencies ¡ between ¡a]ributes ¡

¡ ¡

Random variables Represent with DAG

( )

( ) | ( )

i i i

P P x parents x =∏ X

{ }

i

x X =

x1 ¡ x3 ¡ x2 ¡

1 2 1 3 1

( ) ( ) ( | ) ( | ) P P x P x x P x x = X

slide-19
SLIDE 19

Random ¡variables ¡El

Existence ¡of ¡component ¡from ¡category ¡l

Arm(s) ¡ exist ¡ Torso(s) ¡ exist ¡

slide-20
SLIDE 20

Random ¡variables ¡Nl

Number ¡of ¡components ¡from ¡category ¡l

# ¡of ¡Arms ¡ Torso(s) ¡ exist ¡ Arm(s) ¡ exist ¡

slide-21
SLIDE 21

Random ¡variables ¡Al,l’

Adjacency ¡between ¡components ¡from ¡categories ¡l ¡and ¡l’

Arm-­‑ Torso ¡ adjacency ¡ # ¡of ¡Arms ¡ Torso(s) ¡ exist ¡ Arm(s) ¡ exist ¡

slide-22
SLIDE 22

Random ¡variables ¡Rl,l’

Symmetry ¡rela)on ¡between ¡components ¡from ¡categories ¡ ¡l ¡and ¡l’

Arm-­‑ Torso ¡ adjacency ¡ Arm-­‑ Torso ¡ symmetry ¡ # ¡of ¡Arms ¡ Torso(s) ¡ exist ¡ Arm(s) ¡ exist ¡

slide-23
SLIDE 23

Random ¡variables ¡Ss,l

Existence ¡of ¡component ¡from ¡style ¡cluster ¡s ¡of ¡category ¡l ¡

# ¡of ¡Arms ¡ Arm-­‑ Torso ¡ adjacency ¡ Arm-­‑ Torso ¡ symmetry ¡ Arm ¡style ¡2 ¡ exists ¡ Torso ¡style ¡ 1 ¡ exists ¡ Torso ¡style ¡ 2 ¡ exists ¡ Arm ¡style ¡1 ¡ exists ¡ Torso(s) ¡ exist ¡ Arm(s) ¡ exist ¡

slide-24
SLIDE 24

Dependencies ¡between ¡random ¡variables ¡

Torso(s) ¡ exist ¡ # ¡of ¡Arms ¡ Arm-­‑ Torso ¡ adjacency ¡ Arm-­‑ Torso ¡ symmetry ¡ Arm ¡style ¡1 ¡ exists ¡ Arm ¡style ¡2 ¡ exists ¡ Torso ¡style ¡ 1 ¡ exists ¡ Torso ¡style ¡ 2 ¡ exists ¡ Arm(s) ¡ exist ¡

slide-25
SLIDE 25

Condi)onal ¡probability ¡tables ¡

Arm(s) ¡ exist ¡ # ¡of ¡Arms ¡ Arm-­‑ Torso ¡ adjacency ¡ Arm-­‑ Torso ¡ symmetry ¡

Nl

Rl 0

2 4 1 0.3 1.0 0.0 0.7

Arm ¡style ¡2 ¡ exists ¡ Torso ¡style ¡ 1 ¡ exists ¡ Torso ¡style ¡ 2 ¡ exists ¡ Torso(s) ¡ exist ¡ Arm ¡style ¡1 ¡ exists ¡

slide-26
SLIDE 26

Arm(s) ¡ exist ¡ # ¡of ¡Arms ¡ Arm-­‑ Torso ¡ adjacency ¡ Arm-­‑ Torso ¡ symmetry ¡ Arm ¡style ¡2 ¡ exists ¡ Torso ¡style ¡ 1 ¡ exists ¡ Torso ¡style ¡ 2 ¡ exists ¡ Torso(s) ¡ exist ¡

Dependencies ¡between ¡random ¡variables ¡

Arm ¡style ¡1 ¡ exists ¡

slide-27
SLIDE 27

Outline ¡

  • 1. Probabilis)c ¡model ¡defini)on ¡
  • 2. Learning ¡
  • 3. Inference ¡
  • 4. Results ¡
slide-28
SLIDE 28

Learning ¡the ¡CPTs ¡and ¡the ¡graph ¡structure ¡

[Kalogerakis et al. 2010] (modified)

slide-29
SLIDE 29

Learning ¡the ¡CPTs ¡and ¡the ¡graph ¡structure ¡

Arm cluster 1 Arm cluster 2 Torso cluster 1 Torso cluster 2 [Kalogerakis et al. 2010] (modified)

slide-30
SLIDE 30

Learning ¡the ¡CPTs ¡and ¡the ¡graph ¡structure ¡

Arm cluster 1 Torso cluster 1 Torso cluster 2 [Kalogerakis et al. 2010] (modified) Arm cluster 2

slide-31
SLIDE 31

Structure ¡and ¡parameter ¡learning ¡

Maximize ¡Bayesian ¡Informa)on ¡Criterion ¡ 1 log ( | , ) log 2 BIC P D G v n = − θ

slide-32
SLIDE 32

Structure ¡and ¡parameter ¡learning ¡

Maximize ¡Bayesian ¡Informa)on ¡Criterion ¡

Likelihood term

D: training data

G: graph structure

θ: CPT entries

1 log ( | , ) log 2 BIC P D G v n = − θ

slide-33
SLIDE 33

1 log ( | , ) log 2 BIC P D G v n = − θ

Penalize model complexity

v: # of independent CPT entries

n: # of training shapes

Structure ¡and ¡parameter ¡learning ¡

Maximize ¡Bayesian ¡Informa)on ¡Criterion ¡

slide-34
SLIDE 34

Outline ¡

  • 1. Probabilis)c ¡model ¡defini)on ¡
  • 2. Learning ¡
  • 3. Inference ¡
  • 4. Results ¡
slide-35
SLIDE 35

Inference ¡

slide-36
SLIDE 36

Inference ¡

Evidence

Xe= e

slide-37
SLIDE 37

P( | Xe = e) ?

Inference ¡

Evidence

Xe= e

slide-38
SLIDE 38

Inference ¡

P( Xq = q | Xe = e )

Particle-based inference Evidence

Xe= e

slide-39
SLIDE 39

Outline ¡

  • 1. Probabilis)c ¡model ¡defini)on ¡
  • 2. Learning ¡
  • 3. Inference ¡
  • 4. Results ¡
slide-40
SLIDE 40

Examples ¡of ¡shapes ¡created ¡by ¡users ¡

slide-41
SLIDE 41

Evalua)on ¡

  • 42 ¡par)cipants ¡from ¡the ¡Stanford ¡CS ¡student ¡body ¡
  • Each ¡par)cipant ¡was ¡asked ¡to ¡create ¡2 ¡toys ¡and ¡2 ¡creatures ¡
  • Three ¡condi)ons: ¡ ¡

– Dynamic ¡ordering ¡with ¡probabilis)c ¡model ¡ – Sta)c ¡ordering ¡of ¡categories ¡and ¡components ¡ – Dynamic ¡ordering ¡with ¡[Chaudhuri ¡and ¡Koltun ¡2010] ¡

slide-42
SLIDE 42

Relevance ¡of ¡suggested ¡components ¡– ¡“Creatures” ¡task ¡

68% ¡ 25% ¡ 37% ¡

slide-43
SLIDE 43

Relevance ¡of ¡suggested ¡components ¡– ¡“Toy” ¡task ¡

slide-44
SLIDE 44

Examples ¡of ¡shapes ¡created ¡by ¡users ¡

slide-45
SLIDE 45

Summary ¡

  • Probabilis)c ¡reasoning ¡for ¡presen)ng ¡components ¡in ¡

assembly-­‑based ¡3D ¡modeling ¡

  • Probabilis)c ¡graphical ¡model ¡for ¡encoding ¡condi)onal ¡

dependencies ¡between ¡shape ¡components ¡

  • Increases ¡the ¡relevance ¡of ¡suggested ¡components ¡
slide-46
SLIDE 46

Future ¡Work ¡

  • Be]er ¡modeling ¡of ¡stylis&c, ¡spa&al ¡and ¡func&onal ¡

rela)onships ¡

  • Benefits ¡from ¡advances ¡in: ¡

– ¡consistent ¡shape ¡segmenta&on ¡ ¡ – ¡gluing ¡and ¡cuMng ¡components ¡ – ¡edi&ng ¡geometry ¡of ¡individual ¡components ¡

slide-47
SLIDE 47

Thank ¡you! ¡

Acknowledgements: ¡ ¡Aaron ¡Hertzmann, ¡Sergey ¡Levine, ¡Suchi ¡Saria, ¡ ¡ Jonathan ¡Laserson, ¡Philipp ¡Krähenbühl, ¡ ¡Daphne ¡Koller, ¡ ¡ Chris ¡Platz, ¡Hadidjah ¡Chamberlin, ¡Niels ¡Joubert ¡

¡

Our ¡project ¡web ¡page: ¡ h]p://graphics.stanford.edu/~sidch/projects/assembly/ ¡ ¡ ¡

slide-48
SLIDE 48
slide-49
SLIDE 49

BACKUP/OTHER ¡SLIDES ¡

slide-50
SLIDE 50

Gaussian ¡mixture ¡model ¡for ¡style ¡clustering ¡

Component features: Shape diameter Curvature Singular values from PCA Average geodesic distance Geodesic distance from

  • ther components
slide-51
SLIDE 51

Number ¡of ¡components ¡used ¡per ¡shape ¡

slide-52
SLIDE 52

Number ¡of ¡source ¡models ¡ ¡ contribu)ng ¡to ¡each ¡shape ¡

slide-53
SLIDE 53

Component ¡Assembly ¡ Head ¡ Torso ¡

slide-54
SLIDE 54

Component Assembly ¡

Slots ¡ Edge loops ¡ Boundary vertices ¡ Zones ¡

slide-55
SLIDE 55

Component Assembly ¡

Cap ¡

[Schmidt/Singh '10] ¡

slide-56
SLIDE 56

Component Assembly ¡

Slot frames ¡

slide-57
SLIDE 57

Component Assembly ¡

Register Discrete Exponential Maps ¡ [Schmidt et al. '06, '10] ¡ and deform proximal ¡ regions for smooth join ¡ (note: gluing is asymmetric, not slot-to-slot) ¡

slide-58
SLIDE 58

Component Assembly ¡

slide-59
SLIDE 59

Constrained Translation

Incremental tangential motion following mouse drag ¡ “Steps over” small surface detail ¡

slide-60
SLIDE 60

Constrained Rotation

1-DOF rotation in plane of attachment (selected above) ¡ 2-DOF rotation for tilt ¡

slide-61
SLIDE 61

Constrained Scaling

Maintain point(s) of attachment ¡

slide-62
SLIDE 62

Multiple Constraints

Slide each attached slot individually ¡ Overall motion computed from slot displacements ¡ Motion prevented if not possible without breaking attachments ¡

slide-63
SLIDE 63

Multiple Constraints

Rotation axis computed from all current attachments ¡ Rotation prevented if not possible without breaking attachments ¡

slide-64
SLIDE 64

Multiple Constraints

Scaling pivot computed from all current attachments ¡ Scaling prevented if not possible without breaking attachments ¡

Mul)-­‑select ¡

slide-65
SLIDE 65

Symmetry

Symmetry plane of torso automatically selected for wings ¡

Two wings created, since maxl' P(Rl,l' | e) > 0 ¡

Query Bayesian Network for arg maxl' P(Rl,l' | e) ¡ l is label of selected part, l' is label of another part in the assembly ¡

slide-66
SLIDE 66

Initial Adjacency

Query Bayesian Network for arg maxl' P(Al,l' | e) ¡ l is label of selected part, l' is label of another part in the assembly ¡ Legs snap to torso... ¡ … but horns snap to head ¡

slide-67
SLIDE 67

Modeling ¡Interface ¡

Modeling Area