Laplace-Beltrami Eigenfunctions for Deformation Invariant
Download
Report
Transcript Laplace-Beltrami Eigenfunctions for Deformation Invariant
TEMPLATE BASED
SHAPE DESCRIPTOR
Raif Rustamov
Department of Mathematics and
Computer Science
Drew University, Madison, NJ, USA
Components of descriptors in general
Selection of surface feature
Mapping
Signal Processing
Need this discussion to set up the context for our
approach
Selection of surface feature
A function on the surface that captures a property
relevant to shape description:
constant function (restriction of the surface's
characteristic function to the surface itself)
distance to the center of mass
curvature
components of the normal vector
We refer to the selected function as the feature
function.
Mapping
The feature function is used to construct a new function
defined on some predetermined domain
Common mapping domains:
The new domain called the “mapping domain”
the new function the “mapped feature function”
Spheres
Planes
the 3D space (surface's bounding volume)
surface itself
Mapping procedures:
projection
Identity, if mapping domain = surface itself
Signal Processing
Extract concise noise-robust numerical descriptor
from the mapped feature function.
Depends on the mapping domain:
Sphere – Spherical Harmonic Transform
Plane or box volume – 2D or 3D Fourier transform
Ball volume – 3D Zernike Transform.
Mapped feature function is expanded in a series in
terms of the relevant basis
Expansion coefficients are used as the shape
descriptor
Example I: Saupe, Vranic 2001
Shoot rays from the origin (center of mass),
determine the distance to the farthest intersection
point with the bounding mesh
Parameterize the rays by the unit sphere to obtain
a function on the sphere
Use spherical harmonic transform on this function to
extract the numerical shape descriptor.
Example I: Saupe, Vranic 2001
Surface feature
Mapping
Distance to the origin
Mapping domain: the unit sphere
Mapping procedure: project onto the sphere, resolve
collisions by selecting the larger function value
Signal processing
Spherical harmonic transform
Example II: Depth Buffer
Heczko, Keim, Saupe, Vranic 2002
Place a normalized mesh into a unit cube
Generate six gray-scale images on each face of
the cube by parallel projection
The grayness value is the distance from the cube face to
the model
Apply 2D Fourier transform to each of the six grayscale images
Example II: Depth Buffer
For each cube face:
Surface feature
Mapping
distance from mesh point to the face
Mapping domain: cube face
Mapping procedure: project onto the face, resolve
collisions by selecting the smaller function value
Signal processing
2D Fourier transform
Generality
More examples easily generated
Compare to classification in Bustos et al. survey
Mapping ≈ object abstraction
Signal processing ≈ numerical transformation
Observations
Mapping:
Mapping domain:
Mapping procedure:
≠ original surface
a primitive geometry: sphere, plane etc
Projection
Signal processing
well established: Fourier, Zernike, Spherical Harmonics
limits possible mapping domains
Contributions
Mapping:
Mapping domain:
Mapping procedure:
any fixed surface – template
interpolation: mean-value coordinates, Shepard
Signal processing
via manifold harmonics – eigenfunctions of LaplaceBeltrami operator
Why templates?
Mademlis, Daras, Tzovaras, Strintzis 2008:
Since
ellipses approximate elongated shapes better
than spheres:
Mapping domain: ellipsoid
Signal processing: ellipsoidal harmonics
Showed
experimentally better retrieval results than
sphere + spherical harmonics
We take this idea further:
Mapping
domain: any fixed surface
Why template ≠surface itself?
Expand the feature function in terms of the manifold
harmonics of the original surface?
Problem: notoriously difficult to match the harmonics
coming from different surfaces
Sign
flipping
Eigenfunction switching
Linear combinations
Fixed template: extracted expansion coefficients
are in direct correspondence
Why interpolation?
Projection
Mapped feature function can be discontinuous at
overlaps
Gibbs effect may render low-frequency expansion
coefficients used as the shape descriptor
inadequate for representing the function
Feature function is distance to the origin
Jump discontinuity
Why interpolation?
Projection
Redundancy
the
value sets of the mapped feature functions on various
templates will be almost the same
limits the gains of concatenating descriptors obtained from
different templates
Why interpolation?
Interpolation
No
Gibbs effect
mapped
Less
feature function is smooth
redundancy
the
value sets of the mapped feature functions on various
templates depend on relative positions
mean-value coordinates can inject more shape information
into the mapped feature function
a mesh can be reconstructed given the mean-value coordinates
Construction of the descriptor
Selection of surface feature
Mapping
Signal Processing
Now
discuss details
Selection of surface feature
All models are normalized using shift, continuous
PCA, isotropic scaling
Many possibilities, but not:
the
characteristic function
nor linear function of coordinates
To focus discussion
f
= distance from a mesh point to the origin
Similar to Saupe, Vranic 2001
Mapping
Model surface S, Template surface T
Given
Construct
Shepard interpolation
Mean-value interpolation
Mapping: Shepard
Model surface S, Template surface T
Given
Construct
0th order precision: constant functions reproduced
Mapping: Barycentric
Model surface S, Template surface T
Given
Construct
are barycentric coordinates of point p with
respect to vertex
1st order precision: linear functions reproduced
Mapping: Barycentric
A few different kinds of barycentric coordinates
Mean-value,
positive mean-value
Harmonic
Maximum
Entropy
Green coordinates, Complex in 2D
We use mean-value coordinates
Closed
formula
Fastest to evaluate
Signal processing
We have a function
Need a compact representation
Expand
the function into series
Use low-frequency coefficients
Need a function basis on template surface T
Manifold harmonics = Laplace-Beltrami
eigenfunctions
Signal Processing
Manifold harmonics generalize Fourier basis to
Riemannian manifolds
Spherical harmonics = manifold harmonics on the
sphere
Have similar properties
Orthogonal
Concept
of frequency
low-frequency
coefficients are noise-robust
convey essential information about function
Signal Processing
Egenvalues, eigenfunctions solve
Evaluation
procedures well known
Solve symmetric eigenvalue problem for a matrix
We use cotangent Laplacian with voronoi point-areas
Pre-compute for the given templates and store
Our templates have about 500 vertices, the process
takes less than 3 seconds
The storage for each template = 10,500 floats=
=20*500+500 = #eigs * #vertices + #vertices
to store eigenvectors
to store point areas
Resulting shape descriptor
Feature function
Mapped feature function
The template’s feature function
Quotient function
Expand into series
Resulting shape descriptor
Feature vector, N=20
For template surface T,
Normalization: scale to get a = 1
Use L2 distance
Experiments: Benchmark
Models: watertight benchmark
400
closed surface models
20 equal object classes
Experiments: Implementation
Implemented in MATLAB
Use C++ for mean-value coordinate computation
Timing
About
1 minute per model when mean-value
coordinates used
Could make faster if simplified the models
Experiments: Templates
Templates: randomly chosen models
Simplified
using Qslim
Makes mean-value computation faster
Compare Mapping Methods
Template = sphere
Projection vs. Shepard (a=1,2,3) vs. Mean-value
At
long distance behavior of mean-value interpolant is
similar to that of Shepard with a=2
Compare templates
Mapping via mean-value interpolation
M
Compare templates
Beneficial to combine – relative independence
All templates are normalized as objects in the
benchmark – span similar spatial regions
The descriptors could have been made even more
independent if the templates were differently
posed.
Future work
Investigate dependency between the nature of the
template and the produced retrieval results
No “ideal" template for all kinds of shapes
Flexibility of our approach – choose optimal
templates based on the shape database at hand
How to choose?
Can we design a rotationally invariant descriptor?