460 likes | 602 Views
Prep For SMI. Diffusion-geometric maximally stable component detection in deformable shapes. Diffusion- geometric maximally stable component detection in deformable shapes. Roee Litman , Alexander Bronstein , Michael Bronstein. Problem formulation. Semi-local feature detector
E N D
Diffusion-geometricmaximally stable component detection in deformable shapes Diffusion-geometricmaximally stable component detection in deformable shapes Roee Litman, Alexander Bronstein, Michael Bronstein
Problem formulation • Semi-local feature detector • High repeatability • Invariance to isometric deformation • Robustness to noise, sampling, etc. • Add discriminative descriptor
Agenda • Algorithm overview • Detection results • Descriptors & Retrieval • Expansion to volume
Algorithm overview • Represent as weighted graph • Component tree • Stable component detection
Algorithm overview • Represent as weighted graph
Weighting the graph • Use mean curvature as vertex weight • [Dinge et al. 2010] • Use photometric field • Use geodesic-distance as edge-weight • Invariant to deformation • Sensitive to topological changes • Use diffusion geometry
Diffusion Geometry • Analysis of diffusion & random walk processes • Governed by the heat equation • Solution is heat distributionat point at time
Heat-Kernel • Given • Initial condition • Boundary condition, if these’s a boundary • Solve using: • i.e. - find the “heat-kernel”
Probabilistic Interpretation The probability density for a transition by random walk of length , from to
Spectral Interpretation • How to calculate ? • Heat kernel can be calculated directly from eigen-decomposition of the Laplacain • By spectral decomposition theorem:
An eigenfunction of the Laplace-Beltrami operator computed on different deformations of the shape, showing the invariance of the Laplace-Beltrami operator to isometries
Computational aspects • Shapes are discretized as triangular meshes • Can be expressed as undirected graph • Heat kernel & eigenfunctions are vectors • Discrete Laplace-Beltrami operator • Several weight schemes for • is usually discrete area elements
Computational aspects • In matrix notation • Solve eigendecomposition problem
Scale Space • The time parameter of the heat kernel spans different scales of transition length • is not invariant to shape’s scale • Commute-time kernel - scale invariant • Probability of a transition by random walk of any length
Auto-diffusivity • Special case - • The chance of returning to after time • Related to Gaussian curvature by • Now we can attach scalar value to shapes! • Similarly, for commute-time
Vertex-Weight example Color-mapped Level-set animation
Weighting Functions • Vertex-Weight • Edge-Weight
Diffusion Geometry Recap • Solves heat propagation in a metric space • Invariant to isometric deformation • Robust to topological noise • Can be used to attachvalues to graph’s vertices or edges
Algorithm overview • Represent as weighted graph • Component tree • Stable component detection
The Component Tree • Tree construction is a pre-process of stable region detection • Contains level-set hierarchy,i.e. nesting relations. • Constructed based on a weighted graph (vertex- or edge-weight) • Tree’s nodes are level-sets(of the graph’s cross-sections)
Terminology • Vertex-weighted graph - • Edge-weighted graph - • A cross-section is a sub-graph of a weighted graph, with all weights • Level-set is a (connected) component of a cross-section • Altitude of a level-set is the maximal weight it contains (can be smaller than )
“Graphic” Example • A graph • Edge-weighted • 7 Cross-Section • 5 Cross-section • Two 5 level-sets(with altitude 4) 4 7 8 9 8 1 4 1
Tree Construction 4 4 7 7 8 8 9 9 8 8 1 1 4 4 1 1
Tree Construction Iterate over vertices by order of weight • Create a new component from vertex • If vertex is adjacent to existing component(s) • add exiting component’s vertices to new one • Store component’s area & weight • Trivial adaptation to edge-weight by agglomerative clustering
Algorithm overview • Represent as weighted graph • Component tree • Stable component detection
Detection Process • For every leaf component in the tree: • “Climb” the tree to its root, creating the sequence: • Calculate component stability • Local maxima of the sequenceare “Maximally stable components”
Agenda • Algorithm overview • Detection results • Descriptors & Retrieval • Expansion to volume
Method Benchmark • Method was tested on SHREC 2010 data-set: • 3 basic shapes (human, dog & horse) • 9 transformations, applied in 5 different strengths • 138 shapes in total Scale Original Deformation Holes Noise
Quantitative Results • Vertex-wise correspondences were given • Regions were projected onto another shape, and overlap ratio was measured • Overlap ratio between a region and its projected counterpart is • Repeatability is the percent of regions with overlap above a threshold
Repeatability 68% at 0.75 65% at 0.75
More Results Taken from the TOSCA data-set Horse regions + Human regions
Agenda • Algorithm overview • Detection results • Descriptors & Retrieval • Expansion to volume
Point Descriptors • Functions attached to shape points • Heat Kernel Signature [Sun et al. 09] • Select time values • Calculate • Scale Dependent! • Scale Invariant HKS [Bronstein et al. 10]
Region Descriptors • Given point descriptor for every vertex in the component
Region Retrieval Query 1st, 2nd, 4th, 10th, and 15th matches
Agenda • Algorithm overview • Detection results • Descriptors & Retrieval • Expansion to volume
Volume • So far we considered shapes as 2D boundary of a 3D shape. • We assume that a volumetric shape model better captures "natural" behavior of non-rigid deformations. • Diffusion geometry terms can easily be applied to volumes • Meshes can be voxelized
Volume vs. Surface Original Volume & surface isometry Boundary isometry
Conclusion • Stable region detector for deformable shapes • Generic detection framework,uniting vertex- and edge-weighted graph representation • Tested quantitatively on SHREC10 Partial matching & retrieval potential • Expansion to volume