袁帅英, 郭大波
(山西大学 物理电子工程学院, 山西 太原 030006)
一种基于彩色+深度的人脸识别算法
袁帅英, 郭大波
(山西大学 物理电子工程学院, 山西 太原 030006)
本文提出了一种基于彩色+深度(RGB-D)的人脸识别方法, 以提高识别率. 首先从Kinect获得一个具有丰富的头部姿势变化、 光照变化等不同条件下的彩色+深度(RGB-D)图像, 将获取的同一个人在不同条件下的多个图像看做一个图像集; 其次将Kinect获得的原始深度数据用于姿态估计和脸区域的自动裁剪. 根据估计的姿态将一组脸部图像集分成多个子图像集. 对于分类, 本文提出了一种基于块的协方差矩阵表示图像模型在黎曼流形上一个子图像集的方法以降维, 并使用SVM模型分别学习每个子图像集, 然后将所有子图像集的结果相融合得出最终的识别结果. 本文所提出的方法已经在包含不同条件下超过5 000幅 RGB-D图像数据集中进行了评估. 实验结果表明本文算法可实现高达98.84%的识别率.
k-均值; 局部二进制模式; 支持向量机; 黎曼流形; 图像集分类; 人脸识别算法
人脸识别历来被视为是基于单一图像的分类技术[1]. 随着科技日新月异的发展和视频捕捉技术成本的逐步降低, 一个人的多幅不同图像也变得越来越容易获得, 这里我们把一个人的多幅不同图像定义为一个图像集. 为了根据一个图像集做出相关的识别或者分类的决策, 基于图像集的模型和分类技术近来已经引起研究者的广泛关注.
目前的图像集分类技术绝大多数是基于2D图像的[2], 图像集是一个复杂的非线性流形, 并在不同的条件下发生变化, 包括任意姿势、 改变光照条件、 表现畸形、 用手或物体有意遮挡和利用服装变化进行伪装等. 现有的关于二维图像集分类过程包括两个步骤[2], 分别使用固定大小的窗口进行人脸检测和人脸跟踪. 由于监测和跟踪存在误差, 所以检测窗口并不总是覆盖所有图像集中相同的人脸区域, 这就会引入一些不必要的变化, 甚至是相同类别的图像最终判别为不同图像, 从而导致相同类别的图片最终映射为特征集上不同位置上的点, 导致产生不必要的噪声, 从而降低分类的精度.
在这些条件中, 姿势和角度变化是最具挑战性的, 我们可将不同姿态进行数据分集处理. 对于光照条件干扰问题, 三维数据模型是最有效的解决途径[3]. 综合考虑, 微软推出的kinect传感器[4]是捕获三维图像最适合的工具, 它可以很快地同时捕获2D(RGB图像)和深度图像(Depth)[5], 深度数据是基于红外的, 本质上不受光照变化的影响[4]. 使用kinect获得的深度数据可以轻易地从背景和相同的人脸区域通过多幅图像裁剪比较精确地裁剪出人脸区域. 本文的算法可解决由于受光照变化使得基于RGB图像的人脸识别性能下降的问题.
本文的目的是着手处理一组基于RGB-D图像集的分类问题. 将一个图像集分成多个子图像集可以有效解决视角变化所带来的问题. 更具体地说, 本文使用随机森林回归技术[6]可以估计一个三维人脸并且通过估计姿势将一个图像集中的图像分离成若干集群. 每个集群中的图像被视为一个子图像集, 然后通过我们提出的基于块的协方差矩阵算法建模. 这个子图像集的结果表示为黎曼流形上的点[3]. 对于分类, 可使用一个黎曼核函数将黎曼流形上的点嵌入到再生核希尔伯特空间, 为每个子图像集学习生成单独的SVM模型. 本文所提出的方法在Biwi Kinect人脸面部数据库上进行了验证[7].
本文的主要贡献包括: ① 从低分辨率kinect获取数据进行人脸识别不同于基于二维RGB图像的分类算法, 这种算法有效地使用了从Kinect传感器获得的深度数据, 增加了信息维度; ② 使用深度数据将集合中的图像集群为子图像集, 从而解决了姿势变化问题; ③ 引入一个有效的基于块的协方差矩阵表示图像集模型以降低维度,因此很具计算优势; ④ 使用黎曼流形上的SVM分类.
图像集分类技术通常包含两个主要的步骤: 一是在图像集中找到一些具有代表性的图像进行训练得到特征向量; 二是为这些特征向量定义合适的距离度量. 根据使用的表征类型, 现有的二维图像集方法可以分为参数模型方法和非参数模型方法[8]. 参数模型方法是近似一个图像集的某种统计分布模型的参数, 然后测试两组图像之间的相似性(两个分布参数的差异), 例如K-L散度[9]. 若测试和训练图像集之间不存在紧密联系, 则此方法就不能达到理想结果, 甚至会失败. 另一类图像集分类方法为非参数方法, 没有像参数方法那样做关于数据统计分布的假设, 据报道该方法的试验结果取得了较理想的效果, 近来发展也比较迅速[10].
基于非参数模型的方法代表了很多不同的处理图像集的方法, 包括自适应学习样本集[11]、 线性子空间[12]、 混合子空间[13]和复杂的非线性流形等方法[14]. 基于这种类型的表示方法, 不同的距离度量决定了图像集之间的距离. 比如, 图像集与图像集之间的距离可以看作是具有代表性的图像集之间的欧式距离. 为了通过线性子空间确定具有代表性图像集之间的距离, 文献中多使用特征角, 两个子空间之间的特征角d∶0≤θ1≤…≤θd≤π/2是由一个空间中的任意向量与第二个子空间中的任意向量所形成的最小角来定义的. 基于特征角方法的例子有互子空间方法(MSM)[15]和正交子空间方法(OSM)[16], 互子空间方法是使用主成分分析法(PCA)[17]计算两个子空间之间特征角的最小值; 正交子空间方法是一个子空间中的每个向量都与另一个子空间中的所有向量正交从而找到特征角.
关于非参数方法研究出很多不同的分类策略, 都是为了对类中的图像集进行判别. 这些分类策略大致分为两种类型: 首先, 这种方法是直接一对一的计算集距离, 并且基于最邻近分类进行决策; 其次, 该方法第一次学习一个判别函数, 然后利用已学习的判别函数对图像集分类. 通过计算具有代表性的集均值之间一一对应的集距离, 能够非常有效地处理内部集变化, 但是它的性能却很容易受到离群值的影响. 使用查询集一对一去匹配所有集合的计算代价高昂, 而且当数据集非常大时这些方法可能会变得非常缓慢. 相比于一对一匹配方法, 第二类方法更有效, 这些方法大部分是线性判别函数(LDA)的扩展, 包括判别典型相关分析(DCC)[18], 多种判别分析(MDA)和图形嵌入判别分析[19].
本文是基于RGB-D的图像集分类, 与2D图像分类方法不同, 我们不用做任何关于训练和测试图像集之间的数据相关性的假设. 提出了一个新的非参数模型的方法, 即基于块的协方差矩阵表示黎曼流形上的图像集模型, 在黎曼流形上表示图像集计算效率非常高而且维度低. 然后我们设计黎曼流形上的SVM分类器和学习最优判别函数, 最终做出关于图像集分类的决策. 这种方法做分类不仅准确率高而且效率也高. 它的好处是避免了一对一查询匹配图像集去匹配整个图像集带来的繁琐的计算, 还可以改变图像集大小.
2.1 人脸区域分割及图像集分集
从Kinect传感器获得的数据包含了人脸和上半身, 为了分割出人脸区域, 我们采用自动预处理方式, 包含3个步骤: ① 背景分割; ② 人脸检测与估计; ③ 基于姿势的人脸区域精确裁剪. 具体介绍如下.
2.1.1 背景分割
首先, 通过使用深度数据将人脸部和身体从背景中分割出来. 假设脸部和身体是离Kinect最近的对象, 我们设定一个深度阈值就可以将脸部和身体从背景中分割出来. 该阈值通过使用k-means[20]将包含脸部和身体的深度值类聚成两簇而自动确定. 分割结果如图 1(a) 所示: 为了效果明显我们将分割后的背景置为深蓝色而将人体置为淡蓝色. 我们只需保留人体部分即可.
图 1 基于深度的人脸预处理 Fig.1 Face image preprocessing based on depth.
2.1.2 人脸检测和估计
随机森林回归算法[6]可用于人脸检测和头部姿势的估计. 首先, 使用一个人脸统计模型可产生大量的人脸数据, 从训练数据中提取主要成份为人脸检测和头部姿势估计训练回归分类器. 为了方便训练, 提取的主成分需要注释头部旋转角度和鼻尖的位置并且指定一个类标签(如果从脸部提取的斑点则标注为1, 其他的标注为0). 使用已学习的回归分类器我们就可以判断人脸部是否存在于给定范围的图像中, 并且在实时逐帧的基础上依据转动、 倾斜和偏角[φ,θ,Ψ]估计头部姿势.
2.1.3 基于姿势的人脸区域精确裁剪
接下来需要确定一个有确定尺寸和位置的矩形窗口用于从脸部和身体区域的图像中裁剪出人脸部位. 如图1(b)所示, 需要确定矩形窗口的左上角的坐标(xt,yt)和右下角的坐标(xb,yb). 首先, 通过找到从背景中分割出来的平滑后的头顶部计算yi. 图像中具有m(本文实验中取m=5)个非零像素(深度值)的第一行作为人头部的顶部. 给定yi通过yb=yt+h可以近似确定yb,h是窗口的高度也是从头部到kinect传感器之间距离的函数. 通过实验确定(z是头部到kinect传感器的平均距离单位m)是最佳的近似窗口裁剪高度. 给出yt和yb, 现在我们就可以从身体部分分割出脸部区域, 接着从xt和xb被定义为具有m非零像素的第一列开始, 分别向左和向右修剪区域. 给定(xt,yt)和(xb,yb), 就可以从剩下的区域内裁剪脸部区域. 很显然沿着转动和偏移方向极度旋转头部, 被裁剪窗口覆盖的脸部区域在不同的图像中是不一致的. 例如, 当该人俯视的情况下, 剪切区域将主要覆盖颅骨, 头发, 前额和嘴部区域, 但是将错过包括下巴在内的脸的底部区域. 为了克服这个问题我们结合从图像范围内已经估计出的姿势信息, 从而确保脸部区域被均匀裁剪. 重新定义yt=yt+(βφ+γψ), 这里β=5/8,γ=5/8; 在这里我们垂直移动的截取窗口向上或向下取决于头部姿势. 如果该人头部正在俯视则裁剪窗口下移动, 反之亦然. 已估计出的裁剪窗口最后用于裁剪出RGB的人脸区域和深度图像的人脸区域, 裁剪效果分别如图1中的(c)和(d)所示.
Viola 和Jones提出的人脸检测算法[21]或跟踪算法[22]无法在极端的头部旋转和非正面人脸的的情况下使用. 本文所提出的基于深度信息的算法能在头部姿势变化很大的情况下精确地裁剪出不同图像中的相同的面部区域.
给定一个图像集, 我们把它分成c子图像集. 如图 2 将每个图像集分为c(在该图中c=3)子图像集, 然后使用基于块的协方差矩阵表示每个图像子集. 为了做到这一点, 每个子集中的n个图像被划分成16(4×4)个不同的块, 协方差矩阵C是利用式(1)计算所得.
图 2 图像集分为c子图像集Fig.2 Image set is divided into c sub-image set
分割是基于其在第2.1节所估计的头部姿势. 首先, 使用训练数据中的所有图像的可用姿势信息将图像集分为c图像子集,c子图像集集群中心由k均值计算所得. 使用这些集群中心, 集合中的图像分别被分配到c集群之一. 集群中心和各图像的姿势矢量之间的最短欧式距离被用作分配集群的标准. 为了提高识别率我们需要根据其旋转矩阵表示每个图像的姿势信息. 更具体地说, 每个图像中的姿态信息是由欧拉角[φ,θ,ψ]转换成旋转矩阵RM∈R3×3, 其中
式中: RM表示在图像中的面部姿态的单矢量.
2.2 图像集合表示
(1)
2.3 训练单独的SVM模型
SVM是一种无监督二分类算法, 它构造一个超平面优化独立的两个类之间的数据点而实现最佳分离[24]. 最初的SVM是为欧氏空间里的数据设计的. 由于我们的数据点(对称正定矩阵)不在欧氏空间, 而在一个复杂的非线性流行叫李群的黎曼流形上. 因此,我们将数据点从黎曼流形映射到一个高维希尔伯特空间[25]. 这种映射是通过使用黎曼核函数实现的. 通过使用核函数我们最终将数据点从黎曼流形映射到再生核希尔伯特空间(RKHS)[25].
给定义一个含有m个训练数据点的集合Xtrain={x1,x2,x3,…,xm}, 其中xi∈R16×16为LBP特征[23]块的协方差矩阵集合; 对应的类Ytrain={y1,y2,y3,…,ym}, 其中yi∈{-1,+1}; 这样在黎曼流形上的SVM问题则归结为寻找一个最大间隔超平面从yi=1的点中分离出yi=-1的点. 使用软间隔支持向量机可以解决以下最优化问题
(2)
式中: W是系数向量; b是截距; ξi是一个处理不可分数据的参数; c是惩罚系数; fi∈Rm是再生希尔伯特核空间中的特征向量, 它是由Xi和Xtrain计算所得
(3)
文献[25]中所提到的原始问题可利用式(2)转化成为一个凸优化问题; 利用拉格朗日的对偶性可以解决以下双重优化问题
(4)
(5)
最初SVM处理的是二分类问题, 使用合适的多分类策略它可以扩展到多分类, 例如一对一和一对多. 多分类SVM策略[26]的比较表明在一对一和一对多中, 一对多策略的速度更快. 因此在我们的实验中采用一对多的多分类策略. 对于k分类我们训练k个二元SVM模型, 每个对应一个类. 给定Xtest, 使用式(5)从每个已训练的支持向量机模型的超平面上计算Xtest的归一化距离d(Xtest).
2.3.1 黎曼核函数
为了将数据点从黎曼流形嵌入到再生核希尔伯特空间(PKHS)[25], 我们使用斯坦因核函数. 鉴于两个对称正定矩阵X和Y之间的斯坦因核函数定义为
(6)
斯坦因核函数类似于在欧几里得空间中的高斯核函数, 从而相应地可以将欧式空间中用指数表示的距离用斯坦应散度S(X,Y)代替. 斯坦散度是在确定的黎曼流形上对称正定矩阵之间距离的一个度量. 斯坦因散度定义为
(7)
2.3.2 融合子图像集结果
如前所述基于集群的姿势信息将一个图像集分成c子图像集, 然后训练单独的支持向量机模型, 每一个支持向量机模型对应一个子图像集. 为了做出关于查询图像集的分类决策, 我们需要充分考虑来自所有C子图像集的通过SVM分类产生的类信息. 为了融合C子图像集的信息, 我们从C支持向量机给定C类标识, 然后计算所有类出现的频率. 出现频率最高的类标识被认定为查询图像集的标识. 若出现频率相同, 则与超平面距离最大的测试集的标识作为查询集的标识.
2.3.3 融合RGB与D(深度)的结果
通过使用RGB或D(深度)图像我们可以采用已有的图像集分类技术直接利用D图像计算协方差矩阵. 通过RGB图像和D图像获得的分类信息融合就可以实现基于RGB-D的图像集分类. 为了实现RGB-D图像集分类, 我们分别学习了RGB(转换为灰度级)和D图像的SVM模型. 总之对每个要识别的对象内共2c子图像集, 也就是RGB子图像集对应c个子图像集和D图像对应另c个子图像集. 学习了2c个单独的支持向量机模型并且通过融合所有2c支持向量机模型的信息做出关于RGB-D查询集分类问题的决策. RGB和D的融合过程如图 3 所示. 类标识信息和到超平面的所有2c子图像集的距离来源于相应的已学习的SVM模型.
图 3 分类过程中RGB和D图像集的融合Fig.3 The fusion scheme of RGB sets and D sets in the classification process
利用Kinect传感器获取的人脸数据集评价我们提出方法的性能. 首先对数据集进行描述, 然后讨论我们的实验, 最后验证我们提出的基于RGB-D图像集分类技术的性能.
3.1 Kinect人脸数据库
Biwi Kinect数据库有5 000张RGB-D图像. 分别为5 000张RGB图像和5 000张深度图像. 依据光照, 头部姿势变化, 表情变化, 太阳镜伪装以及用手遮挡等使结果集中融合了大量不同的图像. 下面我们利用Biwi数据库测试本文方法的性能. Biwi Kinect头部姿势数据库: kinect获得的头部姿势数据最初是为了估计头部姿势. 该数据集包含20个人(6女性和14个男性)超过5 000个RGB-D图像. 如图 4 所示是此数据集中一个人的一些图像. 头部姿势偏转的范围在-75°~+75°之间, 倾斜角在-60°~+60°之间. 该数据集还包含部分被手遮挡和太阳镜伪装图像, 这使实验更具挑战性.
图 4 Biwi Kinect数据集中某个对象的不同姿势图Fig.4 Different pose maps of an object in the Biwi Kinect data set
3.2 实验分析
结合3.1节中介绍的数据总共超过5 000RGB-D图像, 所得到的数据结果集有很大范围的变化, 因此很具挑战性. 为了训练更多单独的SVM模型, 我们随即将每个身份的图像分成k小份然后进行试验. 因此对于每个人脸图像得到k个图像集, 然后训练其中一个图像集, 其余的k-1个用来做测试. 确保在大部分不同的图像集中没有出现重叠现象. 共得到20个训练图像集和个测试图像集. 通过改变k(k=1,2,3,4,5)的取值进行实验, 随着k值逐渐增加, 实验难度也随之加大, 因为k值增加意味着每个图像集中图像数量将减少, 同时增加了测试图像集中的数量, 考虑到我们的实验结果, 根据k取值不同每个实验重复进行5次, 实验的平均识别率如表 1 所示.
表 1 未分为子图像集的识别率
结果表明平均识别率随着k值的变化而变化, 随着k值的增加图像被分成更多的图像集, 而每个图像集中图像的数量却减少了. 每个图像集中图像的数量减少意味着图像的多样性也减少, 这就降低了识别性能. 当k取值为3时效果最佳, 当k取值为5时效果有所下降. 实验中RGB图像的识别率为92.81+1.04%; 深度图像的识别率为94.01±1.35%; 而深度图像与彩色图像融合之后的识别率则可以达到96.05±1.81%, 因此它对基于图像集分类的贡献是显著的.
3.3 分割成图像子集对图像集的影响
在每组不同的图像集中, 头部姿势的变化是整个识别过程中最具挑战性的任务, 因为很多由于头部姿势的变化而导致人脸发生变化. 通过将每个集合中的图像分成c子图像集, 我们可以有效地处理头部旋转问题.c=1,2,3,4, 根据c取值不同, 我们将每个身份的图像随机编排到k集合中, 每个实验进行5次, 实验结果如表 2 所示.
本文提出的基于RGB-D的图像集分类技术在k=3和k=5时识别率分别达到了98.84%和96.56%. 这些结果表明利用深度数据将图像集划分为c子图像集使得识别的性能得到了很大的改善. 当k=3时, RGB图像的识别率也从91.46%提高到96.54%. 比Lei, Y. J.等[27]人的识别率要高.
表 2 图像集分成c子图像集后的识别率
3.4 预处理对性能的影响
用于校验我们所提出的基于RGB-D图像集分类算法的Kinect数据集, 允许有很大范围的头部姿势变化. 为了使图像集分类算法更准确, 在预处理的时候就要求更精确的裁剪出人脸部位. 预处理包括Viola和Jones提出的人脸检测只适用于人脸部图像的人脸跟踪[22], 而非正面人脸和极度的头部旋转的情况是不能被检测到的. 此外, 当使用Viola和Jones提出的算法[21]从不同的图像中裁剪人脸区域时裁减窗口的位置是不固定的, 这就可能导致裁剪不完整最终影响人脸识别率. 本文基于RGB-D的人脸识别算法通过深度预处理方法精确裁剪出人脸区域, 有效地克服了这些变化. 接下来用实验验证预处理对人脸识别性能的影响. 首先采用3.1节讨论过的预处理方法进行实验, 然后再采用[21, 22]中的人脸检测与跟踪的方法进行实验. 对于这俩种方法我们取值k=1, 3, 5和c=1, 在这里不考虑头部姿势变化和图像集分为子图像集这俩种因素. 取每一个人在k个集合中的图像进行实验5次, 得出的平均结果如表 3 所示.
表 3 不同预处理对识别结果影响
实验结果表明: 本文提出的预处理算法效果明显比Viola等人的算法效果要好. 特别是在k=3的时候如表 3 所示这个差距就太大了. 实验数据表明使用深度数据不仅可以克服这些变化, 并且可以从多张图像中精确地裁剪出同样的人脸区域, 很明显本文的方法大幅提高了识别性能.
本文利用红外线不受光照变化的影响这一物理特性, 采用Kinect获取深度图像, 然后利用深度数据独特的距离特点使用k-means方法实现精确的背景分割, 本文的人脸检测算法效果明显强于当今主流的由Viola和Jones提出的人脸检测算法, 实现94.71%的识别率. 更为重要的是我们通过图像集分为子集实现降维, 因此很具计算优势, 同时使用黎曼流形上的SVM分类思想训练尽可能多单独的SVM模型, 有效克服了姿势变化所带来的影响, 最终实现高达98.84%的识别率.
[1] Cevikalp H, Triggs B. Face recognition based on image sets[C]. 2010 IEEE Conference on Computer Vision And Pattern Recognition (Cvpr). San Francisco, CA: IEEE, 2010: 2567-2573.
[2] 路翀. 基于二维图像表示的人脸识别算法研究[D]. 大连: 大连理工大学, 2012.
[3] Hayat M, Bennamoun M, El-Sallam A. An RGB-D based image set classification for face recognition [J]. Neurocomputing, 2016, 171: 889-900.
[4] 石曼银. Kinect技术与工作原理的研究[J]. 哈尔滨师范大学自然科学学报, 2013(3): 83-86. Shi Manyin. Research on Kinect technology and working principle[J]. Journal of Natural Science of Harbin Normal University, 2013(3): 83-86. (in Chinese)
[5] 魏尚. 基于Kinect深度图像的三维人脸识别技术研究[D]. 天津: 天津师范大学, 2012.
[6] Fanelli G, Gall J, Van Gool L. Real time head pose estimation with random regression forests[C]. Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on. IEEE, 2011: 617-624.
[7] Ding X, Huang C, Fang C. Head pose estimation based on random forests for multiclass classification[C]. Pattern Recognition (ICPR), 2010 20th International Conference on, 2010: 934-937.
[8] 马佳义. 基于非参数模型的点集匹配算法研究[D]. 武汉: 华中科技大学, 2014.
[9] Moacir Ponti, Josef Kittler, Mateus Riva, et al. A decision cognizant Kullback-Leibler divergence[J]. Pattern Recognition, 2017, 61: 470-478.
[10] Wang Mei, Liang Jiuzhen. Face recognition algorithm of 2DPCA nonparametric subspace analysis[J]. Computer Engineering, 2011, 37 (24): 187-189,192.
[11] 袁理, 陈庆虎. 基于自适应3DLBP特征的人脸深度图像识别[J]. 电视技术, 2013, 37(19): 46-49. Yuan Li, Chen Qinghu. Face recognition based on intensity image and adaptive 3DLBP features[J]. Video Engineering, 2013, 37(19): 46-49. (in Chinese)
[12] 黄丽坤. 线性子空间人脸识别算法及姿态问题研究[D]. 西安: 电子科技大学, 2010.
[13] 彭本华. 基于子空间的人脸识别算法研究[D]. 成都: 西南交通大学, 2009.
[14] 陈华杰. 非线性流形上多姿态人脸检测与识别[D]. 杭州: 浙江大学, 2006.
[15] Yamaguchi O, Fukui K, Maeda K. Face recognition using temporal image sequence[C]. Automatic Face and Gesture Recognition, 1998. Proceedings. Third IEEE International Conference on. IEEE, 1998: 318-323.
[16] Zagoruiko N G. Pattern recognition by the method of pairwise template comparison in competent feature subspaces[J]. Doklady Mathematics, 2002, 65 (1): 143-145.
[17] 黄泉龙. 基于PCA的人脸识别研究[D]. 南京: 西安电子科技大学, 2012.
[18] Kim T K, Kittler J, Cipolla R. Discriminative learning and recognition of image set classes using canonical correlations[J]. Ieee Transactions on Pattern Analysis And Machine Intelligence, 2007, 29 (6): 1005-1018.
[19] Harandi M T, Sanderson C, Shirazi S, et al. Graph Embedding Discriminant Analysis on Grassmannian Manifolds for Improved Image Set Matching[C]. 2011 IEEE Conference on Computer Vision And Pattern Recognition (Cvpr), 2011: 332-342.
[20] Dey T, Deb T. Extended study of k-Means clustering technique for human face classification and recognition[C]. IEEE International Conference on Electrical, Computer and Communication Technologies. IEEE, 2015: 1-4.
[21] Viola P, Jones M J. Robust real-time face detection[J]. International Journal of Computer Vision, 2004, 57(2): 137-154.
[22] Ross D A, Lim J, Lin R S, et al. Incremental learning for robust visual tracking[J]. International Journal Of Computer Vision, 2008, 77 (1): 125-141.
[23] Ojala T, Pietikainen M, Maenpaa T. Multiresolution gray-scale and rotation invariant texture classification with local binary patterns[J]. Ieee Transactions on Pattern Analysis and Machine Intelligence, 2002, 24 (7): 971-987.
[24] Faruqe M O, Hasan M A M. Face recognition using PCA and SVM[C]. International Conference on Anti-Counterfeiting, Security, and Identification in Communication. IEEE, 2009: 97-101.
[25] Bie T D, Cristianini N. Kernel methods for exploratory pattern analysis: a demonstration on text data[J]. 2004, 3138: 16-29.
[26] Lin C J. A comparison of methods for multiclass support vector machines[J]. IEEE Transactions on Neural Networks, 2002, 13 (4): 1026-1027.
[27] Lei Y J, Bennamoun M, Hayat M, et al. An efficient 3D face recognition approach using local geometrical signatures[J]. Pattern Recognition, 2014, 47 (2): 509-524.
A Face Recognition Algorithm Based on RGB-D
YUAN Shuaiying, GUO Dabo
(College of Physics and Electronics Engineering, Shanxi University, Taiyuan 030006, China)
In this paper, a face recognition method based on color-depth(RGB-D) was proposed to improve the recognition rate. First of all, images are acquired under different conditions, such as wide-range head posture changes and illuminations from the Kinect. Then RGB-D images of the same person under different conditions are selected into an image set. Secondly, the original depth data acquired by Kinect was used for pose estimation and automatic cropping of face region and a group of face image set was separated into several sub-image sets. For classification, a block-based covariance matrix was proposed to represent a subset image on a Riemannian manifold to decrease dimensions. The SVM models were used to study each sub-image set separately, and then the results of all the sub-image set together to get the final recognition results. The proposed algorithm has been evaluated on the dataset with more than 5 000 RGB-D images obtained in different conditions. The experimental results show that the proposed algorithm can achieve 98.84% recognition rate.
k-means; LBP; SVM; riemannian manifolds; classification of image sets; face recognition algorithm
1671-7449(2017)03-0241-09
2017-01-12
袁帅英(1989-), 男, 硕士生, 主要从事图像处理与机器学习等研究.
郭大波(1963-), 男, 博士, 副教授, 主要从事计算机视觉等研究.
TP391.41
A
10.3969/j.issn.1671-7449.2017.03.010