人脸识别技术作为计算机视觉和模式识别领域研究的热点课题之一, 被广泛用于身份证信息系统、银行监控、海关出入境检查、犯罪嫌疑人追逃、校园安全、门禁系统等领域, 具有巨大的潜在应用前景. 然而在实际的人脸识别系统中, 所采集的人脸图像是在不可控的自然环境下进行, 常常含有光照、姿态、遮挡、表情、噪声等类内变化. 因此, 如何在含有较大干扰的人脸识别问题中高效地取得良好的识别结果, 便成了当前人脸识别研究所关心的问题[1].
近年来, 受压缩感知理论[2]启发, Wright等人[3]提出基于稀疏表示(Sparse Representation-based Classifi-cation, SRC)的分类方法, 该算法对图像被腐蚀、遮挡及其他噪声等复杂环境下的人脸识别问题获得较好的识别效果. 之后, 一系列基于SRC分类方法的研究取得了一定进展, 具有代表性的包括稀疏重构算法的优化策略[4]、添加对表示系数的不同约束工作[5]以及SRC方法与其他算法的结合[6,7]等. 其中, Hui等人[8]在K最近邻(K-Nearest Neighbors, KNN)算法的基础上, 提出了稀疏近邻表示分类(Sparse Neighbor Representation based-Classification, SNRC)算法, 利用K个近邻样本数据对测试样本进行稀疏线性重构, 一定程度上增强了人脸稀疏重构精度, 提高了人脸识别率. 李佳等人[9]为了有效地提升压缩感知图像的重构质量, 提出了基于加权结构组稀疏表示(WSGS)算法, 该算法明显改善了图像的重构质量, 提高了稀疏重构的精度. Fan等人[10]提出加权稀疏表示分类(Weighted Sparse Representation Classification, WSRC)的人脸识别算法, 将样本权重引入到训练字典中加权融合, 增强了人脸识别的鲁棒性, 但算法比较耗时且不符合实时性要求.
可见, WSRC算法相比经典的SRC算法, 提高了人脸识别率, 却忽略了它的计算效率. 事实上, 虽然WSRC算法可以取得理想的识别结果, 但是若该算法运用经典的l1范数优化方法(如l1_ls算法)来求解稀疏表示系数, 其计算效率会很低. 尤其在实际的人脸识别应用中, 常采用的嵌入式系统无法满足该算法高计算复杂度的要求. 若要将WSRC算法付诸到实际应用, 既要获得良好的分类效果, 又要提高基于l1范数优化问题的计算速度, 就非常有必要对WSRC算法进行改进, 在提高人脸识别率的同时考虑算法的时间效率. 鉴于此, 本文采用高斯核函数获取训练样本权重和DALM算法求解l1范数最小化模型, 提出了一种改进的加权稀疏表示分类算法WSRC_DALM. 在不同人脸数据库上的实验表明, 基于对偶增广拉格朗日乘子法(Dual Augmented Lagrange Multiplier, DALM)的加权稀疏表示分类算法不仅显著提高了WSRC算法的人脸识别率, 而且降低了时间复杂度, 取得了鲁棒性的识别效果.
1 基于SRC的人脸识别SRC算法的核心思想是将测试样本表示成训练样本的线性组合, 通过稀疏重构求出稀疏系数进行图像分类. 其主要流程包括: 人脸图像的预处理、构造超完备训练字典、图像稀疏重构、稀疏分类, 具体如图1所示.
在人脸识别中, 假定一张人脸灰色图片的像素为
为提高WSRC算法的识别率和计算效率, 本文提出了一种加权稀疏表示分类和DALM相结合的分类算法WSRC_DALM. 其大体有两方面改进: 一方面是利用高斯核函数来计算训练样本的权重, 构造加权训练字典
WSRC算法的核心思想是获取每个训练样本在表示测试样本中的重要性, 即训练样本的权重, 之后采用加权的训练样本字典
(1) 输入: 训练字典
$\sum\limits_{i = 1}^k {{n_i}} = N$ | (1) |
其中, k表示样本类别, ni是每类人的所有样本图像, N是所有人的样本图像.
(2) 图像预处理: 对
(3) 计算权重: 采用高斯核函数计算每个训练样本和测试样本之间的相似性[10], 即训练样本的权重
${w_{i,j}} = {d_g}\left( {{v_{i,j}} - y} \right) = \exp \left( {\frac{{ - {{\left\| {{v_{i,j}} - y} \right\|}^2}}}{{2{\sigma ^2}}}} \right)$ | (2) |
其中,
(4) 引入权重, 构造新的训练字典
$\begin{aligned}{{\bf{A}}'} & = \left[ {{\bf{A}}_1',{\bf{A}}_2',{\bf{A}}_3', \cdots ,{\bf{A}}_k'} \right]\\ & = \left[ {{w_{1,1}}{v_{1,1}}, \cdots ,{w_{1,{n_1}}}{v_{1,{n_1}}}, \cdots ,{w_{k,{n_k}}}{v_{k,{n_k}}}} \right]\end{aligned}$ | (3) |
其中,
(5) 求解l0最小化问题:
$\hat x = \min {\left\| x \right\|_0}\;\;{\rm{s.t.}}\;\;y = {{\bf{A}}'}x$ | (4) |
(6) 计算出测试样本对应的每类人的残差:
${r_i}\left( y \right) = {\left\| {y - {{\bf{A}}'}{\delta _i}\left( x \right)} \right\|_2},\;\;i = 1,2, \cdots ,k$ | (5) |
(7) 输出: 判断
$identity\left( y \right) = \arg \min \;\;{r_i}\left( y \right)$ | (6) |
式(4)l0范数问题是一个NP-hard问题, 通常可转换为l1范数的凸问题, 当前利用基于最小化l1范数优化问题的l1_ ls算法大大增加了WSRC算法的计算复杂度, 非常耗时. 为了提高WSRC算法的时间效率, 本文采用对偶增广拉格朗日乘子法 (Dual Augmented Lagrange Multiplier, DALM)求解式(4). 式(4)对应的拉格朗日乘子函数[12]如下:
${L_\mu }\left( {x,\gamma } \right) = {\left\| x \right\|_1} + \left\langle {\gamma ,y - {{\bf{A}}'}x} \right\rangle + \frac{\mu }{2}\left\| {y - {{\bf{A}}'}x} \right\|_2^2$ | (7) |
其中,
${x^*} = \mathop {\arg \min }\limits_x {L_\mu }\left( {x,{\gamma ^*}} \right)$ | (8) |
由式(8)可知, 要求出稀疏解x, 必须要确定参数γ*和μ的取值, 可通过迭代方法[13]来同时计算
$\left\{ {\begin{array}{*{20}{l}}{\begin{array}{*{20}{l}}{{x_{k + 1}} = \mathop {\arg \min }\limits_x {L_k}\left( {x,{\gamma _k}} \right)} \\{{\gamma _{k + 1}} = {\gamma _k} + {\mu _k}\left( {y - A{x_{k + 1}}} \right)}\end{array}}\end{array}} \right.$ | (9) |
其中,
为了精确重构测试图像, 将ALM算法运用在对偶问题上, 即DALM算法[14], 则式(4)可转化为成:
$\mathop {\max }\limits_{{y^ * }} {y^{\rm{T}}}{y^*}\;\;{\rm{s.t.}}\;{{\bf{A}}^{'{\rm{T}}}}{y^*} \in B_1^\infty $ | (10) |
其中,
$\begin{array}{c}\mathop {\min }\limits_{{y^*},x,z} - {y^{\rm{T}}}{y^*} - {x^{\rm{T}}}\left( {z - {{\bf{A}}^{\rm{T}}}{y^*}} \right) + \frac{\beta }{2}\left\| {z - {{\bf{A}}^{\rm{T}}}{y^*}} \right\|_2^2\;\;\;{\rm{s.t.}}\;z \in B_1^\infty \end{array}$ | (11) |
其中,
对于求解初始化问题
${z_{k + 1}} = {P_{B_1^\infty }}\left( {{{\bf{A}}^{\rm{T}}}{y_k} + {x_k}/\beta } \right)$ | (12) |
其中,
$\beta {\bf{A}}{{\bf{A}}^{\rm{T}}}{y^ * } = \beta {\bf{A}}{z_{k + 1}} - \left( {{\bf{A}}{x_k} - y} \right)$ | (13) |
DALM算法[2]可表示为:
$\left\{ {\begin{array}{*{20}{l}}{{z_{k + 1}} = {P_{B_1^\infty }}\left( {{{\bf{A}}^{\rm{T}}}y_k^* + {x_k}/\beta } \right)}\\{y_{k + 1}^* = {{\left( {{\bf{A}}{{\bf{A}}^{\rm{T}}}} \right)}^{ - 1}}\left( {{\bf{A}}{z_{k + 1}} - \left( {{\bf{A}}{x_k} - y} \right)/\beta } \right)}\\{{x_{k + 1}} = {x_k} - \beta \left( {{z_{k + 1}} - {{\bf{A}}^{\rm{T}}}y_{k + 1}^*} \right)}\end{array}} \right.$ | (14) |
可见由式(12)可精确求出重构测试图像, 且可以保证该对偶算法的收敛性.
2.3 算法时间复杂度假设共有N个人脸图像为训练样本, 每个人脸图像的维数是m. 经典SRC算法的时间复杂度是
为了验证WSRC_DALM算法在人脸识别中的有效性, 进行了两类实验: 一是算法识别效果和时间测试; 二是算法对多姿态的鲁棒性测试. 本文的两类实验将WSRC_DALM算法与经典SRC算法(即SRC(l1_ls)方法)、WSRC算法(即WSRC(l1_ls)方法)进行比较. 实验基于ORL[15]和FEI[1]两个标准人脸数据库, 在2.60 GHz, 4 G内存, 64位Win7的计算机系统下进行实验. 实验之前, 需要设置高斯核函数的宽度参数
$\sigma {\text{ = }}\frac{{\text{1}}}{{{{{M}}^{\text{2}}}}}\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^N {{{\left( {{v_i} - {v_j}} \right)}^2}} } $ | (15) |
其中, M是所有样本之间的欧氏距离数目.
3.1 ORL人脸数据库实验ORL人脸数据库包含40人的400张灰度人脸图像, 每人有10幅样本图像, 主要包含姿态和表情变化, 每幅样本图像的大小为112×92. 部分样本人脸如图2所示.
实验前, 为了保证实验过程中训练字典的完备性, 即训练字典列的维数大于行的维数, 将所有图像下采样至14×12, 形成168维的特征向量. 选择每类人不同数目的图像组成训练样本集, 剩下的图像作为测试样本. 各算法所得的识别率结果如表1所示.
从表1中可知, 本文算法识别精度上优于SRC算法和WSRC算法. 为了更好说明所提算法的计算效率, 将WSRC算法和WSRC_DALM算法在训练样本数目N=6下的运行时间进行了对比, 如表2所示. 可见在保证相同识别率的条件下, WSRC_DALM算法明显在识别时间上较优于WSRC算法.
3.2 FEI人脸数据库实验
FEI数据库包含200种人的彩色图像, 其中每类14张图像, 含姿态和光照变化的影响. 本文随机选择100种人的11张姿态各异的图像, 每幅图像的大小是480×640. 部分样本人脸如图3所示, 其中编号1–5是从右侧90度到正面过渡姿态图像, 编号6–10是从正面到左侧90度的过渡姿态图像, 编号11是正面图像.
由于FEI数据库中所有的图像是彩色的, 首先对图像进行灰度处理, 其次下采样至16×24, 形成384维的特征向量. 实验中分别选择每个人不同数目的图像作为训练集构成过完备字典, 即N=5, 6, 7, 8, 9, 10, 则剩下的图像作为测试样本. 对比SRC、WSRC和WSRC_DALM算法, 所得识别率结果如表3所示.
从表3可知, 随着训练样本的增加, 即训练姿态的增加, 本文算法的识别率明显优于其他算法. 当N=8时, 由于测试样本的姿态是1、10、11, 尤其是1和10两种姿态影响了识别率, 可见识别率的大小与所选择的姿态存在相关性.
为了在视觉上体现出加权稀疏表示结合DALM算法在多姿态人脸识别中的优越性, 本文选取了一个被SRC误分类的测试图像进行验证. 图4所示为训练字典中第51类人的训练集和测试图像姿态10.
当训练姿态样本数目N=8时, 第51类人的测试图像姿态10被SRC方法误分类, 所得的稀疏系数解如图5所示. 对比WSRC_DALM算法, 如图6所示为第51类人的测试图像姿态10的稀疏系数解.
从图5中可以看出, SRC算法将第51类人的测试图像姿态10误分类为第99类人训练集中的训练姿态8, 且其他系数的干扰大. 对比WSRC_DALM算法, 从图6中可知, 将其分类成第51类人的训练集中的训练姿态9, 刚好符合事实, 也就说明姿态9和姿态10的相似性最大,同时其他稀疏系数的干扰也比较小. 于是, 获取第51类人的测试图像姿态10与训练字典中每个训练样本的相似性, 如图7所示.
从图7中可以看出, 第51类人的测试图像姿态10与其姿态9的相似性最大, 同时也发现, 姿态10与其他类人训练集的姿态9的相关性比其他姿态都高, 说明了WSRC_DALM算法通过联合稀疏性和数据局部性提高了多姿态人脸识别的鲁棒性.
4 结论与展望本文针对经典SRC算法在人脸识别中的计算效率低和鲁棒性差的问题, 提出了一种改进的加权稀疏表示人脸识别算法WSRC_DALM. 该方法采用高斯核函数计算所有训练样本的权重, 并将权重引入到训练字典中进行加权融合, 保留了人脸局部数据信息, 在此基础上结合DALM算法实现l1范数最小化获得稀疏解x, 实现了一种基于DALM算法的快速WSRC人脸识别方法. 在ORL和FEI人脸库上的实验结果表明, 与其它人脸识别方法相比, 本文算法在识别率上和识别时间上具有明显优势, 减小了较大视角的姿态变化对人脸识别的影响, 具有较强的鲁棒性, 且在小样本问题中具有较大的优势.
[1] |
Cao FL, Hu HP, Lu J, et al. Pose and illumination variable face recognition via sparse representation and illumination dictionary. Knowledge-Based Systems, 2016, 107: 117-128. DOI:10.1016/j.knosys.2016.06.001 |
[2] |
Donoho DL. Compressed sensing. IEEE Transactions on Information Theory, 2006, 52(4): 1289-1306. DOI:10.1109/TIT.2006.871582 |
[3] |
Wright J, Yang AY, Ganesh A. Robust face recognition via sparse representation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009, 31(2): 210-227. DOI:10.1109/TPAMI.2008.79 |
[4] |
姜辉明. 基于稀疏表示的人脸识别方法研究[硕士学位论文]. 南昌: 华东交通大学, 2013.
|
[5] |
Yang AY, Sastry SS, Ganesh A, et al. Fast l1-minimization algorithms and an application in robust face recognition: A review. Proceedings of 2010 IEEE International Conference on Image Processing. Hong Kong, China. 2010. 1849–1852.
|
[6] |
李光早, 王士同. 基于稀疏表示和弹性网络的人脸识别. 计算机应用, 2017, 37(3): 901-905. DOI:10.11772/j.issn.1001-9081.2017.03.901 |
[7] |
张疆勤, 廖海斌, 李原. 基于因子分析与稀疏表示的多姿态人脸识别. 计算机工程与应用, 2013, 49(5): 154-159. |
[8] |
Hui KH, Li CL, Zhang L. Sparse neighbor representation for classification. Pattern Recognition Letters, 2012, 33(5): 661-669. DOI:10.1016/j.patrec.2011.11.010 |
[9] |
李佳, 高志荣, 熊承义, 等. 加权结构组稀疏表示的图像压缩感知重构. 通信学报, 2017, 38(2): 196-202. DOI:10.11959/j.issn.1000-436x.2017041 |
[10] |
Fan ZZ, Ni M, Zhu Q, et al. Weighted sparse representation for face recognition. Neurocomputing, 2015, 151: 304-309. DOI:10.1016/j.neucom.2014.09.035 |
[11] |
Lu CY, Min H, Gui J, et al. Face recognition via weighted sparse representation. Journal of Visual Communication and Image Representation, 2013, 24(2): 111-116. DOI:10.1016/j.jvcir.2012.05.003 |
[12] |
Yang M, Zhang L, Yang J, et al. Robust sparse coding for face recognition. Proceedings of 2011 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Colorado Springs, CO, USA. 2011. 625–632.
|
[13] |
Andreani R, Birgin EG, Martínez JM, et al. On augmented Lagrangian methods with general lower-level constraints. Siam Journal on Optimization, 2007, 18(4): 1286-1309. |
[14] |
Tomioka R, Sugiyama M. Dual-augmented Lagrangian method for efficient sparse reconstruction. IEEE Signal Processing Letters, 2009, 16(12): 1067-1070. DOI:10.1109/LSP.2009.2030111 |
[15] |
Zhang N, Yang J. K nearest neighbor based local sparse representation classifier. Proceedings 2010 Chinese Conference on Pattern Recognition (CCPR). Chongqing, China. 2010. 1–5.
|
[16] |
卞则康, 王士同. 基于混合距离学习的鲁棒的模糊C均值聚类算法. 智能系统学报, 2017, 12(4): 450-458. |