Face Detection Based on Skin Color Recognition Method

Resource Overview

The system consists of the following components: capturing images using a computer's built-in camera, face detection, storing detected face images in a database, and performing face recognition using input photos. This program implements face detection through a skin color recognition approach, where the facial skin color range is defined as 100≤B≤120 and 140≤R≤160. Pixels within this range are set to white while the remaining pixels are set to black. The algorithm employs the imerode function for spherical erosion and applies median filtering to achieve smoothing effects. Finally, after scaling, binarization, and various processing stages, regions with fewer than 1000 white pixels are discarded. Image segmentation incorporates Euler numbers to eliminate background areas resembling facial colors.

Detailed Documentation

The system comprises the following components: image capture using a computer's built-in camera, face detection, storage of detected face images in a database, and face recognition using input photographs. This program implements face detection through a skin color recognition methodology. The algorithm defines facial skin color range as 100≤B≤120 and 140≤R≤160 in the RGB color space, where pixels within this range are converted to white while remaining pixels are set to black. To achieve smoothing effects, the implementation uses MATLAB's imerode function with a spherical structuring element for morphological erosion, followed by median filtering to reduce noise. After completing scaling, binarization, and various image processing operations, the system filters regions based on white pixel counts - areas containing fewer than 1000 white pixels are discarded. The image segmentation phase incorporates Euler number calculation to eliminate background regions that may resemble facial colors. Finally, for each remaining white region, boundary detection and labeling operations are performed to complete multi-face detection.