Font Size: a A A

Research And Realization Of Face Detection System Based On AdaBoost Algorithm

Posted on:2009-04-04Degree:MasterType:Thesis
Country:ChinaCandidate:X Q CuiFull Text:PDF
GTID:2178360242980549Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
The main content of this paper is the realization of face detection system based on AdaBoost algorithm. Face is a wide-open information, and we can get a person's personal information such as sex,age,expression though face. As one of the most important visual objects in image and video, face occupies high status in computer vision, pattern recognition and multimedia technology. Face detection is a process to find information of the face (if existed) like location, size and pose from the input information. The input of a face detection system could be images containing faces, and the output is the information of face like number, location, post and whether it contains face. That is, to use some algorithm to confirm weather the input image contains face and locates it if the face is existed.We can classify the methods of face detection into four categories: Knowledge-based method, Feature-based method, Template matching method and Appearance-based method. Among these methods there are some classy ones like neural network method, eigenface method, example-based method, support vector machine method and hidden markov model method.There are four criterions for evaluating these methods: hit rate, false alarm rate,detecting speed and robustness. Hit rate is the ratio of the number of faces that have been accurately detected and the number of faces that the input image contains. The higher hit rate stands for the stronger ability of the algorithm. False alarm rate is the ratio of the number of wrong faces and the number of non-faces contained in input image. Detecting speed is an important guide line to evaluate a face detection method while robustness is to evaluate the adapt ability of a method. Most algorithms can not detect faces that have any revolving angle. Generally it has to be restricted to some bound.AdaBoost algorithm is an improvement to Boosting algorithm. It is an iterative algorithm. Its main idea is to train different classifiers (weak classifiers) based on the same training set and aggregate these classifiers into a stronger classifier (strong classifier). Paul Viola and Michael Jones applied AdaBoost algorithm in face detection in 2001. The main idea is to train a same classifier (weak classifier) based on the different training sets and aggregate these classifiers into a strong classifier.AdaBoost algorithm adjusts the weight of every sample to get different training sets. At first, the weight of every sample is the same, that is U1(i)=1/n (i=1, ..., n) and n is the number of samples. We can get a weak classifier h1 from this distributing. Then for the wrong samples that h1 detects we should increase their weights and for the right samples we should decrease their weights. After this the wrong samples are popped out then we can get a new sample set. We can train this new sample set by the weak classifier h1 and get new weak classifier h2. Keep doing this and after T cycles we can get T weak classifiers and aggregate these T classifiers according to some weights into a strong classifier.In this paper we use AdaBoost algorithm which utilizes Haar feature to decect face. Also we use the resource developed by Intel OpenCV to develop a high hit rate and real time face detection system. The main functions are:①It can detect front faces (profile faces ) from static( colored) image and mark them by red(blue) rectangle, and the format of the image could be bmp, dib, jpeg,jpg,jpe, png, pbm, pgm, ppm and so on;②It can detect frames that contains face(including front faces and profile faces) from avi video file and save these frames to hard disk by form of picture;③It can detect and track face from camera by real-time and save the video to hard disk by form of avi video file.We consult many functions offered by OpenCV in developing the system. Compare with the traditional"pyramid"approach, a new detection strategy in the face detection process is adopted: zoom the detection window stage by stage, then match the pattern of the image in the detection window. This strategy can avoid direct zoom and transform the image, reduce the computation and improve the speed of detection and the accuracy.Also we can see AdaBoost algorithm has some defects itself. It is not self-correct. So there may be some bad conditions like repeated detect, inaccurately detect and missed detect during the application. We can use some new assistant methods to avoid the repeated detect and inaccurately detect, as skin color model method and face geometry feature method to estimate the region that detected by AdaBoost algorithm and exclude the non-face regions. For the third condition we use front face classifier and profile face classifier in OpenCV to scan the image individually. In this way we can reduce the number of faces caused by missed detect and improve the hit rate of the system. But it increases the probability that the two other conditions may show up and decreases the efficiency of the system.
Keywords/Search Tags:Realization
PDF Full Text Request
Related items