计算机视觉特征点检测(3) —— Haar特征描述算子
理论介绍
Haar分类器训练的五大步骤
- 准备人脸、非人脸样本集
- 计算特征值和积分图
- 筛选出T个优秀的特征值(即最优弱分类器)
- 把这T个最优弱分类器传给AdaBoost进行训练
- 级联,也就是强分类器的强强联手
以20*20窗口为例,有78460的特征数量,筛选出T个优秀的特征值(最优弱分类器),然后把这T个最优弱分类器传给AdaBoost进行训练得到一个强分类器,最后将强分类器进行级联。
Harr-like 特征
Haar(哈尔)特征分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。如下图:
对于图中A,B,D这类特征,特征数值计算公式为: v = ∑ 白 + ∑ 黑 v=\sum白 + \sum黑 v=∑白+∑黑,对于C,特征数值为: v = 2 ∗ ∑ 白 + ∑ 黑 v=2*\sum白 + \sum黑 v=2∗∑白+∑黑。通过改变特征模板的大小和位置,可在图像子窗口中穷举出大量的特征。上图的特征模板称为“特征原型”,特征原型在图像子窗口中扩展(平移伸缩)得到的特征称为“矩形特征”,矩阵特征的值称为“特征值”。
矩形特征可位于图像任意位置,大小也可以任意改变,所以矩形特征值是矩形模板类别、矩形位置和矩形大小这三个因素的函数。故类别、大小和位置的变化,使得很小的检测窗口含有非常多的矩形特征,如:在24*24像素大小的检测窗口内矩形特征数量可以达到16万个。
Haar-like特征的计算——积分图
积分图就是只遍历一次图像就可以求出图像中所有区域像素和的快速算法,大大的提高了图像特征值计算的效率。
位置 ( i , j ) (i, j) (i,j)处的值 i i ( i , j ) ii(i,j) ii(i,j)是原图像(i,j)左上角方向所有像素 f ( k , l ) f(k,l) f(k,l)的和:
i i ( i , j ) = ∑ k ≤ i , l ≤ j f ( k , l ) i i ( i , j ) = ∑ k ≤ i , l ≤ j f ( k , l ) ii(i,j) = \sum_{k\leq i, l\leq j} f(k,l)ii(i,j)=\sum_{k\leq i, l\leq j} f(k,l) ii(i,j)=k≤i,l≤j∑f(k,l)ii(i,j)=<