mmyolo - MMYOLO 是一个基于 PyTorch 和 MMDetection 的 YOLO 系列算法开源工具箱。它是 OpenMMLab 项目的一部分。

Created at: 2022-09-18 09:36:06
Language: Python
License: GPL-3.0

英语|简体中文

介绍

MMYOLO是基于PyTorch和MMDetection的YOLO系列算法的开源工具箱。它是OpenMMLab项目的一部分。

主分支与 PyTorch 1.6+ 配合使用。

主要特点
  • 统一便捷的基准测试

    MMYOLO统一了各种YOLO算法中模块的实现,并提供了统一的基准测试。用户可以以公平便捷的方式进行比较和分析。

  • 丰富而详细的文档

    MMYOLO为入门、模型部署、高级用法和算法分析提供了丰富的文档,使不同级别的用户可以轻松入门并快速进行扩展。

  • 模块化设计

    MMYOLO将框架分解为不同的组件,用户可以通过将不同的模块与各种训练和测试策略相结合来轻松自定义模型。

基本模块-P5上图由RangeKing@GitHub提供,非常感谢!

P6模型的数字在model_design.md

最新消息

高亮

我们很高兴地宣布我们在实时物体识别任务方面的最新工作,RTMDet,一个全卷积单级探测器系列。RTMDet不仅在从小到超大模型尺寸的对象检测中实现了最佳的参数精度权衡,而且还在实例分割和旋转对象检测任务方面获得了最先进的性能。详情请参阅技术报告。预先训练的模型在这里

普华永道 普华永道 普华永道

任务 数据 美联社 转数快(TRT FP16 BS1 3090)
物体检测 可可 52.8 322
实例分段 可可 44.6 188
旋转物体检测 多塔 78.9(单刻度)/81.3(多刻度) 121

MMYOLO目前只实现了目标检测算法,但与MMDeteciton版本相比,它具有显着的训练加速。训练速度比以前的版本快 2.6 倍。

💎 v0.3.0 于 2023 年 8 月 1 日发布:

  1. 实现RTMDet的快速版本。RTMDet-s 8xA100 培训只需 14 小时。训练速度比以前的版本快 2.6 倍。
  2. 支持PPYOLOE培训
  3. 支持 YOLOv5 中的属性训练
    iscrowd
  4. 支持 YOLOv5 分配器结果可视化

有关发布历史记录和更新详细信息,请参阅更新日志

安装

MMYOLO依赖于PyTorch,MMCV,MMEngine和MMDetection。以下是安装的快速步骤。有关更详细的说明,请参阅安装指南

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
mim install "mmengine>=0.3.1"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc5,<3.1.0"
git clone https://github.com/open-mmlab/mmyolo.git
cd mmyolo
# Install albumentations
pip install -r requirements/albu.txt
# Install MMYOLO
mim install -v -e .

教程

MMYOLO基于MMDetection,采用相同的代码结构和设计方法。为了更好地使用它,请阅读MMDetection概述,以初步了解MMDetection

MMYolo的用法几乎与MMDetection相同,所有教程都易于使用,你还可以了解MMDetection用户指南和高级指南

对于MMDetection的不同部分,我们还准备了用户指南和高级指南,请阅读我们的文档

基准和模型动物园概述

结果和模型可在模型库中获得。

支持的算法
模块组件
骨干 脖子 损失 常见
  • YOLOv5CSPDarknet
  • YOLOXCSPDarknet
  • 高效代表
  • 光热发电
  • YOLOv7骨干
  • PPYOLOECSPResNet
  • YOLOv5PAFPN
  • YOLOv6RepPAFPN
  • YOLOXPAFPN
  • CSPNeXtPAFPN
  • YOLOv7PAFPN
  • PPYOLOECSPPAFPN
  • IoULoss

常见问题

有关常见问题,请参阅常见问题解答。

贡献

我们感谢所有对改进MMYOL的贡献。正在进行的项目可以在我们的 GitHub 项目中找到。欢迎社区用户参与这些项目。有关贡献指南,请参阅 CONTRIBUTING.md

确认

MMYOLO是一个开源项目,由来自不同学院和公司的研究人员和工程师贡献。我们感谢所有实施其方法或添加新功能的贡献者,以及提供宝贵反馈的用户。我们希望工具箱和基准能够通过提供一个灵活的工具包来重新实施现有方法并开发自己的新探测器,从而为不断增长的研究界提供服务。

引文

如果你发现该项目对你的研究有用,请考虑引用:

@misc{mmyolo2022,
    title={{MMYOLO: OpenMMLab YOLO} series toolbox and benchmark},
    author={MMYOLO Contributors},
    howpublished = {\url{https://github.com/open-mmlab/mmyolo}},
    year={2022}
}

许可证

该项目在 GPL 3.0 许可证下发布。

OpenMMLab 中的项目

  • MMEngine:OpenMMLab 基础库,用于训练深度学习模型。
  • MMCV:OpenMMLab 计算机视觉基础库。
  • MIM:MIM 安装 OpenMMLab 包。
  • MMClassization:OpenMMLab图像分类工具箱和基准测试。
  • MMDetection:OpenMMLab检测工具箱和基准测试。
  • MMDetection3D:OpenMMLab用于通用3D物体检测的下一代平台。
  • MMRotate:OpenMMLab旋转对象检测工具箱和基准测试。
  • MMYOLO:OpenMMLab YOLO系列工具箱和基准测试。
  • MMSegmentation:OpenMMLab语义分割工具箱和基准测试。
  • MMOCR:OpenMMLab文本检测、识别和理解工具箱。
  • MMPose:OpenMMLab位姿估计工具箱和基准测试。
  • MMHuman3D:OpenMMLab 3D人体参数模型工具箱和基准测试。
  • MMSelfSup:OpenMMLab 自监督学习工具箱和基准测试。
  • MMRazor:OpenMMLab模型压缩工具箱和基准测试。
  • MMFewShot:OpenMMLab fewshot 学习工具箱和基准测试。
  • MMAction2:OpenMMLab的下一代行动理解工具箱和基准。
  • MMTracking:OpenMMLab视频感知工具箱和基准测试。
  • MMFlow:OpenMMLab光流工具箱和基准测试。
  • MMEditing:OpenMMLab图像和视频编辑工具箱。
  • MMGeneration:OpenMMLab图像和视频生成模型工具箱。
  • MMDeploy:OpenMMLab模型部署框架。
  • MMEval:OpenMMLab机器学习评估库。