Skip to content

hynekdav/semi-supervised-VOS

Repository files navigation

Label propagation for one-shot video object segmentation

This project was created as a part of master's thesis at the FEE CTU.

The project is implemented using Python 3.8.5 and with PyTorch 1.8.1. Other used libraries can be found in the requirements.txt file. The original code accompanying the Zhang et al. can be found on Microsoft's GitHub repository.

Installation

First of all Python version at least 3.8 must be installed. Then install pip, which is required to install the project's dependencies. Run following command to install the dependencies:

pip install -r requirements.txt

Usage

The main application entrypoint main.py supports 4 basic commands:

  1. train
  2. inference
  3. validation
  4. evaluation

The application is written using Click library, so every command has automatically generated help pages. Each can be invoked by running:

python main.py <command> --help}.

Examples of running each command are in file example.sh.

Additionally, the project offers various visualizations of predicted frames. The visualizations are invoked same way as the main entrypoint and are located in file visualization.py:

python visualization.py <command> --help}.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Author

Created by Hynek Davídek.

License

MIT