Table of Contents
Partial Shape Similarity
0. Motivation
1. Edge Detection
2. Edge Grouping
3. Extraction of Contour Parts
4. Recognizing Shapes by Parts
5. Results

Structural Shape Similarity
0. Introduction
1. Shape Segmentation
2. Skeleton Computation
3. Skeleton Pruning
4. Recognizing Shapes by Structures

Contour Grouping Based on Local Symetry
0. Introduction
1. From Edges To Contours
2. Center points
3. Reference Shape Model
4. Particle Filter
5.1. Experimental Result 1
5.2. Experimental Result 2
5.3. Experimental Result 3
5.4. Experimental Result 4
5.5. Experimental Result 5
5.6. Experimental Result 6
5.7. Experimental Result 7
5.8. Experimental Result 8
6. Conclusion
7. Contour Grouping Video
Extraction of Contour Parts Recongizing Shapes by Parts Recongizing Shapes by Parts

Recognizing Shapes by Parts



A horse contour, with DCE overlaid and a contour part highlighted
An invariant representation of a contour part

(above) A horse contour, with DCE overlaid and a contour part highlighted
(below) An invariant representation of the highlighted contour

Click each image for a larger view.

To establish the contour parts in a manner indifferent to scaling and transformation, we use invariant representation. To put a partial shape contour into an invariant representation, we first evolve the curve using DCE to find contour endpoints. Following the method proposed by Sun and Super, we map the starting point of the contour to point (0,0) and the endpoint of the contour segment to point (1,0). All other points on the contour are then mapped to the plane in their normalized positions relative to the start and end points. The figure at right shows a partial contour being put into an invariant reference frame.

Now that we have our contour, we compare it against a database of known contour parts identified from complete contours. Our database of known contour parts is constructed from the MPEG-7 Core Experiment CE-Shape-1 Part B dataset. The shapes are divided into 70 classes, each class containing 20 shapes. The shapes of this dataset are preprocessed in much the same way as the query parts. Our database is composed of 80,000 contour parts. The Mass Shape Context (MSC) descriptors of each of the contour parts are stored for quick comparison with query contours.

An MSC is represented by a histogram centered on the center of mass of a contour segment. The MSC histogram quantifies the positions of the points of the segment relative to the center of mass, giving a comparable reference for the segment with candidate segments. The MSC representation is used to quickly compare a query segment to all contour parts in our database and to produce a short list of candidate target contour parts for further comparison.

Shape contexts are then used to further compare the remaining contours. A subset of shapes with the smallest shape context differences, and therefore the highest probabilities of being similar, is returned as the query result. A list of the most similar contour segments is returned as the classification result for the query contour.