Open Source Computer Vision Library (OpenCV) is a program that comes with many modules and scripts for advanced video techniques on a computer. One of the scripts is OpenCV face detection, which uses a webcam to detect faces. As of 2011, many programmers are working on a way to expand this module to recognize a particular face instead of just recognizing whether a face is captured. This system works by recognizing common facial attributes, such as eyes and mouth, to determine whether a real face is being displayed.
In the OpenCV program library, there is a script called Haar Cascade. This module provides a facial detection system, but the detection has limited capabilities. The OpenCV face detection, without modification, can only detect if a face is displayed. This is done by accessing the computer’s webcam and checking the video that returns. If common facial attributes such as eyes and mouth are detected, then the OpenCV facial detection system will say a face is present.
New OpenCV users may have difficulty finding the facial recognition script. Like many other scripts, this is stored in the “Samples” section. By accessing the script, OpenCV can automatically use the recognition system without the programmer having to install the script manually.
Many programmers are working on the OpenCV open-source interface to improve the OpenCV face detection system. Instead of just recognizing whether a face is displayed by the webcam, the modified system is expected to recognize specific faces. This is primarily done by taking an image of someone’s face, showing that person on the webcam, and then comparing the two images. If the images are similar, then the facial detection will say the person is the same as in the stored image.
Some problems are apparent in the OpenCV face detection system, mostly with how effective the detection is. These problems come mostly from facial coordinates, such as where the eyes are. If the eyes or other facial elements are not where OpenCV expects them to be, then it will say a face is not present, even if one is. This requires programmers to manually enter the coordinates by hand each time the facial interface is used.
OpenCV face detection has a few uses beyond just being fun and giving programmers a way to enhance their skills. Facial detection can be used for security, especially when modified to recognize specific faces. This can also be used to easily store facial images from a webcam, instead of accidentally capturing other images.