Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields 论文解读

概述

这是一篇关于肢体识别的非常经典的文章,本实验运用了caffe深度学习框架 (http://caffe.berkeleyvision.org),运用了 MPII  (http://human-pose.mpi-inf.mpg.de  人体姿态数据集)和 COCO(http://cocodataset.org  微软发布的 一个大型图像数据集)这些数据集可以帮助进行2D人体姿态评估。

     

为什么要着重来讲这篇论文,因为当时参加华中hackthon的时候,正是因为这篇文章的启发,才激发我们设计出了一款dancepose的学习跳舞的产品,并且获得了第一名,致敬作者

姿态识别逐渐应用到众多领域,比如游戏,动画电影姿态捕捉等,传统的姿态识别方法需要借助传感器,景深摄像头等高科技设备, 或者传统的神经网络识别方法经常会带来大的误差,错误。

本论文则提出了新的方法,旨在对2D视频影像中的动作行为进行关键点,关键域,捕捉识别拼接,从而实现姿态识别的效果 。

整体架构

传统方法:自上而下

思路:先检测人,再对每一个人进行姿态识别。

缺点: 1. 当人离得比较近时,检测人体的方法极易失效。

            2.运行时间与人物数量成比例,难以达到实时要求。

新的方法:自下而上

思路:先识别出关键点和关节域,然后通过算法组合成个体  的姿势图。

优点:保证精度的同时达到近乎实时的效果。

图a,b,c 分别代表经过一系列优化后识别的效果,c则是预期,符合本文观点

具体实现流程:

1:求所有关键点(头部,肩膀,关节,手腕...)

2:求所有关联区域( 手臂,大腿)

3:根据关键点和关联区域进行矢量连接

架构分析:

上面图片和公示展示了本文所述的图片处理网络架构,主要包括这么几个过程:

1. 输入原图像

2. 利用VGG-19的前10层对图片进行处理,得到图片的特征F;

3. 特征F输入到多阶段网络进行处理, 卷积结束,分别输出

St(Part Confidence Map)关键点:比如关节,肩膀..

Lt(Part Affinity Map)关键域,代表胳膊等躯干部分。

4. 运用拼接方法以Lt为基础,将St连接,拼接成整个人的模型

具体剖析

关键点识别:

S∗j(p)实际上就是求出一张图像上身体j部位分布置信图(也称热点图),分布类似高斯分布 两个曲线的顶点代表热点最集中的部分,则代表各个关键点。 如上图(嘻嘻)

关键域识别

如果在图像中确定某人(k)一段手臂(标记为c),那么这幅图中任意位置p的 L∗c(p)为:

此函数则协助判断此点是否在关键域中。

关节拼接

从上面的识别bcd看来

1,  构造全连接图

2,  仅保留有链接可能的边 也是NP-HARD 问题

3,  转化为最大化二分权值匹配问题,通俗的语言讲,从躯干开始,大臂的两端一定是肩膀和胳膊肘

  所以我们基于之前得出的PAFs (part affinity fields)信息按这个思路进行躯干连接。

关节组合

第一步,找出图中所有的小腿

第二步,按照第一步的方法,分别去找出大臂、小臂等其他器官

第三步,两个相邻的躯干必定有共享关节点,通过关节点再把所有的躯干结合起来得到躯体

实验难点及可改进地方

姿态识别的挑战:

1.图片中人的数量、位置、尺寸均未知。

2.人们之间的互动产生的接触、遮挡等影响识别。

3.个体数量增加使识别更困难,对实时性是一个挑战。

在实验过程中,我们取消无用点的识别 提高帧数,同时也可以花十几万组装一个坦克来运行这个代码 (手动滑稽)
 

 代码大概分析

本代码需要在ubuntu或者windows环境下,并且需要NVIDA的一些配置,分为CPU和GPU两个版本,可以对图片,视频,2Dwebcame摄像头三种形式进行识别,但是识别结果可想而知,没有很好的设备帧率会非常的低,官方发论文的时候给出的GPU识别19人帧率也不过8.8,随着人的增加,关键点的增多,会非常的卡,CPU就更不用说了,需要你闭眼补帧。

windows下 需要在powershell里面打开相对应的cpu/gpu文件 然后输入相关不同的命令进行操作:

https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/v1.3.0/doc/quick_start.md 文档详细讲述了用法

https://blog.csdn.net/JerryZhang__/article/details/76208871 OpenPose 安装配置与测试

https://github.com/CMU-Perceptual-Computing-Lab/openpose  github 下载

如果您有更多的问题 欢迎给我留言联系,我会第一时间回复您

工作邮箱:[email protected]

猜你喜欢

转载自blog.csdn.net/hzw9806/article/details/89526389