UITrack
March 22, 2025 ยท View on GitHub
Install the environment
Use the Anaconda
conda create -n uitrack python=3.8
conda activate uitrack
bash install.sh
Data Preparation
Put the tracking datasets in ./data. It should look like:
${UITrack_ROOT}
-- data
-- LaSOTBenchmark
|-- airplane
|-- basketball
|-- bear
...
-- tnl2k
-- train
|-- Arrow_Video_ZZ04_done
|-- Assassin_video_1-Done
...
-- test
|-- advSamp_Baseball_game_002-Done
|-- advSamp_Baseball_video_01-Done
...
-- OTB_sentences
|-- OTB_query_test
|-- OTB_query_train
|-- OTB_videos
-- refcoco
-- annotations
-- refcoco-unc
|-- instances.json
|-- ix_to_token.pkl
...
-- refcocog-google
...
|-- images
|--train2014
|--train2017
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 output
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 UITrack
Download pre-trained MAE ViT-Base weights and put it under $PROJECT_ROOT$/pretrained_models (different pretrained models can also be used, see MAE for more details).
Training with multiple GPUs using DDP.
bash train.sh
Test and evaluate UITrack on benchmarks
Download the model weights and raw results from Baidu Netdisk.
- LaSOT/TNL2K/OTB99-L. More details of test settings can be found at
bash test.sh
Compute FLOPs/Params and test speed
python tracking/profile_model.py --config="uitrack_256_mae_32x4_ep100_prompt"
python tracking/profile_model.py --config="uitrack_384_mae_32x4_ep100_prompt"