opencv人脸检测实现(使用MFC做可视化)(一)

本文介绍了基于OpenCV 2.4.9和MFC实现人脸检测的方法,包括Haar分类器原理、AdaBoost训练、级联分类器、积分图加速以及可视化界面设计。通过自训练的xml文件,实现在白背景视频上优秀的人脸检测效果,但在其他场景下表现不佳。提出改进算法效率的三种策略。
摘要由CSDN通过智能技术生成

(本篇主要为原理介绍以及效果和结果的讨论,源代码解析在下一篇)

一.实现方法

     VS2010可视化程序界面设计:采用MFC

     人脸检测部分:采用OpenCV 2.4.9

1 检测方法

     采用基于统计的人脸检测方法——Haar分类器。

     Haar分类器=Haar-like特征+AdaBoost + 级联 +积分图

     ①Haar-like特征做检测。

     ②使用AdaBoost算法训练区分人脸和非人脸的强分类器。

        (此处利用自己的白视频照片做训练集,来进行训练,后附上自己的训练过程)

     ③使用筛选式级联把强分类器级联到一起,提高准确率。

      ④使用积分图对Haar-like特征求值进行加速

1.1 得到Haar-like特征,区分人脸和非人脸部分

    Lienhart等人提出的Haar-like特征如下图





获取Haar-like特征:

 拿出其中任意一个矩形框去移位滑动,扫描人脸的区域,用白色部分像素值减去黑色部分像素值,结果即为人脸此区域的量化特征值,扫描完全脸,即得到人脸的量化特征值(矩阵特征),做初步弱分类器。

 需要检测时,再对待检测图片做相同操作,最终将所得量化特征值进行对比,相同则为人脸,不同则为非人脸区域,且越不同越好。

1.2 利用AdaBoast算法得到准确的矩阵特征组合(强分类器)


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值