Next: Towards a 3-D Up: Vision Previous: Other sources of

Line Labelling

Though not strictly part of Marr's approach we should also briefly mention a technique for reasoning about the edges of objects, and in particular for distinguishing between the edge of an object (separating object from background) and a fold of the object (separating regions of different orientation). It is an approach that is useful for simple images composed of smooth planar surfaces, but does not generalise very well. However, it's a neat trick that is much cited in AI texbooks, so important to know about.

OK, so suppose, following edge detection, we have worked out that our image has the edges illustrated in the figure below:

If we look at all the places where two or more lines join we find there are only a small number of junction types for simple planar images of this sort:

Now, for each junction type there we can consider whether each line can be labelled as a real edge (denoted as a blade or b) or just a fold (f). A little thought should show that only certain combinations make sense for objects of this type. For example, if you have a ``Y'' or a ``W'' junction you can't have all the lines being blades. If you have a ``T'' junction you cant have them all being folds. This information can be summarised in a ``junction dictionary'' that gives the possibilities. The following gives an oversimplified example, that will only work for some types of object:

Now, if a line corresponds to fold at one junction it corresponds to a fold at all other junctions involving that line. In order to label all our lines as blades or folds we can apply constraint satisfaction techniques. At one junction there may be (say) two possible ways of labelling the lines; but considering all the junctions together, and propagating constraints on line labels, allows us to uniquely label lines.

If we are labelling lines by hand, we can start off with junctions that give us definite information about the lines (e.g., T junctions tell us that the T bar is a blade), then propagate this information along the lines to the other junctions (e.g., W junctions) which can then similarly be fully labelled. When we have a labelled scene we can use the blade type lines to separate it into different objects.

This is just about the simplest version of the line labelling technique - it has been extended to allow more complex scenes with more junction types, and to allow more types of line label (e.g., concave vs convex). However, the basic approach is always the same - classifying possible line junctions, showing what line labels are allowed for that junction, and using constraint satisfaction techniques to uniquely label the whole scene.



Next: Towards a 3-D Up: Vision Previous: Other sources of


alison@
Fri Aug 19 10:42:17 BST 1994