首页 > 编程语言 >mmpose-----人体骨骼关键点算法实现(姿态估计)

mmpose-----人体骨骼关键点算法实现(姿态估计)

时间:2024-08-06 11:52:45浏览次数:16  
标签:-- demo py python ----- mmpose coco 关键点

MMPose:是一个基于PyTorch的开源的姿态估计工具箱,支持各种主流的人体姿态估计(2D多人姿态估计、2D Hand姿态估计、133个KeyPoints的人体姿态估计、3D人体网格恢复)。

(mmpose中包含很多个姿态估计算法,看都看不过来,主要讲述几个最新的top,简单操作,即学即用,跑一下不同的api就有不一样的效果)

一 mmpose环境

https://github.com/open-mmlab/mmpose/tree/main?tab=readme-ov-file

官网介绍了几种,我用的是最佳实践,过程几乎没有出错,具体安装可点击下面去看

安装 — MMPose 1.3.2 文档

MMPose 适用于 Linux、Windows 和 macOS。它需要 Python 3.7+、CUDA 9.2+ 和 PyTorch 1.8+
我的python是3.8,cuda是11.3,pytorch是1.10.1

#先创一个conda环境
conda create -n abc python=3.8#abc是自己命的环境名,python版本对应conda中的python版本
conda activate abc  #激活创建的环境

#然后在环境里安装最重要的一部分,使用 MIM 安装 MMEngine 和 MMCV
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.1"
mim install "mmdet>=3.1.0"

#源码下载
git clone https://github.com/open-mmlab/mmpose.git
cd mmpose
pip install -r requirements.txt
pip install -v -e .
# "-v" 表示输出更多安装相关的信息
# "-e" 表示以可编辑形式安装,这样可以在不重新安装的情况下,让本地修改直接生效

注意:新旧版本 mmpose、mmdet、mmcv 的对应关系为:

  • mmdet 2.x <=> mmpose 0.x <=> mmcv 1.x

  • mmdet 3.x <=> mmpose 1.x <=> mmcv 2.x

如果遇到版本不兼容的问题,请使用 pip list | grep mm 检查对应关系后,升级或降级相关依赖。注意,mmcv-full 只对应旧版本 mmcv 1.x,所以请先卸载它后,再通过 mim install mmcv 来安装 mmcv 2.x

验证:

python demo/image_demo.py \
    tests/data/coco/000000000785.jpg \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192.py \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192-0e67c616_20220913.pth \
    --out-file vis_results.jpg \
    --draw-heatmap

二 2d全身姿态估计

主要包括人体17、26和133个关键点

1,2D全身姿态估计(外接摄像头可用,我好像改过代码,你们要是用不了外接摄像头,直接input图片或视频路径也可)

python demo/topdown_demo_with_mmdet.py \
    projects/rtmpose/rtmdet/person/rtmdet_nano_320-8xb32_coco-person.py \
    https://download.openmmlab.com/mmpose/v1/projects/rtmpose/rtmdet_nano_8xb32-100e_coco-obj365-person-05d8511e.pth \
    projects/rtmpose/rtmpose/body_2d_keypoint/rtmpose-m_8xb256-420e_coco-256x192.py \
    https://download.openmmlab.com/mmpose/v1/projects/rtmposev1/rtmpose-m_simcc-aic-coco_pt-aic-coco_420e-256x192-63eb25f7_20230126.pth \
    --input webcam \
    --show

(视频要b站或者优酷,不想搞,这是图片效果)

                                              

2,全身+脸+手+脚

python demo/inferencer_demo.py  webcam --pose2d wholebody #(自带摄像头)

python demo/inferencer_demo.py tests/data/crowdpose \
    --pose2d wholebody --vis-out-dir vis_results/crowdpose  #(图片或视频)

三 3d姿态估计

python demo/inferencer_demo.py webcam \
    --pose3d human3d --vis-out-dir vis_results/human3d # (人体3d检测)

四  RTMO/RTMW3D

RTMO:单阶段实时多人姿态估计模型,没有检测框(自底而上),身体17个关键点

python demo/inferencer_demo.py webcam  --pose2d rtmo --vis-out-dir vis_results

RTMW3D:基于rtmpose模型(2d姿态估计模型)的实时多人3d全身姿态估计(两阶段),全身脸手133个关键点

python body3d_img2pose_demo.py configs/rtmdet_m_640-8xb32_coco-person.py https://download.openmmlab.com/mmpose/v1/projects/rtmpose/rtmdet_m_8xb32-100e_coco-obj365-person-235e8209.pth /home/wuyapeng/Downloads/mmpose/projects/rtmpose3d/configs/rtmw3d-l_8xb64_cocktail14-384x288.py rtmw3d-l_8xb64_cocktail14-384x288-794dbc78_20240626.pth  --input 1.jpg --output-root output#(图片或者视频)
python body3d_img2pose_demo.py configs/rtmdet_m_640-8xb32_coco-person.py https://download.openmmlab.com/mmpose/v1/projects/rtmpose/rtmdet_m_8xb32-100e_coco-obj365-person-235e8209.pth /home/wuyapeng/Downloads/mmpose/projects/rtmpose3d/configs/rtmw3d-l_8xb64_cocktail14-384x288.py rtmw3d-l_8xb64_cocktail14-384x288-794dbc78_20240626.pth  --input webcam --output-root output --show #(自带摄像头)

标签:--,demo,py,python,-----,mmpose,coco,关键点
From: https://blog.csdn.net/p13672294967/article/details/140946743

相关文章

  • 监控系统原理揭秘-数据运算篇
    一、监控系统概览监控系统在现代技术环境中扮演着至关重要的角色。运营同学每天检查自己的活动数据,研发人员每天检查系统各项指标是否正常,这些工作都少不了监控系统的身影。通常来讲,监控系统包括数据采集、数据计算、数据存储、数据可视化及监控预警等功能。本文主要介绍数据计算......
  • 《从技术洞察到技术规划赋能培训》(2024年9月6-7日)
    【课程背景】所谓技术洞察,简称(TI,TechnologyInsight),是根据市场发展趋势和客户需求,以及技术的生命周期,对某项技术发展趋势进行判断和预测,并明确未来3~5年的技术战略和战略控制点、重大的技术投资方向,完成技术战略规划的制订,并最终进行技术战略解码,为公司整体战略创造价值。技术......
  • 【中项】系统集成项目管理工程师-第10章 项目整合管理-10.2制订项目管理计划
    前言:系统集成项目管理工程师专业,现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。     软考同样是国家人社部和工信部组织的国家级考试,全称为“全国计算机与软件专业技术资格(水平)考试”,目前涵盖了计算机软件、计算机网络、计算机应用技术......
  • DC-7靶机渗透测试
    DC-7靶机DC:7~VulnHub文章目录DC-7靶机信息收集web渗透权限提升Drupal后台getshell权限提升靶机总结信息收集经过扫描得到IP地址为192.168.78.154.其中开启了ssh和80端口,看来立足点就在于web渗透找到漏洞,获取用户密码来进行ssh连接进行寻......
  • Plugin Boutique Scaler EQ V1.1.3_WIN-TCD&MAC-HCiSO(2024.08更新),持续更新长期有效
    一。PluginBoutiqueScalerEQ1.1.3WIN-TCD&MAC-HCiSO   紧随屡获殊荣的音乐理论插件Scaler之后,ScalerEQ以一种引人注目的全新方式提供了音乐性和色彩的均衡。ScalerEQ是PluginBoutique推出的一款创新均衡器插件,结合传统和和声均衡功能,专注于音乐理论,为音乐制作和混......
  • 【ceph】手动编译14.2.22 ceph版本---超详细版本,生产可用
      本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》: python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》暂未更新《docker学习》暂未更新《ceph学......
  • 数据结构 Queue 队列 -- C语言实现
    队列队列的概念队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的特点FIFO(FirstInFirstOut)入队:进行插入操作的一端称为队尾出队:进行删除操作的一端称为队头链实栈代码实现Ququq.h#pragmaonce#define_CRT_SECURE_NO_WARNI......
  • 数学基础-快速幂、快速乘、矩阵快速幂
    快速幂幂运算的本质是做乘法,对于\(a^b\),其核心思想是将指数\(b\)进行二进制分解,然后对\(b\)的每一位进行进行乘法,时间复杂度为\(O(\logb)\)。llquick_power(lla,llb,llp){llans=1%p;for(;b;b>>=1){if(b&1)ans=an......
  • Template-based MLIR Compiler
    Template-basedMLIRCompilerTherepositorycontainsthesourcesforbuildingthetemplate-basedMLIRcompilerandthedependentLLVMsources(commit5d4927withsomemodifications).ItcompilesandexecutesMLIRprogramsconsistingofsupportedoperation......
  • 短视频矩阵获客系统开发搭建-ai文案+剪辑+去水印
    短视频矩阵获客系统是指利用多个短视频平台进行协同运营,通过发布高质量的短视频内容来吸引、转化潜在客户的营销策略。该系统集合了内容生产、分发、数据分析等功能于一体,为企业提供了一站式的短视频营销解决方案。一、短视频矩阵系统的优势提高营销效率:通过整合多个平台,减少......