English | 简体中文
MMPose 是一款基于 PyTorch 的姿态分析的开源工具箱,是 OpenMMLab 项目的成员之一。
主分支代码目前支持 PyTorch 1.6 以上的版本。
mmpose.demo.mp4
主要特性
-
支持多种人体姿态分析相关任务
MMPose 支持当前学界广泛关注的主流姿态分析任务:主要包括 2D多人姿态估计、2D手部姿态估计、2D人脸关键点检测、133关键点的全身人体姿态估计、3D人体形状恢复、服饰关键点检测、动物关键点检测等。 具体请参考 功能演示。
-
更高的精度和更快的速度
MMPose 复现了多种学界最先进的人体姿态分析模型,包括“自顶向下”和“自底向上”两大类算法。MMPose 相比于其他主流的代码库,具有更高的模型精度和训练速度。 具体请参考 基准测试(英文)。
-
支持多样的数据集
MMPose 支持了很多主流数据集的准备和构建,如 COCO、 MPII 等。 具体请参考 数据集。
-
模块化设计
MMPose 将统一的人体姿态分析框架解耦成不同的模块组件,通过组合不同的模块组件,用户可以便捷地构建自定义的人体姿态分析模型。
-
详尽的单元测试和文档
MMPose 提供了详尽的说明文档,API 接口说明,全面的单元测试,以供社区参考。
-
我们发布了 RTMPose,一个高性能实时多人姿态检测框架。具体包括:
- 一组新的轻量化姿态估计模型,在不同算力条件下达到 SOTA 的精度性能
- 支持多语言(Python, C++, C#, Java, etc)的模型推理接口,可以轻松集成到您的应用中以支持实时、稳定的姿态估计
- 跨平台,多后端的模型部署支持
- 提供极易上手的教程,帮助您训练和部署自己的模型
-
欢迎使用 MMPose 项目。在这里,您可以发现 MMPose 中的最新功能和算法,并且可以通过最快的方式与社区分享自己的创意和代码实现。向 MMPose 中添加新功能从此变得简单丝滑:
- 提供了一种简单迅捷的方式,将新的算法、功能和应用添加到 MMPose 中
- 更灵活的代码结构和风格,更少的限制,更简短的代码审核流程
- 通过独立项目的形式,利用 MMPose 的强大功能,同时不被代码框架所束缚
- 最新添加的项目包括:
- 从简单的 示例项目 开启您的 MMPose 代码贡献者之旅吧,让我们共同打造更好用的 MMPose!
-
2022-03-15: MMPose v1.0.0rc1 正式发布了,主要更新包括:
- 发布了 RTMPose,一个高性能实时多人姿态估计算法框架
- 支持了多个新算法: ViTPose (NeurIPS'22), CID (CVPR'22) and DEKR (CVPR'21)
- 增加了 Inferencer,一个非常便捷的模型推理接口,通过 1 行代码完成模型选择、权重加载、模型推理和结果可视化。
请查看完整的 版本说明 以了解更多 MMPose v1.0.0rc1 带来的更新!
用户可以通过以下方式安装 MMPose:
conda create -n open-mmlab python=3.8 pytorch==1.10.1 torchvision==0.11.2 cudatoolkit=11.3 -c pytorch -y
conda activate open-mmlab
pip install openmim
git clone -b 1.x https://github.com/open-mmlab/mmpose.git
cd mmpose
mim install -e
# 如果您当前环境下安装了旧版本的 mmdet,您需要升级到 3.x 版本
mim install "mmdet>=3.0.0rc6"
关于安装的详细说明请参考安装文档。
我们提供了一系列简明的教程,帮助 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 社区期待您的加入 👬