人体姿态估计-CPN(三)

  • 资源链接
    • 论文
    • 代码
  • 论文个人解读
  • 模型结构
    • 网络特点
  • 算法效果

资源链接

论文出处:旷世科技(Face++)、2018CVPR

论文

论文

代码

tensorflow
pytorch

论文个人解读

这篇文章开发的多人姿态估计模型CPN级联金字塔网络,是2017年COCO人体关键点挑战赛的冠军,使用top-down策略,那么同样适用于单人姿态估计,在COCO测试集上取得mAP=73.0。
本算发聚焦点在于处理多人姿态估计所面临的挑战:关键点遮挡,关键点不可见,复杂背景等——就是优化对于难以检测的点的预测,即着重于处理 “hard” 关键点。思路就是detector先定位bbox,然后使用CPN检测关键点。

模型结构

模型分2个module:

网络特点

1) CPN本体由两个module组成:GlobalNet和RefineNet

2) GlobalNet:是一个功能金字塔网络,对关键点进行粗提取,即能够成功地定位“简单”的非隐藏的关键点,并且无法准确识别被遮挡或看不见的关键点。具体为:假设使用ResNet50作为backbone(全文都是以ResNet50作为backbone),左边的四个实心方块就是ResN50的res2- res5(包含[3,4,6,3]个Residual block),右边的虚线方块就是特征融合的过程,不断通过上采样和elem-sum的过程做特征融合。共有4个层次,这样就会得到4个不同的结果,都需要计算loss,不同的层次对应groundtruth的heatmap使用的高斯核大小或者sigma大小不一样,文中根据实验来选择,通常使用7-15之间的奇数。

3) RefineNet:主要针对隐藏关键点,一方面通过整合来自GlobalNet的多尺度特征来丰富位置和语义信息,另一方面通过扩大感受野的方式以及在线的关键点难例挖掘损失(OHKM loss)来优化对难例关键点的检测。具体为:把GlobalNet提取到的4个层次特征分别经过一些bottleneck(也是使用Residual block)和一些不同倍数的上采样,然后在特征层上进行concat进行特征融合,最后再经过一个bottleneck,输出最后的结果,最后的结果是outputsize[0]*ouputsize[1]*num_points的形式,对于COCO数据集,num_points=17,output_size=64,48,共有17个feature map,每一个表示一个关键点信息。在feature map上的heatmap中热力值最大的点就表示对应的关键点。
以上是最终的结构,作者在确定前也做了大量实验,尝试过不加bottleneck直接上采样和concat,加一个bottleneck,提取GlobalNet输出4层的哪几层(C2-C5),如下图:


4) OHKM(Online Hard Keypoints Mining) : 在coco 数据集中有17个关键点需要预测,GolbalNet预测所有的17个点,并计算所有17个点的L2 loss,RefineNet也预测所有的17个点,但是只有最难的8个点的loss 贡献给总L2 loss。ohkm更关注与高层次的信息,而ohem更关注与困难样本。为啥选择8个,作者进行了对比实验,如下图:

5) 损失函数:
GlobalNet采用L2 loss、RefineNet采用OHKM L2 loss
选择以上loss作者也进行了大量实验,如下:

算法效果

同样在coco数据集上进行验证,效果如下:

人体姿态估计-CPN(三)相关推荐

  1. 10.31周报-人体姿态估计CPN

    目录 前言 文章 背景 解决了什么问题 主要思路 方法 多人姿态估计 CPN GlobalNet RefineNet 实验 总结 前言 本周进行了CPN算法思想的学习 文章 标题:Cascaded P ...

  2. 【人体姿态估计综述(2D、3D)】

    人体姿态估计综述(2D.3D) 一.任务描述 二.2D人体姿态估计 2.1 2D单人姿态估计 2.1.1 回归方法 2.1.2 heatmap方法 2.2 2D多人姿态估计 2.2.1 自顶向下 2. ...

  3. 空间金字塔池化_CVPR 2018 | 旷视科技人体姿态估计冠军论文——级联金字塔网络CPN...

    全球计算机视觉顶会 CVPR 2018 (Conference on Computer Vision and Pattern Recognition,即IEEE国际计算机视觉与模式识别会议)将于6月1 ...

  4. Paperreading 之二 多人人体姿态估计COCO2017冠军—CPN(含TF和torch实现)

    版权声明:遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/baolinq/article/details/839934 ...

  5. 刷新记录,算法开源!字节跳动获人体姿态估计竞赛双冠 | CVPR 2019

    整理 | Jane 出品 | AI科技大本营(id:rgznai100) [导读]6 月 16--20 日,计算机视觉与模式识别领域顶会 CVPR 2019 在美国长滩举行.每年的 CVPR 盛会除了 ...

  6. 人体姿态估计(Human Pose Estimation)技巧方法汇总

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 作者:Poeroz https://zhuanlan.zhihu.com/p/10 ...

  7. 视频中的3D人体姿态估计(3D human pose estimation in vide)--------Facebook research: VideoPose3D

    视频中的3D人体姿态估计(3D human pose estimation in video) 解读Facebook AI Research in CVPR2019: <3D human pos ...

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

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

  9. 一文概览2D人体姿态估计

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来自 | 知乎    作者 | 谢一宾 链接 | https:// ...

  10. 特效大片背后的多视角 3D 人体姿态估计技术

    目录 0 背景 1 主要算法 1.1 基于匹配和三角化重建的算法 1.2 基于空间体素化的算法 1.3 基于图卷积网络的算法 1.4 基于 Transformer 的算法 2 常用数据集 2.1 Ca ...

最新文章

  1. 面试官:说说RabbitMQ 消费端限流、TTL、死信队列
  2. PC端创业真的已死?我不这么认为
  3. Springboot Mybatis使用PageHelper实现分页查询
  4. 【OP放大器】在不拆开OP放大器的情况下查一查它是否坏掉或饱和。
  5. 今天maven install时碰到的两个问题(堆溢出和编译错误)
  6. 在windows下python,pip,numpy,scipy,matplotlib的安装
  7. C++ 如何画橡皮线
  8. C++实践參考——二进制文件浏览器
  9. 我的天!你竟然没有在SpringBoot中使用过异步请求和异步调用...
  10. 如何在Linux启动jar 包
  11. 编译FREETYPE:VS2010错误MSB8008
  12. Python机器学习简介
  13. 原版windows下载地址
  14. Android计算器代码分析
  15. 斐讯K1、K2、K2P 刷机、刷入Breed@重庆网吧电竞酒店维护小哥
  16. matlab从无到有系列(六):高级图形处理功能(多窗口绘图以及花瓶绘制)
  17. python的十句名言_程序员的二十句励志名言,看看你最喜欢哪句?
  18. 【英语论文】英汉委婉语的文化价值和民族特质比较(节选)
  19. 在Ubuntu中连接Vultr虚拟主机远程桌面
  20. 『注册中心』Consul微服务注册中心的使用及相关集群搭建

热门文章

  1. 三坐标DMIS语言是C语言吗,三坐标测量软件AC-DMIS和PC-DMIS操作指导教程一
  2. 蓝牙标准协议免费下载
  3. 易基因 | 表观技术:单细胞及微量细胞全基因组重亚硫酸盐甲基化测序(scWGBS)
  4. 介绍一款开源、高性价比的在线教育建站系统
  5. tv 斐讯n1原生android_斐讯T1刷原生安卓TV
  6. 敏捷 2016:行业分析研讨会
  7. 信息系统项目管理师考试中涉及到的法律法规知识
  8. ABT 共识社区北京聚会 共建去中心化生态 | ArcBlock 社区
  9. APM 页面加载耗时校准
  10. 三极管与稳压管恒流电路