10.27 提出的方法
在此我们将详细描述所提到的方法,来匹配带有姿态、光照及分辨率变化的人脸图片。该框架包括两个阶段——计算转换矩阵的训练阶段和测试阶段。在训练阶段,转换矩阵从高分辨率和低分辨率非正面人脸图片中学习得到。在测试过程中,训练图片和测试图片被转换到通用空间,在那时两个转换图片间的立体代价被计算,给出了两图片简单的距离。
学习转换矩阵
在训练过程中,高分辨率正面图片和低分辨率非正面图片被用于学习转换矩阵。在训练数据库中的每个人脸图片被表示是通过聚集局部图片表示,局部图片的表示是通过基准位置计算的,它通过使用 STASM [26] 在人工监督下被提取,去改正一些在基准点位置上孤立的总误差。在这篇文献中,我们计算人脸内部的 15 个基准位置的 rootSITF [27] 描述子作为人脸的表示。
转换被定义为 g,: ,n 是输入特征矢量的维数,d 是转换空间的维数。投影 g 可以被表示为 k 个基准向量的线性组合,如下:
式中, (f),j=1,2,…,k,是一个线性的或非线性的函数;f 是输入特征向量;W 是转换矩阵,其中元素由计算得到。我们的目的是找到一个满足以下两个准则的转换:① 在转换空间中高分辨率和低分辨率图片的特征向量 ( 分别用 f i 和 f j ) 间的距离应该是接近于在相同可控环境下得到的图片的距离(用d ij 表示);② 在转换空间中同一个人的特征向量间的距离相对比不同人的应该更小,这样才能确保被识别。为了达到这样的目的,我们通过最小化下式得到转换 W:
其中,J 1 (W) 是保留质量的距离;J 2 (W) 是判别项。参数 λ 决定了距离保留和类可分性的相对重要性。第一项通过下式得到
其中 D ij 表示第 i 个高分辨率图片的特征向量和第 j个低分辨率图片的特征向量间的距离。第二个判别项通过如下式得到
其中,如果 ω i =ω j ,则 δ(ω i ,ω j )=1;反之则为 0。以上的公式与文献 [5] 中的相似 , 主要有以下不同:
● 学习到的转换矩阵 W 适用于人脸部分特征的提取,与只有一些基准位置相反。因此在测试人脸过程中它可以用于整个人脸的特征转换。因为在测试过程中没有发现特殊的基准位置,因此这个是必需的。
● 例如 PCA 的维数约简技术在此方法中可能并不适合,这是因为在测试阶段并没有假设基准位置的一致性。
最后,转换矩阵 W 通过使用迭代主算法[28]解式(2)计算得到。
测 试
在测试阶段,在测试和训练图片的每一点上得到 SIFT 描述子,然后通过在训练阶段学习到的转换矩阵 W,将这些描述子转换到常见的空间。表示在 M 个人脸网格位置的 SITF 描述子,转换后的特征表示为
训练图片和测试图片间的距离通过两图片间的立体匹配代价计算得到。在此方法中,立体代价在HR 正面人脸图片的每行转换的 SITF 特征和在学习到的识别空间中 LR 测试图片之间得到。Criminisiet al [29] 提到的四种情形的立体公式被用于计算在转换空间中的立体匹配匹配的代价。为了完整性,我们提供了算法的一些细节。
立体算法包括四个累积的代价矩阵,分别为M Lo 、M Ro 、M Lm 和 M Rm 。在这四个代价矩阵之间,M Lo 和 M Ro 被用来获得遮挡,M Lm 和 M Rm 分别被用来在左边和右边图片中获得匹配。四个矩阵的输入除在右边遮挡的累积代价矩阵 M Ro 外,其余的初始化为 + ∞。
其中 q 表示输入图片一行特征的数量。四个累积代价通过动态规划算法计算得到如下递归过程:
其中 M(l,r) 表示转换特征描述符的匹配代价,分别相应于在从左到右观察中的第 l 和第 r 个网格位置。在这里,l和r从0变化到q-1。M R0 和M Rm 是对称的。匹配代价 M(l,r) 的计算公式如下:
其中 Ω 是在特征位置 (l,r) 周围的 3×3 网格块;上标 1 和 2 表示正在计算的立体代价的两个图像;P k是在第 k 个网格位置计算的转换 SIFT 描述子。一个块的均值用条形来表示。在我们的实验中,参数设置为 α=0.5、β=1、β’=1、γ=0.25。通过设置不同的参数值,实验中发现算法对于参数值是鲁棒的。假设 l 1 和 l 2 是两个图像中的两条扫描线,匹配这两条线的代价表示为Cost(l 1,l2 ) = M Ro (q-1, q-1)。因此匹配测试图像 I 1 和训练图像 I 2 的代价为
其中 和 是转换的特征向量,分别对应于测试图片和训练图片第 i 个扫描线;N s 是观扫描线的个数。最后两个图片间的距离计算公式如下:
这样做的原因是在实际环境中并不知道哪一个图片在左,哪一个图片在右。训练和测试阶段的流程如图 1。