Edge detection in grayscale imagery using machine learning

Edge detection can be formulated as a binary classification problem at the pixel level with the goal of identifying individual pixels as either on-edge or off-edge. To solve this classification problem we use both fixed and adaptive feature selection in conjunction with a support vector machine. This approach provides a direct data-driven solution and does not require the intermediate step of learning a distribution to perform a likelihood-based classification. Furthermore, the approach can readily be adapted for other image processing tasks. The algorithm was tested on a data set of 50 object images, each associated with a hand-drawn 'ground truth' image. We computed ROC curves to evaluate the performance of the general feature extraction and machine learning approach, and compared that to the standard Canny edge detector and with recent work on statistical edge detection. Using a direct pixel-by-pixel error metric enabled us to compare to the statistical edge detection approach, and our algorithm compared favorably. Using a more 'natural' metric enabled comparision with work by the authors of the image data set, and our algorithm performed comparably to the suite of state-of-art edge detectors in that study.