【论文阅读】Pose Flow: Efficient Online Pose Tracking(姿势流:高效的在线姿势跟踪)
论文原文:https://arxiv.org/abs/1802.00977
参考翻译:https://blog.****.net/qq_36105029/article/details/101227385
目录
(1)帧内姿态距离(Intra-Frame Pose Distance)
(2)帧间姿态距离(Inter-frame Pose Distance)
(2)改进方法1:数据增强(Data Augmentation)
(3)改进方法2:运动传播(Motion-Guided Box Propagation)
一、介绍
1、多人姿态跟踪方法
(1)自顶向下:在每帧中 检测 人的proposals→关键点→相邻帧相似性 跟踪整个视频;
(2)自下而上:在每帧中 生成 关键点候选点→时空图→求解整数线性规划将时空图分为子图→每个子图对应人体姿势轨迹。
2、问题与解决
(1)由于帧退化(例如由于快速运动而模糊)、截断或遮挡,单个帧中的姿态估计可能不可靠→需要关联跨帧检测实例来共享时间信息,从而减少不确定性;
(2)高效的在线姿态跟踪方法→以改进的RMPE进行姿态估计,并提出两种新技术:姿态流建立(PF-Builder)和姿态流非极大值抑制(PF-NMS)。其中,姿态流用于关联同一个人的交叉帧姿态,根据姿态proposals构建,通过有效的目标函数寻找姿态流,这样的优化设计有助于稳定姿态流并关联不连续的姿态流(由于缺少检测);PF-NMS用于减少冗余姿态流和时态不想交姿态流的重链接,在NMS处理中以姿态流为单位,充分考虑时间信息,大大提高系统稳定性。
二、本文方法
1、整体框架
图2:整体框架:1)姿态估计器。2)姿态流流生成器。3)姿态流NMS。首先,我们估计多人姿态。其次,我们通过最大化整体置信度来构建姿态流,姿态流是指不同帧中指示同一个人实例的一组姿势,并通过姿态流NMS来净化它们,也就是减少冗余姿态流,重新连接不相交姿态流。最后,获得合理的多姿态轨迹。
2、框架中涉及的基本度量和工具
(1)帧内姿态距离(Intra-Frame Pose Distance)
定义帧内姿态的距离,以测量帧中两个姿态和
之间的相似度。
——姿态
的第n个关键点;
,N是一个人的关键点数;
——姿态
的第n个关键点;
,N是一个人的关键点数;
——以
为中心的人体框;
——
的得分,置信度;
——该函数用于抑制低分数的关键点;
软匹配函数
关键点之间的空间相似性
最终相似度(结合公式(1)和(2))
这些参数可以靠数据驱动获得(这里不是太懂数据驱动)
(2)帧间姿态距离(Inter-frame Pose Distance)
用于测量一帧中的姿态和下一帧中的姿态
之间的距离。
——以
为中心的人体框,框大小是10%人体边界框的大小;
——从
中提取的深度匹配特征点;
——
和
的相似性;
和
的帧间姿态距离
3、改进的多人姿态估计
(1)基础姿态估计结构
- Faster R-CNN作为人体检测器,基于ResNet152,由于缺少人工proposal标记,通过将人的关键点边界沿高度和宽度方向扩展20%来生成人体检测框,用于对人体检测器微调;
- RMPE作为多人姿态估计器;
- PRMs作为单人姿态估计器的沙漏网络。
- 其他:使用在线困难样本挖掘(OHEM)来处理困难关键点,每一次迭代,不必在小批量中采样最大的B/N losses,二是选择k个困难实例的最大损失,选择后,SPPE仅从困难关键点更新权重,减少计算时间,提高估计性能。
(2)改进方法1:数据增强(Data Augmentation)
针对问题:视频场景中,人们总是进出视频采集区域,导致截取问题;
解决方法:提出改进的深度proposal生成器(iDGP),用于数据增强,改进人体截断问题;
具体方法:在训练过程中使用随机裁剪策略产生截断的人体proposal,也就是将人体实例区域随机分成四分之一或半个人,然后将这些随机裁剪proposal用作增强的训练数据;
结果:在应用于视频时,可以观察到RMPE的改进。
(3)改进方法2:运动传播(Motion-Guided Box Propagation)
针对问题:由于运动模糊和遮挡,人体检测过程中会出现漏检,这回增加人员的IDs,降低MOTA的性能;
解决方法:通过交叉帧匹配技术deepmatching,将框proposal传播到上一帧和下一帧,也就是人体框是3倍;
结果:一些漏检的proposal恢复,召回率也有所提高。
4、姿态流构建(Pose Flow Building)
(1)构建理论公式
姿态流是通过在帧之间关联表示同一个人的姿态来构建的。
候选关联集
是第j帧的第i个姿态;
是在(j+1)帧处的姿态集,这里理解就是计算
与下一帧的姿态集中各姿态的距离
,如果小于
,则可能是关联的姿态,也就是下一帧中
可能对应的姿态。其中根据交叉验证设置
.
目标函数最大化——目的是优化姿态选择
这里我的理解是:是从t帧到t+T帧的所有候选关联集(帧与帧之间所有可能的姿态的连接关系),
是
的置信度函数,F的作用是取这些候选关联集中置信度最大的,也就是得到最佳的
作为从t帧到t+T帧的
的姿态流。
置信度函数如下,是此人体proposal中所有关键点的人体框得分、平均得分和最大得分之和。
(2)分析
将置信度得分之和作为目标函数,有助于抵御许多不确定性。当一个人被高度遮挡或模糊时,它的分数很低,因为模型对它没有信心,但是仍然可以建立一个姿态流来补偿它,因为最后看的是姿态流的总体置信度得分,而不是一个单独的帧。此外,可以在线计算置信度得分之和。也就是说,可由
和
确定。
公式6是一个标准的动态规划问题,可以在线求解。在(u-1)帧处,我们有个可能的姿势,并记录
个最佳姿势的轨迹(分数总和)以达到它们。在第u帧,我们根据先前的
最佳姿态轨迹计算
可能姿势的最佳路径。相应地,更新
轨迹。
是最佳姿势轨迹的分数之和。
(3)停止准则和置信度统一
停止准则:用公式6逐帧处理视频,直到满足停止准则。本文的停止准则是当: 时,姿态流在u处停止,
是交叉验证确定的,这也就意味着下面的r帧内的得分之和非常小,本文设r=3,这样的停止准则通过观察更多的帧,来抵抗突然的遮挡和帧退化(如运动模糊)。
置信度统一:姿态流停止后,所有关键点的置信度都由平均置信度得分更新,本文认为姿态流应该是基本块,应该由单置信值来表示。
5、姿态流NMS(Pose Flow NMS)
本文的NMS是在时空域执行的,而不是针对单独的帧处理,这样以姿态流中的姿态为单位,可以通过空间和时间信息减少误差。关键步骤是确定同一个人的两个姿态流之间的距离。
(1)姿态流距离(Pose Flow Distance)
——两个姿态流;
——两个姿态流
的时间重叠自留,N是时间重叠帧的数目,例如
是同一帧中的两个姿态;
之间的距离公式
其中,是公式3中定义的帧内姿态距离。median中值度量对于异常值更为稳健,如遮挡和运动模糊引起的漏检。
(2)姿态流合并(Pose Flow Merging)
有了上面的姿态流距离公式,就可以实现时空域下的NMS。步骤如下:
首先,选择参考姿态流,也就是在置信度统一后,置信度得分最大的姿态流;
然后,利用将姿态流与标准姿态流进行分组;
最后,合并组内的姿态流为新的姿态流(姿态流NMS的结果),成为代表姿态流,具有更健壮的特点;
代表姿态流的第t帧的第i个关键点 的二维坐标和置信度为:
作用:减少冗余姿态流,并且将一些不相交的姿态流重新连接到一个较长且完整的姿态流中。
合并过程如下:
三、实验与结果
1、数据集和评估参数
PoseTrack、PoseTrack Challenge数据集;
mAP:平均精度;
MOTA:多目标跟踪精度。
2、评估结果
表1:PoseTrack数据集上的多人姿态跟踪结果
表2:PoseTrack Challenge数据集上的多人姿势跟踪结果,*请注意,该结果是由在线服务器在测试集的子集上计算的,51.8 MOTA是格德哈尔等人[8]在完整测试集上获得的。
表3:所有PoseTrack数据集上的多人姿势估计结果,*请注意,该结果是由在线服务器在测试集的子集上计算的,59.6 mAP是Girdhar等人[8]在完整测试集上获得的。
3、消融实验
评估四个组件的有效性:
- 基于深度匹配的运动引导盒传播(DMGP)——双向传播相邻检测框,以恢复丢失的检测框;
- 改进的深度proposal生成器(iDPG)——更精确的定位困难关键点;
- 姿态流生成器(PF - Builder)——用于构造姿态流;
- 姿态流NMS(PF-NMS)——融合冗余姿态流和不相交的时态流,平滑结果;
表4:消融比较。“IoU-Tracker”是指[8]使用的基于原始箱IoU的匹配跟踪器。“无PF-NMS”是指仅使用PF-Builder而不使用PF-NMS。“w/o DMGP”意味着消除运动引导的盒子传播。“w/o iDPG”表示没有改进的深度建议生成器。
四、总结
该篇文章是自顶向下的方法,基于RMPE多人姿态估计,提出两种新的技术:姿态流生成器和姿态流NMS,通过利用时空信息,一定程度上解决了帧退化、截断、遮挡问题,并且通过姿态流,实现了在线姿态跟踪,即关联表示同一个人的姿态。最终结果可以达到每秒10PFS的处理速度。