2. Contour Models with Part Bundles


Given a single model contour that can be hand drawn or extracted from an example image, we first decompose it into possibly overlapping model contour parts (or segments) ; breaking segments at high curvature points. The segments are then grouped into part bundles.

An example bundle decomposition is shown in Fig. 4. In addition to longer contour segments, we need to select shorter ones, since contour parts may be missing in edge images. The main constraint for the bundle design is to ensure that a rough shape sketch obtained by selecting one part form each bundle still resembles the model contour. A bundle can have fragments representing overlapping parts thus allowing for redundancy. A cognitive motivation behind our bundle decomposition scheme is that an object can be recognized even if some parts of it are missing, as can be observed in Fig. 1. There are several reasons why parts of objects can be missing in real images: missing edge information, occlusion, failures in contour grouping. The selection of parts and their grouping into bundles was designed manually. We have one model per shape class and select model parts and grouping them into bundles. However, when ground truth images with detected contour fragments were available, automatic learning part bundles is also possible.


Figure 4. The contour model of the apple and the corresponding part bundles. The contour is shown in the center. The 11 contour fragments are decomposed into four part-bundles.

Formally, , where Bk ⊂ S and m' ≤ m, is a part bundle decomposition of S if and only if and for i, j = 1, ...,m' and i ≠ j.

The part bundles are naturally integrated in our PF framework in that they constrain the proposal distribution defined in 1.1. Given a particle = ((s1, e1), . . . (st-1, et-1)), at steps t = 2, . . .,m' - 1 we constrain the correspondence xt = (st, et) to select st that belongs to a different part bundle from the part bundles of s1, . . . , st-1. Thus, we ensure to first have one segment from each part bundle. Only when this is satisfied for t = m', we allow to select multiple segments form the same bundles. Intuitively this means that we enforce our particles to first trace a rough shape sketch of the model shape in the edge image before filling in shape details. We show an example evolution of particle filter in Fig. 5. Matching edge fragments are numbered with corresponding model segments shown in Fig. 4. Rough sketch (matching model segments are from different part bundles) is obtained after iteration 3, shape details are added in iterations 4 and 5.


Figure 5. The evolution of particles: (b) shows the edge fragments of (a); (c) edge fragments that are parts of initial particles are in color; (d) to (g) shows edge fragments of particles with highest weights after each iteration. The part bundle model is shown in Fig. 4. Rough sketch is obtained after iteration 3, shape details are added in iterations 4 and 5.

1.1 Proposal DistributionHome3. Shape Descriptor