姿态估计mmpose一手体验 Ⅱ - 使用它!
上一篇讲完安装,这一篇来简单操作一下,搞点估计结果图爽一下。虽然还没深入内容,但是只要搞出了结果,那就是一脚踏进了姿态估计大门!
我再叨叨一句,有时候,先把代码跑通了,测试一波,简单的复现一下,也是初期代码能力的培养!配环境多难啊!看懂别人的英文教程多难啊!直接改代码是要一步登天嘛!我刚入门就读源码,边爬边飞靠谱吗!天才发抖!
目录
- 开始使用
- 1 准备数据集
- 2 推导预训练模型
- 2.1 测试数据集
- 官网举例
- 用 HigherHRNet 试水
- 2.2 运行 demos
- 官网举例
- Bottom-Up Demos(HigherHRNet)试水
开始使用
- 准备数据集
- 推导预训练模型
- 训练模型
- Benchmark
- 教程
这一趴的内容,我都是根据官方文档里面的操作进行的,下面包括一些中英混杂的教程和范例,以及最主要的,我的 HigherHRNet 试水结果!可以挑自己喜欢的方法来做,不要成为复制粘贴的工具人!手敲代码yyds!
1 准备数据集
data preparation
先来简单搞一个 COCO。
- 从 COCO download 上面下载:
- 2017 Train/Val -> COCO keypoints training and validation.
- 2014 Train -> human mesh estimation training.
- HRNet 提供 COCO val2017 的 person detection result -> 复现多人姿态估计结果。
- 然后按照这样的结构放置到 mmpose 仓库里。
我是事先在 win 上下载,然后 Xftp 到服务器,之后解压缩到指定文件夹,
unzip train2014.zip -d /home/yiming/mmpose/data/coco
unzip train2017.zip -d /home/yiming/mmpose/data/coco
unzip val2014.zip -d /home/yiming/mmpose/data/coco# 查看文件树检查
tree -L
解压后自动创建 train2014 文件夹,不用提前创造,不然就套娃了。
2 推导预训练模型
- 测试数据集
- 运行 demos
2.1 测试数据集
- single GPU (单GPU)
- single node multiple GPUs (单机多卡)
# single-gpu testing
python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} [--out ${RESULT_FILE}] [--eval ${EVAL_METRIC}] \[--proc_per_gpu ${NUM_PROC_PER_GPU}] [--gpu_collect] [--tmpdir ${TMPDIR}] [--average_clips ${AVG_TYPE}] \[--launcher ${JOB_LAUNCHER}] [--local_rank ${LOCAL_RANK}]python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} ${GPU_NUM} [--out ${RESULT_FILE}] [--eval ${EVAL_METRIC}] \[--proc_per_gpu ${NUM_PROC_PER_GPU}] [--gpu_collect] [--tmpdir ${TMPDIR}] [--average_clips ${AVG_TYPE}] \[--launcher ${JOB_LAUNCHER}] [--local_rank ${LOCAL_RANK}]
选项解释:(有的我就懒得翻了,用上再说)
RESULT_FILE
: 输出结果文件。如果不指定,不保存。EVAL_METRIC
: 评价指标,根据数据集而定。NUM_PROC_PER_GPU
: 每个 GPU 的进程数。不指定,单 GPU 单进程。--gpu_collect
: If specified, recognition results will be collected using gpu communication. Otherwise, it will save the results on different gpus toTMPDIR
and collect them by the rank 0 worker.TMPDIR
: Temporary directory used for collecting results from multiple workers, available when--gpu_collect
is not specified.AVG_TYPE
: Items to average the test clips. If set toprob
, it will apply softmax before averaging the clip scores. Otherwise, it will directly average the clip scores.JOB_LAUNCHER
: Items for distributed job initialization launcher. Allowed choices arenone
,pytorch
,slurm
,mpi
. Especially, if set to none, it will test in a non-distributed mode.LOCAL_RANK
: ID for local rank. If not specified, it will be set to 0.
官网举例
确保已经下载 checkpoints 到这个文件夹checkpoints/
.
Test ResNet50 on COCO (without saving the test results) and evaluate the mAP.
./tools/dist_test.sh configs/top_down/resnet/coco/res50_coco_256x192.py \checkpoints/SOME_CHECKPOINT.pth 1 \--eval mAP
Test ResNet50 on COCO with 8 GPUS, and evaluate the mAP.
./tools/dist_test.sh configs/top_down/resnet/coco/res50_coco_256x192.py \checkpoints/SOME_CHECKPOINT.pth 8 \--eval mAP
Test ResNet50 on COCO in slurm environment and evaluate the mAP.
./tools/slurm_test.sh slurm_partition test_job \configs/top_down/resnet/coco/res50_coco_256x192.py \checkpoints/SOME_CHECKPOINT.pth \--eval mAP
用 HigherHRNet 试水
- 进入 mmpose 里的 HigherHRNet - results and models 。下载一个 ckpt ,放到
mmpose/checkpoints
文件夹下。
这里我选了 HigherHRNet-w32 (512x512) 。
- 测试 COCO 数据集。(4块 GPU,不保存结果)
./tools/dist_test.sh configs/bottom_up/higherhrnet/coco/higher_hrnet32_coco_512x512.py checkpoints/higher_hrnet32_coco_512x512-8ae85183_20200713.pth 4 --eval mAP
851s≈14min,精度稍微有差,大致相同。
2.2 运行 demos
- 图片
- 视频
官网举例
使用 GT bounding boxes 运行 top-down 姿态估计 demos。
python demo/top_down_img_demo.py \${MMPOSE_CONFIG_FILE} ${MMPOSE_CHECKPOINT_FILE} \--img-root ${IMG_ROOT} --json-file ${JSON_FILE} \--out-img-root ${OUTPUT_DIR} \[--show --device ${GPU_ID}] \[--kpt-thr ${KPT_SCORE_THR}]
例如 HRNet:
python demo/top_down_img_demo.py \configs/top_down/hrnet/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
More examples and details can be found in the demo folder and the demo docs.
Bottom-Up Demos(HigherHRNet)试水
- image
- video
- 测试单张图片,仓库内置测试图片。
python demo/bottom_up_img_demo.py \${MMPOSE_CONFIG_FILE} ${MMPOSE_CHECKPOINT_FILE} \--img-root ${IMG_ROOT} --json-file ${JSON_FILE} \--out-img-root ${OUTPUT_DIR} \[--show --device ${GPU_ID or CPU}] \[--kpt-thr ${KPT_SCORE_THR}]
HigherHRNet:
python demo/bottom_up_img_demo.py configs/bottom_up/higherhrnet/coco/higher_hrnet32_coco_512x512.py checkpoints/higher_hrnet32_coco_512x512-8ae85183_20200713.pth --img-root tests/data/coco/ --json-file tests/data/coco/test_coco.json --out-img-root vis_results
- 测试视频,仓库里没有给 demo 视频,可以自己下载,我随手扒了一个 solo 直拍,起名为``demo_video1.mp4` 。
python demo/bottom_up_video_demo.py \${MMPOSE_CONFIG_FILE} ${MMPOSE_CHECKPOINT_FILE} \--video-path ${VIDEO_FILE} \--output-video-root ${OUTPUT_VIDEO_ROOT} \[--show --device ${GPU_ID or CPU}] \[--bbox-thr ${BBOX_SCORE_THR} --kpt-thr ${KPT_SCORE_THR}]
HigherHRNet:
python demo/bottom_up_video_demo.py configs/bottom_up/higherhrnet/coco/higher_hrnet32_coco_512x512.py checkpoints/higher_hrnet32_coco_512x512-8ae85183_20200713.pth --video-path demo/demo_video1.mp4 --out-video-root vis_results
结果:solo ,我懒得传上来了。
好!今天就先讲到这!配完数据集和运行完 demo,我们基本就算成功使用HigherHRNet了!下篇我们来一起训练网络!
姿态估计mmpose一手体验 Ⅱ - 使用它!相关推荐
- 万物生姿——MMPose 姿态估计创意 Demo 大赛
号外号外!OpenMMLab 姿态估计创意 Demo 大赛震撼来袭!不设任务,不限主题,完全自由发挥!是不是有亿点点心动?快来解锁活动详情吧- 世间万物,千姿百态,异彩纷呈. 令人眼花缭乱的外表下,则 ...
- MMPose姿态估计+人体关键点识别效果演示
MMPose--开源姿态估计算法库(附人体关键点识别效果演示) 一.简介 1.1 背景 首先姿态估计属于计算机视觉领域的一个基础研究方向.MMPose是基于Pytorch的姿态估计开源算法库,功能全, ...
- Openpose+Tensorflow 这样实现人体姿态估计 | 代码干货
作者 | 李秋键 出品 | AI科技大本营(ID:rgznai100) 人体姿态估计指从单个 RGB 图像中精确地估计出人体的位置以及检测骨骼关键点的位置.人体姿态估计是计算机视觉领域的研究热点,是诸 ...
- 无限想象空间,用Python玩转3D人体姿态估计
前言 姿态估计,一直是近几年的研究热点. 它就是根据画面,捕捉人体的运动姿态,比如 2D 姿态估计: 再比如 3D 姿态估计: 看着好玩,那这玩应有啥用呢? 自动驾驶,大家应该都不陌生,很多公司研究这 ...
- 3D 人体姿态估计简述
0 前言 3D Human Pose Estimation(以下简称 3D HPE )的目标是在三维空间中估计人体关键点的位置.3D HPE 的应用非常广泛,包括人机交互.运动分析.康复训练等,它也可 ...
- 40个姿态估计优秀开源项目汇总
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 来源丨AIRX社区 编辑丨极市平台 1.AlphaPose 实时全身多人姿势估计与跟踪系统.它是第一个 ...
- 经典论文复现 | PyraNet:基于特征金字塔网络的人体姿态估计
过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...
- Python安装FrankMocap实现3D人体姿态估计
FrankMocap 是港中文联合 Facebook AI 研究院提出的3D 人体姿态和形状估计算法. 不仅仅是估计人体的运动姿态,甚至连身体的形状,手部的动作都可以一起计算出来. 算法很强大,能够从 ...
- 3D 人体姿态估计简述【转】
0 前言 3D Human Pose Estimation(以下简称 3D HPE )的目标是在三维空间中估计人体关键点的位置.3D HPE 的应用非常广泛,包括人机交互.运动分析.康复训练等,它也可 ...
- MPII姿态估计性能评价标准-PCK
Overview PCK是mpii使用的人体关键点估计评价标准,在coco之前,PCK一直是比较主流的metric,包括deepfashion,fashionAI等,都是使用的此标准. PCK PCK ...
最新文章
- 强烈推荐几个我常置顶阅读清华、哈工大的平台公众号!
- MassTransitamp;amp;Sagas分布式服务开发ppt分享
- 关于easyui的一些小知识点(1)
- 前端学习(1260):promise中的常见api对象方法
- python_day3
- 记一次内存无法回收导致频繁fullgc机器假死的思路
- 严蔚敏数据结构课后参考答案
- 怎么压缩jpg图片到100k?jpg图片怎么压缩?
- 一张动图,让你明白时域和频域的关系
- java华氏度xhuan_华氏摄氏转换
- 【已解决】【Selenium】请教大神,知乎的注册页面如何切换到登录页面?
- 有一种星光叫记忆:张国荣主演的九部经典影片
- html js 做一个钟表,html,css,js实现的一个钟表
- 基于ESP32环境监测控制和预警(微信小程序)
- 王者服务器维护12.3,王者荣耀3月12日更新维护公告 3.12全部更新内容改动汇总
- Thinkphp5结合layer导入excel
- 虚拟机没关电脑直接关机了,重启后crt、xshell都连不上虚拟机
- dau计算-预测日活
- javaweb技术及应用QST
- 一篇文章总结mysql(复习篇)
热门文章
- IDLE和java超级基础基本标准
- monthcalendar_Python日历模块| 带有示例的monthcalendar()方法
- Html5之canvas清除特定矩形、getContext、fillStyle、fillRect、clearRect、strokeRect
- ribbon整合eureka时报错Request URI does not contain a valid hostname: xxxx
- c语言16进制转2进制代码
- MHL接口是一种废品接口
- 公务员考试辅导:申论写作套路万能模板
- 利用XMLHTTP实现ASP.NET无刷新提交 (老梁)
- linux的tomcat日志,linux下查看tomcat的日志
- 小米手机不能发短信的一种解决方法--重新设置短信中心号码