0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于局部定向模式的CLDP算法改进人脸识别性能

电子设计 作者:电子设计 2018-09-19 08:03 次阅读

LDP 算法是将与Kirsch 算子运算后得到的一些负值的邻域灰度值作为中心灰度值的编码因子,这将会导致中心灰度值不能很好的反映邻域局部特征信息,从而降低识别率。针对于此,本文提出了一种改进的局部定向模式(CLDP)算法。该算法在LDP 的基础上,去掉邻域灰度值为负值的因子,对中心灰度值进行重新编码,由于该编码值是将与Kirsch 算子运算后的正值最大值作为图像边缘输出,使中心灰度值能很好反映邻域的局部特征信息,从而提高人脸的识别率。本文还将提出的CLDP 算法用在YALE,ORL,JAFFE 等人脸数据库中进行人脸识别。从实验的结果表明,该方法识别性能较LDP算法,LDN 算法以及ELDP 算法等更好的。

人脸识别系统主要包括四个模块:图像预处理模块,图像特征提取模块,图像训练模块和人脸图像的识别模块,其中最主要的核心部分就是图像特征的提取。好的特征提取算法应该满足不同类别的图像具有很大差异,同一类别的图像具有很小差别。到目前为止,特征提取主要包括两类方法:基于全局特征的提取方法和基于局部特征的提取方法。全局特征是指其特征向量的每一维都包含了人脸图像上所有部分(甚至所有像素)的信息,它反映的是人脸的整体属性。基于全局的特征方法主要包括:PCA,LDA,2DPCA,LPP 等 。与全局特征不同的是,局部特征信息的每一维都只对应人脸图像上的一个局部区域,它侧重于提取人脸的细节特征,基于局部特征的提取方法主要包括:LBP,LGBP,LDP 等 。局部特征对人脸的光照、表情和遮挡等变化不敏感,因此基于局部特征的提取方法相对于基于全局特征的提取方法具有更好的鲁棒性,在近些年来得到了更多的研究 。

近年来,LBP 算法因为其在纹理分析方面的简单性和优越性而得到了越来越多的重视。基本的LBP算子是一种有效的纹理描述符,其通过对中心像素的3×3 邻域进行编码操作。每个像素点以其邻域的中心像素灰度值作为判断的阈值,将中心像素灰度值与周围8 邻域的像素灰度值进行比较,如果邻域像素灰度值大于中心像素灰度值,则将其标记为1,否则标记为0(对于图像边缘的部分,存在一些邻域点不存在的,编码时设定该邻域点为0),从而每个像素点都可以得到一个8 位的二进制数,然后将该8 位二进制数转化为十进制数,该十进制数即为该中心像素点的LBP 值。因为LBP 编码的灵活性,LBP 算法可以很容易修改以适应其他不同类型问题的需要。为此,文献[9]提出了几种改进的LBP 算法。LBP 算法对单调线性的光照有很好的鲁棒性,但是其对于随机的噪声和非单调线性的光照变化非常的敏感。针对此因素,Jabid 等人 提出了鲁棒性更好的特征提取方法LDP。LDP 算法和LBP 算法很相似,但它是通过与Kirsch 算子卷积求和后得到了中心像素点的邻域灰度值 。由于边缘梯度值比像素灰度值更稳定,所以LDP 算法对噪声的鲁棒性更好。基本的LDP 编码是将最主要的k 个邻域灰度值设为1(即和Kirsch 算子 卷积求和后绝对值的k 个最大数),然后将8 个方向的邻域值进行编码。这种方法会将最大的负数对应的邻域灰度值设为1,由于这些负数会干扰局部特征信息的提取,使得编码后的中心灰度值不能很好反应出该位置的局部特征信息,从而会降低人脸识别率。

针对与LDP 的这个缺点,Zhong Fujin 等人提出一种基于LDP 算法的ELDP(Enhanced Local DirectionalPatterns)算法 ,Adin Ramirez Rivera 等人提出了一种LDN(Local Directional Number Pattern)算法 。ELDP算法是在LDP 算法的基础之上得到的,首先它将与Kirsch 算子计算后的八个方向值进行排序,将最大的两个正值对应的位置设为1,其他位置设为0,然后将得到的两个位置为1 的序号作为八进制的两位数,再将其转化为十进制数作为该中心点的像素灰度值,即ELDP 值。LDN 算法首先同样是将与Kirsch 算子运算后的8 个方向值进行排序,选取最大的正值和最小的负值,然后将最大正值对应的序号作为八进制数的第1 位,将最小值的序号作为八进制数的第0 位,再将这个两位的八进制数转化为十进制数作为该中心点的像素灰度值,即LDN 值。

以上对LDP 进行改进的算法是对8 个邻域灰度值的序号进行编码,会丢失一些特征信息,针对这个问题,本文提出了一种基于LDP 算法改进后的局部定向模式(CLDP)。该算法通过与Kirsch 算子计算后得到的八个邻域灰度值重新进行编码,不对其求绝对值,考虑负数的存在,然后将8 个计算后的邻域值进行大小判别,将最大的k 个正值设为1,其他8-k 个邻域值设为0,再将这8 位二进制数转换为十进制数,用该十进制数值作为中心像素点的灰度值,即CLDP 值。CLDP 算法的编码避免了LDP 算法将运算后的邻域为负值作为编码因子,同时也避免了LDN 算法和ELDP 算法将运算后的最大邻域值所对应的序号作为编码因子,这样CLDP 值能更好的反应出该位置的局部特征信息。

本文提出的CLDP 算法用在三个人脸数据库中分别进行识别实验,并和LDP 算法,LDN算法以及ELDP算法进行比较。实验的结果表明,本文提出的方法具有较其他方法有着更好的识别性能。

1 CLDP 算法

1.1 LDP 算法

基于LBP 算法提出的局部定向模式(LDP),是将一个3×3 矩阵块(如下)分别与8 个Kirsch 算子M0~M7进行运算后得到的绝对值作为矩形块周围的像素灰度值,记为|mi|(i=0,1,…,7),然后选取k 个最大绝对值数作为主要特征,并且将这k 位赋值为1,其余(8-k)位赋值为0,如图1 所示。最后将这8 个数按照一定的顺序编码组成一个八位的二进制数,再将其转换为十进制数,用这十进制数作为该3×3 矩形块的中心点的LDP特征值。

基于局部定向模式的CLDP算法改进人脸识别性能

2 给出中心点邻域灰度值具体数值,用Kirsch 算子对其进行LDP 编码运算,当k=3 时,如图所示该中心点x 的LDP 特征值xLDP(k)=(10001001)2=137。

基于局部定向模式的CLDP算法改进人脸识别性能

1.2 CLDP 算法

CLDP 算法是基于LDP 算法的一种改进,其处理的开始部分与LDP 算法相同,也是将3×3 的矩阵块与Kirsch 算子进行运算后,将得到的8 个值作为周围邻域的灰度值,然后将这8 个值中最大k 个值赋值为1,其余(8-k)个值赋值为0,从而也可以得到一个八位的二进制数,再将其转换为十进制数用来表示中心像素点的灰度值,即为CLDP 特征值。

基于局部定向模式的CLDP算法改进人脸识别性能

,其中mk为mi中最大的k个值。图3给出中心点的邻域灰度值,并对它进行CLDP 编码,则中心点x 的CLDP 值CLDP=(10010001)2=145。

基于局部定向模式的CLDP算法改进人脸识别性能

图4 的原图像是来自于YALE 人脸库中的一幅图片,我们对它分别进行LDP 算法和CLDP 算法特征提取,从图中可以看出CLDP 算法提取特征后的图像较LDP 算法特征提取后的图像能更清晰真实的反映出原图像的特征信息。

2 基于CLDP 的人脸识别描述

不同的人脸库对应的图片大小规格和颜色都不一样,在进行人脸识别时,首先需将人脸库中的图片转换成相同大小规格的灰度图像。然后再将每一幅灰度图像转换为一维数列,这样一个人脸库就可以用一个二维矩阵数列来表示,其中每一列代表着一幅图片。其中CLDP 算法的人脸识别过程如下图5 所示。

基于局部定向模式的CLDP算法改进人脸识别性能

对于同一个人,我们随机选取几张图片作为训练图片,其他的作为测试图片,这样可以将原来的人脸数据库的二维矩阵分为一个训练的二维数据库和测试的二维数据库,然后将这两个数据库分别进行CLDP算法处理。最后将CLDP 算法处理后训练图片进行PCA 降维处理,将训练图像和测试图像的CLDP 特征图像投影到低维空间中,采用最近邻方法进行分类识别。

3 实验结果与分析

3.1 k 值的选取

为了测试不同k 值对识别性能的影响,我们分别在YALE,JAFFE,ORL 人脸数据库中分别进行识别实验。YALE 人脸数据库包含15 个人,每个人有11 幅人脸图像,具有丰富的表情变化。实验时我们随机选取每个人的5 幅图像进行训练,另外6 幅进行测试;JAFFE 人脸数据库包含有10 个人,每个人有7 种表情,每种表情3~4 张图片,在测试时我们随机选取每个人20 张图片进行试验,试验时选取每个人的15张图片作为测试图片,另外5 张作为训练图片;ORL 人脸数据库包含40 个人,每个人有10 张不同光照和姿态下的图片,在试验时我们选取每个人的任意5 张图像进行训练,其余5 张进行测试,降维的维数均选择为30。由于C81=C87,所以当k=1时和k=7时识别率是一样的 ,因此只需要比较k={1,2,3,4}时分别对应的识别率。每一组实验都是进行10 次测试后,选取平均值作为最终的测试数据。实验结果如表1 所示。由表1 中可以得出三种人脸库下,当k=3 时,CLDP 算法对应的人脸识别率最高。

3.2 CLDP 算法和其他算法识别率比较

我们将本文提出的CLDP 算法以及PCA,LDP,LDN,ELDP 算法分别在YALE,JAFFE,ORL 人脸数据库中分别进行测试。同实验3.1 一样,在YALE 人脸库中选取测试人数为6,在JAFFE 中选取测试人数为15,在ORL 人脸库中选取测试人数为5。实验过程中,设k 值为3,降维的维数为30,每一组实验进行10 次,选取平均值作为最终识别结果。表2 列举了各种算法在不同的人脸库下的识别率。

由表2 可以看出不同的人脸库下,CLDP 算法对人脸的识别率高于其他算法的识别率。

基于局部定向模式的CLDP算法改进人脸识别性能

3.3 CLDP 算法鲁棒性测试

为了验证CLDP 算法的鲁棒性,本文还进行了以下两个测试,这两组试验分别都是在YALE,JAFFE和ORL 三个人脸库中进行的,其k 值都选取为3。第一组测试实验是在固定降维的维数为30 的情况下,改变实验的测试人数来观察LDP,ELDP,LDN 和CLDP 四种算法对人脸识别率的影响。在YALE 数据库中将每个人的测试图片数分别选取为5,6,7,8,9;在JAFFE 数据库选择测试图片数为12,13,14,15,16;在ORL 数据库中选取测试图片数为4,5,6,7,8。另一组测试实验是在测试人数固定的情况下,改变降维的维数来观察LDP,ELDP,LDN 和CLDP 算法对人脸识别率的影响。在YALE 人脸库中,固定测试人数为7,JAFFE 数据库中固定测试人数为15,ORL 数据库中测试人数为5。实验结果如图6,7 所示。

基于局部定向模式的CLDP算法改进人脸识别性能

从图6 中可以看出在降维维数固定在30 情况下,四种算法的人脸识别率随着测试人数的增加而减小,但CLDP 算法的人脸识别虽然在减小,但依然保持着较高的识别率,且减小的幅度也较小。

从图7 中可以看出在测试人数固定的情况下,四种算法的人脸识别率随着维数的增加而增加,而CLDP算法始终保持着较高的识别率。

由上面的两图可以发现,在相同的降维维数前提下,基于CLDP 算法的人脸识别鲁棒性要好于其他算法,同样,在测试图像数相同的前提下,基于CLDP 算法的人脸识别鲁棒性也要高于其他算法。

通过以上实验表明,CLDP 算法对人脸的识别在不同的人脸数据库中都有着很高的识别率,且CLDP算法对人脸的识别率较LDP 算法和改进后的LDN 与ELDP 算法都要高,同样CLDP 算法在测试图像相同的情况下和在提取特征维数相同的情况下,鲁棒性都高于其他几种算法。

4 结论

本文提出了一种基于局部定向模式的CLDP 算法,该算法将与Kirsch 算子运算后的正值作为编码对象,从而提高识别率。实验表明,该算法在YALE,ORL,JAFFE 等人脸数据中都有着很好的识别性能,并且较LDP,LDN 和ELDP 算法有着更高的识别率,同样CLDP 算法也有着较其他几种算法更好的鲁棒性。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    88

    文章

    3587

    浏览量

    93585
  • 人脸识别
    +关注

    关注

    76

    文章

    4005

    浏览量

    81756
  • LDP
    LDP
    +关注

    关注

    0

    文章

    7

    浏览量

    7581
收藏 人收藏

    评论

    相关推荐

    人脸识别经典算法实现python

    ,FERET'96测试结果也表明,改进的特征脸算法是主流的人脸识别技术,也是具有最好性能识别
    发表于 05-04 17:25

    图像的深浅特征应用于人脸识别

    的PCANet相比本文算法识别性能略低,而典型的PCANet所提取到的特征维数极高,且需要消耗大量的内存及时间,而本文算法因融合了深浅层特征可以在很小的特征维数下获得较高的识别率,因
    发表于 11-25 06:17

    一种基于E-HMM的选择性集成人脸识别算法

    基于嵌入式隐马尔可夫模型(Embedded Hidden Markov Model, E-HMM)的人脸识别方法的识别性能依赖于模型参数的合理选择。提出了一种基于E-HMM的多模型选择性集成
    发表于 11-24 15:40 8次下载

    改进SRC算法人脸识别中的应用

    稀疏表示分类算法(Sparse Representation-based Classification,SRC)在人脸数据库上有很高的识别性能。然而,对于姿态变化,SRC的识别效果并不
    发表于 03-18 16:52 57次下载
    <b class='flag-5'>改进</b>SRC<b class='flag-5'>算法</b>在<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>中的应用

    改进的PCA算法人脸识别中的应用研究_周亦敏

    改进的PCA算法人脸识别中的应用研究_周亦敏
    发表于 03-19 11:30 0次下载

    基于改进局部方向模式人脸识别_孙君顶

    基于改进局部方向模式人脸识别_孙君顶
    发表于 03-19 19:25 0次下载

    局部方向模式人脸识别方法

    为了解决局部方向模式(LDP)在人脸特征提取过程中采用固定的平均分块方式,不能自适应突出不同样本特征的这一问题,提出一种基于兴趣点定位的改进LDP
    发表于 11-29 16:54 1次下载

    基于鲁棒的局部二值模式人脸识别算法

    本文针对LBP算法特征包含outlier和维度过高的问题提出了一种基于鲁棒的局部二值模式(RobustLBP)的快速有效的人脸识别
    发表于 12-13 15:47 0次下载

    基于改进GEP的局部云任务调度算法

    针对云计算中一些现有的基于批量调度模式和进化算法的动态云任务调度算法计算量较大,计算时间成本较高的现象,提出了一种基于改进基因表达式编程(GEP)和资源改变量的
    发表于 01-18 13:50 0次下载
    基于<b class='flag-5'>改进</b>GEP的<b class='flag-5'>局部</b>云任务调度<b class='flag-5'>算法</b>

    三维人脸数据库分类识别

    针对传统的三维人脸识别分类算法大多需要多个样本进行训练,而在单训练样本的前提下识别性能会严重降低的问题,提出了基于模糊自适应共振理论映射( Fuzzy ARTMAP)的
    发表于 01-30 15:21 3次下载
    三维<b class='flag-5'>人脸</b>数据库分类<b class='flag-5'>识别</b>

    基于改进的LDP人脸识别算法

    很好的反映邻域局部特征信息,从而降低识别率。针对于此,本文提出了一种改进局部定向模式(
    发表于 10-17 22:19 885次阅读

    Firefly 人脸识别一体机介绍

    尺寸小巧,性能强悍,拥有强大的人脸识别性能,适配多种人脸识别算法,支持多种
    的头像 发表于 11-14 10:55 3097次阅读
    Firefly <b class='flag-5'>人脸</b><b class='flag-5'>识别</b>一体机介绍

    基于改进CNN网络与集成学习的人脸识别算法

    针对复杂卷积神经网络(CNN)在中小型人脸数据库中的识别结果容易出现过拟合现象,提出一种基于改进CNN网络与集成学习的人脸识别
    发表于 05-27 14:36 6次下载

    基于局部二值模式算法的天气形势图识别方法

    基于局部二值模式算法的天气形势图识别方法
    发表于 06-24 14:20 6次下载

    人脸识别算法有哪些

    :该算法通过提取人脸的关键特征,如眼睛、鼻子、嘴巴等部位的坐标、轮廓、颜色等信息,进行人脸识别。该算法主要包括几何结构的描述子、
    的头像 发表于 08-09 18:34 6547次阅读