AdaBoost 算法是一种快速人脸检测算法,它将根据弱学习的反馈,适应性地调整假设的错误率,使在效率不下降的状况下,检测正确率获得了很大的提升。算法
系统在技术上的三个贡献:学习
1.用简单的Haar-like矩形特征做特征,可快速计算spa
2.基于AdaBoost的分类器设计设计
3.采用了Cascade(分级分类器)技术提升检测速度blog
人脸的特征表示方法——Haar-like矩形特征效率
矩形特征的值是全部白色矩形中点的亮度值的和减去全部灰色矩形中点的亮度值的和,所获得的差循环
具体特征能够用一个五元组表示 r(x,y,w,h,style)程序
好比:r(2,2,4,2,A)表示下面的特征方法
特征值即为白色四个像素与黑色四个像素的差值im
Haar-Like特征的快速计算
矩形特征的计算
- 像素点1的积分值是矩形A中全部点的亮度值的和
- 像素点2的积分值是A+B
- 像素点3的积分值是A+C,
- 像素点4的积分值是A+B+C+D.
- 矩形D内像素积分值:
计算流程
AdaBoost用于人脸模式分类
输入——
1.训练用人脸和非脸样本
2.指定要挑选出来的弱分类器的数目T——这也是程序循环的次数
3.利用先验知识初始化权值向量——通常能够平均设置
Adaboost学习算法流程