介绍
OpenPose人体姿态识别项目是美国卡耐基梅隆大学(CMU)基于卷积神经网络和监督学习并以caffe为框架开发的开源库。可以实现人体动作、面部表情、手指运动等姿态估计。适用于单人和多人,具有极好的鲁棒性。是世界上首个基于深度学习的实时多人二维姿态估计应用,基于它的实例如雨后春笋般涌现。人体姿态估计技术在体育健身、动作采集、3D试衣、舆情监测等领域具有广阔的应用前景,人们更加熟悉的应用就是抖音尬舞机。
亮点
提出Part Affinity Fields (PAFs),每个像素是2D的向量,用于表征位置和方向信息。基于检测出的关节点和关节联通区域,使用greedy inference算法,可以将这些关节点快速对应到不同人物个体。
OpenPose是基于卷积神经网络和监督学习并以caffe为框架写成的开源库,可以实现人的面部表情、躯干和四肢甚至手指的跟踪,不仅适用于单人也适用于多人,同时具有较好的鲁棒性。可以称是世界上第一个基于深度学习的实时多人二维姿态估计,是人机交互上的一个里程碑,为机器理解人提供了一个高质量的信息维度。
流程
- 输入一幅图像,经过卷积网络提取特征,得到一组特征图,然后分成两个岔路,分别使用 CNN网络提取Part Confidence Maps 和 Part Affinity Fields;
- 得到这两个信息后,我们使用图论中的 Bipartite Matching(偶匹配) 求出Part Association,将同一个人的关节点连接起来,由于PAF自身的矢量性,使得生成的偶匹配很正确,最终合并为一个人的整体骨架;
- 最后基于PAFs求Multi-Person Parsing—>把Multi-person parsing问题转换成graphs问题—>Hungarian Algorithm(匈牙利算法)
(匈牙利算法是部图匹配的算法,该算法的核心就是寻找增广路径,它是一种用增广路径求二分图最大匹配的算法。)
卷积神经网络
网络分上下两个分支,分别预测关键点热力图和paf图。每个分支都有t个阶段,表示越来越精细,每个阶段都会将feature maps进行融合。其中ρ φ 表示网络。训练时,每个阶段都会产生loss,避免梯度消失;预测时只使用最后一层的输出。
- 亮点一:PAF-Part Affinity Fields
PAF(Part Affinity Fields),部分区域亲和。它负责在图像域编码着四肢位置和方向的2D矢量。同时,使用CMP(Part Detection Confidence Maps)标记每一个关键点的置信度(就是常说的“热图”)。通过两个分支,联合学习关键点位置和他们之间的联系。同时推断这些自下而上的检测和关联的方式,利用贪婪分析算法(Greedy parsing Algorithm),能够对全局上下文进行足够的编码,获得高质量的结果,而只是消耗了一小部分计算成本。并行情况下基本达到实时,且耗时与图片中的人数无强关联。 - 亮点二:高鲁棒性
CMU家的数据采集设备,一个封闭的大球,可以做到任意角度的人体数据采集。大球上面镶嵌了480 VGA cameras+31 HD cameras+10 Kinect Ⅱ Sensors+5 DLP Projectors. 并且全部实现了硬件同步。海量高质量的数据,使得仅仅基于2D图像就可以实现鲁棒性很好的人体姿态检测。 - 亮点三:landmarks 三元归一
最开始人体骨骼关节点是行为分析动作识别的人做,人脸landmark提取是人脸识别或者美颜算法开发团队做,手部关节点是手势识别人机交互团队在做,属于不同的细分方向。CMU的团队人体骨骼关节点识别取得了不错的成果,于是把人脸人手都整合了进来,做成了一个统一的graph,效果也还可以。face alignment和pose alignment串起来了,而且根据人体头部的刚体属性及四肢的非刚体特性设计了一套基于caffe的点估计与扩散模型,并建立树状决策加速,据此再加之3D背景分割技术。
单人姿态估计(CPM的算法思想)
CPM的模型采用的大卷积核来获得大的感受野,这对于推断被遮挡的关节是很有效的。网络结构如下:
整个算法的流程是:
a) 首先对图像的所有出现的人进行回归,回归各个人的关节的点
b) 然后根据center map来去除掉对其他人的响应
c) 最后通过重复地对预测出来的heatmap进行refine得到最终的结果在进行refine的时候,需要引入中间层的loss,从而保证较深的网络仍然可以训练下去,不至于梯度弥散或者爆炸。通过coarse to fine来逐渐提升回归的准确度。
短板
耗显存
计算量很大,为了达到实时的目的,使用了高并行的策略。基于cuda加速,所以非常吃显存,基本劝退显存低于4G的机器了(GTX 980ti+)
特殊场景监测效果差
图像分辨率低、运动模糊、低亮度、检测目标密集、遮挡严重、不完整目标等,效果都不是很理想。
COCO模型数据集关键点
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删