使用Haar级联进行人脸检测
使用CAMShift算法进行人脸追踪
使用光流法进行人脸追踪
01、背景知识
1.1●Haar级联简介
Haar级联是基于Haar特征的级联分类器。那么级联分类器是什么?级联分类器就是把弱分类器(性能受限的分类器)串联成强分类器的过程。建立一个实时系统的前提是,需要保证分类器足够简单。但简单分类器不能达到足够精确,如果想要更精确,运行速度就会变慢且变成计算密集型。在机器学习中,速度和精确度两者之间的取舍是很常见的。为了解决这一问题,可以串联一群弱分类器,形成一个统一的强分类器。弱分类器不需要很精确,而串联后形成的强分类器具有高精确度。
Haar分类器又称为Viola-Jones识别器,是Viola和Jones分别于2001年、2004年提出和改进的。Haar分类器由Haar特征提取、离散强分类器、强分类级联器组成。其核心思想是提取人脸的Haar特征,使用积分图像对特征进行快速计算,然后挑选出少量关键特征,送入由强分类器组成的级联分类器进行迭代训练。
1.2●问题描述
本例使用Haar级联来检测视频中的脸部。Paul Viola和Michael Jones在2001年的标志性研究论文中首先提出了这种目标检测方法。论文描述了一种可用于检测任何物体的、有效的机器学习技术,使用了简单分类器的增强级联。这种级联可以用于构建高精度执行的整体分类器,因为它规避了构建高精度执行的单步分类器的过程,构建这样一个健壮的单步分类器是一个计算密集型的过程。
2.1●Mean Shift简介
Mean Shift(均值偏移,也叫均值漂移或均值平移)的概念最早是由Fukunaga等人于1975年在The estimation of the gradient of a density function with application in pattern recognition这篇关于概率密度梯度函数的论文中提出来的,其最初含义正如其名,就是偏移的均值向量。但随着Mean Shift理论的发展,其含义也发生了变化。Mean Shift在聚类、图像平滑、图像切割和跟踪方面得到了较广泛的应用。
Mean Shift算法是一个迭代的步骤,首先计算出当前点的偏移均值,然后开始移动该点直到偏移均值,接着作为新的起始点继续移动,这样迭代下去,直到满足条件时结束。
Mean Shift的一个问题是不允许随着时间的推移而改变目标的大小。一旦画出一个边框,无论对象距离摄像机有多近或多远,这个边框都会保持不变,这就是需要使用CAMShift的原因,因为它可以使边框适应对象的大小。