/Cascade-Mask-RCNN

Cascade Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow, based on matterport mrcnn

Primary LanguagePythonMIT LicenseMIT

Cascade-Mask-RCNN

Cascade Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow, based on matterport mrcnn.

This repository is based on matterport's Mask RCNN, All codes are the same as matterport except 'mrcnn/model.py', I add my cascade architecture into this file . Therefore, the usage methods are also the same as the existing Mask RCNN work , which based on matterport from GitHub or blogs.

Useage

All you need to do is replace the 'mrcnn/model.py' to the original file

then, I change the original code samples/ballon.py to carplate.py, try

python carplate.py train --dataset=..\..\datasets\carplates --weights=coco   

Reference

According to the paper, I use the (c) architecture written by the author.

1

“I” is input image, “conv” backbone convolutions, “pool” region-wise feature extraction, “H” network head, “B” bounding box, and “C” classification. “B0” is proposals in all architectures.“S” denotes a segmentation branch.

Result

For simplicity, I use a small carplate datasets to train this model, so I can finish training in just a few hours, and it's also convenient to my debug . For instance, "mrcnn3_bbox_loss" below means this loss come from the stage3 ( in figure (c) above)

2

some detection results

3

4

Last words

Implemented code is not stable during training, especially little datasets. Maybe I haven't understand the paper completely now. I haven't find better solution, If you have better idea, welcome correction!