尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

3步上手MHFormer:CVPR 2022多假设Transformer 3D人体姿态估计,MPJPE 43.0mm快速复现指南

3步上手MHFormer:CVPR 2022多假设Transformer 3D人体姿态估计,MPJPE 43.0mm快速复现指南 3步上手MHFormerCVPR 2022多假设Transformer 3D人体姿态估计MPJPE 43.0mm快速复现指南【免费下载链接】MHFormer[CVPR 2022] MHFormer: Multi-Hypothesis Transformer for 3D Human Pose Estimation项目地址: https://gitcode.com/gh_mirrors/mh/MHFormerMHFormerMulti-Hypothesis Transformer for 3D Human Pose Estimation是发表于CVPR 2022的 3D 人体姿态估计方法在 Human3.6M 基准上以MPJPE 43.0mm刷新了当时纪录超越 VideoPose3D46.8与 PoseFormer44.3。它用三条并行 Transformer 路径同时输出多组假设表示再融合出最终 3D 骨架。本文将带你 3 步跑通官方351 帧预训练模型的测试流程并拆解这个 43.0mm 是怎么来的。第 1 步环境搭建与数据集准备1.1 创建环境MHFormer 依赖较老的 PyTorch 版本请按官方要求配置参考 requirements.txtconda create -n mhformer python3.9 # 安装 PyTorch 1.7.1 Torchvision 0.8.2参考官网说明 pip3 install -r requirements.txt1.2 准备 Human3.6M 数据从 Human3.6M 官网下载原始数据并处理可参考 VideoPose3D 的流程或使用官方提供的已处理数据放入dataset/目录最终目录结构见 dataset/README.md${POSE_ROOT}/ |-- dataset | |-- data_3d_h36m.npz # 3D 真值 | |-- data_2d_h36m_gt.npz # 2D 真值关键点 | |-- data_2d_h36m_cpn_ft_h36m_dbb.npz # CPN 预测的 2D 关键点模型实际输入 模型推理时用的是CPN 预测的 2D 关键点cpn_ft_h36m_dbb而非真值这是标准评测协议保证横向可比。第 2 步下载预训练权重并加载将官方 351 帧预训练模型.pth 文件下载后放入checkpoint/pretrained/351目录说明见 checkpoint/pretrained/README.md。权重加载逻辑在 main.py 的previous_dir分支中程序会自动扫描目录下的*.pth挑选文件名以model开头的最佳权重并载入无需手动指定文件名。第 3 步一键测试复现 MPJPE 43.0mm只需一条命令351 帧窗口的预训练模型python main.py --test --previous_dir checkpoint/pretrained/351 --frames 351测试会在 S9、S11 两个未见过的测试人物上逐动作计算误差最终打印p1 / p2两项协议下的 MPJPE单位 mm模型MPJPE (mm)VideoPose3D46.8PoseFormer44.3MHFormer43.0如果显卡显存有限也可以训练/测试 81 帧模型python main.py --frames 81 --batch_size 256相关超参数帧数、batch size、学习率等都定义在 common/opt.py。43.0mm 是怎么来的多假设思想拆解核心思想一次输出 3 条假设2D 关键点本身有噪声单条 Transformer 路径容易被噪声带偏。MHFormer 的解法是同时生成 3 条假设表示hypothesis再让它们互相借鉴、取平均相当于用集成的思想换取精度。主网络在 model/mhformer.py 中分为四段模块作用源码位置MHG多假设生成3 个堆叠 Transformer 编码器逐级精化产生 3 条假设model/module/trans.pyEmbedding1D 卷积把每条假设映射到 512 维通道空间model/mhformer.pySHR CHI融合假设间共享信息 交叉注意力互查输出增强后的 3 条假设model/module/trans_hypothesis.pyRegressionBatchNorm 1D 卷积回归出 17 个关节的 3D 坐标model/mhformer.py其中 SHRShared Hypothesis Representation在 trans_hypothesis.py 中让 3 条假设各自自注意力后再拼接共享 MLPCHICross-Hypothesis Interaction则用交叉注意力——假设 A 的 Query 去查询 B 的 Key 和 C 的 Value——让每条假设吸收另外两条的长处。测试时增强左右翻转再平均除了网络结构43.0mm 还有一个免费午餐测试时数据增强。main.py 中的input_augmentation会把输入水平翻转让模型前向两次再把翻转输出的 x 坐标取反、左右关节对调后与原始输出取平均。左右对称的噪声被抵消误差进一步降低。351 帧窗口用更多上下文补精度351 帧约 15 帧 × 3 倍下采样的长窗口让注意力能看到更完整的动作上下文这也是该模型默认配置--frames 351对应pad175即取窗口中心帧作为输出见 common/opt.py。进阶对真实视频做 3D 姿态 Demo 想在自己的视频上体验项目内置了完整流水线YOLOv3 人体检测 → HRNet 2D 关键点 → MHFormer 3D 估计python demo/vis.py --video sample_video.mp4使用前需把 YOLOv3 与 HRNet 预训练模型放入demo/lib/checkpoint待处理视频放入demo/video目录仓库自带 sample_video.mp4 可直接体验。可视化逻辑2D/3D 骨架绘制在 demo/vis.py。常见问题速查FAQ问题解决权重加载报错 / 找不到 pth确认文件在checkpoint/pretrained/351下且文件名以model开头显存不足换 81 帧模型或调小--batch_size输出 p1/p2 与 43.0 有差异检查输入是否为 CPN 关键点--keypoints cpn_ft_h36m_dbb及--frames是否与权重匹配小提示作者后续将效率优化版本发表于HoTCVPR 2024追求推理速度时可关注。本文方法基于 MIT 协议开源可自由使用。小结3 步环境 → 数据与权重 → 一条命令测试即可复现 Human3.6M 上的 MPJPE 43.0mm而成绩的来源正是多假设生成 假设间交叉融合 翻转测试时增强 351 帧长上下文的组合拳。【免费下载链接】MHFormer[CVPR 2022] MHFormer: Multi-Hypothesis Transformer for 3D Human Pose Estimation项目地址: https://gitcode.com/gh_mirrors/mh/MHFormer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表