The calculation of three dimensional boundary curvature is trivial - the difficulty lies in grouping the boundary segments into sections that might belong to the same feature. Fortunately, the input boundary is labeled with both the type of the segmentation boundary (between surfaces) and the type of discontinuities along the boundary (Chapter 3). This allows sections to be grouped for description with the goal of finding segments that directly correspond to model boundary segments.
Boundaries are not arbitrary space curves, but are associated with surfaces. Hence, the surface determines which boundary sections will be described. Boundaries labeled as:
The ring of boundary segments surrounding a surface is partitioned into describable sections by the following criteria:
For example, assume that the object in Figure 6.1 is sitting on a
surface, that it is a box with an opening at surface 1, that boundary segment
l belongs to the background and that the labelings are:
Then, the only describable boundary section for surface 1 is {a,i}. As b and c are back-side-obscuring, they are not used. Segments a and i are not separated by any criterion, so are treated as a single section. For surface 2, each segment is isolated. Between b and d the label changes, as between e and g. Between b and e there is a boundary segmentation point (placed because of an orientation discontinuity in the boundary), as between d and g. Surface 3 is similar to surface 2.
One goal of the boundary segmentation described in Chapter 3 was to produce boundary sections with approximately uniform curvature character. Hence, assuming a boundary section is approximately circular, its curvature can be estimated as follows (referring to Figure 6.2):
Let: | |
and be the endpoints of the section | |
be the bisecting point of the section | |
be the midpoint of the bounding chord = | |
If: | |
, then the segment is straight, | |
Otherwise: | |
And: | |
A heuristic declares nearly straight segments as straight.
The curvature estimates for some of the complete
boundaries in the test image (using segment labels shown in Figure
6.3) are given in Table 6.1.
The estimation of curvature is accurate to about 10%. Some straight lines have been classified as slightly curved (e.g. segments 3-4-5) but they received large radius estimates (e.g. 90 cm). Some curvature errors arise from point position errors introduced during surface reconstruction. This factor particularly affects boundaries lying on curved surfaces.