• 研究方法

    • 通过完全卷积学习从图像像素到密集模板网格的映射。将此任务作为一个回归问题,并利用手动注释的面部标注来训练我们的网络。使用这样的标注,在三维对象模板和输入图像之间,建立密集的对应领域,然后作为训练的回归系统的基础。论文指出可以将来自语义分割的想法与回归网络相结合,产生高精度的“量化回归”架构
    • Mask R-CNN 是一个两阶段的框架,第一个阶段扫描图像并生成提议(proposals,即有可能包含一个目标的区域),第二阶段分类提议并生成边界框和掩码。
    • Faster R-CNN 是一个流行的目标检测框架,Mask R-CNN 将其扩展为实例分割框架。
    • UV纹理贴图坐标
      • 对于三维模型,有两个最重要的坐标系统,一是顶点的位置(X,Y,Z)坐标,另一个就是UV坐标。U和V分别是图片在显示器水平、垂直方向上的坐标,取值一般都是0~1,也 就是(水平方向的第U个像素/图片宽度,垂直方向的第V个像素/图片高度。纹理映射是把图片(或者说是纹理)映射到3D模型的一个或者多个面上。纹理可以是任何图片,使用纹理映射可以增加3D物体的真实感。每个片元(像素)都有一个对应的纹理坐标。由于三维物体表面有大有小是变化的,这意味着我们要不断更新纹理坐标。但是这在现实中很难做到。于是设定了纹理坐标空间,每维的纹理坐标范围都在[0,1]中,利用纹理坐标乘以纹理的高度或宽度就可以得到顶点在纹理上对应的纹理单元位置。纹理空间又叫UV空间。对于顶点来说,纹理坐标相对位置不变。
  • 数据集
    • COCO-Densepose-dataset
    • 数据集标注
      • 数据库MSCOCO里面,挑选了50K个人,手动标注了近5百万的标注点。

        • Test测试集“1.5k images,2.3k humans”,Training训练集“48k humans”。
        • 传统标注是找到图像上的一个点,然后旋转图像和立体模型来实现精确坐标定位,但这样做效率太过低下。因此他们把标记工作分成两个阶段:先进行宏观的部位分割,再进行具体的对应注释。他们用一组大致等距的点对每个身体部位区域进行采样。
        • 对于一般的姿态识别(骨骼追踪),能够识别出一二十个点便可以构成一个人体姿态,但如果要构造出一个平滑的3D模型,则需要更多的关键点,DensePose需要336个(24个部位,每个部位14个点)
    • 标注过程
      • 在任何渲染的部位图像上为每个被采样的点定位其对应的表面点,他们标注了图像和 3D 表面模型的密集对应关系。红色叉号表示当前被标注的点。
      • 他们向标注者提供了人体部位的 6 个预渲染的视角,这样整个部位表面都是可见的。一旦标注了目标点,该点就会同时显示在所有渲染过的图像上
      • 标注上了UV坐标之后,可以将一个3D人物的表面经过变换投影到2D图像上,并且会根据2D图像中人物的姿态做适当的变换,从而使得3D模型的表面可以做到紧贴2D人物。
  • 网络结构
    • DensePose-RCNN

      • 基于caffe2框架
      • 研究团队采用的是金字塔网络(FPN)特征的RCNN结构
      • 区域特征聚集方式ROI align pooling以获得每个选定区域内的密集部分标签和坐标。
    • DensePose-RCNN系统可以直接使用标注点作为监督。
      • 它借用了Mask-RCNN的架构
      • 带有Feature Pyramid Network(FPN)的特征
      • 以及ROI-Align池化。
      • 除此之外,他们在ROI池化的顶层搭建了一个全卷积网络。
    • 补充
      • 这里“teacher net” (如上图所示)对整体进行辅助训练,它是一个完全卷积神经网络(FCNN),在给定图像尺度把图像和分割蒙版统一化。他们首先使用稀疏的、人工收集的监督信号训练一个“teacher net” ,然后使用该网络来修补用于训练我们的基于区域的系统的密集监督信号。
      • 同时他们利用了多任务的Multi-task cascaded architectures结构,将 mask 和 keypoint的输出特征 与 densepose 的特征互相融合训练。而且也可以看出来使用了多stage的思想,进行“中继监督”训练,利用了任务协同作用和不同监督来源的互补优势。通过级联进一步提升了准确度。
    • 输出三个内容 :身体部位分割,U 和 V。
    • 核心
      • 将2D图像中人的表面的像素投影到3D人体表面上,也可以在估计出图像中人体的UV之后,将3Dmodel通过变换,将空间坐标转换为UV坐标之后,贴到图像上。
    • 基于CNN的系统
      • 全卷积网络
      • mask R-CNN
      • 级联
  • 针对DensePose的研究思路
    • 数据集

      • 下载COCO-Densepose-dataset数据集
    • 神经网络
      • DensePose-RCNN

        • 基于caffe2框架
        • 它借用了Mask-RCNN的架构
          • Mask-RCNN

            • 基于Faster R-CNN

              • Fast R-CNN

                • R-CNN

                  • 基于

                    • 卷积神经网络(CNN)
                    • 线性回归
                    • 支持向量机(SVM)等算法
                  • 实现目标检测技术。
            • 与PSPNet相结合
          • 带有Feature Pyramid Network(FPN)的特征
          • 以及ROI-Align池化。
        • 除此之外,他们在ROI池化的顶层搭建了一个全卷积网络。
          • 这里“teacher net” (如上图所示)对整体进行辅助训练,它是一个完全卷积神经网络(FCNN),在给定图像尺度把图像和分割蒙版统一化。他们首先使用稀疏的、人工收集的监督信号训练一个“teacher net” ,然后使用该网络来修补用于训练我们的基于区域的系统的密集监督信号。
        • 级联
          • 同时他们利用了多任务的Multi-task cascaded architectures结构,将 mask 和 keypoint的输出特征 与 densepose 的特征互相融合训练。而且也可以看出来使用了多stage的思想,进行“中继监督”训练,利用了任务协同作用和不同监督来源的互补优势。通过级联进一步提升了准确度。
    • 核心
      • 将2D图像中人的表面的像素投影到3D人体表面上,也可以在估计出图像中人体的UV之后,将3Dmodel通过变换,将空间坐标转换为UV坐标之后,贴到图像上。
      • UV纹理贴图坐标
        • 对于三维模型,有两个最重要的坐标系统,一是顶点的位置(X,Y,Z)坐标,另一个就是UV坐标。U和V分别是图片在显示器水平、垂直方向上的坐标,取值一般都是0~1,也 就是(水平方向的第U个像素/图片宽度,垂直方向的第V个像素/图片高度。纹理映射是把图片(或者说是纹理)映射到3D模型的一个或者多个面上。纹理可以是任何图片,使用纹理映射可以增加3D物体的真实感。每个片元(像素)都有一个对应的纹理坐标。由于三维物体表面有大有小是变化的,这意味着我们要不断更新纹理坐标。但是这在现实中很难做到。于是设定了纹理坐标空间,每维的纹理坐标范围都在[0,1]中,利用纹理坐标乘以纹理的高度或宽度就可以得到顶点在纹理上对应的纹理单元位置。纹理空间又叫UV空间。对于顶点来说,纹理坐标相对位置不变。

对DensePose: Dense Human Pose Estimation In The Wild的理解的更多相关文章

  1. DensePose: Dense Human Pose Estimation In The Wild(理解)

    0 - 背景 Facebook AI Research(FAIR)开源了一项将2D的RGB图像的所有人体像素实时映射到3D模型的技术(DensePose).支持户外和穿着宽松衣服的对象识别,支持多人同 ...

  2. (转)Awesome Human Pose Estimation

    Awesome Human Pose Estimation 2018-10-08 11:02:35 Copied from: https://github.com/cbsudux/awesome-hu ...

  3. 论文阅读理解 - Stacked Hourglass Networks for Human Pose Estimation

    http://blog.csdn.net/zziahgf/article/details/72732220 keywords 人体姿态估计 Human Pose Estimation 给定单张RGB图 ...

  4. 论文笔记 Stacked Hourglass Networks for Human Pose Estimation

     Stacked Hourglass Networks for Human Pose Estimation key words:人体姿态估计 Human Pose Estimation 给定单张RGB ...

  5. Deep High-Resolution Representation Learning for Human Pose Estimation

    Deep High-Resolution Representation Learning for Human Pose Estimation 2019-08-30 22:05:59 Paper: CV ...

  6. Towards Accurate Multi-person Pose Estimation in the Wild 论文阅读

    论文概况 论文名:Towards Accurate Multi-person Pose Estimation in the Wild 作者(第一作者)及单位:George Papandreou, 谷歌 ...

  7. Learning Feature Pyramids for Human Pose Estimation(理解)

    0 - 背景 人体姿态识别是计算机视觉的基础的具有挑战性的任务,其中对于身体部位的尺度变化性是存在的一个显著挑战.虽然金字塔方法广泛应用于解决此类问题,但该方法还是没有很好的被探索,我们设计了一个Py ...

  8. human pose estimation

    2D Pose estimation主要面临的困难:遮挡.复杂背景.光照.真实世界的复杂姿态.人的尺度不一.拍摄角度不固定等. 单人姿态估计 传统方法:基于Pictorial Structures, ...

  9. paper 154:姿态估计(Hand Pose Estimation)相关总结

    Awesome Works  !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 20 ...

随机推荐

  1. 洛谷P2158 [SDOI2008]仪仗队 欧拉函数的应用

    https://www.luogu.org/problem/P2158 #include<bits/stdc++.h> #define int long long using namesp ...

  2. 10.3.4参数绑定 bind

    Count_if算法,类似find_if,此函数接受一对迭代器,表示一个输入范围,还接受一个谓词,会对输入范围中的每个元素执行.Count_if返回一个计数值,表示谓词有多少次为真.    使用bin ...

  3. linux 部署 .net 程序

    1.使用jexus https://www.jexus.org/ 2.“loopback”错误

  4. not under version control

    表示这个文件没有在SVN的控制之下 你在执行commit操作的时候,只有处于SVN控制之下的文件才能被commit,从update得到的文件是在SVN控制之下的(比如原来就存在的文本文件,你可以对其修 ...

  5. MonkeyRunner Mac环境 录制脚本和回放 批量回放

    1.MonkeyRunner是AndroidSDK自带的一个东西,在SDK目录中的tools\bin文件夹中 2.配置环境变量 编辑环境变量:打开终端输入:open ~/.bash_profile 将 ...

  6. Anaconda多环境Python

    1. Create a new environment for 32bit Python 2.7: set CONDA_FORCE_32BIT=1 conda create -n py27_32 py ...

  7. css 页面滚动 多背景固定不动

    经常看到一些网站,滚动页面但是背景图不会跟着滚动,好像一直固定在浏览器窗口,感觉挺酷的,哇哦 ~ ~ 原来都是 background-attachment 这位大兄弟的功劳 background-at ...

  8. python3爬取高清壁纸(2)

    上次只是爬取一个专辑的图片,这次要爬取一整个页面的所有专辑的图片. 在上次的代码的基础上进行修改就行了,从专辑的索引页面开始,爬取该页面上所有的专辑的链接,再套用上次的代码就行了. 若要爬取多个页面只 ...

  9. 用eclipse的同一个tomcat启动两个javaweb项目

    1.右键选择 Add and Remove 2.把左边两个项目add到右边 3.完成之后查看eclipse左边的Servers下的server.xml文件,会自动生成两个Context标签,当然你到第 ...

  10. Redis Distributed lock

    using StackExchange.Redis; using System; using System.Collections.Generic; using System.Linq; using ...