54
Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape Processing

Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Embed Size (px)

Citation preview

Page 1: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Hao (Richard) Zhang Simon Fraser University (SFU), Canada

Structural Hierarchies

Course: Structure-Aware Shape Processing

Page 2: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Efficiency and flexibility: hierarchy offers *both*

high-level abstraction and granularity, adaptable

as desired

•Natural choice: human perception of structures

*is* hierarchical [Palmer 1977, Hoffman & Richards 1984]

•Hierarchies are the right model to capture

diversities in a set: coarse levels common; fine

details vary

Why hierarchy?

Page 3: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Image pyramids

Familiar examples

•Hierarchical

segmentation

Page 4: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•What is the right structural hierarchy?

•Challenges:

•Many possible hierarchies for a given shape: larger search

space than (flat) shape segmentation

•Many possible criteria for “best” structural hierarchy

•Even human observers can disagree on what is ground truth

Key question

Page 5: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•… not just any structural hierarchy

•… but one that best explains one or more

structures

•Exploit power of symmetry for individual analysis [Martinet 2007, Simari 2006, Wang 2011, Zhang 2013]

•Exploit power of a set for co-hierarchical analysis

[van Kaick 2013]

We are interested in …

Page 6: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Two basic solution paradigms:

•Top-down

•Recursively split or divide an input shape

•Bottom-up

•Start with a fine segmentation into primitive parts

•Then recursively group parts, e.g., via graph

contraction

Key ingredient: how to prioritize the operations

Hierarchy construction

Page 7: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Symmetric parts tend to perform the same

function

Why symmetry?

Page 8: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Symmetry helps explain structures

•Symmetry leads to redundancy

•Discovering and removing redundancy leads to

compactness

•A compact representation tends to be the right one

•Occam’s Razor: simplest, i.e., most compact, explanation

tends to be the best explanation

•Works on minimal grammar and minimum description

length

Why symmetry?

Page 9: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Perceptual grouping via Gestalt law of

symmetry

Why symmetry?

Page 10: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Symmetry embeds semantic knowledge:

•Role in functional grouping

•Role in offering simplest (best) explanation

•Role in perceptual grouping

•However, symmetry is

•a purely geometric notion: explicitly detectable w/o

training

•but requires more global analysis

Semantics from geometry analysis

Page 11: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Detect major reflection symmetry

•Divide shape into symmetric part A

(full dinosaur) and the rest B

•Recursively process B and half of A

•Top-down: folding mesh

hierarchy

Folding meshes [Simari et al. 2006]

Key idea: “fold” reflection symmetries for compact shape representation

Page 12: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Key idea: symmetry guides grouping and assembly of shape parts for a meaningful hierarchical meaningful part organization.

Symmetry hierarchy [Wang et al. 2011]

Page 13: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Pre-segmentation

Hierarchy construction

Symmetry detection

Page 14: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Rotational symmetry

Reflection symmetryConnectivity

Initial graph

Page 15: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Grouping by symmetry

Assembly by

proximity

Two operations:

Bottom-up recursive graph contraction

Page 16: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Two operations:Grouping by symmetry

Assembly by

proximity

Bottom-up recursive graph contraction

Page 17: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

March 30, 2012, CSC Talk, SFU

17

•Guiding principles

• Perceptual grouping: Gestalt law of symmetry

• Compactness of representation: Occam’s Razor

• Results in a set of “precedence rules”

How to order contractions?

Page 18: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Grouping-assembly mixing rules

• E.g., symmetry grouping takes precedence over

assembly

A1A1 A2A2

BB

Example of precedence rules

Page 19: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Symmetry grouping rules

• E.g., rot-symmetry takes precedence over ref-

symmetry

Example of precedence rules

Page 20: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Assembly rules

• E.g., assemble parts that preserve more symmetries first

A1

A2

B

Example of precedence rules

Page 21: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Tree traversal following reversed order of graph

contractions

Application: hierarchical segmentation

Page 22: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Application: structural editing

Page 23: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Construction is not the result of an optimization, but based on hand-crafted precedence rules

•Inconsistent hierarchies for objects in the same class

Limitations

Page 24: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•To explain irregular 2D facades

•Use hierarchical decomposition as generative model

•Decomposition stops when reaching a regular grid (maximal symmetry) as it requires no explanation

Symmetry maximization [Zhang et al. 2013]

Goal: a generative model that best explains a structure

Page 25: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Hierarchical 2-way decomposition

Structural hierarchy

Page 26: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• 2-way splits along two lateral directions

Input

+

Two substructuresSplit

Two operations

Page 27: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

InputLayering

+

Two substructures (layers)

Structure completion

• Layering: “split” along depth direction

Two operations

Page 28: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Input Split only8 ops.

Split + Layering4 ops.

• Layering leads to more compact (simpler) explanation

Layering+split vs. split only

Page 29: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Key ideas:

•Best explanation = simplest explanation = fewest decompositions

•Decomposition should then maximize the symmetry (SYMAX) of the substructures obtained

SYMAX is consistent with Gestalt law of symmetry

min. # ops.

Best explanation via SYMAX

Page 30: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Symmetry maximization at each decomposition

How symmetric the two substructures are

How good is the decomposition

SYMAX

Page 31: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

•Sum of symmetry measures at all internal nodes

Objective function

Page 32: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Difficult combinatorial search: genetic algorithm

Technical details

Page 33: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Difficult combinatorial search: genetic algorithm

• Symmetry measure

• Continuous measure for a discrete 2D pattern

• Behaves well at both ends of the symmetry spectrum

Perfectly symmetric asymmetric

Technical details

Page 34: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Difficult combinatorial search: genetic algorithm

• Symmetry measure

• Continuous measure for a discrete 2D pattern

• Behaves well at both ends of the symmetry spectrum

• Integral symmetry: integrating 1D symmetry profiles

X

Y

Technical details

Page 35: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

SYMAX

• involves explicit optimization

• symmetry hierarchy with an objective function

Both still confined to analyzing individual models

SYMAX vs. symmetry hierarchy

Page 36: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Extends symmetry hierarchy to co-analysis of a set

• A unified explanation of the shape structures

Co-hierarchical analysis

Goal: obtain a structural hierarchy that best explains a set of objects belonging to the same class

Page 37: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Similarity and diversity

• Coarse level: similarity across set

• Finer level: individual shape variations

Page 38: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Each object can have many possible hierarchies.

Need to select one hierarchy per shape.

Challenges

Page 39: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

There can be much geometric variability in the set.

Need to bypass geometry and analyze shape structures.

Challenges

Page 40: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

There can also be much structural variability; a single explanation cannot be sufficient

We account for that by clustering the hierarchies.

Challenges

Page 41: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Using a minimal set of four shapes

Algorithm illustrated

Page 42: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Compute symmetry hierarchies [Wang 2011] per shape

Per-shape symmetry hierarchies

Page 43: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Sample from population of per-shape hierarchies

Sampling

Page 44: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Multi-instance clustering: cluster the shapes while each shape has multiple instances (the

samples)

Key problem: cluster …

Page 45: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Select one representative hierarchy per shape

… and then select

Page 46: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Traditional clustering: maximize within-cluster similarity and between-cluster dissimilarity

• In our problem: all shapes in the set are related

• So wish to discover maximal similarity among all

• But allow clusters to characterize structural variability

• Trick in representative selection: selections should maximize both within-cluster and between-cluster similarities

• Then resample hierarchies (and then cluster-select) close to the selections so the clusters as a whole also get closer

Objective of cluster-and-select

Page 47: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Selections maximize within-cluster similarity only

Representative selection

Page 48: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Selections maximize both within- and between-cluster similarity

Representative selection

Page 49: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

New samples are closer to the

representatives

Resample per-shape hierarchies

Page 50: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

New cluster-select result. Repeat the process until little movement.

Iterate cluster-select-resample

Page 51: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

A co-hierarchy implies correspondence between structures ---- functional correspondence.

Structure correspondence

Page 52: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Functional correspondence

A co-hierarchy implies correspondence between structures ---- functional correspondence.

Page 53: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

• Still most works deal with flat structural organizations

• There is much to be done on hierarchical analysis:

• All covered techniques are unsupervised

• Supervised: symmetry measure is hard; ground truths for and comparison between hierarchical models are not easy

• Deep learning?

• Extension from 3D objects to more complex data, e.g., indoor scenes, and mixed object categories

• Toying with functionality analysis, but nothing explicit yet

Short “now and beyond”

Page 54: Course: Structure-Aware Shape Processing Hao (Richard) Zhang Simon Fraser University (SFU), Canada Structural Hierarchies Course: Structure-Aware Shape

Course: Structure-Aware Shape Processing

Go to: http://tinyurl.com/m2uqqfb

We welcome your feedback!