supplementary material for: learning to predict part...

9
Supplementary Material for: Learning to Predict Part Mobility from a Single Static Snapshot RUIZHEN HU, Shenzhen University WENCHAO LI, Shenzhen University OLIVER VAN KAICK, Carleton University ARIEL SHAMIR, The Interdisciplinary Center HAO ZHANG, Simon Fraser University HUI HUANG, Shenzhen University ACM Reference format: Ruizhen Hu, Wenchao Li, Oliver van Kaick, Ariel Shamir, Hao Zhang, and Hui Huang. 2017. Supplementary Material for: Learning to Predict Part Mobility from a Single Static Snapshot. ACM Trans. Graph. 36, 6, Article 227 (Novem- ber 2017), 2 pages. https://doi.org/10.1145/3130800.3130811 1 OPTIMIZATION In this section, we give details on the optimization problem that we solve to learn the snapshot distance while satisfying the two types of constraints. Our goal is to learn a set of combination weights W m for each motion class M m composed of multiple units. We recall that the snapshot distance is defined as: D S W (s i , s j ) = N X f =1 w f D S f (s i , s j ) , (1) where D S f (s i , s j ) is the distance between snapshots s i and s j for the f -th descriptor, normalized to the range [0, 1], w f W lies in the range [0, 1] and is the weight for descriptor f , f w f = 1, and N is the number of descriptors. The snapshot-to-unit distance is defined as: D SU (s i p , u j ) = D S W c ( j ) (s i p , s j 1 ) + D S W c ( j ) (s i p , s j n ) /2, (2) where s j 1 and s j n are the start and end snapshots of unit u j , respec- tively, and s i p is some snapshot from another, possibly unknown, unit u i . We denote the mapping from unit index to motion class index as c ( j ) , and W c ( j ) = [ w c ( j ) f ] f =1,..., N R N ×1 is the set of weights learned for the motion class that u j belongs to. Corresponding author: Hui Huang ([email protected]). 2017. 0730-0301/2017/11-ART227 $15.00 https://doi.org/10.1145/3130800.3130811 Combining Eq. 1 with Eq. 2, we obtain: D SU (s i p , u j ) = N X f =1 w c ( j ) f D S f (s i p , s j 1 ) + D S f (s i p , s j n ) /2 = N X f =1 w c ( j ) f D SU f (s i p , u j ) . (3) In the context of Eq. 3, all the snapshots used in the two types of con- straints D SU (s j , u i ) < D SU (s j , u k ) and D SU (s j , u i ) < D SU (s j , u i ) can be referred to more precisely as s j p and s k q , where p, q ∈{1,..., n}. Then, the two types of constraints become N f =1 (w c (k ) f D SU f (s j p , u k ) w c (i ) f D SU f (s j p , u i )) > 0 and N f =1 w c (i ) f (D SU f (s k q , u i ) D SU f (s j p , u i )) > 0, respectively. Next, to formulate the optimization, we define the set of descriptor distances of the p-th snapshot of unit u i to u j as : D[ i , p, j ] = [D SU f (s i p , u j ) ] f =1,..., N R N ×1 . (4) In matrix form, the first type of constraint then translates to D[j , p, k ] T W c (k ) D[j , p, i ] T W c (i ) > 0. We introduce a slack variable to transform it into a soft constraint, obtaining D[j , p, k ] T W c (k ) D[j , p, i ] T W c (i ) + ξ j, p, i, k > 0 with ξ j, p, i, k > 0. We can also intro- duce a slack variable for the second type of constraint, obtaining (D[ k , q, i ] D[j , p, i ]) T W c (i ) + ϵ j, p, i, k, q > 0 with ϵ j, p, i, k, q > 0. Note that the number of slack variables we introduced indicates the total number of constraints we have. After the constraint sub- sampling, for any snapshot s j p sampled from unit u j , we only take the center of the cluster u j belongs to as the other unit u i in the constraint, and any of the cluster centers inside other motion classes as the units u k in the constraints. The snapshot s k q is any snapshot sampled from unit u k . Thus, the total number of the first type of constraints for some specific motion class M ˆ m is n × n ˆ m × m, ˆ m n C m , where n is the number of snapshots sampled for each unit, n ˆ m is the number of units inside M ˆ m , and n C m is the number of cluster centers in any other motion class M m . The total number of the second type of constraints ACM Transactions on Graphics, Vol. 36, No. 6, Article 227. Publication date: November 2017.

Upload: lyxuyen

Post on 21-Aug-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Supplementary Material for:Learning to Predict Part Mobility from a Single Static Snapshot

RUIZHEN HU, Shenzhen University

WENCHAO LI, Shenzhen University

OLIVER VAN KAICK, Carleton University

ARIEL SHAMIR, The Interdisciplinary Center

HAO ZHANG, Simon Fraser University

HUI HUANG, Shenzhen University

ACM Reference format:

RuizhenHu,Wenchao Li, Oliver van Kaick, Ariel Shamir, Hao Zhang, andHuiHuang. 2017. Supplementary Material for: Learning to Predict Part Mobilityfrom a Single Static Snapshot. ACM Trans. Graph. 36, 6, Article 227 (Novem-ber 2017), 2 pages.

https://doi.org/10.1145/3130800.3130811

1 OPTIMIZATION

In this section, we give details on the optimization problem that wesolve to learn the snapshot distance while satisfying the two typesof constraints. Our goal is to learn a set of combination weightsWm

for each motion classMm composed of multiple units.

We recall that the snapshot distance is defined as:

DSW (si , sj ) =

N∑f =1

wf DSf (si , sj ), (1)

where DSf (si , sj ) is the distance between snapshots si and sj for the

f -th descriptor, normalized to the range [0, 1],wf ∈W lies in therange [0, 1] and is the weight for descriptor f ,

∑f wf = 1, and N is

the number of descriptors.

The snapshot-to-unit distance is defined as:

DSU (sip ,uj ) =(DSW c (j ) (s

ip , s

j1) + D

SW c (j ) (s

ip , s

jn ))/2, (2)

where s j1 and sjn are the start and end snapshots of unit uj , respec-

tively, and sip is some snapshot from another, possibly unknown,unit ui . We denote the mapping from unit index to motion classindex as c (j ), andW c (j ) = [wc (j )

f ]f =1, ...,N ∈ RN×1 is the set ofweights learned for the motion class that uj belongs to.

∗Corresponding author: Hui Huang ([email protected]).2017. 0730-0301/2017/11-ART227 $15.00https://doi.org/10.1145/3130800.3130811

Combining Eq. 1 with Eq. 2, we obtain:

DSU (sip ,uj ) =

N∑f =1

wc (j )f

(DSf (s

ip , s

j1) + D

Sf (s

ip , s

jn ))/2

=

N∑f =1

wc (j )f DSU

f (sip ,uj ).

(3)

In the context of Eq. 3, all the snapshots used in the two types of con-straints DSU (sj ,ui ) < DSU (sj ,uk ) and DSU (sj ,ui ) < DSU (sj ,ui )

can be referred tomore precisely as s jp and skq , wherep,q ∈ {1, . . . ,n}.

Then, the two types of constraints become∑Nf =1 (w

c (k )f DSU

f (sjp ,uk )−

wc (i )f DSU

f (sjp ,ui )) > 0 and

∑Nf =1w

c (i )f (DSU

f (skq ,ui )−DSUf (s

jp ,ui )) >

0, respectively.

Next, to formulate the optimization, we define the set of descriptordistances of the p-th snapshot of unit ui to uj as :

D[i,p, j] = [DSUf (sip ,uj )]f =1, ...,N ∈ R

N×1. (4)

Inmatrix form, the first type of constraint then translates toD[j,p,k]T

W c (k ) − D[j,p, i]TW c (i ) > 0. We introduce a slack variable totransform it into a soft constraint, obtaining D[j,p,k]TW c (k ) −

D[j,p, i]TW c (i ) + ξ j,p,i,k > 0 with ξ j,p,i,k > 0. We can also intro-duce a slack variable for the second type of constraint, obtaining(D[k,q, i] − D[j,p, i])TW c (i ) + ϵj,p,i,k,q > 0 with ϵj,p,i,k,q > 0.

Note that the number of slack variables we introduced indicatesthe total number of constraints we have. After the constraint sub-sampling, for any snapshot s jp sampled from unit uj , we only takethe center of the cluster uj belongs to as the other unit ui in theconstraint, and any of the cluster centers inside other motion classesas the units uk in the constraints. The snapshot skq is any snapshotsampled from unit uk .

Thus, the total number of the first type of constraints for somespecific motion class Mm̂ is n × nm̂ ×

∑m,m̂ nCm , where n is the

number of snapshots sampled for each unit, nm̂ is the number ofunits insideMm̂ , andnCm is the number of cluster centers in any othermotion classMm . The total number of the second type of constraints

ACM Transactions on Graphics, Vol. 36, No. 6, Article 227. Publication date: November 2017.

227:2 • R. Hu, W. Li, O. van Kaick, A. Shamir, H. Zhang and H. Huang

is n2 × nm̂ ×∑m,m̂ nCm , which is n times the number of the first

type of constraints, because this type of constraint makes use of allsnapshots sampled from unit uk . So the total number of constraintsfor some specific motion classMm̂ is (n + 1) × n × nm̂ ×

∑m,m̂ nCm .

While without performing the constraint subsampling, the totalnumber would be (n + 1) × n × n2m̂ ×

∑m,m̂ nm .

The final optimization is:

min12WTW + α

∑ξ j,p,i,k + β

∑ϵj,p,i,k,q , (5)

subject to

W ≥ 0, ∥Wm ∥1 = 1,∀j = 1, . . . ,Nm ,D[j,p,k]TW c (k ) − D[j,p, i]TW c (i ) + ξ j,p,i,k > 0,(D[k,q, i] − D[j,p, i])TW c (i ) + ϵj,p,i,k,q > 0,ξ j,p,i,k ≥ 0,ϵj,p,i,k,q ≥ 0,

(6)

whereW = [Wm], withm ∈ {1, . . . ,Nm },Wm is the set of weightslearned for the motion class Mm , and Nm is number of motionclasses. α and β are constraint weights. In our experiments, we setα = n and β = 1 to balance the effect of the two types of constraints,since the number of the second type of constraints is quadratic onthe first type.

2 SNAPSHOT DESCRIPTORS

To represent the IBS and IRs of parts in a snapshot of a mobility unit,we compute a set of geometric descriptors as proposed by Zhaoet al. [2014]. We compute: (i) The point feature histogram (PFH)descriptor, which is encoded as the mean and variance of the relativerotation between each pair of normals in the IBS. The PFH capturesthe general geometry of the IBS; (ii) A histogram that collects theangle between the IBS normals and the +z vector (Dir). This his-togram captures the general direction of the boundary between theparts, since the input shapes are upright-oriented along the +z axis;(iii) A histogram that captures the distribution of distances betweenthe IBS and the parts (Dist). These descriptors are also computed forthe IRs by considering the surface of each IR rather than the IBS, asproposed in the work of Hu et al. [2015]. In addition, we compute ahistogram of height values along the +z axis for each IR.

To adapt RAID to our setting, we extend it from 2D to 3D. Wereplace pixels by voxels and circles by spheres in the descriptorconstruction. For the space partitioning within each sphere, weuse the three canonical planes to subdivide 3D space, obtaining 8spatial partitions. Using an inner and an outer sphere, we obtain16 partitions in total. Given that we have a larger dimensionalitythan in the original work, we sample 40, 000 points for histogramcomputation instead of 10, 000, and compare descriptors with theearth-mover’s distance rather than the L1 metric.

3 PREDICTION ON DIFFERENT STATES OF MOTION

Since a unit is represented only by its start and end snapshots, butthe snapshot-to-unit distance can be used to map any snapshot to a

motion, we investigate whether the accuracy of motion predictionhas a similar performance for snapshots at different states of motion.

We verify in the cross-validation study that the average accuracyfor prediction of all snapshots is 0.951, when using the two types ofconstraints. The average accuracy only for intermediate snapshotsis 0.956, while for only start and end snapshots it is 0.936. Thus,there is not a significant difference in the prediction for snapshotsat different states of motion, although there is a slight increase forintermediate snapshots. This is due to the fact that these snapshotsare less ambiguous than start or end snapshots.

4 MOTION SAMPLING

In Algorithm 1, we show the pseudo-code of the motion samplingmethod used during the motion transfer. Note that the two “sides”of an axis are denoted as left and right in the pseudo-code for con-venience only. They do not necessarily correspond to left and rightdirections in a frame of reference.

Algorithm 1 SampleMotion(q,m, l , checkValidity) → SInput: query snapshot q, candidate motion parametersm, step size l , indi-

cator to enable validity checkingOutput: set of additional snapshot samples S1: S ← ∅,2: left← valid, right← valid3: leftMostSample← q, rightMostSample← q4: while left = valid or right = valid do5: if left = valid then6: sample← SampleSnapshot(leftMostSnapshot,m, −l )7: if checkValidity = false or IsValid(sample) then8: S ← S ∪ sample9: leftMostSnapshot← sample10: else11: left← invalid12: end if13: end if14: if right = valid then15: sample← SampleSnapshot(rightMostSnapshot,m, l )16: /* Continue similarly as above for the right-most sample */17: ...18: end if19: end while

5 DATASET

In the next pages, we show the full dataset of mobility units groupedby mobility classes, where the moving part is colored in orange andthe reference part is blue. In the box to the left, we show each unit inthe context of the entire shape. To the right, we show the start andend snapshots of the unit, which we use to represent the motion.

REFERENCES

Ruizhen Hu, Chenyang Zhu, Oliver van Kaick, Ligang Liu, Ariel Shamir, and Hao Zhang.2015. Interaction Context (ICON): Towards a Geometric Functionality Descriptor.ACM Trans. on Graphics 34, 4 (2015), 83:1–12.

Xi Zhao, He Wang, and Taku Komura. 2014. Indexing 3D Scenes Using the InteractionBisector Surface. ACM Trans. on Graphics 33, 3 (2014), 22:1–14.

ACM Transactions on Graphics, Vol. 36, No. 6, Article 227. Publication date: November 2017.