Packages not included in Anaconda:
- Pytorch, Torchvision
- OpenCV-python
- Pytorch-OpCounter (If you want to count the MACs / FLOPs of the model.)
- Align the dataset folder directory with dataset/train.
- Modify the parameters at the top of train/train.py, I have made detailed annotation, you need to change it to your own configuration.
CUDA_VISIBLE_DEVICES=xxxx python train.py.
- Download the weights. You can download our pre-calculated saliency maps and results from other methods I've collected on Google Drive.
- Align the dataset folder directory with dataset/test. Because we don't read the labels during the testing stage, you can test any videos.
- Modify the parameters at the top of test/test.py, I have provided detailed comments, you need to change it to your own configuration.
CUDA_VISIBLE_DEVICES=xxxx python test.py. Our model supports multiple GPUs and batch size > 1 during inference. Our model is highly efficient.CUDA_VISIBLE_DEVICES=0 python speed.py. The inference speed will be evaluated on your machine with one GPU and one batch. If you want to count the MACs / FLOPs of the model, uncomment the code in this file.
- Modified from SOCToolbox. The evaluation code uses multiple processes, which is much faster than the matlab version. The metrics are roughly consistent with those of MATLAB. You can change your configuration at the bottom of eval_metrics.py.
- A commonly used evaluation toolbox from DAVSOD.
We have adapted some code from the following repositories. If you find this repository helpful, please consider citing these papers.
- SOCToolbox.
- ssim/iou loss.
- DAVSOD.
- DCFNet.
- STVS.
- STM.