Sphere intersection 3D shape descriptor (SID)☆
Graphical abstract
Introduction
Databases of 3D models are becoming nowadays available in a number of disciplines, including computer graphics, CAD, and medicine (Veltkamp and Hagedoorn, 2001). As a result of the extensive growth of 3D databases, shape-retrieval techniques are becoming valuable tools for analysis and discovery. The SHREC contest and benchmark (Boyer et al., 2011) have been stimulating forces in this field.
A common method for matching objects is to represent each object as a set of local shape features sampled from the object's surface. For a pair of objects and a given correspondence between their features, similarity is measured by comparing the corresponding features using a cost function (e.g., Belongie et al., 2001, Chua and Jarvis, 1997, Johnson and Hebert, 1999). Nevertheless, shapes and features can be represented in many different ways, and finding an appropriate representation that is amenable to surface matching is still an open research problem.
Our descriptor is inspired by the Shape Context descriptor recently explored by Kokkinos et al. (2012). Similarly, we sample the continuous surface into a discrete set of samples. Nevertheless, instead of discretization into bins, we utilize continuous 1D surface curves as a more informative representation of the shape. Our idea is that shape characteristics, especially subtle ones require high-order descriptions to represent them appropriately. For example, the tip of the octaflower in Fig. 2 (right) is a complex feature and singular point which cannot be described using principal curvatures. Using our descriptor, we represent the region using explicit 1D curves sampling the surface, thus capturing the feature as can be seen in the graph.
At the core of our shape descriptor computation is a simple sphere and surface intersection operation. Essentially, we grow spheres on the surface and compute their intersection with the surface at several predefined scales. The intersections result in a set of parameterized curves that represent excerpts of the local surface. For each point we accumulate the set of curves. The set of curves is then transformed to the frequency domain, resulting in a compact yet effective 2D representation of local 3D geometry.
We define a shape similarity metric based on the correlation between “interesting shape features” and curvature, following the observation of Marr (1982). To compare two shapes, we filter out smooth or flat regions, and compare the curved regions by measuring the distance between their descriptors.
We evaluate our work by performing both qualitative and quantitative analysis. For qualitative evaluation we use multiple shapes with different characteristics and deformations (see Fig. 2, Fig. 8, Fig. 1). For quantitative evaluation we use the SHREC 11 non-rigid benchmark (Boyer et al., 2011) and SHREC 12 abstract shapes benchmark (Biasotti et al., 2012). The results show that SID outperforms most state-of-the-art algorithms used in the comparison in terms of retrieval rates. With regards to MeshSIFT (Smeets et al., 2013), although retrieval rates are similar to us, we observe that SID holds favorable properties in terms of speed, meaningful keypoint selection and consistency of keypoint selection.
Our contributions are as follows:
- •
A descriptor which captures the shape via explicit sampling of the surface with continuous 1D curves at keypoints. Our descriptor is informative and distinctive (see Fig. 2).
- •
An efficient and meaningful feature detection scheme based on our descriptor formulation.
- •
A shape retrieval scheme which offers a unique balance and combination of correctness, speed and handling multiple classes of shapes.
Section snippets
Related work
Shape descriptors and similarity have been extensively studied in fields such as computer-vision, CAD and molecular-biology (Veltkamp and Hagedoorn, 2001). In 2D images and video, shape matching has been broadly researched (Flickner et al., 1995, Jacobs et al., 1995, Ogle and Stonebraker, 1995; Castelli and Bergman, 2001) and is beyond the scope of this work. A major problem in extending these systems to 3D is that 3D models typically lack an underlying regular parametric domain. For example,
Overview
Our framework consists of the following main components: feature detection, feature description, shape similarity. In the following we provide an overview of each component.
- •
Feature detection: the selection of features is done iteratively with spheres of growing radius, centered at mesh vertices. At each step of the feature detection loop we compute a saliency metric on the sphere intersection curve with the surface. Intersecting spheres are detected and only spheres with stronger metric are
Technical details
In the following sections we discuss each component in detail.
Results and details
Our implementation is written in C++ using OpenMesh (Bischoff et al., 2002), OpenCV (Bradski, 2000) and LEMON (Dezső et al., 2011) for min cost bipartite graph matching. We make our source code available for public to encourage experimentation and further exploration of the SID shape descriptor, http://sourceforge.net/projects/sphere-intersection-signature/.
We have tested our implementation on various polygonal models. Fig. 1, Fig. 8, Fig. 9 present a qualitative demonstration of our descriptor
Limitations and conclusions
Limitations of our method include taking only a single intersection curve even if the sphere-to-surface intersection results in several curves. We limit the negative effect of this limitation by choosing this curve consistently by choosing a small enough initial sphere radius and Δr (see Section 4.1.1). As an evidence, in all of our experiments we did not encounter a jitter of the intersection curve, namely, a situation in which the chosen intersection curve “jumps” between several possible
Acknowledgements
This work was supported by grants from the Lynn and William Frankel Center for Computer Sciences, Ben-Gurion University, Israel 428/11, as well as a grant from the Israeli Science Foundation. The authors would also like to thank the anonymous reviewers for the helpful suggestions and comments.
References (45)
- et al.
Lemon – an open source C++ graph template library
Electron. Notes Theor. Comput. Sci.
(2011) - et al.
Integral invariants for robust geometry processing
Comput. Aided Geom. Des.
(2009) - et al.
Meshsift: local surface features for 3d face recognition under expression variations and partial data
Comput. Vis. Image Underst.
(2013) - et al.
3D shape histograms for similarity search and classification in spatial databases
- et al.
Application of affine-invariant Fourier descriptors to recognition of 3-d objects
IEEE Trans. Pattern Anal. Mach. Intell.
(1990) - et al.
An efficiently computable metric for comparing polygonal shapes
(1990) - et al.
Matching Shapes, vol. 1
(2001) - et al.
Shrec'12 Track: Stability on Abstract Shapes
(2012) - et al.
Openmesh – a Generic and Efficient Polygon Mesh Data Structure
(2002) - et al.
Shrec 2011: Robust Feature Detection and Description Benchmark
(2011)
Scale-Invariant Heat Kernel Signatures for Non-rigid Shape Recognition
Sparse Points Matching by Combining 3d Mesh Saliency with Statistical Descriptors, vol. 27
Image Databases: Search and Retrieval of Digital Imagery
3d free-form surface registration and object recognition
Int. J. Comput. Vis.
Point signatures: a new representation for 3d object recognition
Int. J. Comput. Vis.
Scale-invariant features for 3-d mesh models
IEEE Trans. Image Process.
A spherical representation for the recognition of curved objects
Query by image and video content: the qbic system
IEEE Comput.
A search engine for 3d models
ACM Trans. Graph.
3d shape retrieval based on best view selection
Single view depth estimation from examples
Cited by (0)
- ☆
This paper has been recommended for acceptance by Pierre Alliez.