Page 236 -
P. 236
4.2 Edges 215
Zucker (1998) can be used to compute these zero crossings numerically instead.
An alternative approach is to estimate local color statistics in regions around each pixel
(Ruzon and Tomasi 2001; Martin, Fowlkes, and Malik 2004). This has the advantage that
more sophisticated techniques (e.g., 3D color histograms) can be used to compare regional
statistics and that additional measures, such as texture, can also be considered. Figure 4.33
shows the output of such detectors.
Of course, many other approaches have been developed for detecting color edges, dating
back to early work by Nevatia (1977). Ruzon and Tomasi (2001) and Gevers, van de Weijer,
and Stokman (2006) provide good reviews of these approaches, which include ideas such as
fusing outputs from multiple channels, using multidimensional gradients, and vector-based
methods.
Combining edge feature cues
If the goal of edge detection is to match human boundary detection performance (Bowyer,
Kranenburg, and Dougherty 2001; Martin, Fowlkes, and Malik 2004; Arbel´ aez, Maire, Fowlkes
et al. 2010), as opposed to simply finding stable features for matching, even better detectors
can be constructed by combining multiple low-level cues such as brightness, color, and tex-
ture.
Martin, Fowlkes, and Malik (2004) describe a system that combines brightness, color, and
texture edges to produce state-of-the-art performance on a database of hand-segmented natu-
8
ral color images (Martin, Fowlkes, Tal et al. 2001). First, they construct and train separate
oriented half-disc detectors for measuring significant differences in brightness (luminance),
color (a* and b* channels, summed responses), and texture (un-normalized filter bank re-
sponses from the work of Malik, Belongie, Leung et al. (2001)). Some of the responses
are then sharpened using a soft non-maximal suppression technique. Finally, the outputs of
the three detectors are combined using a variety of machine-learning techniques, from which
logistic regression is found to have the best tradeoff between speed, space and accuracy .
The resulting system (see Figure 4.33 for some examples) is shown to outperform previously
developed techniques. Maire, Arbelaez, Fowlkes et al. (2008) improve on these results by
combining the detector based on local appearance with a spectral (segmentation-based) de-
tector (Belongie and Malik 1998). In more recent work, Arbel´ aez, Maire, Fowlkes et al.
(2010) build a hierarchical segmentation on top of this edge detector using a variant of the
watershed algorithm.
4.2.2 Edge linking
While isolated edges can be useful for a variety of applications, such as line detection (Sec-
tion 4.3) and sparse stereo matching (Section 11.2), they become even more useful when
linked into continuous contours.
If the edges have been detected using zero crossings of some function, linking them up
is straightforward, since adjacent edgels share common endpoints. Linking the edgels into
chains involves picking up an unlinked edgel and following its neighbors in both directions.
Either a sorted list of edgels (sorted first by x coordinates and then by y coordinates, for
example) or a 2D array can be used to accelerate the neighbor finding. If edges were not
8 The training uses 200 labeled images and testing is performed on a different set of 100 images.