Almost all human faces have common characteristics, such as two eyes and one mouth. Still, some people, affected by face blindness, cannot recognize one face from another one. So it's understandable that face recognition is a major challenge for computer vision systems. In "Facing facts in computer recognition," the Pittsburgh Post-Gazette reports that a team from Carnegie Mellon University's Robotics Institute has developed a very accurate software to find faces within images. By analyzing only 768 pixels, the system can detect 93 percent of the faces in a set of images while falsely identifying four objects as faces. The Face Detector Demo is available online and you can submit an image for analysis and receive the results by e-mail. The technology will be used for security purposes, but also by digital photography companies who want to automatically reduce "red eye" effects.
First, let's look at the challenge of face recognition.
"Scientifically, it's interesting because faces have a great deal of variation from person to person," said Henry Schneiderman, a computer vision researcher at Carnegie Mellon University's Robotics Institute. Though they all have eyes, noses and mouths, their shapes and sizes vary widely, as does skin color and facial hair.
Machines also can be confused by lighting variation, sunglasses and other apparel. The orientation of the head -- frontal vs. side views -- can dramatically alter the ability of the computer to recognize a face as a face, said Schneiderman, who has developed the most accurate program in existence for detecting faces in still images and video.
So how does this software work?
In developing a face detection program, Schneiderman and other computer vision researchers, such as former Robotics Institute director Takeo Kanade, can't tell the computer precisely what a face is supposed to look like. So part of the development process involves showing the computer examples of faces and non-faces and letting the computer program gradually develop its own statistical rules for determining what constitutes a face.
Schneiderman's face detector uses low-resolution black and white images measuring 24 by 32 pixels, or a total of 768 pixels. That means the computer has to analyze 768 numbers for patterns it thinks are faces.
Using a standard benchmark test for computer detection of faces, Schneiderman's program is capable of detecting 93 percent of the faces in a set of images while falsely identifying four objects as faces. Detecting a higher percentage of faces results in a larger number of objects falsely identified as faces.
And what will be the possible applications of the software?
The Face Detector is being exhibited as a security technology; presumably it might be used to detect people who are in secure areas, or to pick out faces for identification in crowds.
But Schneiderman noted its first use was in photo processing. A company that builds equipment used in one-hour-type photo processing shops licensed the technology to locate eyes in photographs; the company used this as part of a system for automatically reducing "red eye" that can show up in some flash snapshots.
For more information, please visit the Face Detection project webpage. Additionally, you might want to read a paper from Henry Schneiderman, "Learning Statistical Structure for Object Detection." Here are the links to the abstract and to the full paper (PDF format, 8 pages, 313 KB).
Source: Byron Spice, Pittsburgh Post-Gazette, May 3, 2004; and various websites