28
Lior Shapira Tel Aviv University Shy Shalom Bar Ilan University Ariel Shamir The Interdisciplinary Center Daniel Cohen Or Tel Aviv University 1 Contextual Part Analogies in 3D Objects H.Zhang Presented by Dana Silverbush

Lior Shapira Tel Aviv University Shy Shalom Bar Ilan University Ariel Shamir The Interdisciplinary Center Daniel Cohen Or Tel Aviv University 1 H.Zhang

Embed Size (px)

Citation preview

1

Lior Shapira Tel Aviv University

Shy Shalom Bar Ilan University

Ariel Shamir The Interdisciplinary Center

Daniel Cohen Or Tel Aviv University

Contextual Part Analogies in 3D

Objects

H.Zhang

Presented by Dana Silverbush

2

Overview

Motivation Why part analogies

The whole shape method (in a glimpse)

The Contextual Part Analogies Process Partition Measure Determine distance

Results Local vs. contextual Robustness

3

Motivation

Why find part analogies Analogies in a set of objects Partial match queries Instrument to carry information from one to

many (semantic information, tags, deformation, operations).

Dial dial dialdial

dial dial dial dial

4

Whole Shape Analogy

Given q find similar s in set S Common technique:

define f() and calculate for q and S

f(q)

Sf(s)

5

Whole Shape Analogy

Given q find similar s in set S Common technique:

define f() and calculate for q and S Similarity: Two shape Sa, Sb, are similar if

f(Sa) is close to f(Sb) in some sense, i.e. Dist(Sa,Sb) is small.

- = ?

6

Part Analogy Process Instead of using Dist(f(Sa),f(Sb) for the

whole shapes, use it on sub parts!

Three main issues: What sub-parts (segmentation)? What descriptor f()? What distance Dist(f(Sa), f(Sb))?

The process:

Partition

• Test• Cluster• Smooth

Measure

• Define f()

Distance

• Dist()• Contextual distance

7

Measure Through Volume

The Shape Diameter Function (SDF) Connects volume to surface Ray Shooting & Averaging

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

8

Volume Normalization

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

for different scales

Move to log-space: enhance delicate parts

Notice the horn and the

nose separate

better

9

Segmentation

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Fit Gaussian Mixture Model (GMM) of k Gaussians to the histogram of SDF.

Each face has a vector of length k signifying its probability to be in each cluster

Normalized SDF

faces

10

Optimize Segmentation

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Employ an alpha expansion graph-cut algorithm to solve the k-way graph-cut

Get start segmentation

find min-cut to optimize energy

functionSwap alpha tags

GMM Smoothing

Incorporates edge length + angleProbability (face f belongs to cluster Xf)

11

Compare relative size

of part

Local SDF Signature

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

• Normalized histogram of SDF values within the part

• The size of the part as a percentage of the whole model

Compare volumetric measure

12

Compare relative size

of part

Local SDF Signature

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

• Normalized histogram of SDF values within the part

• The size of the part as a percentage of the whole model

13

Not Good Enough…

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

• The part is not a separate shape• We want to think of it in its context.• A finger is closer to another finger than it is to a

cylinder!

14

Create Hierarchy

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

15

Create Hierarchy

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

16

Parts Contextual Distance

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Context of a part -> the path between the node representing the part, and the root of the object tree

17

Parts Contextual Distance

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Context of a part -> the path between the node representing the part, and the root of the object tree

18

Parts Contextual Distance

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Context of a part -> the path between the node representing the part, and the root of the object tree

19

Parts Contextual Distance

Partition • Test• Cluster• Smooth

Measure • Define f()Distance • Dist()

• Contextual distance

Context of a part -> the path between the node representing the part, and the root of the object tree

20

RESULTS

21

Advantage to context-awareness

Comparing local signature to a context-aware distance measure

22

Advantage to context-awareness

Preforming part queries in several categories (human leg, armadillo leg and airplane wing)

23

Robustness to K-Partitioning

Five distinct partitioning were inserted, making part hierarchy different for each model

Query the dinopet hand returns matching hand from all dinopet variants

24

Robustness to K-Partitioning

Five distinct partitioning were inserted, making part hierarchy different for each model

Query the dinopet hand returns matching hand from all dinopet variants

25

Analogies Between Parts

26

Automatic Tagging

All results marked with a yellow diamond have already been tagged ‘head’.

27

Conclusion

Analogies based on parts Utilizes Shape Diameter Function (SDF) Segmentation + Distance New Contextual Distance based on

segmentation hierarchy

28

Thank You!