English | 简体中文
MMPose 是一款基于 PyTorch 的姿态分析的开源工具箱,是 OpenMMLab 项目的成员之一。
主分支代码目前支持 PyTorch 1.8 以上的版本。
mmpose.demo.mp4
主要特性
-
支持多种人体姿态分析相关任务
MMPose 支持当前学界广泛关注的主流姿态分析任务:主要包括 2D多人姿态估计、2D手部姿态估计、2D人脸关键点检测、133关键点的全身人体姿态估计、3D人体形状恢复、服饰关键点检测、动物关键点检测等。 具体请参考 功能演示。
-
更高的精度和更快的速度
MMPose 复现了多种学界最先进的人体姿态分析模型,包括“自顶向下”和“自底向上”两大类算法。MMPose 相比于其他主流的代码库,具有更高的模型精度和训练速度。 具体请参考 基准测试(英文)。
-
支持多样的数据集
MMPose 支持了很多主流数据集的准备和构建,如 COCO、 MPII 等。 具体请参考 数据集。
-
模块化设计
MMPose 将统一的人体姿态分析框架解耦成不同的模块组件,通过组合不同的模块组件,用户可以便捷地构建自定义的人体姿态分析模型。
-
详尽的单元测试和文档
MMPose 提供了详尽的说明文档,API 接口说明,全面的单元测试,以供社区参考。
- 我们发布了 YOLOX-Pose,一个基于 YOLOX 的 One-Stage 多人姿态估计模型。更多信息敬请参阅 YOLOX-Pose 项目主页
-
欢迎使用 MMPose 项目。在这里,您可以发现 MMPose 中的最新功能和算法,并且可以通过最快的方式与社区分享自己的创意和代码实现。向 MMPose 中添加新功能从此变得简单丝滑:
- 提供了一种简单迅捷的方式,将新的算法、功能和应用添加到 MMPose 中
- 更灵活的代码结构和风格,更少的限制,更简短的代码审核流程
- 通过独立项目的形式,利用 MMPose 的强大功能,同时不被代码框架所束缚
- 最新添加的项目包括:
- 从简单的 示例项目 开启您的 MMPose 代码贡献者之旅吧,让我们共同打造更好用的 MMPose!
-
2022-04-06:MMPose v1.0.0 正式发布了,主要更新包括:
- 发布了 YOLOX-Pose,一个基于 YOLOX 的 One-Stage 多人姿态估计模型
- 基于 RTMPose 开发的 MMPose for AIGC,生成高质量骨架图片用于 Pose-guided AIGC 项目
- 支持 OpenPose 风格的骨架可视化
- 更加完善、友好的 文档和教程
请查看完整的 版本说明 以了解更多 MMPose v1.0.0 带来的更新!
MMPose v1.0.0 是一个重大更新,包括了大量的 API 和配置文件的变化。目前 v1.0.0 中已经完成了一部分算法的迁移工作,剩余的算法将在后续的版本中陆续完成,我们将在下面的列表中展示迁移进度。
迁移进度
算法名称 | 迁移进度 |
---|---|
MTUT (CVPR 2019) | |
MSPN (ArXiv 2019) | done |
InterNet (ECCV 2020) | |
DEKR (CVPR 2021) | done |
HigherHRNet (CVPR 2020) | |
DeepPose (CVPR 2014) | done |
RLE (ICCV 2021) | done |
SoftWingloss (TIP 2021) | |
VideoPose3D (CVPR 2019) | in progress |
Hourglass (ECCV 2016) | done |
LiteHRNet (CVPR 2021) | done |
AdaptiveWingloss (ICCV 2019) | done |
SimpleBaseline2D (ECCV 2018) | done |
PoseWarper (NeurIPS 2019) | |
SimpleBaseline3D (ICCV 2017) | in progress |
HMR (CVPR 2018) | |
UDP (CVPR 2020) | done |
VIPNAS (CVPR 2021) | done |
Wingloss (CVPR 2018) | |
DarkPose (CVPR 2020) | done |
Associative Embedding (NIPS 2017) | in progress |
VoxelPose (ECCV 2020) | |
RSN (ECCV 2020) | done |
CID (CVPR 2022) | done |
CPM (CVPR 2016) | done |
HRNet (CVPR 2019) | done |
HRNetv2 (TPAMI 2019) | done |
SCNet (CVPR 2020) | done |
如果您使用的算法还没有完成迁移,您也可以继续使用访问 0.x 分支 和 旧版文档
关于安装的详细说明请参考安装文档。
我们提供了一系列简明的教程,帮助 MMPose 的新用户轻松上手使用:
-
MMPose 的基本使用方法:
-
对于希望基于 MMPose 进行开发的研究者和开发者:
-
对于希望加入开源社区,向 MMPose 贡献代码的研究者和开发者:
-
对于使用过程中的常见问题:
各个模型的结果和设置都可以在对应的 config(配置)目录下的 README.md 中查看。 整体的概况也可也在 模型库 页面中查看。
支持的算法
- DeepPose (CVPR'2014)
- CPM (CVPR'2016)
- Hourglass (ECCV'2016)
- SimpleBaseline3D (ICCV'2017)
- Associative Embedding (NeurIPS'2017)
- SimpleBaseline2D (ECCV'2018)
- DSNT (ArXiv'2021)
- HRNet (CVPR'2019)
- IPR (ECCV'2018)
- VideoPose3D (CVPR'2019)
- HRNetv2 (TPAMI'2019)
- MSPN (ArXiv'2019)
- SCNet (CVPR'2020)
- HigherHRNet (CVPR'2020)
- RSN (ECCV'2020)
- InterNet (ECCV'2020)
- VoxelPose (ECCV'2020)
- LiteHRNet (CVPR'2021)
- ViPNAS (CVPR'2021)
- Debias-IPR (ICCV'2021)
- SimCC (ECCV'2022)
支持的技术
- FPN (CVPR'2017)
- FP16 (ArXiv'2017)
- Wingloss (CVPR'2018)
- AdaptiveWingloss (ICCV'2019)
- DarkPose (CVPR'2020)
- UDP (CVPR'2020)
- Albumentations (Information'2020)
- SoftWingloss (TIP'2021)
- RLE (ICCV'2021)
支持的数据集
- AFLW [主页] (ICCVW'2011)
- sub-JHMDB [主页] (ICCV'2013)
- COFW [主页] (ICCV'2013)
- MPII [主页] (CVPR'2014)
- Human3.6M [主页] (TPAMI'2014)
- COCO [主页] (ECCV'2014)
- CMU Panoptic (ICCV'2015)
- DeepFashion [主页] (CVPR'2016)
- 300W [主页] (IMAVIS'2016)
- RHD [主页] (ICCV'2017)
- CMU Panoptic [主页] (ICCV'2015)
- AI Challenger [主页] (ArXiv'2017)
- MHP [主页] (ACM MM'2018)
- WFLW [主页] (CVPR'2018)
- PoseTrack18 [主页] (CVPR'2018)
- OCHuman [主页] (CVPR'2019)
- CrowdPose [主页] (CVPR'2019)
- MPII-TRB [主页] (ICCV'2019)
- FreiHand [主页] (ICCV'2019)
- Animal-Pose [主页] (ICCV'2019)
- OneHand10K [主页] (TCSVT'2019)
- Vinegar Fly [主页] (Nature Methods'2019)
- Desert Locust [主页] (Elife'2019)
- Grévy’s Zebra [主页] (Elife'2019)
- ATRW [主页] (ACM MM'2020)
- Halpe [主页] (CVPR'2020)
- COCO-WholeBody [主页] (ECCV'2020)
- MacaquePose [主页] (bioRxiv'2020)
- InterHand2.6M [主页] (ECCV'2020)
- AP-10K [主页] (NeurIPS'2021)
- Horse-10 [主页] (WACV'2021)
支持的骨干网络
- AlexNet (NeurIPS'2012)
- VGG (ICLR'2015)
- ResNet (CVPR'2016)
- ResNext (CVPR'2017)
- SEResNet (CVPR'2018)
- ShufflenetV1 (CVPR'2018)
- ShufflenetV2 (ECCV'2018)
- MobilenetV2 (CVPR'2018)
- ResNetV1D (CVPR'2019)
- ResNeSt (ArXiv'2020)
- Swin (CVPR'2021)
- HRFormer (NIPS'2021)
- PVT (ICCV'2021)
- PVTV2 (CVMJ'2022)
我们将跟进学界的最新进展,并支持更多算法和框架。如果您对 MMPose 有任何功能需求,请随时在 MMPose Roadmap 中留言。
我们非常欢迎用户对于 MMPose 做出的任何贡献,可以参考 贡献指南 文件了解更多细节。
MMPose 是一款由不同学校和公司共同贡献的开源项目。我们感谢所有为项目提供算法复现和新功能支持的贡献者,以及提供宝贵反馈的用户。 我们希望该工具箱和基准测试可以为社区提供灵活的代码工具,供用户复现现有算法并开发自己的新模型,从而不断为开源社区提供贡献。
如果您觉得 MMPose 对您的研究有所帮助,请考虑引用它:
@misc{mmpose2020,
title={OpenMMLab Pose Estimation Toolbox and Benchmark},
author={MMPose Contributors},
howpublished = {\url{https://github.com/open-mmlab/mmpose}},
year={2020}
}
该项目采用 Apache 2.0 license 开源协议。
- MMEngine: OpenMMLab 深度学习模型训练基础库
- MMCV: OpenMMLab 计算机视觉基础库
- MIM: OpenMMlab 项目、算法、模型的统一入口
- MMClassification: OpenMMLab 图像分类工具箱
- MMDetection: OpenMMLab 目标检测工具箱
- MMDetection3D: OpenMMLab 新一代通用 3D 目标检测平台
- MMRotate: OpenMMLab 旋转框检测工具箱与测试基准
- MMSegmentation: OpenMMLab 语义分割工具箱
- MMOCR: OpenMMLab 全流程文字检测识别理解工具包
- MMPose: OpenMMLab 姿态估计工具箱
- MMHuman3D: OpenMMLab 人体参数化模型工具箱与测试基准
- MMSelfSup: OpenMMLab 自监督学习工具箱与测试基准
- MMRazor: OpenMMLab 模型压缩工具箱与测试基准
- MMFewShot: OpenMMLab 少样本学习工具箱与测试基准
- MMAction2: OpenMMLab 新一代视频理解工具箱
- MMTracking: OpenMMLab 一体化视频目标感知平台
- MMFlow: OpenMMLab 光流估计工具箱与测试基准
- MMEditing: OpenMMLab 图像视频编辑工具箱
- MMGeneration: OpenMMLab 图片视频生成模型工具箱
- MMDeploy: OpenMMLab 模型部署框架
扫描下方的二维码可关注 OpenMMLab 团队的 知乎官方账号,联络 OpenMMLab 官方微信小助手或加入 OpenMMLab 团队的 官方交流 QQ 群
我们会在 OpenMMLab 社区为大家
- 📢 分享 AI 框架的前沿核心技术
- 💻 解读 PyTorch 常用模块源码
- 📰 发布 OpenMMLab 的相关新闻
- 🚀 介绍 OpenMMLab 开发的前沿算法
- 🏃 获取更高效的问题答疑和意见反馈
- 🔥 提供与各行各业开发者充分交流的平台
干货满满 📘,等你来撩 💗,OpenMMLab 社区期待您的加入 👬