Abstract + Introduction

提出了一个通用的结构,这个结构基于 waterfall 的空洞空间池化结构,达到了 SOTA

  • 通过结合contextual segmentation 和 Joint localization (上下文分割和联合定位)来进行 body estimation,这个过程是一个 one-stage 的操作
  • waterfall 在一个级联的结构中采用了 progressive filtering 的方法,与空间金字塔(spatial pyramid)相比保持了多尺度的感受野
  • 本文方法还扩展到了 Unipose-LSTM 用来进行视频中的多帧处理。
  • Unipose 的提出是受语义分割(semantic segmentation)结构的启发
  • Unipose 的主要创新是 WASP 模块,即:瀑布空洞空间池化(Waterfall atrous spatial pooling)
  • 由于我们的网络使用了更大的感受野(FOV)和多尺度方法,我们的 Unipose 可以预测连接的位置,从而获得上下文信息。
  • 这个 WASP 受启发于空间金字塔(spatial pyramid)方法,通过结合级联的空洞卷积层和一个并行的池化结构来获得多尺度的感受野。

Related Work

  • 目前常用的方法是基于 CNN 结构进行 pose estimation
  • CPM(Convolutional Pose Machine) 采用优化的联合检测方法 joint detection 通过把网络分成多个阶段来实现需求
  • Stacked Hourglass 通过级联的沙漏网络完成 pose estimation
  • 基于此 Openpose 提出了 PAF 场(part affinity fields)来进行多人的检测,降低了运算量,PAF 的思想是通过更加 significant 的 joints 来更好地估计 estimate 那些 less significant 的 joints
  • multi-context 多上下文的方式基于 hourglass 的基础结构来实现 pose estimation,通过提出了一个加强的 Hourglass Residual Units(HRU) 模块来迅速增加感受野。通过 Conditional Random Fields(CRF) 进行后续处理完成不同 joints 之间的装配(组装)工作。CRF 引入了更多的计算冗余
  • 高分辨率网络(HRNet)包含了高分辨率和低分辨率的特征表示(representations)。开始的时候是高分辨率,然后通过逐步地增加低分辨率的子网络(sub-networks)来形成多个 stages 并且在不同的 sub-networks 之间进行多尺度的融合。HRNet 受益于多分辨率的更大的感受野,这种能力我们在这篇文章中通过 WASP 模块用一种更简单的方式进行实现
  • Mult-stage Pose network(MSPN)[26]采用了类似的方法,将HRNet结构与跨阶段特征聚合(cross-stage feature aggregation)和从粗到细的监督相结合(coarse-to-fine supervision)
  • DeepPose 采用一种级联的深度 CNN结构 并且通过回归的方式来预测 body 的 joints。该方法依赖于它的迭代细化(iterative refinement),以更好地预测对称(symmetric)和低置信度关节(lower confidence joints)
  • 最近的一些研究试图利用上下文信息(contextual information)进行姿态估计。
  • Cascade Prediction Fusion 级联预测融合(CPF)[57]使用图形组件 graphical components 来利用上下文进行姿态估计。
  • 相同地, Cascade Feature Aggregation 旨在使用语义信息和级联方法来检测 pose
  • GAN 也被用于学习 pose 的上下文信息的相互依赖关系进行 pose estimation
  • LCR-Net(Location,classificaiton,regression 定位,分类,回归网络)将 pose estimation 通过深度回归技术扩展到 3D 空间中。

空洞卷积和 ASPP 空洞金字塔池化(Astrous Spatial Pyramid Pooling)

  • 语义分割的一大挑战就是传统的 CNN 进行降采样导致最终的特征图分辨率很低,全卷积网络通过上采样(通过转置卷积)解决了分辨率的问题;考虑到语义分割要在维持特征图尺寸的条件下增大感受野,选择空洞卷积来完成操作。
  • 空洞卷积可以避免降采样的同时获得一个多尺度的架构
  • 因为在池化操作过程中引入空间金字塔(spatial pyramid)的操作很成功,因此 ASPP(astrous spatial pyramid pooling) 空洞空间金字塔池化引入了语义分割领域。ASPP 通过 4 个并行的分支,每个分支使用不同的空洞率(astrous rate),这些不同 rate 的空洞卷积采用了一个额外的 factor 设置成 8 来完成快速双线性插值。
  • 这种方式可以让特征图保持和输入图片一样的分辨率。在 ASPP 操作中提升的分辨率和感受野对于 pose estimation 任务来说是有益的,更加有益于在 pose estimation 过程中检索上下文中的 body parts。
  • 此文中使用了 waterfall 结构,更加高效的实现了这种优势(即,增大感受野的同时恢复特征图的分辨率这种优势)

Unipose 的结构

  • 很显然 UniPose 的检测方式类似于目标检测,是一种自顶向下的检测结构,首先检测出每个人的 bounding box 其次对于每个 bounding box 中的人进行 pose estimation 的检测。
  • 通过空洞卷积 astrous conv 获得更大的感受野,并采用 “级联” 的方式将很多个这种空洞卷积进行串联,组成一种 “waterfall” 结构。
  • 此文的 WASP 模块提供了多尺度的特征表示,并同时减小了网络的参数量,提高了模块效率。
  • Unipose 不需要不同的分支来完成 bounding box 的工作和 joint detection 工作,只使用一个 branch 就能完成框出 human 主体并检测其 joints 的所有工作。
  • 下图展示的是 decoder 网络的结构:
  • 输入图片首先输入一个 deep cnn 中进行特征提取,本文使用 resnet-101,并将其最后一个层的输出替换为 WASP 模块。这样生成的最终特征图由上图的 decoder 网络来处理,最终生成 K 个 heatmaps,每个 heatmap 通过 softmax 函数对应后面一个 joint 的预测概率分布。
  • 然后解码器采用一个双线性插值来恢复到原始的分辨率大小,然后采用一个局部 max 的操作进行姿态估计(pose estimation)
  • 这个 decoder 同时可以产生对可见 joints 和被遮挡 joints 的预测结果。此外,这个 decoder 在不适用 post-processing(后期处理 )和 ASPP 的条件下,产生了一个 bounding box 的检测。
  • 下面的文章将会比较本文提出的 WASP 结构和传统的 ASPP 结构

WASP 模块

  • WASP 的任务是产生一个 multi-scale 的特征表示
  • 从上图可以看出,这个模块和传统的 ASPP 模块相比采用更小规模的参数来产生更大的感受野 FOV。
  • WASP 借助空洞卷积 astrous convolution 技术,这种技术也同样是 ASPP 的核心技术,来获得一个大的感受野。同时 WASP 采用了级联的空洞卷积结构,即从左到右依次是不同空洞率的空洞卷积层。
  • 传统的 ASPP 是将 pool 过后的原始特征图直接输入到多个并行的分支中,如下图:
  • WASP 不是采用这种立即 parallel 的方式,而是首先经过一个卷积层,然后才创建当下的 branch,详细来说就是,当 feature 进入 WASP 之后,要想产生 rate=12 的这个从上到下的 branch,首先要经过 rate=6 的这个空洞卷积,而要产生 rate=18 的这个 branch,则要将特征图首先经过 rate=6 和 rate=12 的卷积层进行卷积操作。这样的话,在每个 branch 创建的过程中,参数量就会很大程度上降低。
  • WASP 设计的初衷是减少运算的参数量并且克服空洞卷积带来的限制。WASP 中的四个分支分别具有不同大小的感受野并且按照一种 waterfall 的结构进行链接,WASP 以 rate=6 的空洞卷积作为开始,在后面的处理中不断地增大空洞卷积的 rate,(6,12,18,24)这种小卷积核的配置提高了效率,并且通过每个分支创建了不同尺度的特征图表示,最后将他们 concate 起来作为更加复杂的特征表示。
  • WASP 结构用到 Unipose 里面如下图:

Decoder 模块

  • decoder 负责把 WASP 模块产生的 score maps 转换成 K 个heatmaps,这 K 个 heatmaps 与最终产生的 bounding box 和 body joints 的预测相关。

    • 首先输入的特征图尺寸是1280×720×3,然后通过 WASP 模块产生的特征尺寸是 256 通道,同样的,通过 ResNet 产生的 low-level 的特征也是 256 通道的。ResNet backbone 产生的 256 通道的特征通过 1×11×11×1 卷积和 max 池化过后调整成 48 个通道的特征,然后和 WASP 的 256 通道特征拼接成一个更加复杂的特征,通道维度变成 304 维。然后经过一些列的卷积层,dropout 层和双线性插值操作来还原成原始输入尺寸。最终输出的 K 个 heatmaps 分别负责 K 个 joints 的预测,并通过一个 local max 操作来定位每个 joints。这个 decoder 还输出 heatmaps 用来完成 bounding box 工作而不引入新的 branch。bounding box 没有显示在上图中。

Unipose-LSTM 完成视频中的 pose estimation

  • 视频任务中,采用连续帧之间的相似度和相关性是非常有用的。
  • 通过 LSTM 模块来强化原本的 Unipose 结构,该模块接收来自前一帧的最终热图和来自当前帧的解码器热图,该结构使用 LSTM 后接多个 CNN 层来产生最终的 heatmaps 来做 joint 的检测工作。

数据

预处理

  • 将 joint 的 groundtruth 位置通过 gaussian 处理来生成 groundtruth labels,其中采用 σ=3\sigma=3σ=3 来决定位置标签高斯化的拖尾长度。

Body estimation 论文阅读笔记(3):Unipose:Unified Human Pose Estimation in Single Images and Videos Bruno Ar相关推荐

  1. Learning Pose Grammar to Encode Human Body Configuration for 3D Pose Estimation论文阅读笔记

    文章目录 论文内容 创新点 网络结构 表示方式 Base 3D-Pose Network 3D-Pose Grammar Network-BRNN 运动学语法(Kinematic grammar) 对 ...

  2. 【论文阅读笔记】High Quality Monocular Depth Estimation via Transfer Learning

    文章目录 High Quality Monocular Depth Estimation via Transfer Learning Abstract 1. Introduction 2. Relat ...

  3. 论文阅读笔记之Replacing Mobile Camera ISP with a Single Deep Learning Model

    这篇文章做了啥 根据ccd或者cmos图像传感器获得的图像,要经过一系列的复杂的处理才能得到最终的图像,而且不同的cmos有不同的算法,作者这里的motivation是能不能有一个比较统一的框架来处理 ...

  4. 论文分享 Stacked Hourglass Networks for Human Pose Estimation

    Alejandro Newell, Kaiyu Yang, and Jia Deng University of Michigan, Ann Arbor 2016.7 https://github.c ...

  5. 2D/3D人体姿态估计 (2D/3D Human Pose Estimation)

    1. 基本概念 算法改进入口 网络设计 特征流 损失函数 数据集的重要性:只要有一个好的.针对性的数据集,问题都可以解决 过集成新一代AutoML技术,可降低算法试错成本 人体姿态估计(Human P ...

  6. 论文阅读笔记--Monocular Human Pose Estimation: A Survey of Deep Learning-based Methods 人体姿态估计综述

    趁着寒假有时间,把之前的论文补完,另外做了一点点笔记,也算是对论文的翻译,尝试探索一条适合自己的论文阅读方法. 这篇笔记基本按照原文的格式来,但是有些地方翻译成中文读起来不太顺,因此添加了一些自己的理 ...

  7. 【论文阅读笔记】Occlusion-Aware Siamese Network for Human Pose Estimation

    论文地址:Occlusion-Aware Siamese Network for Human Pose Estimation 论文总结   本文的网络名,作者命名为OASNet.本文的出发点就如名字所 ...

  8. Learning Multiview 3D point Cloud Registration论文阅读笔记

    Learning multiview 3D point cloud registration Abstract 提出了一种全新的,端到端的,可学习的多视角三维点云配准算法. 多视角配准往往需要两个阶段 ...

  9. PointConv论文阅读笔记

    PointConv论文阅读笔记 Abstract 本文发表于CVPR. 其主要内容正如标题,是提出了一个对点云进行卷积的Module,称为PointConv.由于点云的无序性和不规则性,因此应用卷积比 ...

最新文章

  1. Jmeter工具中参数化、正则表达式提取器、响应断言的实现
  2. golang 代码实现 修改配置文件
  3. java 7 g1_java7中G1垃圾收集器使用和流程总结
  4. android 发送前台广播,使用IntentService与BroadcastReceiver实现后台服务(Android7.0可用)...
  5. 电容充放电原理图_干货 | 入门开关电源,这些原理图一定要读懂
  6. dotNET Core实现分布式环境下的流水号唯一
  7. android 类ios actionsheet效果
  8. opencv-api threshold
  9. sysbench0.5 mysql_sysbench 0.5安装步骤
  10. 1003 我要通过! (20 分)—PAT (Basic Level) Practice (中文)
  11. presentation编程软件_编程难学?web相关知识,跟着淼哥学php全栈之路6
  12. WPF学习之数据绑定
  13. Unity--使用反编译软件ILSpy查看dll中的代码
  14. W ndows10开机密码设置,Win10系统开机密码输入正确却提示微软帐户无法登录的三种解决方法...
  15. 遥感的自然生态监测 专题
  16. Bundle Adjustment — A Modern Synthesis(一)
  17. servlet+js实现首页、尾页、下一页、上一页(翻页功能)
  18. matplotlib设置颜色、标记、线条,让你的图像更加丰富
  19. iOS小工具合集-(合一Kit)
  20. HE3342E单节 2A 开关型锂离子电池充电芯片

热门文章

  1. 62 stm32 usb自定义hid复合设备修改实验
  2. All The Elements Pronounced in Order (American English)
  3. html设置自动切图指定位置,HTML5自助切图
  4. mac linux网卡驱动下载官网下载,linux | 网卡驱动
  5. 7个免费的云平台,快来发布你的项目吧
  6. 2.系统发生树构建(非加权分组平均法、邻接法python实现)
  7. 外贸企业邮箱域名是什么?企业内部邮箱域名注册解析怎么做?
  8. 想做游戏测试工程师?这几点不知道可不行!
  9. 人工智能下的中秋祝福
  10. 九轴传感器姿态----AHRS算法开源项目推荐