问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

人体姿态估计--OpenPose算法解析

发布网友 发布时间:2022-09-09 07:27

我来回答

1个回答

热心网友 时间:2024-11-30 22:56

  人体姿态估计是计算机视觉中一个很基础的问题。从名字的角度来看,可以理解为对“人体”的姿态(关键点,比如头,左手,右脚等)的位置估计。
  人体姿态估计可以分为两种思路,
(1)“top-down”,它指先检测人体区域,再检测区域内的人体关键点。

  已有"bottom-up"方法缺点:(1)未利用全局上下文先验信息,也即图片中其他人的身体关键点信息;(2)将关键点对应到不同的人物个体,算法复杂度太高。
  文章改进点:提出“Part Affinity Fields (PAFs)”,每个像素是2D的向量,用于表征位置和方向信息。基于检测出的关节点和关节联通区域,使用greedy inference算法,可以将这些关节点快速对应到不同人物个体。

  损失函数是保证网络能收敛的最重要的关键点,因此作者对两分支的损失函数均采用L2 loss。训练时,每个阶段都会产生loss,避免梯度消失;预测时只使用最后一层的输出。公式表示如下:

其中,表示branch1 的label图,也称为heatmap; 是branch2 的label图,也称为vectormap。另外,考虑到有些训练数据集只标注了图片中部分人物的关节点,因此对损失函数采用了空域加权操作,W表示二值化mask矩阵,当位置p的标签缺失时其值为0,否则值为1。显然,对于未被标记的人物关节点 ,而被标记的人物关节点和非关节点 ,所以未被标记的人物关节点不会影响模型的学习过程,整个CNN网络架构的优化目标函数如下,

   实际上就是使用2D高斯分布建模,求出一张图像上身体j部位的heatmap,记第k个人的第j个关节的heatmap为 , 表示位置信息,则有:

   表示了使用part affinity fields(PAF)建模骨骼区域,对于骨骼区域内的每一个像素,使用2D向量同时表征位置和方向信息,这里的方向指代当前骨骼对应的关节点对的连接方向,对应vectormap。以下图的骨骼区域为例

  经过上述过程,我们已经得到各个关节点的坐标图--heatmap,与关节对连接的vectormap,现在的问题就是如何合理地在推理阶段将各个关节连接成一段骨骼,并将它们组装成一个人?
  关节拼接:对于任意两个关节点位置 和 ,通过计算PAFs的线性积分来表征骨骼点对的相关性,也即表征了骨骼点对的置信度,公式表示如下, 为了快速计算积分,一般采用均匀采样的方式近似这两个关节点间的相似度,   多人检测:由于图片中人数不确定,同时伴随遮挡、变形等问题,因此只使用上述计算关节对相似度,只能保证局部最优,因此作者利用greedy relaxation的思想生成全局较优的搭配。具体操作如下:
(1)已知不同关节点的heatmap,也就是不同人的某个关节点的点集;
(2)现在要将不同的点集进行唯一匹配,如:一群表示手肘的点集和手腕的点集,两点集中的点必须存在唯一匹配;
(3)关节点之间的相关性PAF已知,将关键点作为图的顶点,将关键点之间的相关性PAF看为图的边权,则将多人检测问题转化为二分图匹配问题,并用匈牙利算法求得相连关键点最优匹配。

  由上图可知,COCO数据集总共有18个关键点,17个肢体骨架,但heatmap多了一个背景图,vectormap多了耳朵和肩膀的肢体,为什末要虚构这麽一个肢体呢,因为有时候人体是背对相机的,眼睛这个关键点是不可见的,为了更好的预测耳朵,引入这两个个肢体(也就是关节对:2-16和5-17)。所以总共有19个肢体,应为vectormap为矢量,预测时分为x,y两个分量,所以有19*2=38

  完全参考 https://blog.csdn.net/m0_37477175/article/details/81236115 ,结合2.4节中vectormap( )的计算公式与绿色虚线框内的区域以点集数学公式理解。
  关键是叉乘的几何意义是两个向量所组成的平行四边形的面积,所以 就表示与向量 平行距离为 的区域,也就是骨骼宽度。

后来论文作者对网络结构进行了改进,使得效果更好,速度更快,参考文献【11】。

【1】 Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
【2】 人体姿态估计的过去、现在和未来
【3】 论文解读-Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
【4】 Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields【菜鸟读者】
【5】 知乎:openpose笔记
【6】 openpose论文总结:Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
【7】 详细介绍匈牙利算法步骤
【8】 Github 项目 - OpenPose 关键点输出格式
【9】 openpose的细节处理
【10】 tf-openpose人体姿态估计标签生成--heatmap--vectormap
【11】 OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
工程制图会学什么电脑操作CAD制图 电脑装了声卡驱动还是没声音如何处理_电脑装了声卡驱动还是没声音怎么... 关于the reason why…is that…句型 用the reason why...is that..句型回答选择朗诵我不再归去这首诗原因... the reason why is that造句 一篇文章教你学会尺寸标注的所有知识 信贷公司一般什么流程 电脑如何为qq音乐设置快捷方式怎样将qq音乐的图标显示到桌面上 我是做凉皮销售的,想买一台圆形凉皮机,不知道哪款好,求推荐 请问哪位朋友用的圆形凉皮机,好用吗? 阿里郎的《兰花指》歌词是? 请高手翻译一个中文句子 守护家神是什么动物 小学总复习备考策略稳操胜券名校冲刺卷 数学(人)答案 六年级 情毒入骨,害人不浅。意思是? 家神是什么生肖 释汝刀之中的释是什么意思 释之,并令吏护送反家什么意思 共悯而释之的释的意思 上贤而释之的之是什么意思? 求2010年巴中中学中考录取分数线 今年巴二中重高录取分数是多少 鸡蛋壳加面粉在锅里翻炒会不会着火? 炒鸡蛋里可以加粉面吗 苹果4怎么下载百度影音 苹果电脑上怎么装百度影音和徐康影音播放器 初一下册地理复习资料 第七章亚洲 第八章欧洲 初一地理下册塘沽卷第七章答案 模式用英文怎么说 维好协议和担保的区别 椭圆机会越练腿越粗吗?椭圆机要怎么练才能瘦腿? 椭圆机如何使用的正确技巧 哥哥姐姐的花样年华 大师,帮忙命理命理。 什么是童子命,命理是什么 子平命理格局取法,子平命理100例 子息的命理批语 传统命理解说:童子命不能结婚吗? 孩子才五岁就开始反抗父母,不听父母的话,家长该怎么管教孩子? 宝宝才五岁就知道向大人发脾气非常不听话,作为父母该怎样教育孩子? 婚床上的早生贵子什么时候摆 怎么摆 结婚床上摆的早生贵子怎么摆 多久收拾 早生贵子摆床图片 结婚四样水果 初三英语期中考试卷作文题目德安学校 ...济南市历城区2019届九年级上学期期中考试英语试题(含听力)答案是啥... 枸杞红枣赤豆汤的原料: 阿云嘎现身《海的尽头是草原》首映礼,这部剧讲了什么故事? 十岁的女孩头发怎么剪 我家到现在还在用一个很陈旧的铝锅,对身体有害吗? 诸葛亮火烧上方谷谋事在人成事在天