视频中的人体动作分析是计算机视觉研究领域中的一个重要方向,包括动作分类,时序动作检测,时空动作检测等等方向。前几天日本东京大学在 arXiv 上放出的一篇论文(大概是 CVPR 投稿文章吧)提出了一个新的人体动作分析问题:第一人称视频中的行人轨迹预测问题,并提出了一个新的数据集以及一个新的行人轨迹预测算法。
论文的题目为:Future Person Localization in First-Person Videos [1] ([1711.11217] Future Person Localization in First-Person Videos,https://arxiv.org/abs/1711.11217)。这篇笔记主要对这篇论文进行内容上的提炼和整理,最后附上了自己对这篇论文的讨论。有问题欢迎留言指出~
首先,此处所采用的第一人称视频(First-person videos)指可穿戴相机(wearable cameras)所拍摄的视频,比如 GoPro,Google Glass 等。基于第一人称视频相关的研究主要对应的应用领域包括盲人导航,AR 等相关领域。
这篇文章所提出的 Future Person Localization 问题具体而言,就是已知t时刻及之前几帧图像中行人的相关信息,要求算法预测未来几帧中该行人会出现在图像中的什么位置。问题示意图如下图所示。关于这个任务的技术有很多的用途,比如帮助行人避开迎面走来的行人,或是帮助移动机器人来规划运动的路径。
要构建行人轨迹预测算法,首先要确定要用什么信息/特征来进行行人轨迹的建模与学习。对于一小段视频中的行人,本文中主要提出了四种 feature 序列,如下所示:
行人检测框的位置序列(Location);
行人检测框的大小序列(Scale),在第一人称视角中,行人框的大小实际上隐含了透视投影的关系,即“近大远小”;
行人的骨架序列(Pose),骨架信息主要隐含了行人的动作,姿态,朝向等信息;
摄像机本身的运动信息(Ego-motion),由于第一人称视角中相机本身也是在不断运动的,所以相机本身的运动也不得不考虑进算法当中,具体而言,就是相机在每两帧之间的平移和旋转信息。
所以问题可以表示为,已知t时刻及前 Tp 帧的四种 feature 序列,要求预测后 Tf 帧的行人检测框位置序列。本文提出了一个很简单的基于 1 维卷积的网络,如下图所示:
网络的具体配置如下表所示,基本上就是 1D-Conv+BN+ReLU 的堆叠。最终的输出即为所需要的未来检测框位置序列。
针对第一人称视频的行人轨迹预测这个问题,由于没有现成的数据库,所以作者自己采集了一个新的数据库,称作 First-person locomotion (FPL) dataset。这个数据集是在东京的街头采集的,下图是数据集中的一些示例图像。
该数据集包含 4.5 小时的视频,包括大概 5000 段行人的轨迹。在每段轨迹中,本文采用 1s 的时间窗口,使用前 10 帧的信息作为输入特征,后 10 帧的行人轨迹作为输出标签。此处的定义不是特别明确,可能需要看后续公布的详细数据集信息。
那么数据集的这些标签信息是怎么得到的呢,该数据集并没有采用手工标注的形式,而是使用了几种算法来自动生成标注信息。首先,对于每帧图像,使用今年 CMU 开源的 OpenPose[2] 来提取场景中所有行人的骨架信息,根据骨架信息可以获得行人的检测框。其次,使用 KCF[3] 算法来进行帧间的行人跟踪,产生很多短的跟踪序列,再对这些短跟踪序列按照(1)图像特征相似性(2)位置相近性 这两个规则进行拼接,从而获得较长的跟踪序列。此处的特征相似性使用的是 Faster-RCNN 所提取的特征的余弦距离。通过上述操作,就可以得到行人相关的三种 feature 序列:行人位置,行人大小以及行人骨架序列。对于相机自身的运动信息,本文则采用了[5]中的算法来进行进行估计。通过上述操作,最终得到了 5000 段轨迹样本。
测评方式方面,本文采用了与[6]中相似的方式,使用 Final Displacement Error (FDE) 作为测评指标。FDE指标即最终预测轨迹和最终实际轨迹之间的L2距离。为了更加精细的评估,该数据集还把行人轨迹分为了1) toward 2) away 3)across三个子集,分别计算了 FDE 以及 3 个子集的平均 FDE。
这篇文章主要与如下几个方法进行了对比:
ConstVel: 该方法计算输入轨迹的速度和朝向,直接生成后续的轨迹
NNeighbor:在测试时,选取轨迹最像的 16 个训练集轨迹,通过平均来生成输出轨迹
Social LSTM[6]: 行人轨迹预测的一个 state-of-the-art 方法,不过并非提出于第一人称视角的场景。
实验结果如表所示:
可以看出本文方法比几个 baseline 还是要好很多的。
此外作者还对输入的几种特征进行了 ablation study,结果如下表所示:
可见综合多种信息对于轨迹的预测效果有着显著的提高效果。
本文结果的可视化效果图如下所示。总体来说效果还不错。
以上为这篇文章的基本内容。可以看出,这篇文章主要在行人轨迹预测这个问题中进一步限定了场景(第一人称视角视频)并提出了对应的数据集和算法。虽然这篇文章提出的算法比较简单,但总体还是很有启发性的:
在第一人称视角的场景下,这篇文章的方法基本涵盖了行人轨迹特征预测所能用到的各种信息,其中骨架信息和相机自身信息我认为是相当重要的。
这个问题其实可以进一步拓展为运动相机场景下的行人轨迹预测问题,这样就能够用于智能驾驶等更多的应用场景中了。
本文中的模型构建的非常简单,可能只是想做一个简单的 baseline 吧,采用 LSTM 网络或是构建更加复杂的特征融合算法应该能够获得更好的轨迹预测精度。
本文提出的数据集在提取各种信息时,分别采用了 kcf,openpose 和 ego-motion estimator 三种算法,其综合速度应该是不太理想的。所以想要将这个算法用到真实的场景下,还有很多算法优化,工程实现的工作要做。也值得一做。
[1] Takuma Yagi, et.al. Future Person Localization in First-Person Videos. In arXiv preprint arXiv: 1711.11217, 2017.
[2] Z. Cao, T. Simon, S.-E.Wei, and Y. Sheikh. Realtime multi- person 2d pose estimation using part affinity fields. In Pro- ceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 7291 – 7299, 2017.
[3] J. F. Henriques, R. Caseiro, P. Martins, and J. Batista. High- speed tracking with kernelized correlation filters. IEEE Transactions on Pattern Analysis and Machine Intelligence, 37(3):583–596, 2015.
[4] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: To- wards real-time object detection with region proposal net- works. In Advances in Neural Information Processing Sys- tems, pages 1–9, 2015.
[5] T. Zhou, M. Brown, N. Snavely, and D. G. Lowe. Unsuper- vised learning of depth and ego-motion from video. In Pro- ceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1851 – 1860, 2017.
[6] A. Alahi, K. Goel, V. Ramanathan, A. Robicquet, L. Fei-Fei, and S. Savarese. Social lstm: Human trajectory prediction in crowded spaces. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 961–971, 2016.