1.一种镜像图与粗细层次结合的稀疏人脸识别方法,其特征在于:包括如下步骤:
步骤一:镜像图法利用图像的对称性得到镜像图;若人脸数据库有t类,每类有n个训练样本,训练样本总数为N=t*n;令X表示总的原始矩阵,Xi表示X中第i类训练样本矩阵,Xi=[x(i-1)*n+1,x(i-1)*n+2,…,xi*n](i=1,2,…,t),Xi中每一项代表第i类中每一个训练样本的列向量;设样本矩阵具有C行和D列,它对应的镜像矩阵也具有C行和D列;第i类第j个训练样本列向量表示为x(i-1)*n+j,第i类第j个新生成的镜像样本表示为m(i-1)*n+j,(i=1,2,…,t;j=
1,2,…,n);x'(i-1)*t+j(c,d)表示x(i-1)*t+j在第c行和第d列上的像素,m'(i-1)*t+j(c,d)表示m(i-1)*t+j(c,d)在第c行和第d列上的像素,有将m'(i-1)*t+j(c,d))转化为m((i-1)*t+j(c,d),令M表示总的镜像图矩阵,Mi表示M中第i类训练样本矩阵,Mi=[m(i-1)*n+1,m(i-1)*n+2,…,mi*n];
步骤二:令S表示总的训练样本矩阵,S=[S1,S2,…St],Si表示第i类总的训练样本矩阵,Si=[x(i-1)*n+1,m(i-1)*n+1,x(i-1)*n+2,m(i-1)*n+2,…,xi*n,mi*n];第i类测试样本矩阵的列向量为y,用欧氏距离来测量第i类训练样本x(i-1)*n+j与测试样本之间的偏差程度,令di=||y-x(i-1)*n+j||2 (2)
di越小,说明x(i-1)*n+j越接近y;从2*N个训练样本中用欧式距离选出G个训练样本,G≤2*N,设G个训练样本的列向量分别为q1,q2,…,qG,令Q表示经过欧式距离选择过的训练样本矩阵,Q=[q1,q2,…,qG];用G个训练样本线性表示y,即y=K*Q (3)
K是Q对应的系数,K=[k1,k2,...,kG];令Ki=(QTQ+μz)-1QTy,μ是一个较小的常量,z是一个可识别的矩阵;令yi=Ki*Qi (4)
Qi表示Q中第i类训练样本,Ki为Qi对应的系数,用di1衡量y与y'之间的偏差程度,即di1=||y-y'||2 (5)di1越小,说明y'越能表示y;若 则测试样本y被分配到第i类。