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.
   231   232   233   234   235   236   237   238   239   240   241