This is an example showing the use of Mask RCNN in a real application. We train the model to detect balloons only, and then we use the generated masks to keep balloons in color while changing the rest of the image to grayscale.
From the Releases page page:
- Download
mask_rcnn_balloon.h5
. Save it in the root directory of the repo (themask_rcnn
directory). - Download
balloon_dataset.p3
. Expand it such that it's in the pathmask_rcnn/datasets/balloon/
.
Apply splash effect on an image:
python3 balloon.py splash --weights=/path/to/mask_rcnn/mask_rcnn_balloon.h5 --image=<file name or URL>
Apply splash effect on a video. Requires OpenCV 3.2+:
python3 balloon.py splash --weights=/path/to/mask_rcnn/mask_rcnn_balloon.h5 --video=<file name or URL>
Open the inspect_balloon_data.ipynb
or inspect_balloon_model.ipynb
Jupter notebooks. You can use these notebooks to explore the dataset and run through the detection pipelie step by step.
Train a new model starting from pre-trained COCO weights
python3 balloon.py train --dataset=/path/to/balloon/dataset --weights=coco
Resume training a model that you had trained earlier
python3 balloon.py train --dataset=/path/to/balloon/dataset --weights=last
Train a new model starting from ImageNet weights
python3 balloon.py train --dataset=/path/to/balloon/dataset --weights=imagenet
The code in balloon.py
is set to train for 3K steps (30 epochs of 100 steps each), and using a batch size of 2.
Update the schedule to fit your needs.