余拓,陈莹
(江南大学 轻工过程先进控制教育部重点实验室,江苏 无锡 214122)
人脸识别作为一项日趋成熟的生物特征识别技术,广泛应用于安防、金融、教育、交通、行政等领域。在人脸识别中,光照变化一直是影响人脸识别结果的重要因素之一。不同光照条件下的同一个人的图像差异巨大,有时甚至大于两个不同的人的图像。传统方法如主成分分析[1](principal component analysis, PCA)、局部Gabor特征匹配[2]、支持向量机[3]等,无法消除光照带来的图像差异[4]。
为了解决这个问题,人们提出了许多方法,大致可分为4类。第1类方法使用传统的图像处理方法,如直方图均衡[5](histogram equalization, HE)、Gamma校正、对数变换、同态滤波等方法,来消除光照差异。这类方法不考虑物理光照模型,因此效果有限。第2类方法从图像中提取对光照不敏感的特征作为人脸图像的特征,如局部二值模式[6]、局部三值模式[7]、梯度方向直方图[8]、增强局部纹理特征[9]。第3类方法尝试利用不同光照下的人脸图像样本来建立人脸模型,如光照锥模型法[10]、3-D形变模型[11]以及球面谐波模型法[12]。第4类方法尝试寻找光照不变的人脸图像表征方法,如单尺度Retinex 方法[13]、Gradientface[14]、自商图[15](self-quotient image,SQI)、Weber-face[16]以及基于小波变换的方法[17-18]。C. Chen 等[19]将引导滤波[20](guided image filter)引入人脸图像的光照补偿中,提出了边缘弱化引导滤波(edge-weakening guided image filter,EWGIF),并将人脸图像经EWGIF处理后的图像作为自商图中平滑图,利用自商图得到光照补偿图像,取得了良好的效果。
本文在C. Chen等工作的基础上,提出了一种基于加权EWGIF的人脸图像光照补偿方法。首先构造一个可区分边缘细节的惩罚项来代替引导滤波中的常数惩罚项;接着以正面光照下的训练样本的类间平均脸作为正面光照模型,使用该光照模型生成一个加权系数对惩罚项进行加权;最终通过自商图获得在人脸识别过程中更具区分度的人脸图像。
本节首先简要介绍文献[19]中获得光照补偿图像的自商图[15]方法,然后介绍引导滤波[20],文献[19]在该方法的基础上提出了EWGIF,用以计算自商图中的平滑图,最后介绍EWGIF方法,并分析了其中的不足之处。
自商图是一种简单而高效的图像光照补偿方法,它是指输入图像及其平滑图的比值,即
式中:I 为输入图像,Iˆ为 I的 平滑图, Q 为光照补偿之后图像。文献[19]以EWGIF方法得到原图的平滑图 Iˆ , 以自商图的结果 Q 作为人脸识别过程中的特征。由式(1)可以看出,平滑图 Iˆ决定了自商图的最终效果。
引导滤波是一种局部线性图像滤波,在实现平滑滤波的同时具有良好的边缘保持性能。引导滤波建立在两个模型的基础上。
模型1 假设输出图像 Z 和引导图像G 之间呈局部线性关系,即
式中: ωr(k)为 以 像素点 k 为 中 心 半径为 r 的 窗 ; αk、βk是 线性变换的系数,在 ωr(k)范围内为常数。由式(2)可知 ∇ Z=α∇G,这使得引导滤波能够从图像中良好地区分出边缘部分。
模型2 假设输出图像 Z 和输入图像 I之间呈线性关系,即
式中 n( i)是滤波过程中不希望保留的噪声或纹理。
为了在维持式(2)成立的同时最小化 Z 和 I之间的差异,引导滤波通过在窗 ωr(k)内最小化下述损失函数来求解式(2)中的线性变换系数 αk和 βk:
式中 ε为常数惩罚项,用于抑制过大的 αk值。
由于每个像素点都被多个窗所覆盖,故每个像素点都对应多组线性变换系数 αk、 βk,这里取它们的均值 α¯和 β¯作为每个像素点对应的线性变换系数。因此式(2)可改写成:
其中
文献[19]中使用引导滤波的输出图像 Z 作为SQI中的平滑图 Iˆ,并将引导滤波的损失函数,即式(4)中的常数惩罚项 ε用一个由局部方差生成的系数λ代替:
这使得引导滤波能根据图像的局部方差,自动调节平滑等级。EWGIF虽然具有区分边缘的能力,但并不是所有的边缘细节都能被看作人脸特征,算法对于不属于人脸特征的边缘细节不做特殊处理。如图1所示,圆圈标记出的明暗交界处是光照影响产生的,应归为噪声,但因其局部方差较大,也会被算法视作边缘细节。这会在一定程度上影响人脸识别的准确率。
图1 EWGIF将光照产生的噪声视作边缘细节Fig. 1 EWGIF with regard to the noise caused by the illumination as edge
为了解决这个问题,本文提出加权EWGIF算法来弥补EWGIF的不足。
同文献[19]一样,本文方法在使用引导滤波时,假设输入图像 I 与引导图像G 相同。同时本文将式(4)中的常数惩罚项 ε用加权惩罚项ξ ( k)代替:
此时式(4)变为
式(10)是一个线性岭回归模型[21],易得其解 αk和βk分别为
式(9)第1项 W (k)是加权系数,本文将在2.2节阐述如何计算该项,以及该项的作用;第2项 µ是输入图像的每个窗 ω1(q)内方差的倒数之和,即
式中 N 是输入图像的总像素数。为了防止式(13)出现分母为零的情况,c是一个取值极小的常数(本文取 c =0.001)。式(13)反映了图像整体上的光照差异(见图2):当光照良好时,图像边缘细节明显,其值最小;当光照不均匀,部分区域出现阴影造成边缘细节不明显时,其值变大;当光照极度不均匀,图像中出现大片阴影时,其值最大。
图2 光照条件不同时对应式(9)中µ 的值Fig. 2 Value of µ in Eq.(9) on the face images under different illuminations
图3 一幅图像中不同区域对应式(9)中k)的值Fig. 3 Value of (k) in Eq.(9) on different areas from the same image
本文使用人脸在正面光照条件下图像的光照部分 L 来构造加权系数 W 。取正面光照的训练样本图像{Tm,m=1,2,···,M}的平均值,并对其使用高斯模糊,即得到光照部分 L:
式中: Tm为 第 m幅正面光照的训练样本图像,其像素值已归一化至 [0 ,1]; M 为 训练样本总数目;gaussian(·)为高斯模糊函数。图4展示了利用Extended Yale B中正面光照图像计算得到的光照模型。由图4可以看出,眼、口、鼻等边缘细节处的像素灰度值相对较小,而额头、脸颊、下巴等平滑处的像素灰度值相对较大。
图4 光照模型Fig. 4 Illumination model
在滤波过程中,某一区域的惩罚项越大,其平滑等级越高,经过自商图方法处理后该区域的边缘细节也越明显;该区域惩罚项越小,其平滑等级越低,经过自商图方法处理后该区域更趋向于平滑。故为了弱化光照造成的人脸平滑部分图像的细节噪声,需减小滤波过程中这些区域的平滑等级,即减小这些区域的惩罚项。同时,为了维持人脸特征不被弱化,对于包含人脸特征的细节区域,其惩罚项需要增大或维持不变。
为了满足上述条件,加权系数 W 在人脸细节区域的取值应当大于其在人脸平滑区域的取值。为此,本文对 L作反色得到 L′(k)=1−L(k), 并在 W 中加入 L′。同时由图4可观察到,人脸平滑区域的总面积大于人脸细节区域,所以 W 中大部分像素的取值应当较小。但从图5(a)中 L′的直方图来看,其大部分像素分布在直方图中心区域。因此,本文对 L′中的各像素值求平方(相当于对 L′进行了Gamma校正),用所得值来代替 W 中 的 L′。图5(b)直方图展示了其像素分布,从中可见大部分像素分布在直方图左侧,取值较小。
图5 对L分别作反色和反色+Gamma校正后图像的直方图Fig. 5 Histogram of L after color reverse and color reverse + Gamma correction
最终根据如上分析,本文构造加权系数 W :
式中 δ是由多次实验得到的一个常数。
本文算法的具体流程如下。
输入 正面光照人脸图像 {Tm,m=1,2,···,M},人脸图像 I;
输出 光照补偿后图像 Q 。
1) 按式(14)由 {Tm,m=1,2,···,M}计算光照部分L,并将其带入式(15)得到加权系数 W ;
2) 取窗口半径为1,计算 I中各个像素的局部方差σ21(k),k=1,2,···,N,并按式(13)计算各个窗内方差的倒数之和 µ;
4) 将 I同时作为引导滤波的输入图像和引导图像,并使用 ξ作为引导滤波的惩罚项,通过引导滤波算法计算得到滤波输出图像 Z;
5) 将算法的输入图像 I和滤波输出图像 Z分别作为式(1)中的原图 I和平滑图 Iˆ,可得到自商图输出 Q ,即人脸图像I 经过光照补偿后的图像。
上述算法的时间复杂度为 O (N),与引导滤波的时间复杂度相同。
本文首先在Extended Yale B数据库上进行了光照补偿实验,并与EWGIF+SQI方法[19]做了对比。接着在CMU-PIE和Extended Yale B这两个数据库上进行了人脸识别实验,并与原图、HE[5]、Weberface[16]、EWGIF+SQI做对比。Weber-face方法使用文献[16]推荐参数,EWGIF中的常数系数 ε和本文式(15)中的常数系数 δ都通过穷举搜索,在Extended Yale B数据库中设定至最佳值。对于δ ,本文以0.02为步长,在区间[0.02, 0.4]内进行搜索。本文在CMU-PIE数据库上的实验亦采用这套参数(ε =250,δ=0.06)。数据库中的人脸图像均已对齐,且尺寸归一化至1 2 0×120。本文使用以欧式距离为度量准则的最近邻分类器来对测试样本进行分类,同时使用PCA来降低特征维数,使用训练样本来提取PCA投影基向量,并保留特征90%的能量。
Extended Yale B中包含了38张人脸在64种光照条件下的图像,本文按照拍摄时光源方向与摄像机方向的夹角,将数据库分为5个子集(S1~S5):0°~12°为 S1,13°~25°为 S2,26°~50°为 S3,51°~77°为S4,大于 78°为 S5。
图6展示了本文方法和EWGIF分别结合的SQI方法,以及Weber-face对Extended Yale B数据库进行光照补偿后的结果。由图6可以看到,S3、S4、S5样本中由光照造成的明暗交界区域,在EWGIF和Weber-face中没有做特别处理;而在本文方法中,这些区域被弱化,在S4中体现尤为明显。S2图像由于光照比较接近正面光照,本文方法和EWGIF方法的实验结果相近。
3.2.1 CMU-PIE测试结果
本文在CMU-PIE的光照子集(“C27”)上进行测试,其中包含了68个人脸在21种光照条件下的图像。本文每次使用1种光照下的图像作为训练样本,其余20种光照下的图像作为测试样本。
图7展示了不同方法在CMU-PIE上的识别准确率,可以看到,本文方法明显优于原图和HE,较Weber-face提升了约7.3%的平均识别准确率;且在不同光照条件的图片作为训练样本时,相较于EWGIF,本文方法的识别准确率都得到了不同程度的提升。从表1可以看出,本文方法的平均识别准确率在EWGIF+SQI的基础上提升了约5.9%。
图7 不同方法在CMU-PIE上的识别准确率Fig. 7 Recognition rates on CMU-PIE with different approaches
表1 不同方法在CMU-PIE上的平均识别准确率Table 1 Average recognition rates on CMU-PIE with different approaches
3.2.2 Extended Yale B测试结果
本文使用Extended Yale B中的子集S1作为训练样本,另外4个子集作为测试样本,进行人脸识别实验。
图8展示了穷举搜索常数系数 δ的结果。由图8可见,当 δ =0.06时,本文方法+SQI在Extended Yale B数据库S2~S5子集上取得较好的识别结果。
表2展示了不同方法在Extended Yale B中的每个子集(不包含作为训练集的S1)上的识别准确率及平均识别准确率,可以看到,本文方法在各个子集上的识别准确率明显高于原图和HE,在S3、S4、S5上的识别准确率高于Weber-face。由于S2与训练集的光照差异不大,本文方法在S2上的识别准确率与EWGIF、Weber-face相差不大;另外3个子集与训练集的光照差异大,本文方法相较于EWGIF+SQI,在 S3、S4、S5上分别提升了约 6.1%、7.6%、2.1%,平均识别率提升了约3.7%。
图8 δ取不同值时本文方法+SQI在Extended Yale B数据库S2~S5子集上的平均识别准确率Fig. 8 Average recognition rates on the S2~S5 subsets of the Extended Yale B by the proposed method + SQI with different δ valves
表3对比了不同方法的运行时间。实验使用CPU主频3.2 GHz、内存8 GB的PC机,所有代码均为MATLAB实现。由表3可见,本文方法的运行时间虽然超过HE、Weber-face,但相较于EWGIF仅增加了微量的运行时间。算法具有一定的实时性,可进一步应用于实时视频的人脸识别中。
表2 不同方法在Extended Yale B上的识别准确率Table 2 Recognition rates on the Extended Yale B with different approaches %
表3 不同方法在Extended Yale B上对一幅图像的平均处理时间Table 3 Average processing time per image on the Extended Yale B with different approaches ms
本文针对人脸识别中的光照变化问题,提出了一种基于加权EWGIF的人脸光照补偿方法。使用正面光照样本的类间平均脸生成加权系数,作为引导滤波损失函数惩罚项的加权系数,配合自商图,弱化了最终得到的光照补偿图像中人脸平滑区域由光照造成的边缘细节噪声。实验结果表明,本文方法能有效提高人脸识别准确率。未来的工作将深入研究引导滤波的惩罚项,改进加权系数,优化光照模型,从而进一步提升光照补偿的效果和人脸识别的准确率。