基于加权强度PCNN模型的分块人脸识别方法与流程

文档序号:12064325阅读:302来源:国知局
基于加权强度PCNN模型的分块人脸识别方法与流程

本发明涉及基于PCNN模型的人脸识别方法,具体为基于加权强度PCNN模型的分块人脸识别方法。



背景技术:

脉冲耦合神经网络是Eckhorn等人研究猫、猴等动物的大脑视觉皮层的同步脉冲发放现象时发现的,并由Johnson在1993年对其进行了改进,提出了标准的脉冲耦合神经网络(Pulse Coupled Neural Network PCNN)模型。1999年,Lzhikevich从数学角度严格的证明了PCNN模型是一种最接近生物神经元的网络模型。PCNN模型与以往经典神经网络相比,是一种自监督自学习的网络,不需要训练即可实现图像处理,且PCNN模型具有优良的综合时空总和特性、动态同步脉冲发放特性、非线性调制和可变阀值等特性,因此,PCNN模型以被广泛应用于图像边缘检测、图像分割、图像融合、图像识别和图像去噪等方面。2005年,Taymoor M首次将PCNN模型引入人脸识别领域。关于PCNN模型人脸识别的中文文献在2011年才首次发表,但是2008年,国内东南大学张煜东等人已经将PCNN模型应用于人脸识别的研究中。近几年来,随着PCNN模型逐渐进入国内学者的视野,它在人脸识别方面的应用研究也逐渐增多。

针对目前基于PCNN模型的人脸识别方法中,特征数据一般选用基于模型N次迭代产生的二值图像的某些信息,如点火时间序列和信息熵序列等,它们均是一种平面的效果表示,表示的是图像整体的特征,不能细化地反应人脸图像中的边缘或点的变化。因此文献[1]在简化的PCNN模型基础上,引用了一种基于脉冲发放强度的PCNN模型。经过该模型处理,人脸图像中的每个像素点均可得到其特定的脉冲发放强度,把N次迭代得到的平均脉冲发放强度作为人脸图像的特征,最后通过计算待识别人脸图像的脉冲发放强度矩阵与各个身份的平均脉冲发放强度矩阵之间的余弦距离来判断其所属身份类别,然而该模型并没有对其脉冲发放强度进行细分。

同时在实际应用中,PCNN模型中包含许多不确定的参数,这些模型参数的设置决定了其性能的好坏,目前通常都是经多次试验,对比所得图像处理结果来选择合适的参数值。基于此,已有许多文献对PCNN模型参数的自动设定进行了研究。文献[2]提出了用灰度—信息量直方图来表征图像特征,利用信息量直方图自动估算PCNN模型中的时间衰减参数,而其对PCNN其他参数的设定仍需凭经验设定。

另外,人脸各部分的灰度分布差异很大,如图1‐5所示,而传统的基于PCNN的人脸识别方法将一幅人脸图像作为一个整体统一处理,忽视了各个部分之间的差异。且由实验可以证明人脸的不同区域的识别率是不同的,如图6所示。因此,可以在人脸识别时对各部分设置不同的权重。

文献[1]:计算机工程与设计,2017年1月,基于网格搜索算法的PCNN模型参数自适应,李瀚,杨晓峰等。

文献[2]:电子学报,2007年5月,一种新的PCNN模型参数估算方法,赵峙江,赵春晖,张志宏。



技术实现要素:

本发明解决现有的基于PCNN模型的人脸识别方法中存在的图像特征描述不够细化且使用一组参数无差别地处理整幅人脸图像,忽视了人脸各部分的不同的问题,提供一种基于加权强度PCNN模型的分块人脸识别方法。

本发明是采用如下技术方案实现的:基于加权强度PCNN模型的分块人脸识别方法,由如下步骤实现:

(一)训练阶段

构建或选择现有的含有A个人,每人B幅人脸图像,共有A*B幅人脸图像的人脸库,在人脸库中取每个人的前N幅,N≤B/2,人脸图像作为训练图像,将每幅训练图像都按照眼睛、鼻子和嘴进行横向分块,分为分别对应于眼睛、鼻子和嘴的上、中、下三个分块图,将每人的每幅人脸图像的三个分块图像都输入加权强度PCNN模型,每个分块会得到一个加权强度矩阵,这样会得到A*N*3个加权强度矩阵,它们分别对应于每个人的每个训练图像的每个分块,然后求分别对应于每人上、中、下分块的N个加权强度矩阵的平均值,即平均加权强度矩阵,并记录下这个值,作为每个人每个分块的特征矩阵,训练阶段总共会得到3A个特征矩阵(平均加权强度矩阵),即:

(C1上,C2上,…CA上)

(C1中,C2中,…CA中)

(C1下,C2下,…CA下)

其中,C表示特征矩阵,第一个角标表示哪个人,第二个角标表示哪个分块;

所述的加权强度PCNN模型的数学模型如下所示:

Fij(n)=Iij (1)

Lij(n)=∑WYkl(n-1) (2)

Uij(n)=Fij(n)(1+βLij(n)) (3)

θij(n)=exp(-αθij(n-1)+VθYij(n-1) (4)

Oij(n)=βFij(n)×Lij(n) (6)

其中,对某一神经元,各个参数的含义如下:n循环迭代次数,[1~+∞);i和j神经元坐标;k和l,坐标为i和j的神经元的周围神经元的坐标;W内部连接矩阵;Fij反馈输入;Iij外部输入信号;Uij内部活动项;Yij脉冲输出,0或1;θij动态阈值项,[0~+∞);Qij加权强度;αθ阈值衰减系数;Vθ阈值放大系数;β连接系数;x和y强度公式系数;Lij链接输入。

由图8可知,加权强度PCNN模型仍然为一个单层的二维神经网络,图中的Y1,Y2,…,Yn泛指与该神经元相邻近的神经元的脉冲输出。

模型中的神经元会收到来自外部的外部输入Iij,同时会收到来自周围神经元的链接输入Lij(n),它们各不相同且随时间变化,同时对应的动态阈值项θij(n)也随时间变化,即Fij(n)/θij(n)和Oij(n)/θij(n)的值不同,这两个值就分别是神经元的自发脉冲发放强度和耦合脉冲发放强度,如表1,由YALE人脸库上的识别实验可知,两者分别作为特征数据得到的识别率并不一样,表中加权强度情况是当取Oij(n)作为特征数据,且Oij(n)取(Fij(n)+Oij(n))/θij(n)时得到的识别率,由此可知,加权强度可以作为人脸特征数据,且可以对自发脉冲发放强度和耦合脉冲发放强度赋予不同的权重,它相比模型的二值输出Yij(n)可以更细化的描述图像特征。

表1 多种脉冲发放强度的实验结果对比

(二)测试阶段

a)人脸库中除去训练图像,剩下的为测试图像,每人有(B‐N)幅测试图像,A个人共有A*(B‐N)幅测试图像,取任意一幅测试图像,按照与步骤(一)训练阶段一样的方法得到其各个分块的加权强度矩阵,即得到三个加权强度矩阵:

QDm上

QDm中

QDm下

其中,QD表示加权强度矩阵,第一个角标m表示A*(B‐N)幅测试图像中的任意一幅,第二个角标表示哪个分块;

b)按照分块权值计算方法计算该幅测试图像(同步骤a)所述的测试图像)的各个分块的权重,即得到三个权值:

Em上

Em中

Em下

其中,E为分块的权值;第一个角标m表示A*(B-N)幅测试图像中的任意一幅;第二个角标表示哪个分块;

所述的分块权值计算方法的具体计算过程如下:

LH(i,j)=H(F(i,j)r) (8)

F(i,j)r={I(a,b)|a∈[i-r,i+r],b∈[j-r,j+r]} (9)

H()为图象熵函数,F(i,j)r为以(i,j)为中心的滑动可变窗口内的子图像,I(a,b)表示F(i,j)r内的像素,r为滑动可变窗口的半径,(i,j)表示某个像素的位置,p和q为分块图像的横向和纵向长度,cd代表上、中、下三个分块中的任一块,CM为局部特种贡献度,并采用CM作为分块的权值E;因为由图10-11可以看出,公式(10)中局部特种贡献度CM和对应部分识别率变化规律相同,根据统计分析结果可知两者相关度较高,因此采用CM作为分块的权值E。

c)计算该幅测试图像(与步骤a)和b)中的一致)的各个分块的加权强度矩阵与步骤(一)中的每个人的对应分块的特征矩阵的余弦距离,即求两者的余弦相似度,得到3A个余弦相似度:

(Sm1上,Sm2上,…SmA上)

(Sm1中,Sm2中,…SmA中)

(Sm1下,Sm2下,…SmA下)

其中,S表示余弦相似度,第一个角标m仍表示A*(B‐N)幅测试图像中的任意一幅,第二个角标表示1到A中的某个人,第三个角标表示哪个分块;

d)将该幅测试图像的每个分块和不同人的对应分块计算所得的余弦相似度与该分块对应的权值相乘,即,

(Sm1上*Em上,Sm2上*Em上,…SmA上*Em上)

(Sm1中*Em中,Sm2中*Em中,…SmA中*Em中)

(Sm1下*Em下,Sm2下*Em下,…SmA下*Em下)

再进行如下的对应相加,即,

Sm1=Sm1上*Em上+Sm1中*Em中+Sm1下*Em下

Sm2=Sm2上*Em上+Sm2中*Em中+Sm2下*Em下

SmA=SmA上*Em上+SmA中*Em中+SmA下*Em下

e)取(Sm1,Sm2,…SmA)中的最大值对应的人作为该幅测试图像的识别结果。

现有的基于PCNN模型的人脸识别方法大都采用基于模型固有的二值输出的某些信息作为人脸特征数据,特征数据不够细化且使用一组参数无差别地处理整幅人脸图像,忽视了人脸各部分的不同。本发明基于此提出了基于加权强度PCNN模型的分块人脸识别方法。在简化PCNN模型的基础上,提出了加权强度PCNN模型,引入了自发脉冲发放强度、耦合脉冲发放强度和加权强度的概念,细化模型的输出。同时进行人脸识别时采用分块识别。识别前根据人脸图像各部分灰度分布的不同和局部识别率的不同,将人脸图像进行了分块。进行人脸识别时,分块的权值会根据分块图像自适应地设定;模型的参数会根据分块图像内容设定(可根据改进的网格参数寻优,文献[1]),然后基于上述参数各个分块会分别进行识别。最终一幅人脸图像的识别结果会综合各分块的识别结果。

效果实验:

1、分块人脸识别实验

采用了分块识别策略后,各人脸库的识别率,较没有采用分块策略的人脸识别方法,均有一定程度的提高,见表2、3。

表2 YALE人脸库分块人脸识别实验

表3 ORL人脸库分块人脸识别实验

2、基于加权强度PCNN模型的人脸识别实验

在采用了基于加权强度PCNN模型的人脸识别方法后,各人脸库的识别率,较基于未加权的强度PCNN模型的人脸识别方法,均有一定程度的提高,见如下的表4、5。

表4 YALE人脸库加权强度PCNN模型人脸识别实验

表5 ORL人脸库加权强度PCNN模型人脸识别实验

3、基于加权强度PCNN模型的分块人脸识别实验

YALE人脸库上的实验结果见图12,可以看出,本文算法在N取3、4和5时的识别率均高于基于ICA、PCA的人脸识别方法,在N取3时提升的幅度最大。

ORL人脸库的实验结果见图13(N取5),可以看出在ORL人脸库上的识别率也有相应提升。

附图说明

图1为人脸图像;

图2为图1中人脸的总体灰度分布;

图3为眼睛的灰度直方图(其中横轴表示图1中眼睛部分的灰度分布区间,纵轴表示相同灰度值的像素个数);

图4为鼻子的灰度直方图(其中横轴表示图1中鼻子部分的灰度分布区间,纵轴表示相同灰度值的像素个数);

图5为嘴的灰度直方图(其中横轴表示图1中嘴巴部分的灰度分布区间,纵轴表示相同灰度值的像素个数);

图6为人脸不同区域的灰度分布和对应的识别率;

图7为步骤(一)中求任意一个人的上分块的平均加权强度矩阵的过程示意图;

图8为加权强度PCNN模型示意图;

图9为步骤(二)a)中求任意一幅测试图像各个分块加权强度矩阵的过程示意图;

图10为局部特征贡献度和局部识别率的变化关系图;

图11为局部特征贡献度和局部识别率的拟合线图;

图12为YALE人脸库上的实验结果;

图13为ORL人脸库的实验结果。

具体实施方式

基于加权强度PCNN模型的分块人脸识别方法,由如下步骤实现:

(一)训练阶段

构建或选择现有的含有A个人,每人B幅人脸图像,共有A*B幅人脸图像的人脸库;在人脸库中取每个人的前N幅,N≤B/2,人脸图像作为训练图像,将每幅训练图像都按照眼睛、鼻子和嘴进行横向分块,分为分别对应于眼睛、鼻子和嘴的上、中和下三个分块图,将每人的每幅人脸图像的三个分块图像都输入加权强度PCNN模型,每个分块会得到一个加权强度矩阵,这样会得到A*N*3个加权强度矩阵,它们分别对应于每个人的每个训练图像的每个分块,然后求分别对应于每人上、中、下分块的N个加权强度矩阵的平均值,即平均加权强度矩阵,并记录下这个值,作为每个人每个分块的特征矩阵,训练阶段总共会得到3A个特征矩阵(平均加权强度矩阵),即:

(C1上,C2上,…CA上)

(C1中,C2中,…CA中)

(C1下,C2下,…CA下)

其中,C表示特征矩阵,第一个角标表示哪个人,第二个角标表示哪个分块;

所述的加权强度PCNN模型的数学模型如下所示:

Fij(n)=Iij (1)

Lij(n)=∑WYkl(n-1) (2)

Uij(n)=Fij(n)(1+βLij(n)) (3)

θij(n)=exp(-αθij(n-1)+VθYij(n-1) (4)

Oij(n)=βFij(n)×Lij(n) (6)

其中,对某一神经元,各个参数的含义如下:n循环迭代次数,[1~+∞);i和j神经元坐标;k和l,坐标为i和j的神经元的周围神经元的坐标;W内部连接矩阵;Fij反馈输入;Iij外部输入信号;Uij内部活动项;Yij脉冲输出,0或1;θij动态阈值项,[0~+∞);Qij加权强度;αθ阈值衰减系数;Vθ阈值放大系数;β连接系数;x和y强度公式系数;Lij链接输入;其中,内部连接矩阵W、阈值衰减系数αθ、阈值放大系数Vθ、连接系数β、强度公式系数x和y的确定,对本领域技术人员来讲是公知的,至少可通过文献[1]中的网格寻优法设定,具体为:(1)W用神经元与神经元之间距离的倒数来表示,即W=[0.7 1 0.7;1 0 1;0.7 1 0.7];阈值放大系数Vθ需赋予较大的初值,同时为了不浪费计算,适当的取一个整数值,使它大于人脸图像的最大灰度值即可。(2)假设公式(7)中的两部分权值即x和y都是1,此时需要设定的参数只有β和αθ,这时就使用文献[1]中的网格搜索寻优算法(应用结果选取应用基于加权强度PCNN模型的分块人脸识别方法在对应测试集上得到的识别准确率),获得β和αθ的值。(3)将得到的β和αθ代入模型,使用文献[1]中的网格搜索寻优算法对公式(7)中的两部分权值(x和y)寻优,得到x和y。

(二)测试阶段

a)人脸库中除去训练图像,剩下的为测试图像,每人有(B‐N)幅测试图像,A个人共有A*(B‐N)幅测试图像,取任意一幅测试图像,按照与步骤(一)训练阶段一样的方法得到其各个分块的加权强度矩阵,即得到三个加权强度矩阵:

QDm上

QDm中

QDm下

其中,QD表示加权强度矩阵,第一个角标m表示A*(B‐N)幅测试图像中的任意一幅,第二个角标表示哪个分块;

b)按照分块权值计算方法计算该幅测试图像(同步骤a)所述的任意一幅测试图像)的各个分块的权重,即得到三个权值:

Em上

Em中

Em下

其中,E为分块的权值;第一个角标m表示A*(B-N)幅测试图像中的任意一幅;第二个角标表示哪个分块;

所述的分块权值计算方法的具体计算过程如下:

LH(i,j)=H(F(i,j)r) (8)

F(i,j)r={I(a,b)|a∈[i-r,i+r],b∈[j-r,j+r]} (9)

H()为图象熵函数,F(i,j)r为以(i,j)为中心的滑动可变窗口内的子图像,I(a,b)表示F(i,j)r内的像素,r为滑动可变窗口的半径,(i,j)表示某个像素的位置,p和q为分块图像的横向和纵向长度,cd代表上、中、下三个分块中的任一块,CM为局部特种贡献度,并采用CM作为分块的权值E;

c)计算该幅测试图像(与步骤a)和b)中的一致)的各个分块的加权强度矩阵与步骤(一)中的每个人的对应分块的特征矩阵的余弦距离,即求两者的余弦相似度,得到3A个余弦相似度:

(Sm1上,Sm2上,…SmA上)

(Sm1中,Sm2中,…SmA中)

(Sm1下,Sm2下,…SmA下)

其中,S表示余弦相似度,第一个角标m仍表示A*(B‐N)幅测试图像中的任意一幅,第二个角标表示1到A中的某个人,第三个角标表示哪个分块,如,Sm1上表示该幅测试图像的上分块和第一个人的上分块的余弦相似度,Sm1上=sim(QDm上,C1上);

d)将该幅测试图像的每个分块和不同人的对应分块计算所得的余弦相似度与该分块对应的权值相乘,即,

(Sm1上*Em上,Sm2上*Em上,…SmA上*Em上)

(Sm1中*Em中,Sm2中*Em中,…SmA中*Em中)

(Sm1下*Em下,Sm2下*Em下,…SmA下*Em下)

再进行如下的对应相加,即,

Sm1=Sm1上*Em上+Sm1中*Em中+Sm1下*Em下

Sm2=Sm2上*Em上+Sm2中*Em中+Sm2下*Em下

SmA=SmA上*Em上+SmA中*Em中+SmA下*Em下

e)取(Sm1,Sm2,…SmA)中的最大值对应的人作为该幅测试图像的识别结果。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1