A clean PyTorch implementation of SiamRPN tracker described in paper High Performance Visual Tracking with Siamese Region Proposal Network. The code is evaluated on 7 tracking datasets (OTB (2013/2015), VOT (2018), DTB70, TColor128, NfS and UAV123), using the GOT-10k toolkit.
| Dataset | AO | SR0.50 | SR0.75 |
|---|---|---|---|
| GOT-10k | 0.462 | 0.556 | 0.218 |
The scores surpass the highest performance on GOT-10k leaderboard (AO 0.374, SR0.50 0.404) by a large margin.
However, since SiamRPN is trained on 4 extra datasets (ILSVRC-VID, YouTube-BB, ImageNet Detection and COCO) and it does not follow the one-shot principle (zero-overlap between training and test object classes) of GOT-10k, the comparison may not be fair.
| Dataset | Success Score | Precision Score |
|---|---|---|
| OTB2013 | 0.641 | 0.855 |
| OTB2015 | 0.629 | 0.837 |
| UAV123 | 0.599 | 0.770 |
| UAV20L | 0.531 | 0.656 |
| DTB70 | 0.548 | 0.756 |
| TColor128 | 0.533 | 0.736 |
| NfS (30 fps) | 0.453 | 0.529 |
| NfS (240 fps) | 0.589 | 0.706 |
| Dataset | Accuracy | Robustness (unnormalized) |
|---|---|---|
| VOT2018 | 0.576 | 27.00 |
Install PyTorch, opencv-python and GOT-10k toolkit:
pip install torch
pip install opencv-python
pip install --upgrade git+https://github.com/got-10k/toolkit.git@masterGOT-10k toolkit is a visual tracking toolkit that implements evaluation metrics and tracking pipelines for 7 main datasets (GOT-10k, OTB, VOT, UAV123, NfS, etc.).
In the root directory of siamrpn-pytorch:
-
Download pretrained
model.pthfrom Baidu Yun or Google Drive, and put the file underpretrained/siamrpn. -
Create a symbolic link
datato your datasets folder (e.g.,data/OTB,data/UAV123,data/GOT-10k). -
Run:
python run_tracking.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.