liuguoyou / ROMTrack

[ICCV 2023] Robust Object Modeling for Visual Tracking, Official Implementation

Home Page:https://arxiv.org/abs/2308.05140

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ROMTrack

The official implementation of the ICCV 2023 paper Robust Object Modeling for Visual Tracking

ROMTrack_Pipeline

[Models and Raw Results] (Google Drive) [Models and Raw Results] (Baidu Netdisk: romt)

πŸ“° News

[September 21, 2023]

  • We release Models and Raw Results of ROMTrack.
  • We refine README for more details.

[August 6, 2023]

  • We release Code of ROMTrack.

[July 14, 2023]

  • ROMTrack is accepted to ICCV2023.

πŸ“† TODO

  • Code for ROMTrack
  • Model Zoo and Raw Results
  • Refine README

⭐ Highlights

πŸš€ New Tracking Framework pursing Robustness

  • ROMTrack employes a robust object modeling design which can keep the inherent information of the target template and enables mutual feature matching between the target and the search region simultaneously.

Robust_Modeling

  • Robustness Comparison with SOTA methods (bounding box only) on VOT2020.

    VOT2020

πŸš€ Strong Performance and Comparable Speed

  • Performance on Benchmarks

    Performance

  • Speed, MACs, Params (Test on 1080Ti)

    Speed

πŸ“– Install the environment

Use the Anaconda

conda create -n romtrack python=3.6
conda activate romtrack
bash install_pytorch17.sh

πŸ“– Data Preparation

Put the tracking datasets in ./data. It should look like:

${ROMTrack_ROOT}
 -- data
     -- lasot
         |-- airplane
         |-- basketball
         |-- bear
         ...
     -- lasot_ext
         |-- atv
         |-- badminton
         |-- cosplay
         ...
     -- got10k
         |-- test
         |-- train
         |-- val
     -- coco
         |-- annotations
         |-- train2017
     -- trackingnet
         |-- TRAIN_0
         |-- TRAIN_1
         ...
         |-- TRAIN_11
         |-- TEST

πŸ“– Set project paths

Run the following command to set paths for this project

python tracking/create_default_local_file.py --workspace_dir . --data_dir ./data --save_dir .

After running this command, you can also modify paths by editing these two files

lib/train/admin/local.py  # paths about training
lib/test/evaluation/local.py  # paths about testing

πŸ“– Train ROMTrack

Training with multiple GPUs using DDP. More details of other training settings can be found at tracking/train_romtrack.sh

bash tracking/train_romtrack.sh

πŸ“– Test and evaluate ROMTrack on benchmarks

  • LaSOT/LaSOT_ext/GOT10k-test/TrackingNet/OTB100/UAV123/NFS30. More details of test settings can be found at tracking/test_romtrack.sh
bash tracking/test_romtrack.sh

πŸ“– Compute FLOPs/Params and test speed

python tracking/profile_model.py --config="baseline_stage1"

πŸ“– Visualization

We provide attention maps and feature maps for several sequences on LaSOT. Detailed analysis can be found in our paper.

Speed

πŸ”– Acknowledgments

  • Thanks for STARK, PyTracking and MixFormer Library, which helps us to quickly implement our ideas and test our performances.
  • Our implementation of the ViT is modified from the Timm repo.

πŸ“ Citation

If our work is useful for your research, please feel free to star:star: and cite our paper:

@article{DBLP:journals/corr/abs-2308-05140,
  author       = {Yidong Cai and
                  Jie Liu and
                  Jie Tang and
                  Gangshan Wu},
  title        = {Robust Object Modeling for Visual Tracking},
  journal      = {CoRR},
  volume       = {abs/2308.05140},
  year         = {2023}
}

About

[ICCV 2023] Robust Object Modeling for Visual Tracking, Official Implementation

https://arxiv.org/abs/2308.05140

License:MIT License


Languages

Language:Python 98.8%Language:Shell 1.2%