『关键点检测』CPN:Cascaded Pyramid Network for Multi-Person Pose Estimation
网络简介
face++2017年coco keypoint benchmark 数据集冠军的文章,发表于CVPR201
1 提出了一种金字塔型的串接模型,即CPN(cascaded pyramid network),这个模型能够同时兼顾人体关节点的局部信息以及全局信息,结果取得了不错的效果;
2 使用了在线难例挖掘(online hard keypoints mining)的技术,这对于人体姿态估计任务中一些存在遮挡的“hard”的关键点的预测有所帮助;
3 测试阶段考量了soft-NMS和传统的hard-NMS(非极大值抑制)在human detection阶段产生的影响,结论是soft-NMS对于最后的结果是有所帮助的。
本算发聚焦点在于处理多人姿态估计所面临的挑战:关键点遮挡,关键点不可见,复杂背景等——就是优化对于难以检测的点的预测,即着重于处理 “hard” 关键点。思路就是detector先定位bbox,然后使用CPN检测关键点,其中原作者使用的是FPN进行bbox定位(下图解释了FPN的优越性),并应用了ROIAlign。

CPN本体由两部分组成:GlobalNet和RefineNet,流程如下图所示,GlobalNet对关键点进行粗提取,RefineNet精细加工难以识别的网络(RefineNet对不同层信息进行了融合,可以更好的综合特征定位关键点),首先对于可以看见的easy 关键点直接预测得到,对于不可见的关键点,使用增大感受野来获得关键点位置,对于还未检测出的点,使用上下文context进行预测。。
GlobalNet 采用类似于FPN的特征金字塔结构,并在每个elem-sum前添加了1x 卷积,负责网络所有关键点的检测,重点是对比较容易检测的眼睛、胳膊等部位的关键点。
RefineNet基于GlobalNet生成的特征金字塔,其链接了所有层的金字塔特征用于定位“hard”关键点,GolbalNet对身体部位的那些遮挡,看不见,或者有复杂背景的关键点预测误差较大,RefineNet则专门修正这些点。主要还是基于shortcut的思想,在该阶段的训练中,还使用了类似OHEM的online hard keypoints mining难例挖掘策略。
下图表示的更明显,眼睛等关键点GlobalNet 直接输出结果,其他关键点使用添加了RefineNet 的组合网络输出结果:

实验要点
(1)数据增强,提升0.4map
训练数据的处理上使用了随机翻转,(-45度,45度)的随机旋转,(0,7,1.35)的随机尺度变换
(2)大batch的训练,主要针对检测框架,提升0.4-0.7map
(3)在行人检测框架中使用soft NMS取代hard NMS,提升0.3map
(4)随着检测map的提高,关键点的map提升非常有限

(5)online hard keypoints mining
在coco 数据集中有17个关键点需要预测,GolbalNet预测所有的17个点,并计算所有17个点的loss,RefineNet也预测所有的17个点,但是只有最难的8个点的loss 贡献给总loss。作者称这为OHEM。

(6)多模型融合集成,提升1.1-1.5map在coco minval数据集上
『关键点检测』CPN:Cascaded Pyramid Network for Multi-Person Pose Estimation的更多相关文章
- 《Cascaded Pyramid Network for Multi-Person Pose Estimation》论文阅读及复现笔记
一.PipeLine 要点 TopDown + GlobalNet + RefineNet 二.Motivation 通过提高对难以识别的关键点的识别准确率,来提升总体识别准确率. 方法:1.refi ...
- 『计算机视觉』Mask-RCNN_从服装关键点检测看KeyPoints分支
下图Github地址:Mask_RCNN Mask_RCNN_KeyPoints『计算机视觉』Mask-RCNN_论文学习『计算机视觉』Mask-RCNN_项目文档翻译『计算机视觉』Mas ...
- 『高性能模型』轻量级网络ShuffleNet_v1及v2
项目实现:GitHub 参考博客:CNN模型之ShuffleNet v1论文:ShuffleNet: An Extremely Efficient Convolutional Neural Netwo ...
- Parallel Feature Pyramid Network for Object Detection
Parallel Feature Pyramid Network for Object Detection ECCV2018 总结: 文章借鉴了SPP的思想并通过MSCA(multi-scale co ...
- 阅读手札 | 手把手带你探索『图解 HTTP』
前言 本文已经收录到我的 Github 个人博客,欢迎大佬们光临寒舍: 我的 Github 博客 学习清单: 一.网络基础 TCP/IP 通常使用的网络(包括互联网)是在 TCP/IP 协议族的基础上 ...
- Istio 运维实战系列(2):让人头大的『无头服务』-上
本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 什么是『无头服 ...
- 似魔鬼的 『 document.write 』
在平时的工作中,楼主很少用 document.write 方法,一直觉得 document.write 是个危险的方法.楼主不用,并不代表别人不用,最近给维护的项目添了一点代码,更加深了我对 &quo ...
- 拾遗:『Linux Capability』
『Linux Capability』 For the purpose of performing permission checks, traditional UNIX implementations ...
- 『创意欣赏』20款精致的 iOS7 APP 图标设计
这篇文章给大家分享20款精致的 iOS7 移动应用程序图标,遵循图形设计的现代潮流,所有图标都非常了不起,给人惊喜.通过学习这些移动应用程序图标,设计人员可以提高他们的创作,使移动用户界面看起来更有趣 ...
随机推荐
- Linux学习8-CentOS部署自己本地的django项目
前言 自己本地写好的django项目,如何部署到linux服务器上,让其他的小伙伴也能访问呢?本篇以centos系统为例,把本地写好的django项目部署到linux服务器上 环境准备: 环境准备: ...
- C++ 在继承中虚函数、纯虚函数、普通函数,三者的区别
1.虚函数(impure virtual) C++的虚函数主要作用是“运行时多态”,父类中提供虚函数的实现,为子类提供默认的函数实现. 子类可以重写父类的虚函数实现子类的特殊化. 如下就是一个父类中的 ...
- 目标检测(五)YOLOv1—You Only Look Once:Unified,Real-Time Object Detection
之前的目标检测算法大都采用proposals+classifier的做法(proposal提供位置信息,分类器提供类别信息),虽然精度很高,但是速度比较慢,也可能无法进行end-to-end训练.而该 ...
- 数据类型&字符串得索引及切片
一:数据类型 1):int 1,2,3用于计算 2):bool ture false 用于判断,也可做为if的条件 3):str 用引号引起来的都是str 存储少量数据,进行 ...
- RVIZ实现模拟控制小车
RVIZ是一个强大的可视化工具,可以看到机器人的传感器和内部状态. 1.安装rbx1功能包Rbx1是国外一本关于ros的书中的配套源码,包含了机器人的基本仿真.导航.路径规划.图像处理.语音识别等等. ...
- java之beanutils使用
介绍 BeanUtils是Apache Commons组件的成员之一, 主要用于简化JavaBean封装数据的操作. 点击下载依赖 jar 包 使用 有如下 javabean : package ...
- 绿色版mssql
1.安装2008绿色版,缺少对应的企业管理器,安装官方版本的提示电脑没有重启(已经重启后) 2.选择一个可用版本的mssql,2000的可以用,MSSQL2000-HaoSQL,自带企业管理器和查询器
- 【UML】NO.47.EBook.5.UML.1.007-【UML 大战需求分析】- 部署图(Deployment Diagram)
1.0.0 Summary Tittle:[UML]NO.47.EBook.1.UML.1.007-[UML 大战需求分析]- 部署图(Deployment Diagram) Style:Design ...
- centos7.5固定局域网ip
有点时候,比如像我们单位,没事干就停一次网,结果ip变了,还得重新看ip,重新配置,很麻烦,所以干脆把自己ip固定,以不变应万变!!! 1.首先查看自己的ip是什么: $ ifconfig eno1: ...
- android studio java: -source 1.6 中不支持 switch 中存在字符串 的错误
F4打开open moudle setting 将source Compatibility 改为1.7 F4打开open moudle setting 将targetCompatibility 改为1 ...