MaskRCNNs for Object Detection

MaskRCNN is a region-based convolutional neural network, used for object detection.

What makes this algorithm cutting edge is the ability to perform detections using a mask (outline of the object), not just by drawing a bounding box around the object of interest.

By identifying each pixel related to the object of interest, a new range of applications are now possible.

This could be rust, hire car damage or potholes in roads!

I use this algorithm across a range of use cases. Due to confidentiality agreements, I am unable to showcase all my models, so I've used UAV footage or publicly available video to demonstrate these AI applications.

The below animation shows the comparison between YOLO object detection (top two videos) and the MaskRCNN algorithms (bottom two videos):

Credit to Karol Majek

https://www.youtube.com/channel/UCJz_JznWpOG0BK7p_JDfY8A

Creating datasets for MaskRCNNs is more complex, as the trainer needs to create a polygon, outlining the object, rather than simply drawing a box. I then have a simple script that is able to convert the MaskRCNN data set into the traditional bounding boxes, for use with SSDs, YOLO or Faster RCNN models.

Below is an example of pothole detection, created from custom training data. We used only a small subset, and through the benefits of transfer learning were able to create a quick Proof of Concept level model for detecting anomalies in roads:

Another example is of vehicle identification and counting, shot by Telstra's Chief Pilot Rob Harvey up in Queensland as part of a Proof of Concept:

An online web example of car hire damage detection:

Credit to Priya Dwivedi

www.analyticsvidhya.com/blog/2018/07/building-mask-r-cnn-model-detecting-damage-cars-python