diff --git a/.dev_scripts/benchmark/batch_train_list.txt b/.dev_scripts/benchmark/batch_train_list.txt index 23a8b958f..2a6be0452 100644 --- a/.dev_scripts/benchmark/batch_train_list.txt +++ b/.dev_scripts/benchmark/batch_train_list.txt @@ -7,6 +7,7 @@ configs/vid/temporal_roi_align/selsa_troialign_faster_rcnn_r50_dc5_7e_imagenetvi # MOT configs/mot/deepsort/deepsort_faster-rcnn_fpn_4e_mot17-private-half.py configs/mot/tracktor/tracktor_faster-rcnn_r50_fpn_4e_mot17-private-half.py +configs/mot/bytetrack/bytetrack_yolox_x_crowdhuman_mot17-private-half.py # SOT configs/sot/siamese_rpn/siamese_rpn_r50_1x_lasot.py diff --git a/.dev_scripts/benchmark/gather_train_benchmark_metric.py b/.dev_scripts/benchmark/gather_train_benchmark_metric.py index b2bb0278f..710dff1fb 100644 --- a/.dev_scripts/benchmark/gather_train_benchmark_metric.py +++ b/.dev_scripts/benchmark/gather_train_benchmark_metric.py @@ -130,14 +130,13 @@ def parse_args(): 0]] < result_dict[epoch][eval_metrics[0]]: best_epoch_results = result_dict[epoch] - for metric in best_epoch_results: - if 'success' in best_epoch_results: - performance = round(best_epoch_results[metric], - 1) - else: - performance = round( - best_epoch_results[metric] * 100, 1) - best_epoch_results[metric] = performance + for metric in best_epoch_results: + if 'success' in best_epoch_results: + performance = round(best_epoch_results[metric], 1) + else: + performance = round( + best_epoch_results[metric] * 100, 1) + best_epoch_results[metric] = performance all_results_dict[config] = best_epoch_results # update and append excel content diff --git a/.dev_scripts/benchmark/train_benchmark.sh b/.dev_scripts/benchmark/train_benchmark.sh index 8d698334c..80ceee938 100755 --- a/.dev_scripts/benchmark/train_benchmark.sh +++ b/.dev_scripts/benchmark/train_benchmark.sh @@ -22,6 +22,18 @@ WORK_DIR=selsa_troialign_faster_rcnn_r50_dc5_7e_imagenetvid echo ${CONFIG} & ./tools/slurm_train.sh ${PARTITION} ${WORK_DIR} ${CONFIG} ${ROOT_DIR}/${WORK_DIR} 8 --cfg-options checkpoint_config.max_keep_ckpts=1 >/dev/null & +# MOT +CONFIG=configs/mot/bytetrack/bytetrack_yolox_x_crowdhuman_mot17-private-half.py +WORK_DIR=bytetrack_yolox_x_crowdhuman_mot17-private-half +echo ${CONFIG} & +./tools/slurm_train.sh ${PARTITION} ${WORK_DIR} ${CONFIG} ${ROOT_DIR}/${WORK_DIR} 8 --cfg-options checkpoint_config.max_keep_ckpts=1 >/dev/null & + +# VIS +CONFIG=configs/vis/masktrack_rcnn/masktrack_rcnn_r50_fpn_12e_youtubevis2019.py +WORK_DIR=masktrack_rcnn_r50_fpn_12e_youtubevis2019 +echo ${CONFIG} & +./tools/slurm_train.sh ${PARTITION} ${WORK_DIR} ${CONFIG} ${ROOT_DIR}/${WORK_DIR} 8 --cfg-options checkpoint_config.max_keep_ckpts=1 >/dev/null & + # SOT CONFIG=configs/sot/siamese_rpn/siamese_rpn_r50_1x_lasot.py WORK_DIR=siamese_rpn_r50_1x_lasot @@ -48,3 +60,9 @@ CONFIG=configs/mot/tracktor/tracktor_faster-rcnn_r50_fpn_4e_mot17-private-half.p WORK_DIR=tracktor_faster-rcnn_r50_fpn_4e_mot17-private-half echo ${CONFIG} ./tools/slurm_test.sh ${PARTITION} ${WORK_DIR} ${CONFIG} 8 --work-dir ${ROOT_DIR}/${WORK_DIR} --eval track --cfg-options model.detector.init_cfg.checkpoint=${ROOT_DIR}/${DET_WORK_DIR}/epoch_4.pth model.reid.init_cfg.checkpoint=${ROOT_DIR}/${REID_WORK_DIR}/epoch_6.pth + +# VIS +CONFIG=configs/vis/masktrack_rcnn/masktrack_rcnn_r50_fpn_12e_youtubevis2019.py +WORK_DIR=masktrack_rcnn_r50_fpn_12e_youtubevis2019 +echo ${CONFIG} +./tools/slurm_test.sh ${PARTITION} ${WORK_DIR} ${CONFIG} 8 --eval-options resfile_path=${ROOT_DIR}/${WORK_DIR} --format-only --checkpoint ${ROOT_DIR}/${WORK_DIR}/epoch_12.pth diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 444dcbd38..bcda2d420 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -50,10 +50,10 @@ jobs: run: pip install torch==${{matrix.torch}}+cpu torchvision==${{matrix.torchvision}}+cpu -f https://download.pytorch.org/whl/torch_stable.html - name: Install mmtrack dependencies run: | + pip install git+https://github.com/votchallenge/toolkit.git pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cpu/${{matrix.torch_version}}/index.html pip install mmdet pip install -r requirements.txt - pip install git+https://github.com/votchallenge/toolkit.git - name: Build and install run: rm -rf .eggs && pip install -e . - name: Run unittests and generate coverage report @@ -108,10 +108,10 @@ jobs: run: python -m pip install torch==${{matrix.torch}} torchvision==${{matrix.torchvision}} -f https://download.pytorch.org/whl/torch_stable.html - name: Install mmtrack dependencies run: | + python -m pip install git+https://github.com/votchallenge/toolkit.git python -m pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu101/${{matrix.torch_version}}/index.html python -m pip install mmdet python -m pip install -r requirements.txt - python -m pip install git+https://github.com/votchallenge/toolkit.git - name: Build and install run: | rm -rf .eggs @@ -174,10 +174,10 @@ jobs: run: python -m pip install torch==${{matrix.torch}} torchvision==${{matrix.torchvision}} -f https://download.pytorch.org/whl/torch_stable.html - name: Install mmtrack dependencies run: | + python -m pip install git+https://github.com/votchallenge/toolkit.git python -m pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu102/${{matrix.torch_version}}/index.html python -m pip install mmdet python -m pip install -r requirements.txt - python -m pip install git+https://github.com/votchallenge/toolkit.git - name: Build and install run: | rm -rf .eggs diff --git a/README.md b/README.md index 9adfb4c3b..4439e4e30 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ This project is released under the [Apache 2.0 license](LICENSE). Release [ByteTrack](configs/mot/bytetrack) pretrained models. -v0.8.0 was released in 03/10/2021. +v0.9.0 was released in 05/01/2022. Please refer to [changelog.md](docs/en/changelog.md) for details and release history. ## Benchmark and model zoo diff --git a/README_zh-CN.md b/README_zh-CN.md index 4418e5c0e..0c027b69d 100644 --- a/README_zh-CN.md +++ b/README_zh-CN.md @@ -47,7 +47,7 @@ MMTracking是一款基于PyTorch的视频目标感知开源工具箱,是[OpenM ## 更新记录 -v0.8.0版本已于2021年10月03日发布,可通过查阅[更新日志](docs/en/changelog.md)了解更多细节以及发布历史。 +v0.9.0版本已于2022年01月05日发布,可通过查阅[更新日志](docs/en/changelog.md)了解更多细节以及发布历史。 ## 基准测试与模型库 diff --git a/docs/en/changelog.md b/docs/en/changelog.md index 64f9d6a81..0c0e1f808 100644 --- a/docs/en/changelog.md +++ b/docs/en/changelog.md @@ -1,5 +1,27 @@ ## Changelog +### v0.9.0 (05/01/2022) + +#### Highlights + +- Support arXiv 2021 manuscript 'ByteTrack: Multi-Object Tracking by Associating Every Detection Box' ([#385](https://github.com/open-mmlab/mmtracking/pull/385)), ([#383](https://github.com/open-mmlab/mmtracking/pull/383)), ([#372](https://github.com/open-mmlab/mmtracking/pull/372)) +- Support ICCV 2019 paper 'Video Instance Segmentation' ([#304](https://github.com/open-mmlab/mmtracking/pull/304)), ([#303](https://github.com/open-mmlab/mmtracking/pull/303)), ([#298](https://github.com/open-mmlab/mmtracking/pull/298)), ([#292](https://github.com/open-mmlab/mmtracking/pull/292)) + +#### New Features + +- Support CrowdHuman dataset for MOT ([#366](https://github.com/open-mmlab/mmtracking/pull/366)) +- Support VOT2018 dataset for SOT ([#305](https://github.com/open-mmlab/mmtracking/pull/305)) +- Support YouTube-VIS dataset for VIS ([#290](https://github.com/open-mmlab/mmtracking/pull/290)) + +#### Bug Fixes + +- Fix two significant bugs in SOT and provide new SOT pretrained models ([#349](https://github.com/open-mmlab/mmtracking/pull/349)) + +#### Improvements + +- Refactor LaSOT, TrackingNet dataset and support GOT-10K datasets ([#296](https://github.com/open-mmlab/mmtracking/pull/296)) +- Support persisitent workers ([#348](https://github.com/open-mmlab/mmtracking/pull/348)) + ### v0.8.0 (03/10/2021) #### New Features diff --git a/docs/en/install.md b/docs/en/install.md index 43fbd6b1b..97a99a8fc 100644 --- a/docs/en/install.md +++ b/docs/en/install.md @@ -12,10 +12,11 @@ The compatible MMTracking, MMCV, and MMDetection versions are as below. Please i | MMTracking version | MMCV version | MMDetection version | |:-------------------:|:------------------------:|:-----------------------------:| -| master | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | -| 0.6.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | -| 0.7.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| master | mmcv-full>=1.3.17, <1.5.0 | MMDetection>=2.19.1 | +| 0.9.0 | mmcv-full>=1.3.17, <1.5.0 | MMDetection>=2.19.1 | | 0.8.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| 0.7.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| 0.6.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | ## Installation @@ -70,12 +71,6 @@ The compatible MMTracking, MMCV, and MMDetection versions are as below. Please i cd .. ``` - Or directly run - - ```shell - pip install mmcv-full - ``` - 4. Install MMDetection ```shell diff --git a/docs/zh_cn/install.md b/docs/zh_cn/install.md index 260823f60..f2577ed6c 100644 --- a/docs/zh_cn/install.md +++ b/docs/zh_cn/install.md @@ -12,10 +12,11 @@ | MMTracking version | MMCV version | MMDetection version | |:-------------------:|:------------------------:|:-----------------------------:| -| master | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | -| 0.6.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | -| 0.7.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| master | mmcv-full>=1.3.17, <1.5.0 | MMDetection>=2.19.1 | +| 0.9.0 | mmcv-full>=1.3.17, <1.5.0 | MMDetection>=2.19.1 | | 0.8.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| 0.7.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | +| 0.6.0 | mmcv-full>=1.3.8, <1.4.0 | MMDetection>=2.14.0 | ## 安装 @@ -65,12 +66,6 @@ cd .. ``` - 或者,可以直接使用命令行安装: - - ```shell - pip install mmcv-full - ``` - 4. 安装 MMDetection: ```shell diff --git a/mmtrack/version.py b/mmtrack/version.py index d9db9abff..48c1ac9eb 100644 --- a/mmtrack/version.py +++ b/mmtrack/version.py @@ -1,6 +1,6 @@ # Copyright (c) Open-MMLab. All rights reserved. -__version__ = '0.8.0' +__version__ = '0.9.0' def parse_version_info(version_str): diff --git a/requirements/runtime.txt b/requirements/runtime.txt index 96bc85967..6e53b4802 100644 --- a/requirements/runtime.txt +++ b/requirements/runtime.txt @@ -4,7 +4,7 @@ matplotlib mmcls>=0.16.0 motmetrics packaging -pycocotools +pycocotools<=2.0.2 seaborn six terminaltables