MMPose 姿态估计指南:从安装到人体关键点推理
【免费下载链接】mmposeOpenMMLab Pose Estimation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmpose
MMPose 是 OpenMMLab 出品的姿态估计工具箱:输入一张图片或一段视频,输出画面中每个人体关键点(或动物关节点)的像素坐标。它覆盖人体 17 点、手部 21 点、面部与全身 133 点,支持 2D 与 3D 重建,内置 COCO、MPII、300W 等 30 多个数据集的适配与评估。
从输入到输出的能力版图
一次 2D 人体关键点检测的完整流程是"输入→处理→输出"三段:先用检测器给出人物框(也可自己指定框),姿态模型对每个框做热图回归或坐标分类,最后解码成关键点坐标。整图直接推理时换用自底向上路线——热图一次性铺满整幅图再聚类,省去单独的人体检测,适合拥挤场景。
能力边界可以具体到配置目录:configs/下按任务分好文件夹——人体在body_2d_keypoint/,手、脸、动物、全身分别在hand_2d_keypoint/、face_2d_keypoint/、animal_2d_keypoint/、wholebody_2d_keypoint/。算法侧包括 SimpleBaseline、HRNet、ViTPose、RTMPose 等,每个训练好的模型都有一份配套 yml,列着指标表与权重下载地址,选模型不用猜。
核心源码同样按职责分层:主干网络、预测头、关键点编码器、损失函数分别放在mmpose/models/与mmpose/codecs/,训练评估用mmpose/datasets/和mmpose/evaluation/。换组件不用读全仓库,找到对应目录即可。
三步跑通人体关键点推理
第一步,装好环境;第二步,选一个预训练模型;第三步,用现成 demo 跑一次推理。以 RTMPose-m(输入 256×192,COCO-WholeBody 上Body AP 0.673)为例:
git clone https://gitcode.com/GitHub_Trending/mm/mmpose && cd mmpose pip install -r requirements.txt -e . python demo/image_demo.py tests/data/coco/000000000785.jpg \ configs/wholebody_2d_keypoint/rtmpose/coco-wholebody/rtmpose-m_8xb64-270e_coco-wholebody-256x192.py \ rtmpose-m_simcc-coco-wholebody_pt-aic-coco_270e-256x192-cd5e845c_20230123.pth \ --out-file vis_results.jpg命令里只关心三样东西:图片路径、配置文件、权重文件。换更大的 RTMPose-l(Body AP 0.695)或更快的 s 规格,只是换这两个文件名。没有预计算人物框的整图,改用demo/topdown_demo_with_mmdet.py:它先跑 MMDetection 检人,再逐框做姿态估计,--input支持直接喂视频。
改一行配置切换关键点编码
MMPose 的数据处理是一条串行流水线,全部由数据集配置里的transforms列表描述:读图、裁人物区域、随机翻转与旋转等增强依次过一遍,最后一项决定关键点被编码成什么形态——热图、积分回归还是 SimCC 坐标分类。
比如把MSPoseHeatmap换成SimCCLabel,模型输出的整个表征就变了,损失函数(mmpose/models/losses/)也需与编码配套。理解这一点后,"模型预测的是什么、误差怎么算"都能在配置里直接对照出来。
自定义数据训练
自有数据先转成 COCO 格式,转换脚本集中在tools/dataset_converters/,然后把数据路径写进复制出的配置:
python tools/train.py configs/your_config.py ./tools/dist_train.sh configs/your_config.py 8🏃 视频分析直接喂给demo/topdown_demo_with_mmdet.py即可逐帧出关键点;想比对"跳得准不准",可以看看projects/just_dance/项目——它用全身 133 关键点逐帧计算与标准动作的相似度。部署侧,projects/rtmpose/提供 RTMPose 的 ONNX 导出与 TensorRT、C++ 推理样例,移动端可直接参照。
📚 各入口:文档在docs/,演示脚本在demo/,全部预训练配置在configs/,社区项目在projects/。
【免费下载链接】mmposeOpenMMLab Pose Estimation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmpose
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考