MMPose 实践笔记

news2024/11/15 15:46:36

1. 配置环境

参考:https://mmpose.readthedocs.io/zh_CN/latest/install.html

第 1 步 使用 MIM 安装 MMCV

pip install -U openmim -i https://pypi.tuna.tsinghua.edu.cn/simple
mim install mmcv-full

第 2 步 安装 MMPose

我选择 从源码安装

git clone https://github.com/open-mmlab/mmpose.git
# 你懂的  容易失败  我参考了这个:https://blog.csdn.net/good_good_xiu/article/details/118567249
cd mmpose
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
# 又卡住了  失败的话  多试几次就好了
pip install -v -e . -i https://pypi.tuna.tsinghua.edu.cn/simple
# "-v" 表示输出更多安装相关的信息
# "-e" 表示以可编辑形式安装,这样可以在不重新安装的情况下,让本地修改直接生效

2. 验证安装

从源码安装的 mmpose,那么直接运行以下命令进行验证:

第 1 步 我们需要下载配置文件和模型权重文件

mim download mmpose --config associative_embedding_hrnet_w32_coco_512x512  --dest .

在当前目录下找到这两个文件:associative_embedding_hrnet_w32_coco_512x512.py, hrnet_w32_coco_512x512-bcb8c247_20200816.pth, 分别是配置文件和对应的模型权重文件。

第 2 步 验证推理示例

如果您是从源码安装的 mmpose,那么直接运行以下命令进行验证:

python demo/bottom_up_img_demo.py associative_embedding_hrnet_w32_coco_512x512.py hrnet_w32_coco_512x512-bcb8c247_20200816.pth --img-path tests/data/coco/ --out-img-root vis_results

可以在 vis_results 这个目录下看到输出的图片,这些图片展示了人体姿态估计的结果。如:

image

创建 tests/data/custom 文件夹,内放一张图像 lxl.jpg,我们看看推理的结果:

python demo/bottom_up_img_demo.py associative_embedding_hrnet_w32_coco_512x512.py hrnet_w32_coco_512x512-bcb8c247_20200816.pth --img-path tests/data/custom/lxl.jpg  --out-img-root vis_results

image

好吧,好像有个点没识别出来。我的图像分辨率是 299*187 可能是分辨率太低或者模型不太行?

3. 使用预训练模型进行推理

运行演示

使用人工标注的人体框作为输入。

python demo/top_down_img_demo.py \
	configs/body/2d_kpt_sview_rgb_img/topdown_heatmap/coco/hrnet_w48_coco_256x192.py \
	https://download.openmmlab.com/mmpose/top_down/hrnet/hrnet_w48_coco_256x192-b9e0b3ab_20200708.pth \
	--img-root tests/data/coco/ --json-file tests/data/coco/test_coco.json \
	--out-img-root vis_results

image

2D Hand Keypoint Demo

https://gitee.com/open-mmlab/mmpose/blob/master/demo/docs/2d_hand_demo.md#2d-hand-keypoint-demo

使用 标注的框 来进行 2D Hand Keypoint。

python demo/top_down_img_demo.py \
	configs/hand/2d_kpt_sview_rgb_img/topdown_heatmap/onehand10k/res50_onehand10k_256x256.py \
	https://download.openmmlab.com/mmpose/top_down/resnet/res50_onehand10k_256x256-e67998f6_20200813.pth \
	--img-root tests/data/onehand10k/ --json-file tests/data/onehand10k/test_onehand10k.json \
	--out-img-root vis_results

image

这张图的手 回归的不太好。看来2D 的对于遮挡的不太行。

此外,可以使用一个模型来检测手的 bbox, 然后在使用 模型回归 手的关键点。而这个需要 安装 MMdet

python demo/top_down_img_demo_with_mmdet.py demo/mmdetection_cfg/cascade_rcnn_x101_64x4d_fpn_1class.py \
	https://download.openmmlab.com/mmpose/mmdet_pretrained/cascade_rcnn_x101_64x4d_fpn_20e_onehand10k-dac19597_20201030.pth \
	configs/hand/2d_kpt_sview_rgb_img/topdown_heatmap/onehand10k/res50_onehand10k_256x256.py \
	https://download.openmmlab.com/mmpose/top_down/resnet/res50_onehand10k_256x256-e67998f6_20200813.pth \
	--img-root tests/data/onehand10k/ \
	--img 9.jpg \
	--out-img-root vis_results

可能我之前安过 MMdet, 我直接运行成功了。

image

试试别的图:

image

显然,误识别了一个 hand bbox,还有就是画图时候点太大了。右手的 bbox 模型也没有检测出来。

安装 MMdet

如果需要安装,可参考:

https://github.com/open-mmlab/mmdetection/blob/master/docs/zh_cn/get_started.md

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/73680.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vector-常用CAN工具 - CANoe入门到精通_00

今天在梳理的时候突然发现写的CANoe工具入门到精通系列缺少了CANoe安装,实际对于CANoe的安装并不难,在“Vector-常用CAN工具 - CANoe入门到精通_01”中我有提过我们常说的CANoe主要由VN1640或者VN1640以及CANpiggy等硬件加上CANoe软件组成了我们工作中常…

Python3,9行批量提取PDF文件的指定内容,这种操作,保证人见人爱....

批量提取PDF文件指定内容1、引言2、代码实战2.1 介绍2.2 安装2.3 实例3、总结1、引言 小屌丝:鱼哥, 你有没有什么办法,提取PDF文档的内容。 小鱼:这个还问我?? 小屌丝:哎呀,这个不是…

leetcode题17电话号码的字母组合-java题解-回溯篇

说明:问题描述来源leetcode: 一、问题描述: 17. 电话号码的字母组合 难度中等2219 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注…

【踩坑专栏】关于实现异步多线程的一些踩坑

在实现基于redis的分布式锁的时候,有一项功能,就是通过开启异步线程,对还没有unlock的key进行定时刷新,延长时间。 初始版本是New一个线程start。我们知道New一个线程,用了没多久又抛弃,这种方法非常消耗资…

【浅学Java】SpringBoot 日志文件

SpringBoot 日志文件1. 认识日志文件1.1. 日志文件有什么用?1.2 日志文件的格式2. 自定义日志文件的打印3. 日志的持久化3.0 什么时日志持久化3.1 设置日志名称3.2 设置日志目录3.3 持久化日志的特点4. 日志的级别5. 设置“日志级别”来筛选日志6. 简化日志打印——…

量子计算(十二):量子线路与测量操作

文章目录 量子线路与测量操作​​​​​​​ 量子线路与测量操作​​​​​​​ 量子线路是由代表量子比特演化的路线和作用在量子比特上的量子逻辑门组成的。量子线路产生的效果,等同于每一个量子逻辑门依次作用在量子比特上。在真实的量子计算机上,最…

HTML CSS游戏官网网页模板 仿绝地求生吃鸡游戏网站 大学生游戏介绍网站毕业设计 DW游戏主题网页模板下载

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

[附源码]Python计算机毕业设计Django影院管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

使用yum info查看软件包信息与常用软件包

记录:357 场景:在CentOS 7.9操作系统上,使用yum info查看软件包信息,包括软件包名称、适用架构、版本号、发行版、软件大小、仓库名称、概要、URL、许可证、描述。 版本: 操作系统:CentOS 7.9 1.iptabl…

【现代机器人学】学习笔记三:前向运动学(Forward Kinematics)

这节的内容比较简单,主要配合习题来看。 在掌握方法以后,对常规的有许多移动副或转动副结构组成的机械臂,计算正向运动学则非常简单。 齐次变换法: 这种方法的特点是,只研究当前关节和上一个关节的旋转平移&#xf…

供应商关系管理与企业内容管理 (ECM) 相结合,帮助解决采购存在的五个关键挑战

供应商关系管理与企业内容管理 (ECM) 相结合,帮助解决采购存在的五个关键挑战 采购过程包括将制造需求转化为供应商需求、如何管理供应商关系、以及生产产品所需的商品和服务的订购。 领先的制造、制药、食品和自然资源组织正在意识到&#…

【性能优化】pc端与移动端图片性能优化

目录 优化方向 优化方式 1.域名收敛 2.使用CDN节点 3.设置缓存 4.图片懒加载 5.用户图片上传限制 6.使用OSS服务压缩 7.使用OSS缩放 8.合成雪碧图 9.使用svg图片 在前端项目中图片的性能优化也有不少可以提升的地方,那么有哪些性能优化的点呢&#xff1f…

[附源码]Python计算机毕业设计Django游戏交易平台

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

NEMUCOD病毒jse样本分析

该病毒使用微软的JScript编写,能够直接运行在Windows操作系统之上,采用了加密和混淆手段对抗监测,可检测是否运行在虚拟机中和系统中是否存在分析工具,可感染可移动存储介质,主要功能为下载器。CC服务器为185.159.82.1…

牛客网刷题【BC114\BC123\BC125\BC13\BC93\BC95】

目录 一、BC114 小乐乐排电梯 二、BC123 小乐乐找最大数 三、BC125 小乐乐转换成绩 四、BC13 ASCII码 五、BC93 统计数据正负个数 六、BC95 最高分与最低分之差 一、BC114 小乐乐排电梯 #include <stdio.h>int main() {int n0;scanf("%d",&n…

Aspose.Words 22.12.0 for NET cRACK

.NET API 来处理 Word 文件 无需使用外部软件即可创建、编辑、呈现 Word 文档并将其转换为多种格式。您还可以生成报告以可视化数据。 .NET 的 Aspose.Words Aspose.Words for .NET 是一种高级文档处理 API&#xff0c;可对各种文件格式执行广泛的管理和操作任务。API 支持…

(文章复现)5.基于BP神经网络的风电功率预测方法(MATLAB程序)

联系方式&#xff1a;2645521500 复现文章&#xff1a; 基于BP神经网络的风电功率预测方法——刘立群&#xff08;2021年&#xff09; 摘要&#xff1a; 风电功率预测结果的准确性&#xff0c;不仅关系到风力发电厂的综合运行效率&#xff0c;也与区域运行成本具备直接联系…

Java面试-MySQL事务专题

链接&#xff1a;https://pan.baidu.com/s/1mw4sej8BzdHNCkaib4ebeg 提取码&#xff1a;j2qu 1 事务的四个特点是什么&#xff1f;他们是如何实现的&#xff1f; ACID-原子性、一致性、隔离性和持久性。 ACID原理原子性undolog一致性通过其他三个特性来实现的隔离性锁MVCC持…

java计算机毕业设计ssm校园志愿者服务系统u7thd(附源码、数据库)

java计算机毕业设计ssm校园志愿者服务系统u7thd&#xff08;附源码、数据库&#xff09; 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xf…

初学者必刷题---PTA基础编程题目集第一期

&#x1f680;write in front&#x1f680; &#x1f4dd;个人主页&#xff1a;认真写博客的夏目浅石. &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​ &#x1f4e3;系列专栏&#xff1a;初学者必刷题—鹏哥推荐 &#x1f4ac;总结&#xff1a;希望…