Skip to content

Commit

Permalink
Provide checkpoints for MixFormer. (open-mmlab#778)
Browse files Browse the repository at this point in the history
* add MixFormer in README

* add checkpoints

* add mixformer in docs

* fix metafile

* update test results

* fix mixformer test pipeline

* update model-index.yml
  • Loading branch information
songtianhui authored Nov 25, 2022
1 parent 87d55ec commit b1679f9
Show file tree
Hide file tree
Showing 10 changed files with 43 additions and 27 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,7 @@ Supported Methods

- [x] [SiameseRPN++](configs/sot/siamese_rpn) (CVPR 2019)
- [x] [STARK](configs/sot/stark) (ICCV 2021)
- [x] [MixFormer](configs/sot/mixformer) (CVPR 2022)
- [ ] [PrDiMP](https://arxiv.org/abs/2003.12565) (CVPR2020) (WIP)

Supported Datasets
Expand Down
1 change: 1 addition & 0 deletions README_zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ MMTracking也提供了更详细的[教程](docs/zh_cn/tutorials/),比如[配

- [x] [SiameseRPN++](configs/sot/siamese_rpn) (CVPR 2019)
- [x] [STARK](configs/sot/stark) (ICCV 2021)
- [x] [MixFormer](configs/sot/mixformer) (CVPR 2022)
- [ ] [PrDiMP](https://arxiv.org/abs/2003.12565) (CVPR2020) (WIP)

支持的数据集:
Expand Down
18 changes: 9 additions & 9 deletions configs/sot/mixformer/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,18 +30,18 @@ We now provide the evaluation results using model weights released in [official

### Lasot

| Method | Style | Inf time(fps) | Success | Norm precision | Precision | Config |
| :-------: | :---: | :-----------: | :-----: | :------------: | :-------: | :-------------------------------------: |
| MixFormer | - | - | 69.2 | 78.8 | 74.3 | [config](./mixformer_cvt_500e_lasot.py) |
| Method | Style | Inf time(fps) | Success | Norm precision | Precision | Config | Download |
| :-------: | :---: | :-----------: | :-----: | :------------: | :-------: | :-------------------------------------: | :--------------------------------------------------------------------------------------------------------------------: |
| MixFormer | - | - | 69.0 | 79.6 | 75.2 | [config](./mixformer_cvt_500e_lasot.py) | [model](https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_lasot/mixformer_cvt_500e_lasot.pth) |

### TrackingNet

| Method | Style | Inf time(fps) | Success | Norm precision | Precision | Config |
| :-------: | :---: | :-----------: | :-----: | :------------: | :-------: | :-------------------------------------------: |
| MixFormer | - | - | 81.1 | 86.6 | 80.0 | [config](./mixformer_cvt_500e_trackingnet.py) |
| Method | Style | Inf time(fps) | Success | Norm precision | Precision | Config | Download |
| :-------: | :---: | :-----------: | :-----: | :------------: | :-------: | :-------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------: |
| MixFormer | - | - | 81.4 | 86.8 | 80.3 | [config](./mixformer_cvt_500e_trackingnet.py) | [model](https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_lasot/mixformer_cvt_500e_lasot.pth) |

### GOT10k

| Method | Style | Inf time(fps) | Average Overlap | Success Rate 0.5 | Success Rate 0.75 | Config |
| :-------: | :---: | :-----------: | :-------------: | :--------------: | :---------------: | :--------------------------------------: |
| MixFormer | - | - | 72.0 | 82.0 | 68.1 | [config](./mixformer_cvt_500e_got10k.py) |
| Method | Style | Inf time(fps) | Average Overlap | Success Rate 0.5 | Success Rate 0.75 | Config | Download |
| :-------: | :---: | :-----------: | :-------------: | :--------------: | :---------------: | :--------------------------------------: | :----------------------------------------------------------------------------------------------------------------------: |
| MixFormer | - | - | 70.1 | 80.1 | 65.6 | [config](./mixformer_cvt_500e_got10k.py) | [model](https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_got10k/mixformer_cvt_500e_got10k.pth) |
29 changes: 18 additions & 11 deletions configs/sot/mixformer/metafile.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
Collections:
- Name: MixFormer
Metadata:
Architecture:
- TransFormer
Training Data: GOT10k, LaSOT, TrackingNet, MSCOCO
Training Techniques:
- AdamW
Training Resources: 8x V100 GPUs
Architecture:
- Convolutional Vision TransFormer
Paper:
URL: https://arxiv.org/abs/2203.11082
Title: "MixFormer: End-to-End Tracking with Iterative Mixed Attention"
Expand All @@ -16,9 +20,10 @@ Models:
- Task: Single Object Tracking
Dataset: GOT10k
Metrics:
AO: 72.0
SR0.5: 82.0
SR0.75: 68.1
AO: 70.1
SR0.5: 80.1
SR0.75: 65.6
Weights: https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_got10k/mixformer_cvt_500e_got10k.pth

- Name: mixformer_cvt_500e_lasot
In Collection: MixFormer
Expand All @@ -27,9 +32,10 @@ Models:
- Task: Single Object Tracking
Dataset: LaSOT
Metrics:
Success: 69.2
Norm Precision: 78.8
Precision: 74.3
Success: 69.0
Norm Precision: 79.6
Precision: 75.2
Weights: https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_lasot/mixformer_cvt_500e_lasot.pth

- Name: mixformer_cvt_500e_trackingnet
In Collection: MixFormer
Expand All @@ -38,6 +44,7 @@ Models:
- Task: Single Object Tracking
Dataset: TrackingNet
Metrics:
Success: 81.1
Norm Precision: 86.6
Precision: 80.0
Success: 81.4
Norm Precision: 86.8
Precision: 80.3
Weights: https://download.openmmlab.com/mmtracking/sot/mixformer/mixformer_cvt_500e_lasot/mixformer_cvt_500e_lasot.pth
2 changes: 1 addition & 1 deletion configs/sot/mixformer/mixformer_cvt_500e_got10k.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
search_size=320,
template_factor=2.0,
template_size=128,
update_interval=[10],
update_interval=[25],
online_size=[2],
max_score_decay=[0.98],
))
Expand Down
2 changes: 1 addition & 1 deletion configs/sot/mixformer/mixformer_cvt_500e_trackingnet.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
template_factor=2.0,
template_size=128,
update_interval=[25],
online_size=[2],
online_size=[1],
max_score_decay=[1.0],
))

Expand Down
4 changes: 4 additions & 0 deletions docs/en/model_zoo.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,10 @@ Please refer to [SiameseRPN++](https://github.com/open-mmlab/mmtracking/blob/mas

Please refer to [STARK](https://github.com/open-mmlab/mmtracking/blob/master/configs/sot/stark) for details.

### MixFormer (CVPR 2022)

Please refer to [MixFormer](https://github.com/open-mmlab/mmtracking/blob/master/configs/sot/mixformer) for details.

## Baselines of video instance segmentation

### MaskTrack R-CNN (ICCV 2019)
Expand Down
4 changes: 4 additions & 0 deletions docs/zh_cn/model_zoo.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,10 @@

详情请参考 [STARK](https://github.com/open-mmlab/mmtracking/blob/master/configs/sot/stark)

### MixFormer (CVPR 2022)

详情请参考 [MixFormer](https://github.com/open-mmlab/mmtracking/blob/master/configs/sot/mixformer)

## 视频个例分割基线

### MaskTrack R-CNN (ICCV 2019)
Expand Down
8 changes: 3 additions & 5 deletions mmtrack/models/sot/mixformer.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,9 +102,8 @@ def update_template(self, img, bbox, conf_score):
self.online_forget_id = (self.online_forget_id +
1) % self.online_size

if self.online_size > 1:
with torch.no_grad():
self.set_online(self.template, self.online_template)
with torch.no_grad():
self.set_online(self.template, self.online_template)

self.best_conf_score = -1
self.best_online_template = self.template
Expand Down Expand Up @@ -134,13 +133,12 @@ def track(self, img, bbox):
out_dict = self.head(template, search)

pred_box = out_dict['pred_bboxes'] # xyxy
# Baseline: Take the mean of all pred boxes as the final result

pred_box = self.mapping_bbox_back(pred_box, self.memo.bbox,
resize_factor)
pred_box = self._bbox_clip(pred_box, H, W, margin=10)

# update template
self.best_conf_score = self.best_conf_score * self.max_score_decay
conf_score = -1.
if self.head.score_decoder_head is not None:
# get confidence score (whether the search region is reliable)
Expand Down
1 change: 1 addition & 0 deletions model-index.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Import:
- configs/mot/ocsort/metafile.yml
- configs/sot/siamese_rpn/metafile.yml
- configs/sot/stark/metafile.yml
- configs/sot/mixformer/metafile.yml
- configs/vid/dff/metafile.yml
- configs/vid/fgfa/metafile.yml
- configs/vid/selsa/metafile.yml
Expand Down

0 comments on commit b1679f9

Please sign in to comment.