您现在正在浏览:首页 > 职教文章 > 职教论文 > 基于OPENCV的人脸检测

基于OPENCV的人脸检测

日期: 2021/1/9 浏览: 4 来源: 学海网收集整理 作者: 江苏安全技术职业学院 江丽丽

摘要:在生物特征识别技术中,人脸识别不同于指纹识别,人脸识别是最自然,最直接,最友好的识别方法。人脸检测和识别在身份认证,视频监控,公安系统等领域有着广泛的应用。本文从人脸检测方案、系统设计以及所运用的主要算法介绍了如何进行基于OPENCV的人脸检测。
   关键词:人脸识别 级联分类器
  
   一、人脸检测方案
   在生物特征检测技术中人脸检测不同于其他的计算机视觉检测技术,人脸检测通过将视觉信号转换为机器能够检测的数字信号,从而使用计算机来进行判断处理。计算机通过摄像头看到的东西就是一堆由数字组成的矩阵,这些数字表明了物体发出的光的强弱,摄像头的光敏元件将光信号转化成数字信号,将其量化为矩阵。
   如何判断摄像头中检测到的是一张人脸,计算机是通过对颜色数据的判断来进行判断的。彩色图片中的像素是由许多色彩通道组成的,所有的彩色图片由RGB三通道组成,灰度图都是由RGB组成,如果某个点由6位组成,该像素的通道值为2^6=64。那么该像素的总和通道值为3*6=18位,则该图片由18位色彩值组成的。对18位的图片进行转换我们就需要先对图片进行前期的转换,即是将彩色图片转换为灰度图片,通过这样的转换后可以减低数据量。先将图片转化为灰度图,然后将这个灰度图的对比度增高,这样可以使得图片本来暗的地方更暗,亮的地方更亮一些。这样处理以后,图片就更容易被算法设别出来了。
  

基于OPENCV的人脸检测

   图1 级联分类器
   在扫描待检测图片的时候,以边界特征中的(a)为例,计算机中的图片是一个数字组成的矩阵,程序先计算整个窗口中的灰度值x,然后计算矩形框中的黑色灰度值y,然后计算(x-2y)的值,得到的数值与x做比较,如果这个比值在某一个范围内,则表示待检测图片的当前扫描区域符合边界特征(a),然后继续扫描,因为是基于视频流的目标检测,由于事先我们无法预测要检测的目标的大小,这就要求我们的级联表中的分类器具有按比例增大(或者缩小)的能力。当小的窗口移动完整个待检测图片没有发现目标时,我们可以调整分类器的大小,然后继续检测,直到检测到目标或者窗口与待检测图片的大小相当为止。
   二、人脸检测系统设计
   因为噪声会对视频图像产生干扰,为了提高检测精确度,经常使用的自适应加权均值滤波方法对视频图像进行去噪预处理,通过减弱噪声来提高检测精度。然后,将降噪后视频图像再进行一些优化,对后面进行图片的检测、检测有很大的帮助。
  
基于OPENCV的人脸检测

   图2 系统框图
   当前许多视频图像中的运动目标检测系统中大都采用滤波技术来减弱噪声。中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个临域中各点值的中值代替,让周围的像素值接近的值,从而消除孤立的噪声点。方法是去某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。二维中值滤波输出为g(x,y)=med{f(x-k,y-l),(k,l∈W)} ,其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二维模板,通常为2*2,3*3区域,也可以是不同的的形状,如线状,方形,圆形,十字形,圆环形,菱形等。例如平滑锐化滤波就含有取中值和样点计算的过程,另一种方法是先计算周边像素灰度的平均值,若所考虑像素的灰度与此平均值的差异超过一定临界值时,则判定该像素为干扰,该点的值应采用先前计算所得的平均值来替代,若不超出临界则用该点实际像素的灰度值作为滤波器的输出,此种方法更接近于人眼的实际感觉。
   三、使用技术
   开始时人脸检测技术只能用在对单一图片进行检测,经过科学家不断的改进和发展,现在已经发展到能够动态实时的对人脸进行检测与检测。目前,一些学者提出了向三维空间的人脸检测与检测方向研发,常用的方法有子空间发和meanshift算法。
   1、子空间法
   子空间法即基于特征空间的方法,子空间法的工作原理是根据人脸区域图像变换到某一个特定的空间,通过线性计算来区分出人脸和背景,利用统计分析和线性计算来找出图片中的人脸样本和非人脸样本,综合两者之间的特征来构建分类器,再利用构建好的分类器来进行人脸的检测。子空间方法主要包括两类,主分量分析(PCA)方法和线性判别分析(LDA)方法。
   2、 meanshift算法
   meanshift算法利用概率密度的梯度爬升来寻找局部最优,meanShift利用均值漂移,在聚类、图像平滑、分割、跟踪等方面应用很广泛,输入一个图像的范围,然后根据反向投影图和输入的方框进行meanshift迭代,它是向重心移动,即向反向投影图中概率大的地方移动,所以始终会移动到目标上,meanshift算法是一个变步长的梯度上升算法。
  
   参考文献:
   [1]陈海涛,潘静.基于Adaboost人脸检测技术浅析[J]. 电子世界,2018,(12):91-92.
   [2] 李娥.人脸检测方法综述[J]. 信息技术与信息化,2018,.
   [3] 聂然.基于OpenCV的人脸检测与跟踪算法实现[D]. 安徽理工大学,2017:1-75.

返回顶部