/siamfc

A minimal example (SiamFC in PyTorch) showing how to train and evaluate trackers using GOT-10k toolkit.

Primary LanguagePython

SiamFC

A minimal example showing how to train a tracker on GOT-10k/VID and evaluate its performance on GOT-10k as well as 6 other tracking datasets (OTB (2013/2015), VOT (2013~2018), DTB70, TColor128, NfS and UAV123), using the GOT-10k toolkit.

Performance

GOT-10k

Dataset AO SR0.50 SR0.75
GOT-10k 0.355 0.390 0.118

The scores are comparable with state-of-the-art results on GOT-10k leaderboard.

OTB / UAV123 / DTB70 / TColor128 / NfS

Dataset Success Score Precision Score
OTB2013 0.589 0.781
OTB2015 0.578 0.765
UAV123 0.523 0.731
UAV20L 0.423 0.572
DTB70 0.493 0.731
TColor128 0.510 0.691
NfS (30 fps) - -
NfS (240 fps) 0.520 0.624

VOT2018

Dataset Accuracy Robustness (unnormalized)
VOT2018 0.502 37.25

Dependencies

Install PyTorch, opencv-python and GOT-10k toolkit:

pip install torch opencv-python got10k

Running the tracker

In the root directory of siamfc:

  1. Download pretrained model.pth from Baidu Yun or Google Drive, and put the file under pretrained/siamfc.

  2. Create a symbolic link data to your datasets folder (e.g., data/OTB, data/UAV123, data/GOT-10k):

ln -s ./data /path/to/your/data/folder
  1. Run:
python test.py

By default, the tracking experiments will be executed and evaluated over all 7 datasets. Comment lines in run_tracker.py as you wish if you need to skip some experiments.

Training the tracker

  1. Assume the GOT-10k dataset is located at data/GOT-10K.

  2. Run:

python train.py