/DeepGrabCut-PyTorch

Deep GrabCut in PyTorch

Primary LanguagePythonMIT LicenseMIT

Deep GrabCut (DeepGC)

DEXTR

This is a PyTorch implementation of Deep GrabCut, for object segmentation. We use DeepLab-v2 instead of DeconvNet in this repository.

Installation

The code was tested with Python 3.5. To use this code, please do:

  1. Clone the repo:

    git clone https://github.com/jfzhang95/DeepGrabCut-PyTorch
    cd DeepGrabCut-PyTorch
  2. Install dependencies:

    pip install pytorch torchvision -c pytorch
    pip install matplotlib opencv pillow
  3. You can download pretrained model from GoogleDrive, and then put the model into models/

  4. To try the demo of Deep GrabCut, please run:

    python demo.py

If installed correctly, the result should look like this:

To train Deep GrabCut on PASCAL (or PASCAL + SBD), please follow these additional steps:

  1. Download the pre-trained PSPNet model for semantic segmentation, taken from this repository.

    cd models/
    chmod +x download_pretrained_psp_model.sh
    ./download_pretrained_psp_model.sh
    cd ..
  2. Set the paths in mypath.py, so that they point to the location of PASCAL/SBD dataset.

  3. Run python train.py to train Deep Grabcut.