This is the python 3.6 version code for the ICCV 2019 paper SPLT[arxiv]. This code has been tested on
- RTX 2080Ti
- CUDA 10.0 + cuDNN 7.6 / CUDA 9.0 + cuDNN 7.1.2
- Python 3.6
- Ubuntu 18.04.2 LTS
The F-score on VOT18-LT35 of this code is 0.610, which is slightly lower than that of origin branch(0.616). However, performance on some videos is actually better than original version. So feel free to try this code :)
Please cite our paper if you find it useful for your research.
@inproceedings{ iccv19_SPLT,
title={`Skimming-Perusal' Tracking: A Framework for Real-Time and Robust Long-term Tracking},
author={Yan, Bin and Zhao, Haojie and Wang, Dong and Lu, Huchuan and Yang, Xiaoyun},
booktitle={IEEE International Conference on Computer Vision (ICCV)},
year={2019}
}
The raw experimental results on VOT2018LT, VOT2019LT, OxUVA and LaSOT benchmarks can be found in Google Drive or Baidu Drive (extraction code: gc9g).
The raw experimental results on TLP benchmark can be found in Baidu Drive (extraction code: 2qz2).
- Create anaconda environment:
conda create -n SPLT36 python=3.6
conda activate SPLT36
- Clone the repo and install requirements:
git clone https://github.com/iiau-tracker/SPLT.git
cd <path/to/SPLT>
pip install -r requirements.txt
- CUDA and cuDNN:
conda install cudatoolkit=10.0
conda install cudnn=7.6.0
# or CUDA 9.0 + cuDNN 7.1.2 for TensorFlow < 1.13.0
conda install cudatoolkit=9.0
conda install cudnn=7.1.2
- Add object_detection to environment variable
sudo gedit ~/.bashrc
# go to the end of the file, add the following command.
export PYTHONPATH=<SPLT_PATH>/lib/object_detection:$PYTHONPATH
# Replace <SPLT_PATH> with your real path
Model | Size | Google Drive | Baidu |
---|---|---|---|
SiamRPN | 215 MB | model.ckpt-470277 | Mirror |
Verifier | 178 MB | V_resnet50_VID_N-65624 | Mirror |
- extract
model.ckpt-470277
to./RPN
- extract
V_resnet50_VID_N-65624
to./Verifier
# modify 'PROJECT_PATH' in 'demo.py'
python demo.py
start from RPN_Verifier_Skim_top3.py
- modify
PROJECT_PATH
inRPN_Verifier_Skim_top3.py
- add
set_global_variable('python', 'env -i <path/to/anaconda/envs/SPLT/bin/python>');
toconfiguration.m
raw resluts (vot-toolkt version 6.0.3)
Download ResNet50 model pretrained on IMAGENET.Then put extracted ckpt file in train_Verifier/lib
cd train_Verifier/experiments
# modify paths in classify.py
python classify.py
# modify paths in triplet_pairs.py
python triplet_pairs.py
# modify paths in train_multi_gpu.py
python train_multi_gpu.py