DeepGrabCut-PyTorch
DeepGrabCut-PyTorch copied to clipboard
Deep GrabCut in PyTorch
Deep GrabCut (DeepGC)

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:
-
Clone the repo:
git clone https://github.com/jfzhang95/DeepGrabCut-PyTorch cd DeepGrabCut-PyTorch -
Install dependencies:
pip install -r requirements.txt -
Download pretained automatically. Or manually from GoogleDrive, and then put the model into
models.gdown --output ./models/deepgc_pascal_epoch-99.pth --id 1N8bICHnFit6lLGvGwVu6bnDttyTk6wGH -
To try the demo of Deep GrabCut, please run:
python demo.py # 1-When window appears, press "s" # 2-Draw circle # 3-Press spacebar and wait for 2 - 3 seconds
If installed correctly, the result should look like this:

To train Deep GrabCut on VOC (or VOC + SBD), please follow these additional steps:
-
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 .. -
Set the paths in
mypath.py, so that they point to the location of VOC/SBD dataset. -
Run
python train.pyto train Deep Grabcut. -
If you want to train model on COCO dataset, you should first config COCO dataset path in mypath.py, and then run
python train_coco.pyto train model.