作者简介:聂海涛(1986-),男,博士研究生.研究方向:图像处理.E-mail:kelek2@126.com
针对传统的人脸识别系统在复杂背景情况下不能实时准确进行人脸识别的问题,提出一种基于快速尺度不变特征变换(SIFT)算法结合模糊控制的人脸识别方法.首先,由SIFT特征点子区域方向直方图计算得到4个新角度,代表特征点方向信息.然后,在特征匹配阶段,根据SIFT特征点角度信息以及大小限制特征点匹配范围,简化算法复杂程度,得到快速SIFT算法.最后,引入闭环模糊控制系统,减少SIFT特征误匹配,提高人脸识别率.实验结果表明:基于快速SIFT算法的人脸识别方法平均识别时间提升了40%,在发生光照,姿态,表情等均有变化的复杂环境下人脸识别精度提高10%.
Most traditional face recognition systems can not be implemented for fast and accurate face recognition under cluttered background. To solve this problem, an improved Scale Invariant Feature Transform (SIFT) method and a fuzzy control strategy are proposed. First, four new angles are computed from the sub-region orientation histogram, which represent the orientation information of each SIFT feature. Then, the progress of face recognition is limited in a range based on the new angles, meanwhile the SIFT features are split into two types according to the size; only the features of the same type are computed, leading to significant simplification of the algorithm, thus a fast SIFT algorithm is obtained. Finally, a fuzzy closed loop control system is applied to increase the accuracy of face recognition, which leads to a decrement of the incorrect matching. The results show that the computing speed of the improved SIFT method is raised more than 40% comparing with the original SIFT algorithm and the recognition rate is raised 10% even under the clutter conditions where the illumination, posture or expression are changing.
在过去的二十年间人脸识别技术取得了显着进步, 涌现出许多经典的人脸识别算法.麻省理工学院的Turk和Pentland[1]在1991年提出了基于主成分分析(Principal component analysis, PCA)算法的"本征脸"(Eigenface)人脸识别方法, 成为FERET人脸库性能测试的基准算法, 它通过计算人脸图像的协方差矩阵获取其特征向量和特征值, 然后根据特征值从大到小选择一定数量的能代表人脸特征的主要分量, 舍弃次要分量, 从而实现了人脸图像降维和特征提取.Belhumeur等[2]提出了基于线性判别分析(Linear discriminant analysis, LDA)算法的Fisherface人脸识别方法, 获得尽量大的类间离散度和尽量小的类内离散度, 有效提高了所提取特征的鉴别性能.在此基础上, Comon[3]提出了基于独立成分分析(Independent component analysis, ICA)算法的人脸识别方法, 去除了二阶相关, 同时最大限度地去除了高阶相关, 某些情况下在FERET人脸库上取得了比PCA更好的识别效果.以上3种典型算法可以归纳为基于全局的人脸识别方法, 这类方法旨在将整个人脸区域作为系统输入并派生出一个显着的特征子空间, 用以分析不同人脸图像之间的相似性.但是当欲识别人脸在图像中发生局部遮挡, 旋转, 尺度变化以及光照变化等复杂背景干扰时, 这类算法鲁棒性降低, 人脸识别效果无法满足实际应用的要求.与此相对, 基于局部特征的人脸识别方法提取人脸局部区域特征并构建人脸特征描述符, 所提取的特征具有尺度, 旋转及照度不变特性, 对噪声干扰和局部遮挡具有较好的稳定性.典型的基于局部特征的人脸识别方法有:Gabor特征人脸识别方法[4], Gabor特征能够获取人脸图像不同朝向与不同尺度的描述, 但Gabor特征的获得需要将图像与一组不同方向不同尺度的Gabor核进行卷积, 计算量庞大; 基于局部二值模式(Local binary pattern, LBP)算法的人脸识别方法[5], 是一种有效的非参数化的图像局部纹理描述算法, LBP运算方法简单快速, 但是在发生较强非均匀光照噪声干扰下识别准确率降低.2004年, Lowe[6]提出了尺度不变特性变换(Scale invariant feature transform, SIFT)算法, SIFT算法提取的特征点不仅对人脸图像缩放, 平移和旋转具有一定的不变性, 而且对光照变化以及仿射和投影具有鲁棒性, 复杂背景下基于SIFT算法的人脸识别方法应用前景广泛, 但是由于SIFT算法计算程度复杂, 使其很难满足人脸识别系统的实时性要求.
本文提出一种基于快速SIFT算法和模糊控制的人脸识别方法.① 扩展了人脸局部特征点:由SIFT特征点子区域方向直方图计算得到4个新角度, 代表特征点方向信息; ② 快速SIFT特征匹配:根据SIFT特征点角度信息以及大小限制特征点匹配范围, 简化算法复杂程度, 得到快速SIFT算法; ③ 引入闭环模糊控制系统:在快速SIFT算法基础上, 减少误匹配, 有效提高了复杂背景下的人脸识别精度.
1999年Lowe首次提出了SIFT算法, 在此基础上于2004年完善总结.生成SIFT算子主要分为3个步骤:首先建立图像尺度空间并寻找极值点, 然后由图像局部特征计算特征点方向信息, 最终得到对尺度和方向无关的SIFT特征描述算子.
在SIFT特征点提取阶段, 建立尺度空间并从中寻找极值点.尺度空间
式中:
在Lowe的算法中, 中间的检测点与它同尺度的8个相邻点和上下相邻尺度对应的9× 2个点共26个点比较, 以确保在尺度空间和二维图像空间都检测到极值点.如果一个点在DoG尺度空间本层以及上下两层的26个领域中是最大或最小值时, 就认为该点是图像在该尺度下的一个特征点.
传统SIFT算法利用图像的局部特征给SIFT特征点分配基准方向, 使SIFT描述符具有旋转不变性.使用图像梯度信息求取局部结构的稳定方向, 在高斯差分金字塔中检测出特征点, 采集其所在高斯金字塔图像3σ 邻域窗口内像素的梯度和方向分布特征.在完成特征点的梯度计算后, 使用直方图统计邻域内像素的梯度和方向.梯度直方图的范围是0° ~360° , 每10° 一个柱, 共36个柱, 方向直方图的峰值方向作为该特征点的方向, 一个特征点可能会被指定多个方向增强匹配的鲁棒性.最终建立特征点的特征描述符, 使用在特征点尺度空间内4× 4的窗口中计算8个方向的梯度信息, 共4× 4× 8=128维向量表征, 由此对每一个SIFT特征点构建一个128维的描述符.此时, SIFT特征向量已经去除了尺度, 旋转和几何变形因素的影响, 将这个向量归一化, 就可进一步去除光照的影响.
传统SIFT算法的主要不足是高维数的SIFT特征描述符, 导致算法实时性较差.为此, 本文提出一种快速SIFT算法, 基于数学方法, 主要从SIFT特征点大小及角度两方面属性分类匹配提高算法速度.
SIFT算法在图像尺度空间中寻找极值点, 文献[7]统计大量图像, 提出一副图像中提取的SIFT极大特征值点与极小特征值点数目基本相等, 并且正确匹配的特征点全部来自同一类型的SIFT极值点.因此, 将提取的SIFT特征点分成极大特征值点组与极小特征值点组两组.在特征匹配阶段, 只将同一类型的特征点进行匹配, 这样, 在不损失正确匹配特征点的前提下, 有效提高了算法速度.图1为同一人脸图像提取的SIFT极大特征值点与极小特征值点.
本节通过扩展SIFT特征点角度属性, 简化算法的计算复杂程度.由SIFT特征点子区域方向直方图计算得到4个两两相互独立的新角度, 依据角度信息限制匹配范围, 避免了比较大量的始终无法匹配的SIFT特征点, 能够有效提升算法速度, 具体方法如下:将特征点周围图像区域分成矩形小块的子区域, 为每一个子区域建立方向直方图, 根据梯度信息计算SIFT特征点角度[8].计算特征点子区域内所有梯度方向的向量和, 将其与水平轴之间的夹角
为了保证SIFT特征描述符具有旋转不变性, 所求得角度
首先, 检验角度θ ij 是否满足均匀分布条件.角度{θ ij; i, j=1, , et al., 4}由式(2)计算得到:
式中:magij (k)和oriij (k)分别为j^th 子区域直方图的kth分量梯度的幅值和方向.
定义角度θ ij 为随机变量Θ ij[9] .从800幅测试图像提取约106个SIFT特征点估算每个角度的概率密度函数.将角度空间区域[-180° , +180° ]分为36子区域, 每10° 为一个子区域, 通过计算每个子区域的角度为
然后, 验证所提出的角度θ ij 是否满足两两相互独立条件, 采用皮尔逊积矩相关系数法[10] 度量每两个角度之间的相关性.假设两个随机变量X, Y, 其期望值和方差分别为μ x , μ y , σ x 及σ y, 则这两个变量的皮尔逊积矩相关系数为:
式中:
每两个角度
计算结果显示, 由相邻的子区域方向直方图计算得到的角度是高度相关的; 而由非邻近子区域方向直方图计算得到的角度没有或只有很低的相关性.造成这一结果的原因是由于梯度样本在相邻子区域方向直方图中的三线性插值导致的, 每一个样本梯度以1~d的权重加到每个子区域方向直方图中, 其中d为从相应子区域的中心到样本的距离.因此, 在16个角度中, 最多且只有4个角度能满足两两相互独立条件.
最终选定4个角度ϕ 1=θ 11, ϕ 2=θ 14, ϕ 3=θ 41 及ϕ 4=θ 44作为扩展的SIFT特征点角度, 代表SIFT特征描述符方向属性.
应用SIFT方法进行人脸识别, 实际上就是一个匹配原人脸图像特征点与欲识别图像特征点的过程.在所有可能的匹配特征之间, 只存在一定数量的正确匹配, 根据特征点角度属性对SIFT特征点进行分类, 只对两个角度差小于一个指定阈值的特征点进行比较, 避免比较所有可能的匹配特征点, 可有效简化算法计算的复杂程度.
SIFT特征点的4个角度组成一个4维随机角度向量
由此得到2个SIFT特征点之间的4个随机向量差
对2.2节800幅图像进行测试实验, 分别得到正确匹配和错误匹配的向量差
向量差
在应用快速SIFT算法进行人脸识别时, 当人脸发生光照, 姿态, 表情均有变化的复杂环境下, 误匹配数量增加, 识别准确率降低.为此, 在快速SIFT算法基础上, 提出基于扩展SIFT特征点的闭环模糊控制系统, 如图4所示.
依据2.1节对SIFT特征点大小分类, 原人脸图像提取的特征点集合
SIFT特征匹配时只比较相同类型的特征点子集, 因此, 得到两组独立的正确匹配:
应用随机抽样一致算法(RANSAC)[11], 估算这两组正确匹配之间的仿射变换:
根据两个仿射变换进行误匹配监测, 所估算的两组仿射变换均受到人脸在欲识别图像中产生噪声的干扰影响, 仿射变换之间的差异
估算仿射变换矩阵需要两张图像之间至少3对非线性的匹配点, 为了计算两个仿射变换T1 和T2, 假设p1 (a, a), p2 (a, -a), p3 (-a, a)是xy坐标系内3个非线性点坐标, 这里a是一个随机值, 每一个变换后的点通过对应的仿射变换映射:
式中:
图像之间的差异
式中:d(p1, p2)为两个点p1 (x1, y1)和p2 (x2, y2)之间的欧氏距离.
仿射变换之间的差异被用作一个指示匹配质量的参数.人脸识别系统难以建立精确数学模型, 因此, 结合模糊控制系统增强匹配的稳定性.将每一个仿射变换与单位矩阵的差异传递给模糊控制器, 用于改进匹配结果.模糊控制器的任务是选择最佳的变换, 并由此改进原图像, 用于下一次匹配过程.本文采用基于Mamdani模型的模糊控制方法[12], Mamdani方法具有模糊理论处理复杂对象的优势, 不过度依赖于被控对象的精确数学模型, 对非线性不确定系统有较好的控制效果, 自适应能力强.Mamdani模糊控制规则如下:
式中:xj 为第j个输入变量, j=1, 2, 3, , et al., k; Aji 为xj 采用的模糊子集; yi 为第i条规则对应的局域输出; Hi 为yi采用的模糊子集.
采用Mamdani模糊控制器时, 本文选取由式(10)计算的变换矩阵与单位矩阵之间的差异emax/min和差异变化率Δ emax/min作为模糊规则输入变量:
式中:
模糊规则中输出
采用三角模型函数实现模糊化, 对于emax/min和Δ emax/min输入语言变量分别设置为{S(小), M(中), L(大)}和{Z(零), N(负), P(正)}, 输出语言变量设置为{VS(极小), S(小), M(中), L(大), VL(极大)}, 则输入和输出变量的隶属函数如图5所示.根据对2.2节统计的800幅测试图像进行处理, 总结得到较为合理的模糊规则控制表, 如表1所示.最后进行逆模糊化, 采用质心方法.寻找一个点, 这个点所在的垂直线能够将隶属函数分割成相等的两部分, 计算得到重力质心
基于模糊控制系统的人脸识别方法有效地增加了识别过程中正确匹配特征点数量, 提高了人脸识别在复杂背景下的抗干扰能力.
为了比较快速SIFT算法与原SIFT算法, 本文在CUHK Face Sketch database(CUFS)[13]人脸画像库中进行SIFT特征点匹配实验.CUFS数据库主要用于原人脸图像与人脸素描图像的分析与识别, 由3部分组成:Chinese University of Hong Kong(CUHK)student database的188组人脸图像, AR database的123组人脸图像的和XM2VTS database的295组人脸图像, 共606组人脸图像.每一张人脸图像对应一张人脸正面姿势, 正常光照条件, 中性表情下的素描人脸图像.图6为3组CUFS数据库人脸图像.
分别应用快速SIFT算法与原SIFT算法进行人脸特征点匹配实验, 快速SIFT算法应用VC++语言编写, 通过Visual Studio 2012软件编译.实验计算机配置为:Intel Core2 CPU, 2.6 GHz, 2 G内存.表2为快速SIFT算法与原SIFT算法匹配时间比较.实验结果表明, 快速算法速度平均提升40%.
提出了一种快速SIFT算法结合模糊控制的人脸识别方法, 根据SIFT特征点大小以及角度将特征点扩展分类, 简化了算法计算复杂程度, 提高了算法运算速度.引入闭环模糊控制系统, 有效减少了误匹配, 增强了人脸识别精度.实验结果表明, 改进方法与原SIFT算法相比, 算法速度平均提升40%, 人脸识别精度提升10%, 保证了在复杂背景下的人脸识别的效率和精度.
该方法还需要在以下几个方面进行改进:① 所提出的快速SIFT算法主要基于数学方法简化其计算复杂程度, 下一步工作将结合图形处理器设计人脸识别系统, 以达到更快速的人脸识别要求.② 应用模糊控制系统实现摄像机标定, 进一步提高人脸识别系统精度.
The authors have declared that no competing interests exist.
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|
[11] |
|
[12] |
|
[13] |
|
[14] |
|