This is the official inference code for SiamMask (CVPR2019). For technical details, please refer to:
Fast Online Object Tracking and Segmentation: A Unifying Approach
Qiang Wang*, Li Zhang*, Luca Bertinetto*, Weiming Hu, Philip H.S. Torr (* denotes equal contribution)
CVPR2019
[Paper] [Video] [Project Page]
All the code has been tested on Ubuntu 16.04, Python 3.6, Pytorch 0.4.1, CUDA 9.2, RTX 2080 GPUs
- Clone the repository
git clone https://github.com/foolwood/SiamMask.git && cd SiamMask
export SiamMask=$PWD
- Setup python environment
conda create -n siammask python=3.6
source activate siammask
pip install -r requirements.txt
bash make.sh
- Add the project to PYTHONPATH
export PYTHONPATH=$PWD:$PYTHONPATH
- Setup your environment
- Download the SiamMask model
cd $SiamMask/experiments/siammask
wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth
wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth
- Run
demo.py
cd $SiamMask/experiments/siammask
export PYTHONPATH=$PWD:$PYTHONPATH
python ../../tools/demo.py --resume SiamMask_DAVIS.pth --config config_davis.json
- Setup your environment
- Download test data
cd $SiamMask/data
bash get_test_data.sh
- Download pretrained models
cd $SiamMask/experiments/siammask
wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth
wget -q http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth
- Evaluate performance on VOT
bash test_mask_refine.sh config_vot.json SiamMask_VOT.pth VOT2016 0
bash test_mask_refine.sh config_vot.json SiamMask_VOT.pth VOT2018 0
python ../../tools/eval.py --dataset VOT2016 --tracker_prefix Cus --result_dir ./test/VOT2016
python ../../tools/eval.py --dataset VOT2018 --tracker_prefix Cus --result_dir ./test/VOT2018
- Evaluate performance on DAVIS (less than 50s)
bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth DAVIS2016 0
bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth DAVIS2017 0
- Evaluate performance on Youtube-VOS (need download data from website)
bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth ytb_vos 0
These are the reproduction results from this repository. All results can be downloaded from our project page.
Tracker | VOT2016 EAO / A / R |
VOT2018 EAO / A / R |
DAVIS2016 J / F |
DAVIS2017 J / F |
Youtube-VOS J_s / J_u / F_s / F_u |
Speed |
---|---|---|---|---|---|---|
SiamMask w/o Mask | 0.412 / 0.623 / 0.233 | 0.363 / 0.584 / 0.300 | - / - | - / - | - / - / - / - | 76.95 FPS |
SiamMask | 0.433 / 0.639 / 0.214 | 0.380 / 0.609 / 0.276 | 0.713 / 0.674 | 0.543 / 0.585 | 0.602 / 0.451 / 0.582 / 0.477 | 56.23 FPS |
Note: Speed are tested on a RTX 2080
Licensed under an MIT license.
If you use this code, please cite:
@article{Wang2019SiamMask,
title={Fast Online Object Tracking and Segmentation: A Unifying Approach},
author={Wang, Qiang and Zhang, Li and Bertinetto, Luca and Hu, Weiming and Torr, Philip HS},
journal={The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
year={2019}
}