1. Introduction
Feature descriptors are ubiquitous tools in shape analysis. Broadly speaking, a local feature descriptor assigns to each point on the shape a vector in some multi -dimensional descriptor space representing the local structure of the shape around that point. A global descriptor describes the whole shape. Local feature descriptors are used in higher-level tasks such as establishing correspondence between shapes [35], shape retrieval [8], or segmentation [43]. Global descriptors are often produced by aggregating local descriptors e.g. using the bag-of-features paradigm. Descriptor construction is largely application dependent, and one typically tries to make the descriptor discriminative (capture the structures that are important for a particular application, e.g. telling apart two classes of shapes), robust (invariant to some class of transformations or noise), compact (low dimensional), and computationally-efficient.