English | 简体中文
MMPose 是一款基于 PyTorch 的人体姿态分析的开源工具箱,是 OpenMMLab 项目的成员之一。
主分支代码目前支持 PyTorch 1.3 以上的版本
-
支持多种人体姿态分析相关任务
MMPose 支持当前学界广泛关注的主流人体姿态分析任务:主要包括 2D多人姿态估计、2D手部姿态估计、2D人脸关键点检测、133关键点的全身人体姿态估计、服饰关键点检测,3D人体形状恢复等。
-
更高的精度和更快的速度
MMPose 复现了多种学界最先进的人体姿态分析模型,包括“自顶向下”和“自底向上”两大类算法。MMPose 相比于其他主流的代码库,具有更高的模型精度和训练速度。 具体请参考 基准测试。
-
支持多样的数据集
MMPose 支持了很多主流数据集的准备和构建,如 COCO、 MPII 等。 具体请参考 数据集准备。
-
模块化设计
MMPose 将统一的人体姿态分析框架解耦成不同的模块组件,通过组合不同的模块组件,用户可以便捷地构建自定义的人体姿态分析模型。
-
详尽的单元测试和文档
MMPose 提供了详尽的说明文档,API 接口说明,全面的单元测试,以供社区参考。
支持的算法:
(点击收起)
- DeepPose (CVPR'2014)
- Wingloss (CVPR'2018)
- CPM (CVPR'2016)
- Hourglass (ECCV'2016)
- SimpleBaseline (ECCV'2018)
- HRNet (CVPR'2019)
- HRNetv2 (TPAMI'2019)
- SCNet (CVPR'2020)
- Associative Embedding (NeurIPS'2017)
- HigherHRNet (CVPR'2020)
- DarkPose (CVPR'2020)
- UDP (CVPR'2020)
- MSPN (ArXiv'2019)
- RSN (ECCV'2020)
- HMR (CVPR'2018)
支持的 数据集:
(点击收起)
- COCO (ECCV'2014)
- COCO-WholeBody (ECCV'2020)
- MPII (CVPR'2014)
- MPII-TRB (ICCV'2019)
- AI Challenger (ArXiv'2017)
- OCHuman (CVPR'2019)
- CrowdPose (CVPR'2019)
- PoseTrack18 (CVPR'2018)
- MHP (ACM MM'2018)
- sub-JHMDB (ICCV'2013)
- OneHand10K (TCSVT'2019)
- FreiHand (ICCV'2019)
- CMU Panoptic HandDB (CVPR'2017)
- InterHand2.6M (ECCV'2020)
- Human3.6M (TPAMI'2014)
- DeepFashion (CVPR'2016)
- 300W (IMAVIS'2016)
- WFLW (CVPR'2018)
- AFLW (ICCVW'2011)
- COFW (ICCV'2013)
支持的骨干网络:
(点击打开)
- AlexNet (NeurIPS'2012)
- VGG (ICLR'2015)
- HRNet (CVPR'2019)
- ResNet (CVPR'2016)
- ResNetV1D (CVPR'2019)
- ResNeSt (ArXiv'2020)
- ResNext (CVPR'2017)
- SCNet (CVPR'2020)
- SEResNet (CVPR'2018)
- ShufflenetV1 (CVPR'2018)
- ShufflenetV2 (ECCV'2018)
- MobilenetV2 (CVPR'2018)
各个模型的结果和设置都可以在对应的 config(配置)目录下的 README.md 中查看。 整体的概况也可也在 模型库 页面中查看。
我们将跟进学界的最新进展,并支持更多算法和框架。如果您对 MMPose 有任何功能需求,请随时在 问题 中留言。
在主流的 COCO 姿态估计数据集上,进行基准测试。结果展示 MMPose 框架 具有更高的精度和训练速度。
骨干模型 | 输入分辨率 | MMPose (s/iter) | HRNet (s/iter) | MMPose (mAP) | HRNet (mAP) |
---|---|---|---|---|---|
resnet_50 | 256x192 | 0.28 | 0.64 | 0.718 | 0.704 |
resnet_50 | 384x288 | 0.81 | 1.24 | 0.731 | 0.722 |
resnet_101 | 256x192 | 0.36 | 0.84 | 0.726 | 0.714 |
resnet_101 | 384x288 | 0.79 | 1.53 | 0.748 | 0.736 |
resnet_152 | 256x192 | 0.49 | 1.00 | 0.735 | 0.720 |
resnet_152 | 384x288 | 0.96 | 1.65 | 0.750 | 0.743 |
hrnet_w32 | 256x192 | 0.54 | 1.31 | 0.746 | 0.744 |
hrnet_w32 | 384x288 | 0.76 | 2.00 | 0.760 | 0.758 |
hrnet_w48 | 256x192 | 0.66 | 1.55 | 0.756 | 0.751 |
hrnet_w48 | 384x288 | 1.23 | 2.20 | 0.767 | 0.763 |
更多详情可见 基准测试。
请参考 安装指南 进行安装。
请参考 data_preparation.md 进行数据集准备。
请参考 getting_started.md 了解 MMPose 的基本使用。 MMPose 也提供了其他更详细的教程:
请参考 FAQ 了解其他用户的常见问题。
该项目采用 Apache 2.0 license 开源协议。
如果您觉得 MMPose 对您的研究有所帮助,请考虑引用它:
@misc{mmpose2020,
title={OpenMMLab Pose Estimation Toolbox and Benchmark},
author={MMPose Contributors},
howpublished = {\url{https://github.com/open-mmlab/mmpose}},
year={2020}
}
我们非常欢迎用户对于 MMPose 做出的任何贡献,可以参考 CONTRIBUTION.md 文件了解更多细节。
MMPose 是一款由不同学校和公司共同贡献的开源项目。我们感谢所有为项目提供算法复现和新功能支持的贡献者,以及提供宝贵反馈的用户。 我们希望该工具箱和基准测试可以为社区提供灵活的代码工具,供用户复现现有算法并开发自己的新模型,从而不断为开源社区提供贡献。
- MMCV: OpenMMLab 计算机视觉基础库
- MMClassification: OpenMMLab 图像分类工具箱与测试基准
- MMDetection: OpenMMLab 检测工具箱与测试基准
- MMDetection3D: OpenMMLab's 新一代通用3D目标检测平台
- MMSegmentation: OpenMMLab 语义分割工具箱与测试基准
- MMAction2: OpenMMLab's 新一代视频理解工具箱与测试基准
- MMTracking: OpenMMLab 一体化视频目标感知平台
- MMPose: OpenMMLab 姿态估计工具箱与测试基准
- MMEditing: OpenMMLab 图像视频编辑工具箱