3 条命令拿到全身 133 关键点:MMPose WholeBody 从跑通 Demo 到模型调优的实操指南

发布时间:2026/9/20 5:08:37
3 条命令拿到全身 133 关键点:MMPose WholeBody 从跑通 Demo 到模型调优的实操指南 3 条命令拿到全身 133 关键点MMPose WholeBody 从跑通 Demo 到模型调优的实操指南【免费下载链接】mmposeOpenMMLab Pose Estimation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmposeMMPoseOpenMMLab 姿态估计工具箱的 WholeBody 模块能从一张照片一次性输出 133 个全身关键点覆盖身体、面部、双手和足部。它采用自顶向下Top-down即先用检测器框出人体区域再在框内回归关键点的推理链路配合 RTMPose 系列轻量模型在 GTX 1660 Ti 这类入门级显卡上也能跑到 130 FPS是目前把身体脸手放在同一套坐标里输出的成熟方案之一。从一个真实场景说起给舞蹈视频打相似度分假设你要做一个动作模仿打分工具用户对着摄像头跳一段舞系统要判断他跳得像不像。只检测 17 个身体关节点远远不够——手指张合、手臂摆位、脚尖朝向这些细节恰恰是区分到位和敷衍的依据。仓库里的 projects/just_dance/ 项目就是这个思路的完整实现它把全身关键点逐帧提取出来再计算用户动作与参考动作的序列相似度输出分数和差异点。类似的需求还包括健身动作矫正、虚拟角色驱动、异常行为分析等共同前提都是一套模型同时给出身体、面部和手部坐标。133 个关键点到底怎么分布WholeBody 的坐标体系定义在 mmpose/datasets/datasets/wholebody/coco_wholebody_dataset.py 的CocoWholeBodyDataset中官方数据集 COCO-WholeBody 的划分如下部位数量索引区间用途身体170–16头、颈、躯干、四肢主要关节兼容 COCO 17 点习惯足部617–22双脚踝及脚尖支撑步态与站立姿态判断面部6823–90眉毛、眼周、鼻梁、嘴部轮廓可做表情级分析双手4221×291–132每只手指各关节独立建模支持手势识别理解这张表有两条实操意义索引是全局连续的。如果你的下游代码按 0–16 切片取身体点那 133 点模型和 17 点身体模型可以直接复用同一段切片逻辑但取面部点时必须从 23 开始从 17 开始是常见错误。各部位精度并不均衡。以 rtmw-m 为例面部 AP 0.783手部只有 0.491——手指细小、互相遮挡是全身模型里最难的部分。设计产品逻辑时要对手比脸差一档有预期别用同一个置信度阈值卡所有部位。全部模型配置集中在 configs/wholebody_2d_keypoint/ 下按算法 × 数据集组织选型前值得先扫一眼目录结构。最短路径安装 跑通一条命令环境准备只需克隆仓库并本地安装依赖见 requirements.txtgit clone https://gitcode.com/GitHub_Trending/mm/mmpose cd mmpose pip install -r requirements.txt pip install -v -e .跑推理有两条路推荐新手先走第一条路线一Inferencer 统一接口。demo/inferencer_demo.py支持用模型别名代替配置文件权重两个参数权重自动解析一条命令处理整个目录python demo/inferencer_demo.py tests/data/crowdpose \ --pose2d wholebody --vis-out-dir vis_results/crowdpose--pose2d wholebody指定全身模型输出是叠加了骨架和 133 个点的可视化图保存在vis_out_dir指定的目录。路线二检测器 姿态估计两件套。demo/topdown_demo_with_mmdet.py显式接收人体检测器mmdetection 的配置和权重与姿态模型各两个参数适合要自己换检测器或调--bbox-thr、--kpt-thr这类阈值的场景示例命令见 demo/docs/en/2d_wholebody_pose_demo.md。模型怎么选先看基准表再对场景下面数据来自官方基准COCO-WholeBody v1.0 val检测器 human AP 56.4来源为 configs/wholebody_2d_keypoint/rtmpose/README.md 和各数据集的模型卡片模型输入分辨率Whole AP定位rtmpose-m256×1920.582速度优先CPU/边缘侧验证管线rtmpose-l256×1920.611实时场景主力130 FPS1660 Tirtmpose-l384×2880.648精度与速度折中rtmw-mCocktail14256×1920.58214 数据集混合训练跨域更稳rtmw-lCocktail14256×1920.660当前 256×192 精度第一梯队rtmw-l / rtmw-xCocktail14384×2880.701 / 0.702精度上限离线批处理选型建议按这个顺序走先跑 256×192 的 rtmpose-m 或 rtmw-m把数据流、坐标系、可视化都跑通此时精度不是重点。确认场景脏不脏如果输入大量是游戏画面、插画、强遮挡对应 Human-Art、300W 这类训练源换成 Cocktail14 训练的 rtmw 系列它用 14 个公开数据集混训对非写实场景的鲁棒性更好。面部/手部精度不够再上 384×288分辨率翻倍带来的提升主要集中在细粒度部位但推理成本也接近翻倍。实时性要求高时优先 RTMPose-l 256×192官方数据是 GTX 1660 Ti 上 130 FPSi7-11700 CPU 上 RTMPose-m 在 COCO 17 点任务也有 90 FPS纯 CPU 部署可行。常见坑与注意事项速查bbox 阈值别调太狠。--bbox-thr提得越高漏检的人越多全身点自然跟着丢反过来阈值太低误检框如镜中人、海报会产出一堆假骨架。建议先用默认值跑一批样本再按漏检率微调。手点置信度单独设阈值。全部位共用一个--kpt-thr时手点会频繁被判无效。可视化时可以先给手部放低阈值观察效果。想要更快就关掉翻转测试。配置里model.test_cfg.flip_testFalse能省掉一次镜像前向代价是精度略降实时场景值得。换检测器要连带重看整体 AP。基准表里的数值绑定特定检测器human AP 56.4检测框偏差会直接传导到关键点精度换检测器后应重新抽样检查而不是沿用旧结论。输入图宽高比影响不大但框质量影响大。模型对裁剪后的人体区域做归一化真正决定精度的是检测框是否完整包住手脚——被截掉的手在模型看来就是不存在。延伸阅读推理与 Inferencer 完整参数说明docs/zh_cn/user_guides/inference.mdCOCO-WholeBody 等全身数据集准备指南docs/zh_cn/dataset_zoo/2d_wholebody_keypoint.mdRTMPose 实时模型项目目录projects/rtmpose/一句话总结MMPose WholeBody 用一套 133 点模型把身体、面部、双手、足部放进同一坐标系配合 Inferencer 一条命令即可出结果选型上按小模型跑通 → rtmw 换域 → 384×288 补精度三步走基本覆盖从原型验证到实时部署的完整链路。【免费下载链接】mmposeOpenMMLab Pose Estimation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmpose创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考