一.人脸检测算法原理
Viola-Jones人脸检测方法
参考文献:Paul Viola, Michael J. Jones. Robust Real-Time Face Detection[J]. International Journal of Computer Vision,2004,57(2):137-154.
该算法的主要贡献有三:
1.提出积分图像(integral image),从而可以快速计算Haar-like特征。
2.利用Adaboost学习算法进行特征选择和分类器训练,把弱分类器组合成强分类器。
3.采用分类器级联提高效率。
二.OpenCV检测原理
OpenCV中有检测人脸的函数(该函数还可以检测一些其他物体), 甚至还包含一些预先训练好的物体识别文件。
所以利用这些现成的东西就可以很快做出一个人脸检测的程序。
主要步骤为:
1.加载分类器。
用cvLoad函数读入xml格式的文件。文件在OpenCV安装目录下的“data/haarcascades/”路径下。
http://blog.csdn.net/yang_xian521/article/details/6973667推荐使用haarcascade_frontalface_atl.xml和haarcascade_frontalface_atl2.xml
2.读入待检测图像。读入图片或者视频。
3.检测人脸。
下面介绍利用opencv自带的分类器进行人脸检测的步骤:
一.人脸的Haar特征分类器是什么
二.在哪找人脸的Haar特征分类器
三.怎么用人脸的Haar特征分类器
四.人脸识别示例代码
五.人脸识别程序运行结果
一.人脸的Haar特征分类器是什么
人脸的Haar特征分类器就是一个XML文件,该文件中会描述人脸的Haar特征值。当然Haar特征的用途可不止可以用来描述人脸这一种,用来描述眼睛,嘴唇或是其它物体也是可以的。
二.在哪找人脸的Haar特征分类器
OpenCV有已经自带了人脸的Haar特征分类器。OpenCV安装目录中的\data\ haarcascades目录下的haarcascade_frontalface_alt.xml与haarcascade_frontalface_alt2.xml都是用来检测人脸的Haar分类器。这个haarcascades目录下还有人的全身,眼睛,嘴唇的Haar分类器。读者可以仿照本方的例子来试验下效果看看。
三.怎么用人脸的Haar特征分类器
使用人脸的Haar特征分类器非常之简单,直接使用cvHaarDetectObjects