文献阅读(3)CVPR2018-Supervision-by-Registration

本文是对《Supervision-by-Registration: An Unsupervised Approach to Improve the Precision of Facial Landmark Detectors》一文的浅显翻译与理解,原文章已上传至个人资源,如有侵权即刻删除。

另,本次所有个人注释,均以带有删除线的形式呈现,请注意区分。

更多相关文章,请移步:
文献阅读总结:计算机视觉

前言

该文章介绍了一种配准监督的算法,它可以在无监督条件下,提高通用人脸特征点检测器的精度,借用的思想是光流法,光流法认为一个物体在前后两帧没有巨大而明显的变化。
这种无监督学习算法,有效摆脱了对人工标注的依赖,提高了检测器在图像和视频上的检测性能,并明显减少了检测结果在视频上的抖动。
该文章没有特定的检测器,对任意检测器都适用,提供的是一个用来训练优化检测器的损失函数。
损失函数由两部分组成,一部分是常见的检测损失,一部分是借助 Lucas-Kanada 算法实现的配准损失。LK 算法通过前一帧预测后一帧中相同特征点的位置,并与检测器所检测的位置求差值,即配准损失。

资源整理

官方pytorch代码

悉尼科技大学CVPR 2018论文:无监督学习下的增强人脸关键点检测器

面部检测光流法修正

Lucas-Kanade 20 Years On: A Unifying Framework 翻译


Tite

《Supervision-by-Registration: An Unsupervised Approach to Improve the Precision of Facial Landmark Detectors》(2018)
——CVPR: Conference on Computer Vision and Pattern Recognition
Author:Xuanyi Dong; Yi Yang

Abstract

本文提出了一种配准监督的无监督算法,用来提高在图像和视频上的人脸特征点检测的精度。我们主要的观察方法是,对邻近帧中相同特征点的检测应当与配准一致,即光流。有趣的是,光流的一致性正是监督源,它不需要人工标注并能够用于检测训练。例如,我们可以用在对损失函数的训练中:对帧 t-1 到帧 t 进行光流追踪,检测到帧 t-1 的一个特征,应和在帧 t 检测到的位置相一致。实际上,配准监督用配准损失增强了对损失函数的训练。因此对检测器输出的训练,不仅与有标注图像的注释密切相关,也要同许多无标注视频上的配准一致。有配准损失的端对端训练,已通过一种可求导的 Lucas-Kanade 运算成为可能,该运算使用正推法对光流配准进行计算,且反向传播回的梯度,会促进检测器中的时序一致性。本算法的输出是一个非常精准的基于图像的人脸特征点检测器,能够用于单个图像或视频。对于配准监督,我们证明了:(1)图像(300W,ALFW)和视频(300VW,Youtube-Celebrities)人脸特征检测的改善;(2)视频检测中抖动的显著减少。


1 Introduction

精确人脸特征点检测为许多计算机视觉和计算机图像任务的高质量性能奠定了基础,比如人脸识别、人脸动画和人脸重现。很多人脸识别算法依赖于检测到的人脸特征点的位置,在空间上对齐人脸,而不精确的特征点可能导致对齐不准且人脸识别的性能降低。在人脸动画和重现算法中,2D特征值被用作锚点,使得3D人脸网格朝逼真的面部表情变化。因此,视频中2D人脸特征点检测的时序抖动,将传播给3D人脸网格并可能导致视觉上的违和。

精确人脸特征点检测的问题尚未解决,尽管在基于图像人脸特征点检测上做了很多工作,但这些检测器都倾向于准确而非精确,即检测器的偏置很小而差异却很大。主要原因可能是:(1)不充分的训练样本;(2)不精确的注释,就像图1所显示的,人工标注的准确性和一致性从本质上就受到了限制。因此,当我们将检测器独立地应用于每个视频帧时,会观察到抖动,并且已检测的特征点并不能很好地附着在面部结构定义点(如嘴角)上。
在这里插入图片描述
(图1)不精确的标注:我们展示了九位注解者在两幅嘴部图像上的标注,每种颜色表示一类不同的特征点。注意到前后不符的标注甚至出现在许多有区别的特征点上,如嘴角。这对检测器的训练和评估都有负面影响,从而得到启发,使用不依赖人工标注的监督信号。

其他关注视频人脸特征点检测的算法,同时使用检测和跟踪来抑制抖动和提高精确度,但这些方法需要在视频中标注每一帧,这样的问题在于:(1)由于视频帧数量庞大,标注起来非常繁琐;(2)即便在时间上相邻的帧之间,也难以跨帧进行一致地标注。因此,精确人脸特征点检测并不能靠大量的人工标注来简单解决。

取代对人工标注的完全依赖,我们提出了配准监督(SBR,Supervision-by-Registration),其从无标注视频中自动提取监督,增强了对损失函数的训练。关键的观察是(1)邻近帧相同特征点的检测和(2)配准(即光流)的一致性,作为监督源。在对检测器训练的过程中,这种监督能够对人工标注进行补充。例如,一个通过帧 t-1 和帧 t 间的光流跟踪来检测的帧 t-1 的特征点,应当与帧 t 的检测位置相一致。因此,如果检测结果与光流不一致,错误匹配的数量就是一种监督信号,来强制检测器在帧之间保持时间一致性。从而使经过SBR训练的检测器,能更好地定位难以精确标注的特征点的准确位置。SBR的主要优势在于不需要标注,从而训练数据不再受到人工标注的质量和数量限制。

本算法的概括如图2所示,我们端对端的训练模型由两部分组成:一个建立在卷积网络上的通用检测器;一个可求导的 Lucas-Kanade(LK)算法。

个人注释 )光流算法评估两幅图像之间的变形,它的基本假设是一个物体的颜色在前后两帧没有巨大而明显的变化。本质上为求最小化目标函数,假设在一个小的空间邻域内运动矢量保持恒定,使用加权最小二乘法对邻域中所有的像素点求解出基本的光流方程。LK 算法计算两帧在时间 t 到时间 t + △t 之间每个像素点位置的移动,由于是基于图像信号的泰勒级数,该方法成为差分,即对空间和时间坐标求偏导。

在正推法中,LK 算法从过去的帧中得到特征点检测结果,并在当前帧对它们进行评估。被跟踪的特征点与当前帧的直接检测结果进行比较,它们间的偏移量被定义为配准损失。在逆推法中,配准损失的梯度通过 LK 算法反向传播,来促进检测器的时序一致性。为确保配准监督是合理的,仅对光流通过正反向检查的特征点进行监督。本算法最终输出是一个基于图像的增强型人脸特征点检测器,该检测器在图像和视频中,都用大量的无标注视频达到了高精度,并且对视频的检测结果更为稳定。
在这里插入图片描述
(图2)SBR框提取已标注图像和未标注视频作为输入,来训练基于图像的人脸特征点检测器,在图像和视频上都更加精确,且在视频上还更加稳定。

注意到本算法从根本上就与后处理(如时间滤波)不同,后者通常会以牺牲精度换来稳定性。本算法直接在模型训练的过程中引入了时间一致性的监督,从而生成的检测器从本质上就更为稳定。因此,在测试阶段对每一帧的检测,既不需要后处理和光流跟踪,也不需要循环单元。还注意到 SBR 并非正则化的,为防止过拟合,它限制了模型参数的自由度。取而代之的是,SBR 从配准中引入更多的监督信号,来增强检测器的精度。总而言之,SBR 有着如下优点:

1.SBR 能在无监督条件下,增强通用人脸特征点检测器在图像和视频上的精度。
2.由于 SBR 的监督信号并不来自标注,从而 SBR 可以利用数量相当多的无标注视频来对检测器进行增强。
3.可以用广泛使用的梯度反向传播算法,对 SBR 进行端到端的训练。


2 Related Work

人脸特征点检测主要以两种形式执行:图像和视频。在图像中,检测器仅能依赖静态图像来检测特征点,而在视频中检测器有额外的时序信息可以利用。尽管基于图像的人脸特征点检测器能够在图像上达到非常好的性能,但在视频的每一帧上以检测跟踪的方式,持续运转这些检测器,通常会导致抖动和不稳定的检测结果。

对于提高视频中的人脸特征点检测结果,除检测跟踪外还有别的几种方法。纯时序跟踪是一种常用的算法,但经常面临跟踪器漂移的问题。一旦跟踪器在当前帧失误,就很难再对后续帧做出正确的预测。因此,混合方法同时用监测跟踪和时序信息,在单个框架中预测更为稳定的人脸特征点。Peng 等人和 Liu 等人利用递归神经网络,跨越连续的帧来编码时序信息。Khan 等人全局变量一致性优化,来共同优化连续帧中的检测和跟踪。遗憾的是,这些算法需要对每一帧都进行标注,这需要大量的资源来获取。我们的算法 SBR 通过利用时间一致性,来共享这些算法的高级思想。然而 SBR 并不需要任何视频级注释,因此能够对增强对大量无标注视频的检测。

其他算法利用视频中的时间信息,来构造特定于人的模型。这些算法绝大多数通常使用离线训练的静态外观模型。用于生成初始特征点预测的检测器,并不基于它们算法的跟踪结果来更新。而 SBR 则基于 LK 的跟踪结果,动态地改善检测器。自我训练也能用于创建特定于人的模型,并且在对姿势的估计中被证明是有效的。然而,与本算法能端对端地训练不同,自我训练做了交替引导,来逐步改进检测器。这导致过长的训练时间,且梯度更新还不够准确,具体会在第五部分说明。


3 Methodology

SBR 由两个互补部分组成,通用的人脸特征点检测器和 LK 跟踪算法,如图3所示。该框架的主要思想是,我们可以直接通过 LK 算法执行反向传播, 因此能够确保在激活相邻帧的时间一致性时,检测器可以在 LK 算法之前得到梯度,选择 LK 的原因是它可求导。
在这里插入图片描述
(图3)配准监督的训练程序拥有两个互补的损失值。检测器损失利用单个图像的外观和标注信息,来学习更好的特征点检测器。配准损失通过将 Lucas-Kanade 算法结合到网络中,揭示了时间的一致性。配准损失的梯度通过 LK 算法反向传播回检测器网络,因此在相邻帧间执行预测就能保持一致。

3.1 LK Operation

受文献4(C.-H. Chang, C.-N. Chou, and E. Y. Chang. CLKN: Cascaded lucas-kanade networks for image alignment. In CVPR, 2017.)的启发,我们设计了 LK 算法,可以通过该算法执行反向传播。给出帧 t-1 和帧 t 的特征 Ft-1 和 Ft(特征可以是RGB图像或者卷积层的输出),从帧 t-1 开始,我们评估了 Xt-1=[x,y] ^ T 附近的小批量参数运动。运动模型由翘曲位移函数 W(x;P) 表示,一次翘曲位移包含两个参数 P=[p1,p2] ^ T,且能被公式化为W(x;P)=[x+p1,y+p2] ^ T。我们将反向组合算法引入到 LK 算法中,通过对△P的最小化找到运动参数P。
在这里插入图片描述
此处,Ω 是区域中以 Xt-1 为中心的位置集。
在这里插入图片描述
αx 是x的权重值,由从xt-1到距区域中心较远的低权重像素的距离决定。

个人注释 )Ft-1(W(x;△p))表示根据 t-1 帧特征点位置跟踪预测其在 t 帧的位置,Ft(W(x;p))表示该点在 t 帧的真实位置。式(1)即表示对区域中的每个点都进行差值计算,该式中,除 △p 外,其他参数值都是已知的,因此变成了对 △p 的最小化问题。通过对其最小化得到一个具体的值,再用 p=p+△p 来更新 p,则有 xt-1 在 t 帧的坐标 xt=xt-1 + p。对式(1)与更新 p 不断迭代,直到 p 的值收敛,就得到了最终的跟踪坐标 xt。

得到运动参数后,LK 算法就对翘曲参数进行如下更新:
在这里插入图片描述
P是初始化的运动参数(本实例下 P=[0,0]^T),将通过式2进行迭代更新直到收敛。

个人注释 )以上过程即为 LK 算法的更新迭代过程,接下来是对 △p 的进一步求解,并非额外的公式。

式1给出的一阶泰勒展开式为:
在这里插入图片描述
从而我们根据文献1(S. Baker and I. Matthews. Lucas-Kanade 20 years on: A unifying framework. IJCV, 2004.)求出式3的解:

个人注释 )该文献上文中给出了翻译过的链接,有兴趣者请自行查看。泰勒公式为:F(x) = f(x0)/0! + f`(x0)(x-x0)/1!+…,此处 x0为 0,x-x0 为 △p。其中 ∇Ft−1 为 Ft-1 在 W(x;p) 处的梯度,∇Ft−1 * W/p 为 W(x;0) 的雅可比矩阵。

个人注释 )雅可比矩阵可理解为,对 p 是 Rn 中的一点,F 在 p 点可微,在这一点的导数就由 J§ 给出,则由 F§ 描述的接近点 p 的最优线性逼近为 F(x)≈F§+J§(x-p),在本式中即为泰勒公式展开的两项,J=∇Ft−1 * W/p,x-p=△p。该问题是最小二乘问题,对 △p 求偏导并令其结果为0,则有:
在这里插入图片描述
公式不好打,就简单翻译一哈嗷 )H 是黑塞矩阵,J 是 J(x)的垂直串联,x属于Ω,是Ft-1(W(x;0))的雅可比矩阵,C 是F的通道数。A 是一个对角矩阵,主对角线上的元素是与用于创建 J 的 x 对应的 αx。H 和 J 在迭代中是恒定的,因此可以预先计算。

我们在图4中举例说明了 LK 算法的具体步骤,并在算法1中进行描述。我们定义 LK 算法为 Lt=G(Ft-1,Ft,Lt-1),该函数获取一个矩阵 Lt-1=[(xt-1) ^ 1,(xt-1) ^ 2,…,(xt-1) ^ k],表示帧t-1中的K个特征点,作为输出为下一帧产生特征点集Lt。由于 LK 算法中的所有步骤都可求导,梯度就能通过 LK 反向传播到人脸特征点位置和特征图上。
在这里插入图片描述
(图4)LK 算法概述:该算法提取两个邻近帧即 Ft-1 和 Ft 中的特征,和帧 t-1 中的坐标 xt-1 作为输入。反向组合算法 LK 迭代地更新运动参数 P,并输出帧 t 中对应的坐标 xt,算法的迭代部分由红色箭头显示。该过程的每一步都是可导的,因此梯度可以从 xt 反向传播回 Ft-1、Ft 和 xt-1。
在这里插入图片描述

(算法1)LK 算法的描述:
输入:Ft-1、Ft、Xt-1、P=[0,0]^T
1.从以 Xt-1 为中心的 Ft-1 中提取模板特征;
2.计算模板特征的梯度;
3.预先计算雅可比矩阵 J 和黑塞矩阵 H;
进入iter从1递增到max的for循环:
	4.从以 Xt-1-P 为中心的 Ft 中提取目标特征;
	5.计算模板特征和目标特征间的误差;
	6.使用式4计算 △P;
	7.使用式2更新运动模型 P;
结束循环,输出 xt=xt-1+P

我们在 H 的对角线元素上使用非常小的值,这确保 H 是可逆的。此外,为了在子像素坐标x上裁剪一个区域,我们使用空间变换网络来计算特征图的双线性插值。

3.2 Supervision-by-Registration

我们描述了两个互补损失值的详细内容:基于人工标注的检测损失和用于增强时间一致性的配准损失。

Detection loss. 许多人脸特征点检测器以图像 I 作为输入,并倒推人脸特征点的坐标即 D(I)=L。这些检测器通常使用带有真实标签 L* 的那些坐标 L 上的 L2 损失,即ℓdet=||L-L*||^2。

其他算法对每个特征点预测热图而非坐标,且 L2 损失通常是在训练过程中应用于热图的。在测试中,代替直接倒推特征点的位置,而是将最大化运算用在热图上,来得到特征点的位置。不理想的是,最大化运算是不可导的,因此这些算法不能直接和我们的 LK 算法一起使用。为保证信息能在基于热图的算法中,通过预测坐标反向传播,我们将最大化运算替换为热图峰值寻找的操作,该操作基于热图置信度分数的加权和。定义 M 为预测的热图,对每个特征点,我们首先用 argmax M=[x’,y’] ^ T 计算一个粗略的位置。而后截取一小块边长为 2*r 的方形区域,以[x’,y’]^T为中心,定义为:
在这里插入图片描述
最后,我们在该方形区域使用 soft-argmax(结合 softmax 函数达到 argmax 的目的,前者是指数归一化可导,后者是最大化不可导,最终可导 )函数,来得到最终的坐标:
在这里插入图片描述
由于式5是可导的,我们能用该峰值寻找操作,将基于热图的算法引入到本框架中。注意到当我们训练不同类型的网络时,我们仍能使用这些算法所描述的初始的损失函数和设置。但是简便起见,本文中还是检测损失将表示为,预测和真实坐标间的 L2 差值。

Registration loss. 配准损失能在无监督方法中进行计算,来对检测器增强。这通过检测结果输入和 LK 算法间的前后双向通信方案实现,如图5所示。前向通信计算出配准损失,而后向通信评估 LK 算法的可靠性。
在这里插入图片描述
(图5)前后双向通信方案在训练过程中的检测器和 LK 算法间,绿色和粉色的线表示前向和后向的 LK 跟踪路径,蓝、绿和粉色的点表示检测器、LK 正向和 LK 反向的特征点预测结果。通信的前方向基于过去的帧调整对未来帧的检测结果,后方向评估 LK 算法输出的可靠性。

在前向通信中,检测器将检测到的过去帧的特征点(如帧 t-1 的 Lt-1)传递给 LK 算法。LK 算法通过跟踪,生成新的未来帧特征点(如帧 t 的 Lt=G(Ft-1,Ft,Lt-1))。LK 生成的未来帧的特征点应当在空间上接近未来帧的检测结果。因此,配准损失直接计算 LK 算法的预测结果(图5中的绿点)与检测器预测结果(图5中的蓝点)的差值,从而增强检测器的时间一致性,损失表示如下:
在这里插入图片描述
Lt,i 和 L~t,i 表示 Lt 和 L~t 的第 i 行,对应第 i 个特征点的位置。βt,i范围为{0,1},表示 t 时刻所跟踪的第 i 个特征点的可信度,由后向通信方案所决定。

LK 跟踪可能并不总是成功的,且当 LK 跟踪失败时,监督就不能应用。因此,后向通信流利用前后双向检查来评估 LK 跟踪的可靠性。具体来说,LK 算法将 L~t 作为输入,并通过倒序跟踪生成帧 t-1 的特征点,公式化为:
在这里插入图片描述
我们的假设是如果 LK 算法输出是可靠的,在前后双向跟踪后就要将一个特征点传递回相同的位置。因此,如果后向跟踪是可靠地,那么就有 βt,i=1,否则 βt,i=0,即该点不在配准损失中。因为只有可靠的跟踪才有用处,所以前后双向通信方案就确保当使用无标注数据时,配准损失会带来性能的改善。注意到配准损失并不局限于邻近帧,也可用于如图5所示的帧序列。

Complete loss function. 设 N 为具有真实值的训练样本数量,为简明起见,我们假设只有一份未标注视频只有 T 个帧。那么 SBR 的完整损失函数就如下所示,是一个检测结果和配准损失的加权结合,受加权参数γ的影响。
在这里插入图片描述个人注释 )总而言之,本文介绍的配准监督,给出了一个损失函数,分为检测损失与配准损失两部分,检测损失即检测值与真实值的差值,配准损失即 LK 跟踪值与真实值的差值,计算配准损失需要用到 LK 算法正向跟踪,判断配准损失是否可靠需要用到 LK 算法反向推导。

Computation complexity. LK 模块的计算损耗包括两部分:预计算操作和迭代更新。前者的损耗是 O(C|Ω|),其中 C 是输入的通道大小(在 RGB 图像中 C=3),|Ω| 是用于 LK 的区域大小,通常小于10*10。后者的损耗是 O(TC|Ω|),其中 T 是迭代次数,通常小于20。因此,对任意的 K 个特征点,LK 损耗都是 O(KC|Ω|)+O(KCT|Ω|),与评估一个 CNN 的复杂度相比可忽略不计。

3.3 Personalized Adaptation Modeling

SBR 还能用于生成个性化的人脸特征点检测器,在以下方面很有用处:(1)无监督地适应测试视频,该视频可能与训练集领域略微不同;(2)为特定任务(如电影里的明星演员)生成最有可能的检测器。SBR 可以通过将测试视频视为无标注视频,并将其包含在训练中来达到这种效果。训练过程中,检测器可以用无监督的方式,记忆某些个性化细节,来达到更精确和稳定的人脸特征点检测结果。


4 Evaluation and Results

4.1 Datasets

300-W 为3837张面部图像提供了68个特征点标注。我们划分数据集为四个部分,分别为:训练、一般测试、挑战性测试和完全测试。

AFLW 在21997张现实图像中包含总计25993张人脸,每张都有21个特征点标注。我们忽略两个耳朵的特征点,仅用剩余的19个。

YouTube-Face 在3425条短视频中包含有1595个人,该数据集没有人脸特征点标注,但各种各样的人使其非常适合作为 SBR 的无标注视频提供源。我们过滤掉低分辨率的视频,并利用剩余视频以无监督的方法来训练 SBR。

300-VW 该视频数据集包含50条训练过的视频,共计95192帧,训练集包含三个级别的不同类别。这三个子集(A、B、C)分别有62135、32805和26338帧,C 是最具挑战性的一个。我们记录子集 A 和 C 中49个内部点的结果。

YouTube Celebrities 该数据集包含35位名人在不同姿势、照度和遮挡下的视频。根据文献23(X. Peng, S. Zhang, Y. Yang, and D. N. Metaxas. PIEFA: Personalized incremental and ensemble face alignment. In ICCV, 2015.)的设置,我们在同样的六个视频剪辑上运行 PAM。

4.2 Experiment Settings

Baselines. 我们使用两个人脸特征点检测器作为基准,在此基础上进一步执行 SBR 和 PAM。

第一个检测器是 CPM,它利用图像网络预训练模型,作为特征提取部分。在本实验中,我们使用 VGG-16 的前四层卷积层为特征提取,并仅用三个 CPM 阶段为热图预测。为预处理,这些人脸被裁剪和调整到256*256的大小。我们共计训练了40次批量为8的 CPM。学习率从0.00005开始,并在第20次和30次时各下降0.5。

第二个检测器是一个简单的回归网络,记为 Reg。我们使用 VGG-16 作为基础模型,并将最后一个全连接层的输出神经元改为 K * 2,其中 K 是特征点数量。由于 VGG-16 需要的输入大小为224 * 224,对该回归网络,我们因此调整了裁剪后的脸部大小为224 * 224。其次,我们通过脸部大小将 L2 损失正则化为检测损失。

Training with LK. 我们在三个连续帧上执行LK跟踪。对式1中的Ω,我们取以特征点为中心的一个10 * 10区域。为处理不同分辨率的面部,我们相应地调整图像大小,使得10 * 10成为一个合理的区域尺寸。太小或太大的区域尺寸会导致 LK 跟踪不良并损失性能。LK 的最大迭代次数是20次,且收敛域△P=10^-6。对 LK 算法输入的特征值,我们默认使用 RGB 图像,当使用 conv-1 特征层(见第五节)时,还进行消融研究。配准损失的权重 γ=0.5,当从头开始训练一个模型时,我们首先要确定检测损失在激活配准损失前是收敛的。当用 SBR 训练时,标注图像和未标注视频的比率在每个区域中需要保持平衡。在未标注视频比已标注图像过多的情况下,我们复制已标注图像,让比率依然保持平衡。此外,使用 SBR 时,有一点需要确认,未标注视频与已标注图像的人脸分布应当相似。否则,初始检测器可能在未标注视频上执行受挫,导致 LK 跟踪可信度较低,且 PAM 性能较弱。我们所有的实验,都在PyTorch框架下执行。

Evaluation Metrics. 归一化平均误差(NME,Normalized Mean Error)用于评估图像上的性能。两眼间的距离和面部大小分别被用作 300-W 和 AFLW 上的归一化平均误差。我们还使用累积误差分布(CED, Cumulative Error Distribution)和曲线下面积(AUC, Area Under the Curve)作为评估。

4.3 Evaluation on Image Datasets

为证明所述 SBR 能对通用特征点检测器起到增强作用,我们展示了 在 AFLW 和 300-W 上基于回归(Reg, regression-based)和基于热图(CPM, heatmap-based)的 SBR 的执行结果,我们还对比了九种人脸特征点检测的算法。

Results on 300-W. 如表1所示,基线 CPM 在 300-W 测试集上的性能是具有竞争力的。我们接下来为 CPM 和 Reg 都执行了 SBR,未标注视频来自于 YouTube-Face。在不使用任何附加标注的情况下,将 CPM 和 Reg 分别相对提高了7%和6%。对比结果由 300-W 官方组织者提供,根据文献26(C. Sagonas, E. Antonakos, G. Tzimiropoulos, S. Zafeiriou, and M. Pantic. 300 faces in-the-wild challenge: Database and results. Image and Vision Computing, 47:3–18, 2016.)和文献28(C. Sagonas, G. Tzimiropoulos, S. Zafeiriou, and M. Pantic. 300 faces in-the-wild challenge: The first facial landmark localization challenge. In ICCV-W, 2013.)。

Result on AFLW. AFLW 数据集中的面部大小分布与 300-W 有所不同,因此我们调整面部为176 * 176。表1显示了 SBR 分别将 CPM 和 Reg 分别相对提高了9%和5%。
在这里插入图片描述
综上所述,SBR 在 300-W 和 AFLW 上对 CPMs 和回归网络都有提高。我们还通过 CPMs 实现了最先进的性能,这表明了 SBR 的灵活性和有效性。YouTube-Face 在实验中被用作无标注视频,但事后看来,它可能不是在 300-W 上增强检测器的最好选择。因为 YouTube-Face 的面部大小要比 300-W 更小,且压缩了伪影进一步影响 LK 跟踪。如果使用高分辨率的视频数据集,我们的算法有希望得到更高的性能。

4.4 Evaluation on Video Datasets

为证明 SBR/PAM 可以有助于检测器跨帧产生一致性预测,我们在 300VW 上进行了评估。我们根据文献13(M. H. Khan, J. McDonagh, and G. Tzimiropoulos. Synergy between face alignment and tracking via discriminative global consensus optimization. In ICCV, 2017.),使用整个训练集。由于缺少 XM2VTS 和 FRGC 数据集的图像,我们使用同样数量的已标注数据,这些数据来自一个内部的数据集,用来替代上述两个数据集。300VW 的图像分辨率要比 300-W 的低,因此在训练过程中,我们根据面部大小统计,将图像调整为172*172。

Results on 300VW. 表2显示了 SBR 提升了 CPM 1%,PAM 又进一步将其提升了 1.25,t-Test 表明,当使用 SBR 来增强 CPM 和使用 PAM 来增强 CPM+SBR 时,p值分别为0.0316和0.0001。这两个统计显著性检验证明了 SBR 和 PAM 的提升,我们证明了 CPM+SBR+PAM 相比其他算法,达到了最优性能。尤其是,比起那些线性算法使用的标注,SBR+PAM 什么也不需要。
在这里插入图片描述
(表2)注意到 SBR 和 PAM 没有利用任何附加的标注,仍然能提高基线 CPM,还达到了最优性能。

Results on YouTube Celebrities. 表3中,我们还比较了不同的个性化算法。基于线性的 Reg 和 CPM 在 300-W 进行预训练,所述的 PAM 将 CPM 的错误从5.26减少到4.74,达到了最优性能。

Qualitative comparsion. 图6显示了定性结果,CPM 的跨帧预测结果通常是不一致的。例如,在第三行,对眉毛的预测结果就漂移了,但 SBR/PAM 能生成相当稳定的预测结果,在训练过程中保证了一致性。
在这里插入图片描述
(图6)CPM(绿色)和 CPM+SBR/PAM(蓝色)在 300VW 上的定性结果,我们每10帧从视频中取样一次预测结果,黄色线圈表示 CPM 明显的误差,CPM+SBR/PAM 在跨邻近帧时能够生成更为稳定的预测结果。


5 Discussion

Image Resoultion. 面部清晰度能够影响 LK 算法的成功率,即检测器性能。图7显示,具有高面部清晰度的视频通常致使拥有较高的可能性,来通过前后双向检查。然而,性能的改善与面部大小无关,可能有着其他具有较高影响力的因素,如遮挡和头部姿势。
在这里插入图片描述
(图7)300-VW 的 A 类别分析。x 轴升序地表示31个视频的面部大小,左 y 轴表示 AUC@0.08,右 y 轴表示被前后双向通信方案认为是可信的特征点数量。

Temporal Length for Tracking. LK 跟踪的持续时间要大于三个连续帧,然而,一个较长的时期会导致较为严格的前后双向检查,将减少配准损失中特征点的数量。我们测试了 CPM+PAM 在 YouTube Celebrities 上长为五个帧的 LK 跟踪,NME 达到了5.01,结果要比三个帧的4.74 NME 要差。

Image Features for Tracking. 我们还测试了使用 conv-1 特征代替 RGB 图像来进行 LK 跟踪,导致在 YouTube Celebrities 上 NME 的误差从4.74增大到5.13。这可能因为卷积特征损失了某些对 LK 跟踪有用的信息,LK 跟踪需要更多的注意力来学习适合的特征。

Effect of imprecise annotation. SBR 和 PAM 在基于 NME 和 AUC 的评估标准上,仅显示了一些小的提升,但是我们观察到在视频抖动上有显著的降低(见样本视频)。这可能有两个原因:(1)NME 和 AUC 独立地处理每一帧,并不考虑检测结果的平滑度;(2)测试集中不精确的标注可能对评估结果有负面影响。我们进一步分析了原因(2),通过从一个3D电影《阿凡达》生成名为“SyntheticFace”的合成人脸数据集。合成数据集的主要优势在于0标注误差,因为我们清楚地知道每个3D顶点都被投影到了2D图像中。这让我们能通过添加合成噪声到“完美”标注中,来分析标注误差的影响。我们生成了2537张训练和2526张测试不同表情的人脸图像,并识别了20个特征点用来检测,图像大小为5120*3840。我们添加了不同等级的高斯噪声(Gaussian noise)到训练和测试集中,用来训练和评估我们的检测器。如果我们在不同等级的噪声上训练,并在干净的标注上评估模型,各模型间的测试性能就会令人惊讶的接近,如图8a所示。
在这里插入图片描述
(图8)标注误差的影响:我们加入高斯噪声到 SyntheticFace 的标注中,并在这些噪声数据上训练模型,不同等级的高斯噪声表示为不同的颜色。左图是模型在 SyntheticFace 的干净测试数据上评估,右图是在噪声数据上评估,与训练有着相同的噪声分布。这意味着我们的检测器有能力“平均得出”标注中的误差,然而,相同模型在不同误差的测试标注下的评估(图8b),看起来明显不如图8a。这意味着仅仅由于测试数据中的标注误差,一个执行优秀的模型就有可能产生较差的结果。总的来说,标注误差会明显影响到结果质量,低分并不真正意味着没有提高。

Connection with Self-Training. 有趣的是,我们的算法是自我训练的推广,在文献5(J. Charles, T. Pfister, D. Magee, D. Hogg, and A. Zisserman. Personalizing human video pose estimation. In CVPR, 2016.)和文献29(H. Shen, S.-I. Yu, Y. Yang, D. Meng, and A. Hauptmann. Unsupervised video adaptation for parsing human motion. In ECCV, 2014.)中,被用来在姿势估计任务中利用未标注视频。自我训练的过程包括:(1)利用当前训练集来训练分类器;(2)预测未标注数据;(3)将高可信度预测视为伪标注,并将其添加到训练数据集中;(4)重复步骤(1)。该算法主要缺点在于,高可信度的伪标注被假定为“正确”,且没有提供反馈来调整伪标注的误差。

在我们的问题定义中,伪标签即 L~t,是 LK 从帧 t-1 中跟踪得到的预测。如果我们简单地进行自我训练,L~t 会直接作为标注用于学习 Lt。没有反馈提供给 L~t,即便它是错误的。然而,我们的配准损失对 Lt 和 L~t 都提供了反馈,因此如果伪标注是不正确的,L~t 也会被调整。这是我们算法与自我训练相比,最关键的不同之处。更为正式地,在式6中,我们配准损失的梯度关于检测器参数θ表示如下:
在这里插入图片描述
这有损用于生成 Lt 和 L~t θ梯度的正确性,从经验上我们观察到,当 L~t 的梯度被忽略时,检测器倾向于在某个错误的方向上漂移,这导致在 YouTube Celebrities 上的 NME误差由4.74增加到了5.45。


6 Conclusion

我们提出了 SBR(supervison-by-registration),其优势在于:(1)它不依赖往往不够精确的人工标注;(2)检测器不再受到人工标注的数量和质量限制;(3)通过 LK 层的反向传播,能够确保梯度更新比自我训练更为准确。此外,在合成数据上的实验显示,评估数据集中的标注误差,会使得一个执行优秀的模型看起来不够理想,因此在解释定量结果时,需要注意标注的不精确性。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值