摘要
- 多目标姿态跟踪
- 使用了时间流场(Temporal Flow Fields)
- 基于相邻两帧和
- 时间网络的通用设计,使得其可以和多种人体姿态估计的空间网络搭配,这里指时间网络主要处理track问题,而空间网络主要针对detect问题
- 使用CNN提取相邻两帧的图像feature 和 pose feature
- 时间网络根据这两种feature 推理出Temporal Flow Fields(TFF), TFF是一个矢量场(感觉和光流差不多),蕴含了pose从帧到帧的运动方向
- 根据这种新颖的表达TFF,可以设计出一种检测pose之间相似性的度量
- 而设计出的相似性,可以作为二分图优化问题的边权重,用于多姿态跟踪问题的求解
- 文章表明,这些TFF可以通过一个相对较小的CNN网络(跟踪领域新颖的星罗网络(Siamese Network)学习,同时实现最先进的多人姿态跟踪结果
介绍
FIRA(Rohit Girdhar, Georgia Gkioxari, Lorenzo Torresani, Manohar Paluri, and Du Tran. Detect-and-track: Efficient pose estimation in videos. CVPR, 2018.)
Pose Flow (Yuliang Xiu, Jiefeng Li, Haoyu Wang, Yinghong Fang, and Cewu Lu. Pose Flow:
Efficient online pose tracking. BMVC, 2018.)
这两种state-of-the-art 方法使用现成的多人姿态估计方法检测姿态,然后接一个额外的后处理用于链接不同帧的相同目标。
现有的两种时间上关联目标的方法:
- 在线的方法,来一帧处理一帧,根据当前帧和上一帧的相似性进行目标关联,代表作有,MSRA,
- 离线的方法,先把整个视频的pose都检测出来,然后执行pose track方法使得关联结果保持全局一致性,代表作有:PoseTrack,
上述的关联方法都依赖于一些相似性的度量,同时这相似性度量的选择非常重要,相似性度量和track方法必须相匹配,度量要要满足track方法对相似性的表现要求,现有的相似性度量有以下方法:
- PCKh,在pose估计的数据集中有定义,代表作有 FIRA(Rohit Girdhar, Georgia Gkioxari, Lorenzo Torresani, Manohar Paluri, and Du Tran. Detect-and-track: Efficient pose estimation in videos. CVPR, 2018.)
- OKS(Object Keypoint Similarity)代表作有,MSRA
- IOU FIRA
- Optical flow ArtTrack: Articulated Multi-person Tracking in the Wild, PoseTrack, Pose Flow: Efficient online pose tracking.
一方面基于位置的度量如PCKh、OKS或IoU,假定姿势随时间的推移而平稳变化,因此,在大型相机或身体姿势运动和由于相机变焦引起的比例变化的情况下,会遇到困难。
另一方面,基于外观的相似性度量或光流信息不能处理由于人的遮挡或截断、运动模糊等造成的外观变化。
离线方法试图通过加强长期时间一致性来应对这些挑战。这通常是通过使用复杂的时空图来构造问题来实现的(ArtTrack: Articulated Multi-person Tracking in the Wild, PoseTrack),这导致了很高的推理时间,因此,这些方法在许多应用中是不可行的。
这文章中,笔者指出上述的相似性度量都并非是专为这个问题设计的(task-agnostic)
提出使用(task-spacific)TFF 来辅助定义相邻帧之间相关性的度量(时间域上的)
这个TFF受启发于PAF,PAF是用于单帧内关节之间相关性度量的(空间域上的)
通过TFF定义相关度,构成二分图,利用贪婪的匹配算法求解track问题
方法
首先是网络推理部分:
- 两帧图片经过Siamese网络提取特征
- 特征一方面分别经过Spatial Inference得到各帧的pose以及PAF
- 一方面两帧feature结合送给Temporal Model 估计TFF
然后是逻辑推理部分:
- 首先在单帧内使用PAF方法链接不同的关节点得到不同的人个体
- 然后是不同帧的人关联,利用TFF构建二分图
- 使用贪婪算法求解二分图匹配,把上一帧的标签 pass 到当前帧(文章好像没有提如何匹配,但是下面的根据TFF最后得到的优化目标是可以通过匈牙利算法或者贪婪匹配算法(参考MSRA)求得的)
利用TFF构建二分图
如上图右边所示,定义每个人的pose 为关键点集合,总共J个关键点,是关键点的坐标
帧中共有个目标,构成集合
优化的目标定义为:
s.t. and
其中
- 是二值变量,1表示这两帧中的这两个目标相关,由匹配算法得到
- 是这两帧中这两个目标的相关度,定义是根据关节相关度的,如下
定义的是关节是否被检测到,如果两个关节都被检测到,则
定义的是两个关节的相关度,定义如下:
如果两个关节的位置特别相近就定义为1,否则就根据TFF定义:
这里是一个积分,积分变量为,是点坐标是一个向量,定义为两个关节点之间连线上所有点p的,在该关节的TFF中,向量T(p)的和:
为了让网络可以学习到TFF的分布,即的分布,训练的时候定义如下的gt,对于每一点p:
,这里考虑到所有的目标(场景中的K个人)对该点TFF的影响,求均值,有可能不同的人的关节点的有重合,这时就求均值。也可以看成,每个人都产生一个关于关节J的TFF的向量场,而关节J的TFF向量场,是这些各个目标向量场的均值。(CNN设计时,输出的TFF通道数和关节数量相等,而和图片中人的数量无关,对于每一个关节,CNN推理一个TFF向量场,总共J个TFF向量场,每一个向量场要考虑所有的目标)
如果该点p在上图中,由定义的紫色框内,则等于,否则等于0