Add changelog for v0.1.1 (#111)

* add changelog

* update

* update

* update

* update

* update
pull/137/head v0.1.1
Haian Huang(深度眸) 2022-09-29 17:53:28 +08:00 committed by Haian Huang(深度眸)
parent 0d97ffec06
commit e482e3a17c
12 changed files with 116 additions and 36 deletions

View File

@ -69,12 +69,10 @@ The master branch works with **PyTorch 1.6+**.
## What's New
**v0.1.0** was released on 21/9/2022:
**v0.1.1** was released on 29/9/2022:
- Unified component interfaces based on [OpenMMLab 2.0](https://github.com/open-mmlab) and [MMDetection 3.0](https://github.com/open-mmlab/mmdetection/tree/3.x)
- Support YOLOv5/YOLOX training, support YOLOv6 inference. Deployment will be supported soon.
- Refactored YOLOX from MMDetection to accelerate training and inference.
- Detailed introduction and advanced tutorials are provided, see the [English tutorial](https://mmyolo.readthedocs.io/en/latest).
- Support [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet).
- Support for backbone customization plugins and update How-to documentation.
For release history and update details, please refer to [changelog](https://mmyolo.readthedocs.io/en/latest/notes/changelog.html).
@ -87,8 +85,8 @@ conda create -n open-mmlab python=3.8 pytorch==1.10.1 torchvision==0.11.2 cudato
conda activate open-mmlab
pip install openmim
mim install mmengine
mim install "mmcv>=2.0.0rc1"
mim install "mmdet>=3.0.0rc0"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc1,<3.1.0"
git clone https://github.com/open-mmlab/mmyolo.git
cd mmyolo
# Install albumentations
@ -135,6 +133,7 @@ Results and models are available in the [model zoo](docs/en/model_zoo.md).
- [x] [YOLOv5](configs/yolov5)
- [x] [YOLOX](configs/yolox)
- [x] [RTMDet](configs/rtmdet)
- [ ] [YOLOv6](configs/yolov6)(Inference only)
</details>
@ -165,6 +164,7 @@ Results and models are available in the [model zoo](docs/en/model_zoo.md).
<li>YOLOv5CSPDarknet</li>
<li>YOLOXCSPDarknet</li>
<li>EfficientRep</li>
<li>CSPNeXt</li>
</ul>
</td>
<td>
@ -172,6 +172,7 @@ Results and models are available in the [model zoo](docs/en/model_zoo.md).
<li>YOLOv5PAFPN</li>
<li>YOLOv6RepPAFPN</li>
<li>YOLOXPAFPN</li>
<li>CSPNeXtPAFPN</li>
</ul>
</td>
<td>

View File

@ -69,12 +69,11 @@ MMYOLO 是一个基于 PyTorch 和 MMDetection 的 YOLO 系列算法开源工具
## 最新进展
**v0.1.0** 版本已经在 2022.9.21 发布:
**v0.1.1** 版本已经在 2022.9.29 发布:
- 基于 [OpenMMLab 2.0](https://github.com/open-mmlab) 和 [MMDetection 3.0](https://github.com/open-mmlab/mmdetection/tree/3.x) 统一了各组件接口。
- 支持 YOLOv5/YOLOX 训练,支持 YOLOv6 推理。即将支持部署。
- 重构了 MMDetection 的 YOLOX提供了更快的训练和推理速度。
- 提供了详细入门和进阶教程,详见 [中文教程](https://mmyolo.readthedocs.io/zh_CN/latest)。
- 支持了 [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet)
- 新增了 [RTMDet 原理和实现全解析中文文档](https://github.com/open-mmlab/mmyolo/blob/main/docs/zh_cn/algorithm_descriptions/rtmdet_description.md)
- 支持对 backbone 自定义插件,并且更新了 How-to 文档
发布历史和更新细节请参考 [更新日志](https://mmyolo.readthedocs.io/zh_CN/latest/notes/changelog.html)
@ -87,8 +86,8 @@ conda create -n open-mmlab python=3.8 pytorch==1.10.1 torchvision==0.11.2 cudato
conda activate open-mmlab
pip install openmim
mim install mmengine
mim install "mmcv>=2.0.0rc1"
mim install "mmdet>=3.0.0rc0"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc1,<3.1.0"
git clone https://github.com/open-mmlab/mmyolo.git
cd mmyolo
# Install albumentations
@ -136,6 +135,7 @@ MMYOLO 用法和 MMDetection 几乎一致,所有教程都是通用的,你也
- [x] [YOLOv5](configs/yolov5)
- [x] [YOLOX](configs/yolox)
- [x] [RTMDet](configs/rtmdet)
- [ ] [YOLOv6](configs/yolov6)(仅推理)
</details>
@ -166,6 +166,7 @@ MMYOLO 用法和 MMDetection 几乎一致,所有教程都是通用的,你也
<li>YOLOv5CSPDarknet</li>
<li>YOLOXCSPDarknet</li>
<li>EfficientRep</li>
<li>CSPNeXt</li>
</ul>
</td>
<td>
@ -173,6 +174,7 @@ MMYOLO 用法和 MMDetection 几乎一致,所有教程都是通用的,你也
<li>YOLOv5PAFPN</li>
<li>YOLOv6RepPAFPN</li>
<li>YOLOXPAFPN</li>
<li>CSPNeXtPAFPN</li>
</ul>
</td>
<td>

View File

@ -26,7 +26,7 @@ RUN apt-get update \
# Install MMEngine , MMCV and MMDet
RUN pip install --no-cache-dir openmim && \
mim install --no-cache-dir mmengine "mmcv>=2.0.0rc1" "mmdet>=3.0.0rc0"
mim install --no-cache-dir mmengine "mmcv>=2.0.0rc1,<2.1.0" "mmdet>=3.0.0rc1,<3.1.0"
# Install MMYOLO
RUN git clone https://github.com/open-mmlab/mmyolo.git /mmyolo && \

View File

@ -2,6 +2,14 @@
## Prerequisites
Compatible MMEngine, MMCV and MMDetection versions are shown as below. Please install the correct version to avoid installation issues.
| MMYOLO version | MMDetection version | MMEngine version | MMCV version |
| :------------: | :----------------------: | :----------------------: | :---------------------: |
| main | mmdet>=3.0.0rc1, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 | mmcv>=2.0.0rc0, \<2.1.0 |
| 0.1.1 | mmdet>=3.0.0rc1, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 | mmcv>=2.0.0rc0, \<2.1.0 |
| 0.1.0 | mmdet>=3.0.0rc0, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 | mmcv>=2.0.0rc0, \<2.1.0 |
In this section, we demonstrate how to prepare an environment with PyTorch.
MMDetection works on Linux, Windows, and macOS. It requires Python 3.6+, CUDA 9.2+, and PyTorch 1.7+.
@ -42,8 +50,8 @@ conda install pytorch torchvision cpuonly -c pytorch
```shell
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0rc1"
mim install "mmdet>=3.0.0rc0"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc1,<3.1.0"
```
**Note:**
@ -188,7 +196,7 @@ thus we only need to install MMEngine, MMCV, MMDetection, and MMYOLO with the fo
!pip3 install openmim
!mim install mmengine
!mim install "mmcv>=2.0.0rc1,<2.1.0"
!mim install "mmdet>=3.0.0.rc0"
!mim install "mmdet>=3.0.0.rc1"
```
**Step 2.** Install MMYOLO from the source.

View File

@ -18,3 +18,7 @@ Please refer to [YOLOv6](https://github.com/open-mmlab/mmyolo/blob/main/configs/
### YOLOX
Please refer to [YOLOX](https://github.com/open-mmlab/mmyolo/blob/main/configs/yolox)。
### RTMDet
Please refer to [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet)。

View File

@ -1,5 +1,32 @@
# Changelog
## v0.1.129/9/2022)
Based on MMDetection's RTMDet high precision and low latency object detection algorithm, we have also released RTMDet and provided a Chinese document on the principle and implementation of RTMDet.
### Highlights
1. Support [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet)
2. Support for backbone customization plugins and update How-to documentation (#75)
### Bug Fixes
1. Fix some documentation errors (#66, #72, #76, #83, #86)
2. Fix checkpoints link error (#63)
3. Fix the bug that the output of `LetterResize` does not meet the expectation when using `imscale` (#105)
### Improvements
1. Reducing the size of docker images (#67)
2. Simplifying `Compose` Logic in `BaseMixImageTransform` (#71)
3. Supports dump results in `test.py` (#84)
#### Contributors
A total of 13 developers contributed to this release.
Thank @wanghonglie, @hhaAndroid, @yang-0201, @PeterH0323, @RangeKing, @satuoqaq, @Zheng-LinXiao, @xin-li-67, @suibe-qingtian, @MambaWong, @MichaelCai0912, @rimoire, @Nioolek
## v0.1.021/9/2022)
We have released MMYOLO open source library, which is based on MMEngine, MMCV 2.x and MMDetection 3.x libraries. At present, the object detection has been realized, and it will be expanded to multi-task in the future.

View File

@ -76,10 +76,9 @@ MMDetection 开源库中已经对单图数据增强进行了封装,用户通
| MixUp | | 19.3 |
| MixUp | √ | **12.4** |
| | RTMDet-s | RTMDet-l |
| --------------------------------------------- | -------- | -------- |
| Mosaic + MixUp + 20e finetune | 43.9 | **51.3** |
| **Small-cache** Mosaic + MixUp + 20e finetune | **44.2** | 51.1 |
| | RTMDet-s | RTMDet-l |
| ----------------------------- | -------- | -------- |
| Mosaic + MixUp + 20e finetune | 43.9 | **51.3** |
#### 1.1.1 为图像混合数据增强引入 Cache
@ -180,12 +179,11 @@ Mosaic+MixUp 失真度比较高,持续用太强的数据增强对模型并不
为了使数据增强的方式更为通用RTMDet 在前 280 epoch 使用不带旋转的 Mosaic+MixUp, 且通过混入 8 张图片来提升强度以及正样本数。后 20 epoch 使用比较小的学习率在比较弱的增强下进行微调,同时在 EMA 的作用下将参数缓慢更新至模型,能够得到比较大的提升。
| | RTMDet-s | RTMDet-l |
| ----------------------------------------- | -------- | -------- |
| LSJ + rand crop | 42.3 | 46.7 |
| Mosaic+MixUp | 41.9 | 49.8 |
| Mosaic + MixUp + 20e finetune | 43.9 | **51.3** |
| Small-cache Mosaic + MixUp + 20e finetune | **44.2** | 51.1 |
| | RTMDet-s | RTMDet-l |
| ----------------------------- | -------- | -------- |
| LSJ + rand crop | 42.3 | 46.7 |
| Mosaic+MixUp | 41.9 | 49.8 |
| Mosaic + MixUp + 20e finetune | 43.9 | **51.3** |
### 1.2 模型结构

View File

@ -2,6 +2,14 @@
## 依赖
下表为 MMYOLO 和 MMEngine, MMCV, MMDetection 依赖库的版本要求,请安装正确的版本以避免安装问题。
| MMYOLO version || MMDetection version | MMEngine version | MMCV version |
|:--------------:|:-------------------:|:-------------------:|:-------------------:|
| main | mmdet>=3.0.0rc1, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 | mmcv>=2.0.0rc0, \<2.1.0|
| 0.1.1 | mmdet>=3.0.0rc1, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 |mmcv>=2.0.0rc0, \<2.1.0|
| 0.1.0 | mmdet>=3.0.0rc0, \<3.1.0 | mmengine>=0.1.0, \<0.2.0 |mmcv>=2.0.0rc0, \<2.1.0|
本节中,我们将演示如何用 PyTorch 准备一个环境。
MMYOLO 支持在 LinuxWindows 和 macOS 上运行。它需要 Python 3.6 以上CUDA 9.2 以上和 PyTorch 1.7 以上。
@ -42,8 +50,8 @@ conda install pytorch torchvision cpuonly -c pytorch
```shell
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0rc1"
mim install "mmdet>=3.0.0rc0"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc1,<3.1.0"
```
**注意:**
@ -193,7 +201,7 @@ pip install "mmcv>=2.0.0rc1" -f https://download.openmmlab.com/mmcv/dist/cu116/t
!pip3 install openmim
!mim install mmengine
!mim install "mmcv>=2.0.0rc1,<2.1.0"
!mim install "mmdet>=3.0.0.rc0"
!mim install "mmdet>=3.0.0.rc1"
```
**步骤 2.** 使用源码安装 MMYOLO

View File

@ -18,3 +18,7 @@
### YOLOX
请参考 [YOLOX](https://github.com/open-mmlab/mmyolo/blob/main/configs/yolox)。
### RTMDet
请参考 [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet)。

View File

@ -1,5 +1,33 @@
# 更新日志
## v0.1.129/9/2022)
基于 MMDetection 的 RTMDet 高精度低延时目标检测算法,我们也同步发布了 RTMDet并提供了 RTMDet 原理和实现全解析中文文档
### 亮点
1. 支持了 [RTMDet](https://github.com/open-mmlab/mmyolo/blob/main/configs/rtmdet)
2. 新增了 [RTMDet 原理和实现全解析中文文档](https://github.com/open-mmlab/mmyolo/blob/main/docs/zh_cn/algorithm_descriptions/rtmdet_description.md)
3. 支持对 backbone 自定义插件,并更新了 How-to 文档 (#75)
### Bug 修复
1. 修复一些文档错误 (#66, #72, #76, #83, #86)
2. 修复权重链接错误 (#63)
3. 修复 `LetterResize` 使用 `imscale` api 时候输出不符合预期的 bug (#105)
### 完善
1. 缩减 docker 镜像尺寸 (#67)
2. 简化 BaseMixImageTransform 中 Compose 逻辑 (#71)
3. test 脚本支持 dump 结果 (#84)
#### 贡献者
总共 13 位开发者参与了本次版本
谢谢 @wanghonglie, @hhaAndroid, @yang-0201, @PeterH0323, @RangeKing, @satuoqaq, @Zheng-LinXiao, @xin-li-67, @suibe-qingtian, @MambaWong, @MichaelCai0912, @rimoire, @Nioolek
## v0.1.021/9/2022)
我们发布了 MMYOLO 开源库,其基于 MMEngine, MMCV 2.x 和 MMDetection 3.x 库. 目前实现了目标检测功能,后续会扩展为多任务。

View File

@ -10,12 +10,12 @@ mmcv_minimum_version = '2.0.0rc0'
mmcv_maximum_version = '2.1.0'
mmcv_version = digit_version(mmcv.__version__)
mmengine_minimum_version = '0.0.0'
mmengine_minimum_version = '0.1.0'
mmengine_maximum_version = '0.2.0'
mmengine_version = digit_version(mmengine.__version__)
mmdet_minimum_version = '3.0.0rc0'
mmdet_maximum_version = '4.0.0'
mmdet_minimum_version = '3.0.0rc1'
mmdet_maximum_version = '3.1.0'
mmdet_version = digit_version(mmdet.__version__)

View File

@ -84,7 +84,7 @@ class TestLetterResize(unittest.TestCase):
# Test
transform = LetterResize(scale=(640, 640), pad_val=dict(img=144))
rng = np.random.RandomState(0)
for _ in range(20):
for _ in range(5):
input_h, input_w = np.random.randint(100, 700), np.random.randint(
100, 700)
output_h, output_w = np.random.randint(100,
@ -107,7 +107,7 @@ class TestLetterResize(unittest.TestCase):
# Test without batchshape
transform = LetterResize(scale=(640, 640), pad_val=dict(img=144))
rng = np.random.RandomState(0)
for _ in range(20):
for _ in range(5):
input_h, input_w = np.random.randint(100, 700), np.random.randint(
100, 700)
data_info = dict(