Determine Similarity between Shapes
-
Do two 3D models represent the same or similar shapes?
-
Represent each model by a shape descriptor, that turns the 3D representation into a high dimensional vectors of some notion of shapes
-
Then compare the distances between these vectors
-
How are these descriptors created?
- Can be manually designed
- Can be learned
-
Should be invariant to rigid transforms of the shapes:
- We can try to align the shapes first and then comput the descriptors
Global shape descriptor: Shape Histogram #
-
Store histogram of how much surface area resides within different concentric shells in space
-
Can also be used as a local descriptor by narrowing the radius
Non-Rigid Shape Matching #
-
Consider near-isometric cases (cases where geodesic distances stay constant)
-
Find correspondences that preserve geodesic distances
-
shape similarity can be measured with the Hausdorff Distance or Gromov-Hausdorff distance
Observation: Near isometries preserve local structure #
- Correspondences can still be established though local descriptors
- Hyperparameter : How large should the local region be?
Heat kernel signature #
- “Simulate” how heat would spread on the surface over time and use this to compare different shapes.
- It is topological invariant to isometric deformations (the thumb could move around but the heat would spread just the same to it)