Summary——DensePose: Dense Human Pose Estimation In The Wild

Research question:

在一张RGB图片和一个曲面模型上建立对应。RGB图片来自COCO数据集(本文筛选出含有人物的图片),除此之外,由一个人体的表面模型(这个模型应该是立体的)为24个体块分别找到六张不同角度(当呈现在标注者面前的时候也是平面的图片),本文就是要在二者之间做对应。

Contributions:

  1. 在现有的COCO数据集上搜集包含有 5万个人的图片作为本文的数据集,命名为COCO-DensePose。
  2. 训练一个教师网络(teacher network,用于提高训练点集的数量),提高训练集的效率。
  3. 结合FCN和Mask-RCNN进行实验,串联网络。

Empirics:本文采用的原始数据集是COCO。这是一个大型数据库,它包含的内容如下:

为一张图片的目标打上标签(进行分类):

Summary——DensePose: Dense Human Pose Estimation In The Wild_第1张图片

目标定位(把目标框住):

Summary——DensePose: Dense Human Pose Estimation In The Wild_第2张图片

语义分割:

Summary——DensePose: Dense Human Pose Estimation In The Wild_第3张图片

超像素分割(和语义分割的区别在于按实例个体分割):

Summary——DensePose: Dense Human Pose Estimation In The Wild_第4张图片

采用该数据集的原因:一是它大。二也是最主要的,它的classification的工作可以帮助我们在这个大型图库中找到含有人的图片。而他的分割个体实例的工作,帮我们把人物的轮廓给画了出来。在此基础上,本文对图片上的人物大卸八块,再人工标注,十分方便。

Methods:

也就是说,在COCO数据集中原本就可以比较轻松地找到有含有人的图片,并且在图片上已经把人物的轮廓给画出来了。这方便了本文后来的工作,所以使用COCO数据集,按照本文的需求,做一些针对性修改。这就是本文的第一项重要工作。

本文为了搜集COCO-DensePose,设计了一个注释系统,搜集了5万人类的注释,超过5百万的手工注释的对应。

这里是使用人工来对图片到曲面模型的对应进行标注,如果直接标注的话,因为曲面模型是立体的,所以要找点的时候很麻烦。为了减轻工作量,所以本文分两步来做:

第一,让标注者先把SMPL模型生成的(SMPL模型下文会讲到,这里只需要知道它能生成三维的曲面模型)人体分块,包括头啊,躯干啊,手啊,脚啊,上手臂啊,下手臂啊。像肢体这种大零件,就分为上部,下部,前部,后部。总共分成了24个部分,还有它们的U,V场如下图所示。

 

Summary——DensePose: Dense Human Pose Estimation In The Wild_第5张图片

第二,用k-means算法(一种聚类算法)在每个小块上采样点集,点集中的点两两等距。点集中点的数量随体块的大小决定,大的就多,小的就少,最多的每个体块有14个点。在此,为了进一步方便标注者,每一个体块都提供六张不同角度的照片。标注者只要在某一个视角的图片上标注了点,别的图片上也会自动标注上的(这六张图是他们由表面模型得到的)。

标注如下图所示:

Summary——DensePose: Dense Human Pose Estimation In The Wild_第6张图片

Summary——DensePose: Dense Human Pose Estimation In The Wild_第7张图片

Summary——DensePose: Dense Human Pose Estimation In The Wild_第8张图片

那本文如何评估人工注释的准确性?有的文章是把很多人的标注结果取平均值作为真值,但是在这里,给出的图片上的点都已知模型上的坐标,标注者就是要在这张图片和曲面模型上做对应。测量对应点和真值点的测地距离(大概是因为曲面模型的表面是曲面才用测地距离的吧),然后将K个采样点的测地距离取平均。

不难想象,像头,手这种小的体块,更好定位,误差就更低,躯干这种大的体块,误差就更高,如下图。

Summary——DensePose: Dense Human Pose Estimation In The Wild_第9张图片

接下来就是密集体态估计:

由于“修复”监督信号能够提高训练效果,所以本文专门设计了一个教师网络(teacher network),将原本人工标注(这种标注的点就很少)的稀疏的监督信号,通过修复,转变为密集的监督信号(如果预测错误,就把错误的点作为下一个训练点,反正其实真值他都有)。这是本文的第二项重要工作。

本文最重要的工具还是深度网络,本文把两篇文章的网络结合起来,我们来看看它是怎么构造出来的。

之前有人做这个问题,用全卷积网络构造了DenseReg结构,本文打算在此基础上结合Mask-RCNN结构。并命名为DensePose-RCNN。即有:

DensePose-RCNN=DenseReg+Mask-RCNN。

其中:DenseReg=分类器+回归函数。输入一个点,先通过分类器,将该点分为25类(人体24个体块+1个背景),得到该点是在人体上还是在背景上。再根据该点在哪一体块,通过该体块对应的回归函数(共有24个回归函数)预测该点在曲面模型的位置。

分类器和回归函数的训练集为人工造的COCO-DensePose数据集。

Mask-RCNN的原理,由于作者也是参考别人的文章,所以文中没有细讲,所以具体我也不知道他所说的cascading的意义,等有空看了那篇文章以后在把这部分补上吧哈哈哈哈哈哈哈哈。

 

 

Results and findings:

实验一,两个数据集和本文搜集的COCO-DensePose数据集一起训练,证明COCO-DensePose的优越性。

两个数据集分别是UP(Unite the People)和SURREAL。

实验二,比较cascading和FCN和Mask-RCNN之间的关系。证明cascading的优越性。

Constructive critiques:

这部分原本用于总结文章的优缺点,并提出建设性意见的,意见提不出来,我在这里提几个疑问好了。

  1. 本文方法的upper bound。体态估计随着图片中背景杂斑的产生,人物数量增多,估计的准确率应该是有所下降了,应该如何解决???
  2. 因为按照文章所说貌似每张图片的点都有真值。本文人工标注的COCO-DensePose只是为了在实验中作为对照吗???如果是的话,这种数据集的意义还大吗???

你可能感兴趣的:(文献阅读)