multi-view human pose estimation相关项目配置经验

本博客包含的项目包括以下文章(均已开源,可上github查找相应代码)

《Cross View Fusion for 3D Human Pose Estimation》(ICCV2019)

《Fusing Wearable IMUs with Multi-View Images for Human Pose Estimation: A Geometric Approach》(CVPR2020)

《AdaFuse: Adaptive Multiview Fusion for Accurate Human Pose Estimation in the Wild》(IJCV2021)

这三个项目均与微软亚研院合作,代码风格非常类似,配置一个环境即可跑通三个项目。

博主的环境为Ubuntu20.04+python3.7+pytorch1.2.0+torchvision0.4.0,其余的模块从这三个项目中选一个安装requirements.txt里的模块即可,如果在实际运行中显示缺什么模块pip install该模块即可。

下面说一下在运行三个项目的训练/测试代码时遇见的报错及解决方案:

1.第一次运行该代码出现quickload相关报错

例如:

FileNotFoundError: [Errno 2] No such file or directory: '/data6/liwh/TotalCapture/quickload/totalcapture_quickload_validation_cam_1357.pkl'

这是因为代码中没有写如果不存在quickload文件夹则自动创建该文件夹的代码。

解决方法:

在data\dataset\路径下创建一个空的名为quickload文件夹即可,这里的dataset泛指你需要训练或测试的数据集。文件夹的结构应该如下:

 2.TypeError: load() missing 1 required positional argument: ‘Loader‘

这是由于Yaml 5.1版本后弃用了 yaml.load(file) 这个用法。

解决方法:

修改lib\core\config.py文件约178行左右的代码。

源代码

with open(config_file) as f:
        exp_config = edict(yaml.load(f))

修改代码

with open(config_file) as f:
        exp_config = edict(yaml.safe_load(f))

3.找不到某张图片报错

如下:

KeyError: "There is no item named 'images/s_09_act_02_subact_01_ca_01/s_09_act_02_subact_01_ca_01_000001.jpg' in the archive"

当时一头雾水,检查了好几遍,确保它说的这张图片我确实是已经放到data\dataset\images.zip里了,可是依然报错。

解决方案:

修改lib\utils\zipreader.py文件第32行和59行的代码。

这里要特别说明一下,这三个项目中涉及到mpii,h36m,totalcapture,unrealcv等数据集,只有训练或测试unrealcv数据集时这里是不用修改的,应该也不会报错,使用其他数据集均需要修改。

源代码

path_zip = path[0:pos_at]
path_img = path[pos_at + 2:]

修改代码

path_zip = path[0:pos_at]
path_img = path[pos_at + 9:]

简单来说就是unrealcv数据集这里不用改,其他数据集这里改为+9。

如果其他步骤都是按对应代码github上的步骤把相关文件和数据集下载好放在指定的路径下,那么此时你应该就能跑出结果来了,欢迎各位研究相关领域的同学和我多多交流,共勉。

### 回答1: 实时多人二维姿态估计使用的是部件关联场技术。该技术利用深度学习网络对图像中的人体关键点进行检测和定位,并通过学习人体部位之间的关联性来提高姿态估计的准确性。在实时性方面,该技术利用高效的网络结构和并行计算技术,能够在处理多人图像时保持较高的处理速度和较低的延迟。 ### 回答2: 实时的多人2D姿态估计是指在照片或视频中同时检测多个人的姿态并实时反馈结果。这个任务主要是依赖计算机视觉领域的人体关键点检测技术。而Part Affinity Fields(PAF)是现在最常用的一种检测方法。 PAF可以理解为是人体姿态中的“骨架”,它在这里指的是需要将骨骼节点间的关系一同考虑进去来提高精度的设计。每个PAF都对应着一对关联的节点,例如手臂这一关节对应的PAF就是肩膀和手腕两个关键点中间的向量场。PAF能够将关键点之间的联系编码为一个向量场,并将它们的图像位置和方向作为通道特征,这样就可以通过深度卷积网络获得节点的连接信息。 对于多人2D姿态估计任务,PAF可以自动推断出人体的椭圆形状,使得不同人的节点互相不干扰,能够高效地分离不同人体之间的关键点信息,保证检测精度。 总体而言,实时的多人2D姿态估计技术是计算机视觉研究领域中一个非常重要的方向。通过Part Affinity Fields技术,可以实现对人体姿态的快速准确检测和分析,并具有广泛的应用前景,比如拍摄跳舞类视频、体育比赛等。未来,该领域还将会不断提高研究和开发技术,提高其在实际场景中的使用效果,为人们的生产和生活提供更多更好的便利。 ### 回答3: 在计算机视觉领域,人体姿态估计一直是一个十分重要的研究方向。现在,研究者们正在致力于开发实时多人二维姿态估计方法,本文将介绍一种方法——part affinity fields。 Part affinity fields是指身体部位之间存在的空间关系矩阵。多人姿态估计就是先将图像中的每一个像素与人体相关的身体部件联系起来,然后再利用network output将这些点连接起来形成人体姿态。part affinity fields的基本思想是采用CNN对每一个像素做预测,以定位人体骨架上的每一个连接点。 主要步骤: 1.生成部件置信图:对于输入的图像,通过CNN估计每个像素是否为其中每个身体部位的一部分,这个图叫做部件置信图(Part Confidence Maps),可以通过训练数据集来检测出身体部位的位置。 2.生成连接部件映射图:对于预测出来的部件置信图,我们可以通过预测到的部件之间的关系来学习生成连接映射图(Part Affinity Fields),即学习两个不同身体部件之间的关系(connectivity),这个关系是一个形状为“c×2×h×w”的4维张量。在测试阶段,对于输入图像中的每个像素,都会有其对应到一个连接部件映射图的位置。 3.生成姿态结果:最后,我们将生成的部件置信图和连接部件映射图进行联合,把已确定的部件通过连接映射图装配起来并组合成人体的姿态结果。 这种方法最大的好处就是实现了实时多人姿态估计,不需要预设一个特定数量的人数。同时,在处理不同人的关键点时,以前的方法通常是对每个人都单独进行估计,而这个方法则对所有人的关键点一起进行估计,能够更好地处理人际交互。 总之,通过深度学习和部件置信图与连接映射图等技术手段的利用,Part Affinity Fields在解决实时多人二维姿态估计时具有很大的潜力。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值