NUEVO: ¡Ahora incluye código para capacitación e inferencia!
Esta es la implementación oficial con código de capacitación para SiamMASK (CVPR2019). Para obtener detalles técnicos, consulte:
Seguimiento y segmentación de objetos en línea rápidos: un enfoque unificador
Qiang Wang*, Li Zhang*, Luca Bertinetto*, Weiming Hu, Philip HS Torr (*denota la misma contribución)
CVPR 2019
[Paper] [Video] [Página del proyecto]
Si encuentra útil este código, considere citar:
@inproceedings{wang2019fast,
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},
booktitle={Proceedings of the IEEE conference on computer vision and pattern recognition},
year={2019}
}
Este código ha sido probado en Ubuntu 16.04, Python 3.6, Pytorch 0.4.1, CUDA 9.2, RTX 2080 GPUS
git clone https://github.com/foolwood/SiamMask.git && cd SiamMask
export SiamMask=$PWD
conda create -n siammask python=3.6
source activate siammask
pip install -r requirements.txt
bash make.sh
export PYTHONPATH=$PWD:$PYTHONPATH
cd $SiamMask /experiments/siammask_sharp
wget http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth
wget http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pthdemo.py cd $SiamMask /experiments/siammask_sharp
export PYTHONPATH= $PWD : $PYTHONPATH
python ../../tools/demo.py --resume SiamMask_DAVIS.pth --config config_davis.json cd $SiamMask /data
sudo apt-get install jq
bash get_test_data.sh cd $SiamMask /experiments/siammask_sharp
wget http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth
wget http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT_LD.pth
wget http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pthbash 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
bash test_mask_refine.sh config_vot.json SiamMask_VOT.pth VOT2019 0
bash test_mask_refine.sh config_vot18.json SiamMask_VOT_LD.pth VOT2016 0
bash test_mask_refine.sh config_vot18.json SiamMask_VOT_LD.pth VOT2018 0
python ../../tools/eval.py --dataset VOT2016 --tracker_prefix C --result_dir ./test/VOT2016
python ../../tools/eval.py --dataset VOT2018 --tracker_prefix C --result_dir ./test/VOT2018
python ../../tools/eval.py --dataset VOT2019 --tracker_prefix C --result_dir ./test/VOT2019bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth DAVIS2016 0
bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth DAVIS2017 0bash test_mask_refine.sh config_davis.json SiamMask_DAVIS.pth ytb_vos 0Estos son los resultados de la reproducción de este repositorio. Todos los resultados se pueden descargar desde la página de nuestro proyecto.
| Rastreador | VOT2016 EAO / A / R | VOT2018 EAO / A / R | Davis2016 J / F | Davis2017 J / F | Youtube-vos J_s / j_u / f_s / f_u | Velocidad |
|---|---|---|---|---|---|---|
| Buzón de siammask | 0.412/0.623/0.233 | 0.363/0.584/0.300 | - / - | - / - | - / - / - / - | 77 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 fps |
| Siammask-ld | 0.455 / 0.634 / 0.219 | 0.423 / 0.615 / 0.248 | - / - | - / - | - / - / - / - | 56 fps |
Nota:
-box informa una caja delimitadora alineada por el eje desde la rama de la caja.-LD significa entrenamiento con un gran conjunto de datos (YTB-BB+YTB-VOS+VID+COCO+DET). (Este modelo fue entrenado en el conjunto de datos ImageNet-1k)
cd $SiamMask/experiments
wget http://www.robots.ox.ac.uk/~qwang/resnet.model
ls | grep siam | xargs -I {} cp resnet.model {}
cd $SiamMask/experiments/siammask_base/
bash run.sh
run.shbash test_all.sh -s 1 -e 20 -d VOT2018 -g 4 # test all snapshots with 4 GPUs # bash test_all.sh -m [best_test_model] -d VOT2018 -n [thread_num] -g [gpu_num] # 8 threads with 4 GPUS
bash test_all.sh -m snapshot/checkpoint_e12.pth -d VOT2018 -n 8 -g 4 # 8 threads with 4 GPUS cd $SiamMask/experiments/siammask_sharp
bash run.sh <best_base_model>
bash run.sh checkpoint_e12.pth
bash test_all.sh -s 1 -e 20 -d VOT2018 -g 4 cd $SiamMask/experiments/siamrpn_resnet
bash run.sh
bash test_all.sh -h
bash test_all.sh -s 1 -e 20 -d VOT2018 -g 4Con licencia bajo una licencia MIT.