Gabor小波子带相关结构人脸识别方法与流程

文档序号:11143250阅读:498来源:国知局
Gabor小波子带相关结构人脸识别方法与制造工艺

本发明涉及人脸识别技术,尤其是涉及一种基于Gabor小波分解子带相关结构特征的人脸识别技术。



背景技术:

人脸是一种重要的生物特征。与指纹特征一样,人脸特征在人的身份确认中具有重要的地位和作用。目前主流的人脸识别技术包括:局部描述子技术、Gabor特征技术以及近来出现的深度学习技术。深度学习复杂度极高,计算很耗时,在普通场合都不适用。LBP(局部二进制模式)是广泛应用的局部描述子。然而LBP及其扩展版的描述子容易受到图像中噪声的干扰,比如光照变化大的人脸照片和夜间拍摄的含噪声较强的人脸照片。Gabor特征方法是利用Gabor小波子带的能量(平均值)当作人脸特征,通常Gabor能量特征的表达能力不如统计模型如概率统计模型等能力强。

Gabor滤波器能模拟人的感受野函数,十分适合表达纹理图像。二维Gabor滤波器函数为:

其中σx和σy是在x和y方向的高斯标准差,F是频域的中心频率。借助于小波变换的多分辨分析,对Gabor滤波器进行扩展便可以得到具有多尺度性能的Gabor小波。Gabor小波表示如下:

pm,n=amaxf-mp(x′,y′),

其中K是整数,amax是常量,表示最大分解尺度,f是尺度因子。m(=0,1,…,S-1)和n(=0,1,…,K-1)是Gabor小波的尺度参数和方向参数,S和K是自然数。利用Gabor小波进行分解时能得到S个尺度和K个方向的共S×K个分解子带。Gabor小波在光照变化和图像噪声情况下稳定性较好,广泛应用于机器视觉领域。

Copula是构建多维统计分布的工具,它能刻画变量间的相关结构。给定一随机向量[x1,…,xn],则Copula密度具有如下形式:

其中fi(xi)和Fi(xi)是随机变量xi对应的边缘密度函数和边缘分布函数。c(F1(x1),…,Fn(xn))是copula函数的密度函数,它代表变量间的相关结构。本发明正是利用c(F1(x1),…,Fn(xn))来提取人脸特征。高斯copula是最常见的copula函数,它能很好地捕获对称变量间具有对称形状的相关结构。高斯copula的分布函数为:

G(u1,…,un)=Φ(Φ-1(u1),Φ-1(u2),…,Φ-1(un))

其中Φ是标准正态分布函数;Φ-1是Φ的逆函数;ui=Fi(x)。高斯copula的密度函数为:

其中ξ=[ξ1,…,ξn],ξi=Φ-1(ui),i=1,…,n。R是高斯copula的相关矩阵,它决定随机变量之间的相关特性。在边缘分布给定情况下,用最大似然估计可以推出相关矩阵R为:

其中L是R的行列数,也是边缘分布函数的个数。



技术实现要素:

本发明利用Gabor小波子带的相关结构实现人脸识别。用Gabor小波对人脸图片分解后会得到若干分解子带。由于Gabor函数的非正交特性,这些分解子带之间有较强的相关性。经过研究发现,这些相关特性能表征一副人脸图像。用本发明用高斯Copula函数来刻画这些相关结构。本发明方法具体实施步骤如下:

步骤(1)对人脸图像预处理。人脸采集时,由于光照变化和图像噪声会影响识别准确率。预处理主要去除光照影响和图像噪声。设输入的人脸图像为I,依次进行下面三方面的预处理:

(1a)首先,用Gamma矫正消除部分光照,Gamma矫正是将像素的指数值替换本身的值,表示为:I=Iλ,λ是矫正因子,这里取0.2。

(1b)其次,用直方图规定化增强图像。选取一副无关照和噪声影响的正面图像的直方图作为参照,根据该参照人脸图片将当前的人脸图片进行规定化处理,进一步去光照和噪声影响,增强图片效果。

(1c)最后,用高斯差分算子(DoG)滤波消除图像噪声同时增强图像边缘。DoG表示为:

步骤(2)用Gabor小波对预处理后的人脸图像进行为5尺度8方向分解,共产生40个子带。每个子带是与原图像一样大小的矩阵。

步骤(3)用高斯copula刻画子带间的相关结构,具体操作如下:

(3a)对每一个子带进行拉直操作,即从上到下、从左到右拼接形成一维向量。共产生40个一维向量。用分别用V1到V40表示这些向量。若人脸图像的尺寸为128×128像素,则Vi(1≤i≤40)长度为16384。

(3b)对每一个向量计算其经验分布。这样做的目的是计算每一个子带的边缘分布。当人脸图像尺寸一般较小时,会导致子带像素不足情况,用一般的分布(如Weibull分布和Gamma分布)函数难以取得好的效果。对于大尺寸人脸图片用Weibull分布进行拟合边缘拟合每个子带向量Vi,Weibull分布的密度函数表示为:α和β是该函数的两个参数;Weibull分布的累积分布函数为:用最大似然方法估计尺度参数和这样可以得到并将ui带入高斯copula密度函数。

对于尺寸较小的图片(比如32×32以下的图片)本发明用经验分布对每个子带进行拟合,得到累积分布值。先对向量Vi进行从小到大排序,然后计算累计分布。用ecdf表示经验分布函数,则累积分布表示为:

[Ei,Vsort]=ecdf(Vi),1≤i≤40

其中Ei为一向量,它是在Vsort点处的累积概率值,Ei长度与V相同。Vsort是V排序后的值(从小到大)。

(3c)最后用样条插值方法计算出每个样本点的经验分布函数值。最终经验分布表示如下:

Fi=spline(Vsort,Ei,Vi),1≤i≤40

Fi为向量Vi在对应点上的经验分布函数值。

(3d)用高斯copula连接这些经验分布函数的输出值。将ui=Fi带入高斯copula密度函数。

(3e)用最大似然估计方法计算出高斯copula密度函数的相关矩阵R,表示为:

其中ξ=[ξ1,…,ξn],ξi=Φ-1(Fi);Fi由(9)式计算;L为ξi向量的长度,也是Gabor子带中像素的个数。R便是人脸的特征矩阵,它刻画Gabor小波子带之间的相关结构。

步骤(4)KLD特征匹配。这一步是将特征矩阵R与数据库里面保存的人脸特征矩阵Rq(q是自然数,小于或等于数据库人脸记录数)进行比较,找出最相似的人脸。KLD特征匹配是根据两个高斯copula密度函数之间的KLD距离(Kullback–Leibler distance)进行比较。设两个高斯copula函数分别为g1和g2,它们对应的相关矩阵为R1和R2,则两个高斯copula之间的KLD为:

其中tr(·)表示求矩阵的迹;n是R的行列数,也是Gabor小波子带个数,这里等于40。

与目前主流的基于LBP和Gabor小波(或Gabor滤波器)人脸识别技术相比,本发明对光照和噪声鲁棒性好,识别率高。经过实验验证,本发明对人脸识别准确率高,响应速度快。

附图说明

图1是本发明的人脸识别流程图。

图2是图1中步骤(3)的具体实现。

具体实施方式

下面结合附图对本发明作进一步说明。图1所示为本发明方法流程,具体实施步骤如下:

步骤(1)对人脸图像预处理。人脸采集时,由于光照变化和图像噪声会影响识别准确率。预处理主要去除光照影响和图像噪声。设输入的人脸图像为I,依次进行下面三方面的预处理:

(1a)首先,用Gamma矫正消除部分光照,Gamma矫正是将像素的指数值替换本身的值,表示为:I=Iλ,λ是矫正因子,这里取0.2。

(1b)其次,用直方图规定化增强图像。选取一副无关照和噪声影响的正面图像的直方图作为参照,根据该参照人脸图片将当前的人脸图片进行规定化处理,进一步去光照和噪声影响,增强图片效果。

(1c)最后,用高斯差分算子(DoG)滤波消除图像噪声同时增强图像边缘。DoG表示为:

步骤(2)用Gabor小波对预处理后的人脸图像进行为5尺度8方向分解,共产生40个子带。每个子带是与原图像一样大小的矩阵。

步骤(3)用高斯copula刻画子带间的相关结构(如图2所示),具体操作如下:

(3a)对每一个子带进行拉直操作,即从上到下、从左到右拼接形成一维向量。共产生40个一维向量。用分别用V1到V40表示这些向量。若人脸图像的尺寸为128×128像素,则Vi(1≤i≤40)长度为16384。

(3b)对每一个向量计算其经验分布。这样做的目的是计算每一个子带的边缘分布。当人脸图像尺寸一般较小时,会导致子带像素不足情况,用一般的分布(如Weibull分布和Gamma分布)函数难以取得好的效果。对于大尺寸人脸图片用Weibull分布进行拟合边缘拟合每个子带向量Vi,Weibull分布的密度函数表示为:α和β是该函数的两个参数;Weibull分布的累积分布函数为:用最大似然方法估计尺度参数和这样可以得到并将ui带入高斯copula密度函数。

对于尺寸较小的图片(比如32×32以下的图片)本发明用经验分布对每个子带进行拟合,得到累积分布值。图2是以经验分布为例进行说明,先对向量Vi进行从小到大排序,然后计算累计分布。用ecdf表示经验分布函数,则累积分布表示为:

[Ei,Vsort]=ecdf(Vi),1≤i≤40

其中Ei为一向量,它是在Vsort点处的累积概率值,Ei长度与V相同。Vsort是V排序后的值(从小到大)。

(3c)最后用样条插值方法计算出每个样本点的经验分布函数值。最终经验分布表示如下:

Fi=spline(Vsort,Ei,Vi),1≤i≤40

Fi为向量Vi在对应点上的经验分布函数值。

(3d)用高斯copula连接这些经验分布函数的输出值。将ui=Fi带入高斯copula密度函数。

(3e)用最大似然估计方法计算出高斯copula密度函数的相关矩阵R,表示为:

其中ξ=[ξ1,…,ξn],ξi=Φ-1(Fi);Fi由(9)式计算;L为ξi向量的长度,也是Gabor子带中像素的个数。R便是人脸的特征矩阵,它刻画Gabor小波子带之间的相关结构。

步骤(4)KLD特征匹配。这一步是将特征矩阵R与数据库里面保存的人脸特征矩阵Rq(q是自然数,小于或等于数据库人脸记录数)进行比较,找出最相似的人脸。KLD特征匹配是根据两个高斯copula密度函数之间的KLD距离(Kullback–Leibler distance)进行比较。设两个高斯copula函数分别为g1和g2,它们对应的相关矩阵为R1和R2,则两个高斯copula之间的KLD为:

其中tr(·)表示求矩阵的迹;n是R的行列数,也是Gabor小波子带个数,这里等于40。

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