250 likes | 421 Views
Description of 3D-Shape Using a Complex Function on the Sphere. Dejan Vrani ć and Dietmar Saupe. originally in Proceedings of the IEEE International Conference on Multimedia and Expo. Slides prepared by Nat duca@jhu.edu , for CS 600.658
E N D
Description of 3D-Shape Using a Complex Function on the Sphere Dejan Vranić and Dietmar Saupe originally in Proceedings of the IEEE International Conference on Multimedia and Expo Slides prepared by Nat duca@jhu.edu, for CS 600.658 For more information:http://www.cs.jhu.edu/~misha/Fall04/
Spherical Shape Descriptors • Parameterize a shape onto the unit sphere • f(, ) • f(u) u is a 3-vector on the unit sphere, i.e, |u| = 1 • f(u) may evaluate to • a Scalar (e.g. extented gaussian images) • a Vector (e.g. a geometry image) • a Complex number (this paper)
Summary • There exist two pre-existing spherical shape descriptors x(u) and y(u) which are sensitive shape descriptors • This paper presents a technique to combine both into a single descriptor • That works without weighting of the two functions(i.e x(u) + x(u) • That is spatially efficient • That is (mostly) resolution independent • That can be retrieved/compared hierarchically
Initial Conditions • The input models have been • Converted into points • Aligned to principal axes using PCA (etc) • An object has a center-of-mass c about which a unit sphere is oriented.
Basic Descriptors • x(u): “how far is it from c to the surface?” • Let s(u) be the surface parameterized in terms of u • Let c be the centroid of the object • x(u) = s(u) – c • Open question: In the case of multiple surface intersections, how is x(u) defined? • y(u): “ how much light would reach s(u) from c?” • y(u) = un(u)
Example: x(u) and y(u) n(u) x(u) y(u) 1
Example: x(u) and y(u) n(u) x(u) y(u) 0
Example of x(u) Image couresy of Vranic et al, 2001.
Discussion:x(u) and y(u) as shape descriptors • Both are sensitive to the parameterization from the surface to the unit sphere. • x(u): ray based • Will capture shape but suffer when parameterizations differ across models • y(u): shadow based • Captures “texture” lost by x(u)
A Complex Feature Descriptor • Based on the idea, “good + good = better” • r(u) = x(u) + iy(u) • Intuitively: now we describe a shape as both • What is the feature vector?
From r(u) to a feature vector • Goals: • Compact • Incrementally comparable • 2D Analog: • How do you compare images? Represent them as a sum of basis functions. • Solution: • Spherical harmonics representation of r(u)
Spherical Harmonics “As is well-known (see e.g. [52]), the spherical harmonics provide an orthonormal basis for L2(S2).” [Healy et al, 2002] WTF?
Spherical Harmonics “As is well-known (see e.g. [52]), the spherical harmonics provide an orthonormal basis for L2(S2).” [Healy et al, 2002] • A sampling of r(u) can be expressed as • The values correspond to r(u)’s forier coefficients • Some top number of coefficients are used as the feature vector for shape matching
The Details (1) • L2(S2): • L2is a hilbert space • S2 is the surface of the unit sphere • Complex numbers are a Hilbert space • Eric W. Weisstein. "Hilbert Space." From MathWorld--A Wolfram Web Resource. http://mathworld.wolfram.com/HilbertSpace.html • Fast Spherical Harmonic Transforms Library: http://www.cs.dartmouth.edu/~geelong/sphere/ • Any function in L2(S2) can be represented as a sum of spherical-harmonic basis functions
The Details (2) Courtesy of: Eric W. Weisstein. "Spherical Harmonic." From MathWorld--A Wolfram Web Resource. http://mathworld.wolfram.com/SphericalHarmonic.html
The Details (3) • Algorithms exist that can transform from n points in L2(S2) to harmonic coefficients in O(nlog2n) time • http://www.cs.dartmouth.edu/~geelong/sphere/ • Note: the Fourier transformation places restrictions on the location of samples in S2.
“Complex” Feature Vector • r(u) is transformed into another 2d function • For a complex function like r(u), the coefficients look like: • Interestingly, for a real-valued function like x(u), half of this table (all m>0) can be truncated.
Truncation of the feature vector • The paper reports that they only need ~13 rows of coefficients to match well • i.e. they store for 0 <l < 13
Truncation of the feature vector • The paper reports that they only need ~13 rows of coefficients to match well • i.e. they store for 0 <l < 13
Shape Descriptor Quality • Concise to store d=169 (and adjustable) • Quick to compute O(nlog2n) • Efficient to match Incremental match is possible • Discriminating Dependant on parameterization • Invariant to transformations Yes • Invariant to deformations Nope • Insensitive to noise • Insensitive to topology • Robust to degeneracies ... if they do not affect the FFT. Better than x(u) and y(u) alone
Papers Referenced • This paper: • D. V. Vranic and D. Saupe.Description of 3D-Shape using a Complex Function on the Sphere. In: Proceedings of the IEEE International Conference on Multimedia and Expo (ICME 2002), Lausanne, Switzerland, pp. 177-180, August 2002. • Prior and related papers: • D. V. Vranic and D. Saupe.3D Model Retrieval. In: Proceedings of the Spring Conference on Computer Graphics and its Applications (SCCG2000) (editor B. Falcidieno), Budmerice, Slovakia, pp. 89-93, May 2000. • D. Saupe and D. V. Vranic. 3D model retrieval with spherical harmonics and moments. In: Proceedings of the DAGM 2001 (editors B. Radig and S. Florczyk), Munich, Germany, pp. 392-397, September 2001. • Spherical Harmonics and the Transform: • Fast Spherical Harmonic Transforms. http://www.cs.dartmouth.edu/~geelong/sphere/ • Courtesy of: Eric W. Weisstein. "Spherical Harmonic." From MathWorld--A Wolfram Web Resource. http://mathworld.wolfram.com/SphericalHarmonic.html