This repository contains a baseline for the interactive track of the DAVIS Challenge on Video Object Segmentation Wokshop held in CVPR 2018 and CVPR 2019, and is provided to familiarize with the DAVIS interactive track.
This PyTorch code is based on the original OSVOS-Pytorch implementation. It adapts OSVOS to train only on scribbles instead of the full mask.
The code was tested with Miniconda and Python 3.6. After installing the Miniconda environment:
-
Clone the repo:
git clone https://github.com/kmaninis/Scribble-OSVOS cd Scribble-OSVOS
-
Install dependencies:
conda install pytorch=0.3.1 torchvision -c pytorch conda install matplotlib opencv pillow scikit-learn scikit-image
-
Install the DAVIS interactive package following these instructions ('PyPi Install' section), and download the scribbles ('DAVIS Dataset' section).
-
Download the model by running the script inside
models/
:cd models/ chmod +x download_osvos_parent.sh ./download_osvos_parent.sh cd ..
-
Edit the path to DAVIS 2017 in mypath.py
-
Modify any parameters in
demo_interactive.py
(for example the gpu_id). -
To run the interactive session (with the default parameters it takes ~10 hours on a Titan Xp):
python demo_interactive.py
-
A CSV report with all results, and a json file with summarized metrics will be generated under
results/
. The expected output after running all sequences can be found atresults/summary.json
. You can useanalyze_report.py
to generate a figure of performance over time.
Enjoy!
@InProceedings{Caelles_arXiv_2018,
Title = {The 2018 DAVIS Challenge on Video Object Segmentation},
Author = {Sergi Caelles and Alberto Montes and Kevis-Kokitsi Maninis and Yuhua Chen and Luc {Van Gool} and Federico Perazzi and Jordi Pont-Tuset},
journal = {arXiv:1803.00557},
Year = {2018}
}
If you encounter any problems with the code, want to report bugs, etc. please open an issue or contact us at {kmaninis, scaelles}[at]vision[dot]ee[dot]ethz[dot]ch.