2D人体姿态识别-Human3.6M与COCO数据集中,各人体骨骼关键点可视化及对应关节标注顺序(heatmap可视化,热力图和原图融合显示)

本文通过代码展示了Human3.6M数据集中32个关键点和COCO数据集中19个关键点的可视化,包括单个关键点、所有关键点及共同关键点的标注。使用heatmap融合原图进行显示,详细解释了每个关键点对应的身体部位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

003-2.processData


前言

这篇文章里的案例使用的是Human3.6M数据集中S1人物的Sitting 1.55011271.mp4视频中的第13帧作为图片,分别将此帧在Human3.6M中的2D关节点标注在COCO上训练过的Openpose检测出的Heatmap在这帧图片上进行可视化,并一一对照标出了Huamn3.6M中32个关键点和COCO数据集中19个关键点对应的身体部位,找出了在两个数据集中共同的身体部位及其关键点


提示:以下是本篇文章正文内容,下面案例可供参考

一、最终结果展示

1. Human3.6M数据集中32个人体关键点可视化及含义

Human3.6M中的2D keypoints ground-truth可视化:
在这里插入图片描述
对比找到H36M中各关键点所对应的身体部位如下,黄色高光的部位表示H36M和COCO中共有的关键点:
在这里插入图片描述
其中右上图的骨架图来自于博文CSDN:human3.6m数据集格式解析中给出的部分关键点(keypoints),但这里的关键点并不完整。右下图和左表我整理出了完整的各关键点含义(注意有的身体部位被多个关键点重复标注了)。


2. COCO数据集中19个人体关键点可视化及含义

检测出的COCO keypoints heatmap可视化,取heatmap中置信度最高的点作为关节点标红:
在这里插入图片描述
对比找到COCO中各关键点所对应的身体部位如下,黄色高光的部位表示H36M和COCO中共有的关键点:
在这里插入图片描述


3. Human3.6M和COCO两个数据集中共同的身体部位及其关键点

在这里插入图片描述

二、代码展示

以下代码均在Jupyter notebook中运行

1.Human 3.6M部分

1) 引入库

!pip install cdflib

输出如下:
在这里插入图片描述

import cdflib
import numpy as np
from matplotlib import pyplot as plt
import cv2 as cv

2)读入数据

代码如下(示例):

#load a cdf file
cdf= cdflib.CDF('Sitting 1.55011271.cdf')

#Get the variables in the cdf file
x = cdf.varget("Pose")

#Get the keypoints and images at frame 13
x13 = x[:,14,:]
x13 = x13.reshape
OpenCV OpenPose人体姿态识别算法是一种基于深度学习技术的人体姿态估计算法,可以通过分析像或视频中的人体关键点来推断人体的姿势。该算法的实现借助了OpenCV库Caffe深度学习框架。 该算法的代码实现主要涉及以下几个步骤: 1. 首先,导入必要的库模型。通过调用OpenCVCaffe提供的接口,加载OpenPose预训练的深度学习模型。 2. 然后,读取像或视频数据。可以通过OpenCV提供的函数读取本地文件,或者使用摄像头实时获取像。 3. 对于每一帧的像,将其输入到OpenPose模型中进行预测。通过调用预训练的模型,可以得到对应关键点的坐标。 4. 接下来,可以根据关键点坐标进行姿态分析识别。通过分析关键点之间的关系,可以推断出人体的姿势,例如手势、站立、走路等。 5. 最后,将识别结果可视化或输出到文件中。可以使用OpenCV提供的绘函数,将关键点姿势形化展示,或者将结果保存到本地文件。 需要注意的是,该算法的实现可能需要一些深度学习相关的知识经验。此外,算法的性能准确率也会受到输入数据质量模型训练的影响。 总之,OpenCV OpenPose人体姿态识别算法代码实现了像或视频中人体关键点识别姿态推断功能,通过深度学习模型OpenCV库的协同工作,可以实现较准确的人体姿态分析识别
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值