一种2DDCT与压缩感知结合的人脸识别(3)
发布时间:2021-06-07
发布时间:2021-06-07
在压缩感知人脸识别中,我们用所有的训练样本构造字典矩阵 [A1,A2,...,Ac] Rn N,
这里训练样本是一个n维向量,N是训练样本总数;Ai是包含第i类所有训练样本的矩阵。我
们将一个人脸x表示为x ,( T)投映矩阵 有满足高斯独立分布的随机矩阵产
p N0生并按列标准化,测量矩阵Y在训练阶段产生,Y R。给定一个测试样本x,计算
,使其满足Y y;最后,用基于 计投映样本y x,然后,用OLS算法寻找稀疏向量
算在每个类上的重构误差来确定测试样本x属于哪个类。
2.4 基于2DDCT的压缩感知算法
文章提出的算法是基于2DDCT特征提取和降维特性,由于在频域中经过2DDCT变换的图像能够比原本在时域中更有效降低光照和侧转等因素影响,所以,先用2DDCT将人脸矩阵投映到频域后,取右上角w w块作为频域中的“人脸”,然后运用CS做人脸识别,亦即是为了去除噪音先用2DDCT进行过滤,然后在频域中取左上角较小块做“人脸”,运用CS做人脸识别,这样能够有效降低计算复杂度,提高识别效率。
算法步骤如下:
1、输入c类N个训练样本,用2DDCT将其投映到频域空间,在频域中取右上角w w作为频域中的训练样本,构成字典矩阵 [A1,A2,...,Ac] Rn N。
2、产生按列标准化的随机投映矩阵 Rp n。
3、给定一个测试图像,将其用2DDCT投映到频域空间,得到频域中的测试图像x。
4、在频域空间计算Yi Ai,(i..并计算测量矩阵Y [Y1,Y2,...,YC] Rp N .1C)
,使得Y y。 5、计算新的投映样本y x,并用OLS寻找稀疏向量
[r1T,r2T,...,rCT],在每个类上用ei y Yiri6、假设 2,(,i.. .,2,1 C)计算重构误差。
7、若k argmin(ei),则x属于第k类 i
3 试验结果与分析
将文章提出的方法先在ORL人脸库上进行测试。该人脸库包含40 个人,每个人有10 幅图像。图像为单一深色背景的正面图像,包含了一定的光照、表情、面部细节变化以及一定范围内的深度旋转。图像大小均为112×92 像素。实验中对每个人,随机选取4、5、6 幅图像作为训练样本,其余的6、5、4幅图像分别用来做测试。首先运用CS方法,取特征向量维数feature=150进行识别,记作CS方法;然后将所有人脸图像用2DDCT变换投映到频域,在频域中取能量集中的低频部分64×64,分别运用2DDCT和CS方法识别(取feature=82),分别记作2DDCT和2DDCT_CS方法,实验结果为五次平均值,识别率比较见表1;每类用五个作为训练样本,五次识别运行平均时间(CPU: 2 duo cpu 2.13GHz, RAM: 2.0GB)比较见表2。
表1 三种方法在ORL上的识别率(%)比较