EDGE DETECTION
A Challenge for Computer Vision

The difficulty of making computers see seems puzzling, given how easy the task is for people and animals. To provide an appreciation of the difficulty we show some examples of edge detection, a process that is often used as the first step in Computer Vision.

The first step in understanding what is in a picture is to find outlines of objects and edge detection does that by finding pixels where there is a high contrast in color and/or brightness. Below is a picture of a desk with a coffeepot on it. (See credits for the source of this image as well as the rest of the images in this lecture.)

Here are the results of an edge detection program.

Parts of the outline of the coffeepot are missing and there are a lot of lines not belonging to any significant object. Changing the program that does the edge detection does not help much. Edges detected with another method.

The results are even worse when we deal with natural images, such as that of the tiger below.

Can you find the tiger amongst the edges below?

Edges detected with another method.

Changing the method does not help much. You get a lot of lines, some corresponding to the outline of a significant object, most to the background.

Why people are very good in seeing the tiger right away? (Hint: grrr)

Credits

A good discussion of methods of edge detection can be found in a web site titled Edge Detector Comparison. It is based on work done at the University of South Florida by a group that was led by professor Kevin Bowyer. (The site describes work carried out about ten years ago. Professor Bowyer is now at the University of Notre Dame.) All the pictures in this page have been taken from that site.

You can peruse more examples by going to that page and then clicking over one of the displayed thumbnail images. The result will be a full size image (in grey scale) with a table of links below. The columns are labeled with the name of the person who developed the method and the rows correspond to diffeerent parameter selected for the task.

Updated March 9, 2007

Back to Tutorial Index