mmdetection README

The project's README from github.com/open-mmlab/mmdetection. As one markdown file: README.md.

 
OpenMMLab website HOT      OpenMMLab platform TRY IT OUT
 

PyPI docs badge codecov license open issues issue resolution Open in OpenXLab

📘Documentation | 🛠️Installation | 👀Model Zoo | 🆕Update News | 🚀Ongoing Projects | 🤔Reporting Issues

English | 简体中文

Introduction

MMDetection is an open source object detection toolbox based on PyTorch. It is a part of the OpenMMLab project.

The main branch works with PyTorch 1.8+.

Major features
  • Modular Design

    We decompose the detection framework into different components and one can easily construct a customized object detection framework by combining different modules.

  • Support of multiple tasks out of box

    The toolbox directly supports multiple detection tasks such as object detection, instance segmentation, panoptic segmentation, and semi-supervised object detection.

  • High efficiency

    All basic bbox and mask operations run on GPUs. The training speed is faster than or comparable to other codebases, including Detectron2, maskrcnn-benchmark and SimpleDet.

  • State of the art

    The toolbox stems from the codebase developed by the MMDet team, who won COCO Detection Challenge in 2018, and we keep pushing it forward. The newly released RTMDet also obtains new state-of-the-art results on real-time instance segmentation and rotated object detection tasks and the best parameter-accuracy trade-off on object detection.

Apart from MMDetection, we also released MMEngine for model training and MMCV for computer vision research, which are heavily depended on by this toolbox.

What's New

💎 We have released the pre-trained weights for MM-Grounding-DINO Swin-B and Swin-L, welcome to try and give feedback.

Highlight

v3.3.0 was released in 5/1/2024:

MM-Grounding-DINO: An Open and Comprehensive Pipeline for Unified Object Grounding and Detection

Grounding DINO is a grounding pre-training model that unifies 2d open vocabulary object detection and phrase grounding, with wide applications. However, its training part has not been open sourced. Therefore, we propose MM-Grounding-DINO, which not only serves as an open source replication version of Grounding DINO, but also achieves significant performance improvement based on reconstructed data types, exploring different dataset combinations and initialization strategies. Moreover, we conduct evaluations from multiple dimensions, including OOD, REC, Phrase Grounding, OVD, and Fine-tune, to fully excavate the advantages and disadvantages of Grounding pre-training, hoping to provide inspiration for future work.

code: mm_grounding_dino/README.md

We are excited to announce our latest work on real-time object recognition tasks, RTMDet, a family of fully convolutional single-stage detectors. RTMDet not only achieves the best parameter-accuracy trade-off on object detection from tiny to extra-large model sizes but also obtains new state-of-the-art performance on instance segmentation and rotated object detection tasks. Details can be found in the technical report. Pre-trained models are here.

PWC PWC PWC

Task Dataset AP FPS(TRT FP16 BS1 3090)
Object Detection COCO 52.8 322
Instance Segmentation COCO 44.6 188
Rotated Object Detection DOTA 78.9(single-scale)/81.3(multi-scale) 121

Installation

Please refer to Installation for installation instructions.

Getting Started

Please see Overview for the general introduction of MMDetection.

For detailed user guides and advanced guides, please refer to our documentation:

We also provide object detection colab tutorial Open in Colab and instance segmentation colab tutorial Open in Colab.

To migrate from MMDetection 2.x, please refer to migration.

Overview of Benchmark and Model Zoo

Results and models are available in the model zoo.

Architectures
Object Detection Instance Segmentation Panoptic Segmentation Other
  • Contrastive Learning
  • Distillation
  • Semi-Supervised Object Detection
  • Components
    Backbones Necks Loss Common

    mmdetection (open-mmlab/mmdetection)

    Searching Database…

    这是什么?MMDetection 是一个基于 PyTorch 的开源目标检测工具箱,隶属于 OpenMMLab 项目,支持目标检测、实例分割、全景分割和半监督检测。
    这是我可以基于它开发的框架,还是拿来就能跑的应用?它是一个模块化的研究框架/库:它把检测流程拆分为多个组件(骨干网络、颈部网络、检测头),你可以组合这些模块来搭建自定义的检测器。
    我要怎么才能把它跑起来?请按照官方安装指南(Installation)操作;安装完成后,可参考用户指南(User Guides)了解训练与测试、使用现有模型进行推理,以及准备数据集。
    运行它之前需要先安装哪些依赖?它需要 PyTorch 1.8+ 及以上版本,并且高度依赖两个同系的 OpenMMLab 库:MMEngine(负责训练)和 MMCV(提供核心计算机视觉算子)。
    这个版本还在积极维护吗,还是我应该看看更新的版本?该项目仍在积极更新,陆续发布新版本(例如 2024 年发布的 v3.3.0 和 MM-Grounding-DINO)。但如果你是从较早的 2.x 系列迁移过来,由于接口已经变化,需要参考单独的迁移指南。
    模型库有多大?非常丰富。它涵盖数十种架构,包括 Faster R-CNN、Mask R-CNN、RetinaNet、DETR 系列变体、Swin Transformer、YOLOX、RTMDet、Grounding DINO 等,覆盖目标检测、实例分割和全景分割,还有很多其他模型。
    RTMDet 是什么?为什么要重点介绍它?RTMDet 是该项目发布的一系列实时、全卷积单阶段检测器。它在目标检测上实现了当前最优的参数量与精度权衡,在实例分割和旋转目标检测中也处于领先水平,例如在 COCO 数据集上达到 52.8 AP,速度为 322 FPS。
    MM-Grounding-DINO 是什么?它是团队对 Grounding DINO 的开源复现与改进版本。Grounding DINO 是一个统一开放词汇目标检测与短语定位(phrase grounding)的模型。该项目发布了 Swin-B 和 Swin-L 的预训练权重,并在 OOD、REC、短语定位、OVD 以及微调等设置下进行了评测。
    MMDetection 的训练速度与其他工具箱相比如何?作者称,其训练速度快于或与 Detectron2、maskrcnn-benchmark、SimpleDet 等其他代码库相当。
    Creator
    open-mmlab
    Size
    63.3 MB
    Stars
    33K
    Age
    8y
    Commits · 90 Days