Localizing Parts of Faces Using a Consensus of Exemplars
方法:基于1000个手动标记的实例图像,组合局部检测器的输出和一组非参数的全局模型。假定全局模型产生块的位置作为隐含变量,然后推导一个贝叶斯目标函数,然后使用一组模型关于隐含变量求解最优化。
人脸检测:COTS商业人脸检测器。
简介:
我们将块的定位表示贝叶斯推理,其将一个人脸形状的先验模型和局部检测器的输出组合。和先前的工作不一样,我们的先验是建立在人脸各部分的组态的非参数模型,利用大量搜集的各种各样带有标签的实例。
相关工作:
眼角和鼻尖相对于其他基准点更加稳定(如嘴或者眉毛会随着标表情的变化显著不同)。因此一些检查算法会首先定位稳定的点,然后约束嘴点的位置(例如:利用稳定点的条件概率)。然而当稳定点被遮挡时,该方法会失败。相反,我们使用类RANSAC采样,随机的选择不同类型的块(部分,部件),这样的话,能够容忍一些面部特征点的遮挡。
Face Part Location
Local Detection
对于每一个特征点(块,部分,部件,基准点),我们建立一个滑动窗口检测器,其能扫描整个图像区域。该检测器使用SVM回归,特征采用灰度SIFT描述子。SIFT描述子的窗口采用两个尺度:大于是瞳孔距离的1/4和1/2。然后将这两个SIFT描述子串联形成一个256维的特征矢量。
对于所有的训练样本,我们将图像进行缩放,满足图像中瞳孔的距离大于为55个像素。正样本在手动标记的块(特征点)位置获取,负样本在至少远离标记点位置1/4的瞳孔距离处获取。此外,使用在
这些局部检测器返回图像中每一个点的得分(或者从更早的人脸检测步骤推断出来的围绕人脸的某个更小的区域)。检测器得到
然而,局部基准点检测器不完美,正确的位置不总是在最高检测得分处。例如由于头部姿态,视觉遮挡(头发,眼睛,手,手机等)引起的遮挡。下面,我们建立一个全局的检测器来更好的处理局部检测器失效的情况。
3.2 Global Detectors
尽管人脸有很多形状,在相机前以多种方式呈现,并且可能拥有夸张的面部表情,但是存在很强的解剖的和几何的约束,这些约束控制着人脸部分的在图像中布局和位置。我们不明确的建模这些约束,而是让我们的训练集隐式的指示这些约束。这里,我们需要考虑到所有部分(块)的位置,合并起来,为基准点集合开发一个全局的检测器。为了这样,我们使用一个全局模型来建模部分(块)位置的组态。
更加正式的,令
So,我们的目标是:找到使得给定局部检测器的得分前提下,X的概率最大化的X的值,也就是:
{\color{red}{从公式(1),我们可以看出,我们还没有引入形状的先验.}}
令
如果我们假定每一个X可以通过一个全局模型
公式(2),利用全概率很容易得到。这里我们引入了
其中m个实例
通过调节全局模型
从公式(3)到公式(4)采用贝叶斯公式得到。公式(3)将部分检测器进行了分离。
因为,真实的基准点的位置的信息,胜过检测器获取的基准点的位置信息,因此
带有这些观察,我们可以将公式4写作:
移动到等式(2)中的第二项,我们可以使用贝叶斯跟踪得到:
(因为全局模型是先验,因此我们可以在其上面进行假设)通过调节全局模型
最终应用贝叶斯规则重写等式7,为:
注意:
注意到,在给定图像的前提下,方括号中的仅依赖于D的项是一个常量。同样的,方括号中的仅依赖于
理解:
组合等式1,2,5,9得到:
其中
因此需要求解公式(10)中的:
第一个项
第二项
最优化
计算等式(10)中的和,积分具有挑战性,因为其是在所有的全局模型k和所有相似变换t上进行的。然而,从等式(2)我们注意到,对于一个给定的k和t,如果
在某种意义上,我们希望执行等式(10)的一个Monte Carlo integration,其中我们选择的全局模型
4.1 选择全局模型Xk,t
我们希望关于未知量k和t,最优化
为了解决这个问题,我们采用一个类RANSAC产生和测试方法。我们产生大量可信的k和t。使用等式9,计算每一个的
1. 选择一个随机k.
2. 选择两个随机的块。随机的匹配每一个模型块到该块检测器输出的g个最高的模式中的一个。
3. 设置t是模型基准点与检测器模式进行对齐的相似转换。
4. 对于此k,t计算等式9
5. 重复步骤1to4 r次。
6. 将在步骤4中计算的公式9最大的
在我们的实验中,我们使用r=10,000,g=2和m*=100.
4.2 估计X
在上面的子章节,我们使用一个类RANSAX过程来找到m*个全局模型X_{k,t}。因此等式(10)可以近似的表示为:
其中求和是关于
为了找到最好的X*,我们首先找到每一个部分i个一个初始的估计
这等价于通过设置等式10中的
5 实验
数据集:LFPW
排除的数据:COTS人脸检测器检测不到的,人脸上含有文本的,(近似侧脸COTS检测不到,所以被排除在外)。
数据集含有35个基准点,实验中使用29个(除去耳朵).
数据集:BioID,23个个体,1521张图像,使用17个基准点。
注意:两幅图像基准点标记的不一样,例如在LFPW中,左鼻点和右鼻点在鼻子的外部,而在BioID中在鼻子的下部)。
5.2 结果
我们使用LFPW进行实验,将其随机的分为1100个训练图像和300个测试图像。训练图像用于训练基于SVM的基准点检测器并且充当计算全局模型
图6给出了检测的一些error。
第1行第2列和5列,由于局部检测器对于下巴不具有可区分性导致的检测失误。
第2行第4列,下嘴唇不能正确的定位,是因为嘴是张开的,漏出了一行牙齿。我们认为其是由于局部检测器造成的。在未来的工作中,我们使用彩色图像,其很容易区分牙齿和嘴唇。
第4行第1列,左眼眉毛的左角太低,大概是由于头发的遮挡引起的。
参考文献:
1.Localizing Parts of Faces Using a Consensus of Exemplars
理解:
我们的目标是求解P(X|D)关于X的最大化。
其中D是训练好的局部基准点检测器(联合的基准点检测器),X表示检测的基准点的位置。为了分离D(将其分离为独立的
同样的思想,我们得到公式(2):
因为m是实例的个数是离散的,t表示转换是一个连续的变量,因此一个是叠加符号,一个用积分符号。
下面我们的任务就是计算两个条件概率:
公式(3)表明,第i个基准点的检测仅与第i个检测器以及第i个
将公式(3)展开为公式(4),我们就可以利用现用的
由于知道了基准点真实位置的信息胜过检测器提供的信息
这样:利用局部检测器在人脸图像上获得了两个最大的响应,且两个响应的位置相距很远,因此我们有了全局先验形状高斯约束,从而不会选择远处的可能高的响应。
从而利用等式1,2,5,9就可以推导出最终的公式10.
难点在于,积分是在连续的空间进行的,因此为了求解,我们需要分析公式,变成求解离散的(主要贡献)。
假定变量
因为高斯分布的最大似然估计为:
推导可参考:
http://blog.sina.com.cn/s/blog_4b1046f80101m06i.html
疑问:
疑问1:
算法中k和t的选择.
1.选择一个随机的k。即随机选择一个样本。
2.选择两个随机的部分。(即训练的选择两个基准点)。随机的匹配每一个基准点到该基准点的检测器输出的g个最高的模型。
(这里随机的选择两个部分,很难理解!)
3…
…
疑问2:
文章用公式(12)进行初始化的估计位置之后,算法就进行终止,不对公式(11)进行进一步的最优化。如果我们想进一步的最优的话,如何进行?穷举吗?
本文XeLaTex格式下载地址:
http://download.csdn.net/detail/xuluhui123/9618234
posted on 2016-08-29 10:36 Raby_Draby 阅读(384) 评论(0) 收藏 举报
浙公网安备 33010602011771号