概述
人脸关键点定位中使用深度学习进行热图回归已经是一个主流方法。但是很少有文章去研究热图损失的回归问题。
作者认为广泛使用的 MSE 损失有两个问题:
- 一是对小的误差损失不敏感,降低了精确定位高斯分布中心的能力;
- 二是训练过程中所有的像素值都有相同的损失函数和相同的权值,而背景像素占了绝大部分。
这引起的问题就是,和 GT 相比,使用 MSE 损失训练的模型预测的特征图模糊而膨胀。
作者将热图回归中的像素分成了多类,包括中心、前景、困难背景及背景,并提出 Adaptive Wing Loss,更好地完成热图点的定位。
下图所示是作者对不同像素点的分类,以及使用 AWing Loss 后,热图预测出的关键点相比使用 MSE loss 更为清晰。
方法
使用的网络整体结构图如下所示。模型基于 HG 架构,每个 HG 都使用 GT 进行监督训练。
损失函数规则
作者认为现有的一些方法定位不准的原因之一就是使用了 L1 损失函数进行热图回归。由于 MSE 损失是线性梯度,因此具有小损失的像素值梯度值也很小。这可能使得最终收敛的结果都有小的损失。这就使得产生的特征图模糊而且被扩张。
而已有的 Wing Loss,当损失很大时梯度是常量,当损失很小时梯度很大。因此放大了具有小损失的像素的梯度值。计算如下式所示:
但是作者发现直接用 Wing loss 在热图上极难收敛。
因此提出一个在热图上回归需要的损失函数的优良性质:当损失还很大时,具有常量梯度;当损失逐渐减小时,对于前景像素,计算的梯度先逐渐增大,使得训练专注于学习这些有微小误差的正样本,然后梯度逐渐减小,使得这些训练得足够好的像素逐渐不被关注;对于背景像素,这时候梯度情况就和 MSE 损失一样,随着训练误差减小逐渐减小到 0。使网络不那么关注到背景像素,稳定了训练过程。
Adaptive Wing Loss
提出的 Adaptive Wing loss 如下式所示:
其在
θ
\theta
θ 处可导。它和 Wing Loss、L1 loss 的梯度对比如下图所示。可以看到对于正样本和负样本,Adaptive Loss 具有不同的梯度性质。
加权损失图
为了更好地使得网络聚焦于前景像素以及困难背景像素,提出 Weighted Loss Map 去平衡不同像素的损失。
使用一个 mask 矩阵,对前景像素和困难背景像赋值 1,而其余像素赋值 0。如下式所示:
重要像素可视化结果如下图所示。即作者认为关键点及其周边区域是需要重点关注的部分。
边界信息
作者还增加了一个边界点预测通道,发现对于关键点定位有帮助。
坐标信息融合
受 CoordConv 启发,作者还在线生成坐标通道,加入输入通道进行训练,让网络更好地捕捉坐标信息。
实验及指标
实验在 COFW、300W、WFLW 数据集上进行,评价指标使用了 Normalized Mean Error (NME)
、Failure Rate (FR)
、Cumulative Error Distribution (CED)
。
数据增强方面使用随机旋转、平移、翻转、尺度化。同时随机高斯噪声以及遮挡也被使用。
在 COFW 数据集上的指标如下所示:
WFLW 数据集上的评估指标如下所示:
对 Adaptive Wing Loss、Weighted Loss Map、边界信息、坐标信息融合的消融实验如下所示。可以看到对性能都有些提升。