Mask_RCNN - Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow

  •        255

This is an implementation of Mask R-CNN on Python 3, Keras, and TensorFlow. The model generates bounding boxes and segmentation masks for each instance of an object in the image. It's based on Feature Pyramid Network (FPN) and a ResNet101 backbone. The code is documented and designed to be easy to extend. If you use it in your research, please consider citing this repository (bibtex below). If you work on 3D vision, you might find our recently released Matterport3D dataset useful as well. This dataset was created from 3D-reconstructed spaces captured by our customers who agreed to make them publicly available for academic use. You can see more examples here.

https://github.com/matterport/Mask_RCNN

Tags
Implementation
License
Platform

   




Related Projects

tf-faster-rcnn - Tensorflow Faster RCNN for Object Detection

  •    Python

For a good and more up-to-date implementation for faster/mask RCNN with multi-gpu support, please see the example in TensorPack here. A Tensorflow implementation of faster RCNN detection framework by Xinlei Chen (xinleic@cs.cmu.edu). This repository is based on the python Caffe implementation of faster RCNN available here.

keras-rcnn - Keras package for region-based convolutional neural networks (RCNNs)

  •    Python

keras-rcnn is the Keras package for region-based convolutional neural networks. The data is made up of a list of dictionaries corresponding to images.

Mask-RCNN - A PyTorch implementation of the architecture of Mask RCNN, serves as an introduction to working with PyTorch

  •    Python

A PyTorch implementation of the architecture of Mask RCNN, serves as an introduction to working with PyTorch

mx-maskrcnn - An MXNet implementation of Mask R-CNN

  •    Python

An MXNet implementation of Mask R-CNN. This repository is based largely on the mx-rcnn implementation of Faster RCNN available here.

Detectron

  •    Python

Example output of e2e_mask_rcnn-R-101-FPN_2x using Detectron pretrained weight. Corresponding example output from Detectron.


adversarial-frcnn - A-Fast-RCNN (CVPR 2017)

  •    Python

This is a Caffe based version of A-Fast-RCNN (arxiv_link). Although we originally implement it on torch, this Caffe re-implementation is much simpler, faster and easier to use. We release the code for training A-Fast-RCNN with Adversarial Spatial Dropout Network.

Android-Object-Detection - :coffee: Fast-RCNN and Scene Recognition using Caffe

  •    Java

Get the Caffe model and push it to Phone SDCard. For object detection, network(*.prototxt) should use ROILayer, you can refer to Fast-RCNN. For scene recognition(object recognition), it can use any caffe network and weight with memory input layer. Scene recognition - Convolutional neural networks trained on Places Input a picture of a place or scene and predicts it.

luminoth - Deep Learning toolkit for Computer Vision

  •    Python

Luminoth is an open source toolkit for computer vision. Currently, we support object detection, but we are aiming for much more. It is built in Python, using TensorFlow and Sonnet. Read the full documentation here.

Detectron - FAIR's research platform for object detection research, implementing popular algorithms like Mask R-CNN and RetinaNet

  •    Python

Detectron is Facebook AI Research's software system that implements state-of-the-art object detection algorithms, including Mask R-CNN. It is written in Python and powered by the Caffe2 deep learning framework. At FAIR, Detectron has enabled numerous research projects, including: Feature Pyramid Networks for Object Detection, Mask R-CNN, Detecting and Recognizing Human-Object Interactions, Focal Loss for Dense Object Detection, Non-local Neural Networks, Learning to Segment Every Thing, and Data Distillation: Towards Omni-Supervised Learning.

pytorch-faster-rcnn - 0.4 updated. Support cpu test and demo.

  •    Jupyter

The main differences between new and old master branch are in this two commits: 9d4c24e, c899ce7 The change is related to this issue; master now matches all the details in tf-faster-rcnn so that we can now convert pretrained tf model to pytorch model. A pytorch implementation of faster RCNN detection framework based on Xinlei Chen's tf-faster-rcnn. Xinlei Chen's repository is based on the python Caffe implementation of faster RCNN available here.

tensornets - High level network definitions with pre-trained weights in TensorFlow

  •    Python

High level network definitions with pre-trained weights in TensorFlow (tested with >= 1.1.0). You can install TensorNets from PyPI (pip install tensornets) or directly from GitHub (pip install git+https://github.com/taehoonlee/tensornets.git).

crfasrnn_keras - CRF-RNN Keras/Tensorflow version

  •    Python

This repository contains Keras/Tensorflow code for the "CRF-RNN" semantic image segmentation method, published in the ICCV 2015 paper Conditional Random Fields as Recurrent Neural Networks. This paper was initially described in an arXiv tech report. The online demo of this project won the Best Demo Prize at ICCV 2015. Original Caffe-based code of this project can be found here. Results produced with this Keras/Tensorflow code are almost identical to that with the Caffe-based version. The root directory of the clone will be referred to as crfasrnn_keras hereafter.

chainer-faster-rcnn - Object Detection with Faster R-CNN in Chainer

  •    Python

This is an experimental implementation of Faster R-CNN in Chainer based on Ross Girshick's work: py-faster-rcnn codes. Using anaconda is strongly recommended.

simple-faster-rcnn-pytorch - A simplified implemention of Faster R-CNN that replicate performance from origin paper

  •    Jupyter

VGG16 train on trainval and test on test split. Note: the training shows great randomness, you may need a bit of luck and more epoches of training to reach the highest mAP. However, it should be easy to surpass the lower bound.

RON - RON: Reverse Connection with Objectness Prior Networks for Object Detection, CVPR 2017

  •    Python

RON is a state-of-the-art visual object detection system for efficient object detection framework. The code is modified from py-faster-rcnn. You can use the code to train/evaluate a network for object detection task. For more details, please refer to our CVPR paper. Note: SSD300 and SSD500 are the original SSD model from SSD.

deepmask - Torch implementation of DeepMask and SharpMask

  •    Lua

This repository contains a Torch implementation for both the DeepMask and SharpMask object proposal algorithms. DeepMask is trained with two objectives: given an image patch, one branch of the model outputs a class-agnostic segmentation mask, while the other branch outputs how likely the patch is to contain an object. At test time, DeepMask is applied densely to an image and generates a set of object masks, each with a corresponding objectness score. These masks densely cover the objects in an image and can be used as a first step for object detection and other tasks in computer vision.

cascade-rcnn - Caffe implementation of multiple popular object detection frameworks

  •    C++

This repository is written by Zhaowei Cai at UC San Diego. This repository implements mulitple popular object detection algorithms, including Faster R-CNN, R-FCN, FPN, and our recently proposed Cascade R-CNN, on the MS-COCO and PASCAL VOC datasets. Multiple choices are available for backbone network, including AlexNet, VGG-Net and ResNet. It is written in C++ and powered by Caffe deep learning toolbox.

saliency - TensorFlow implementation for SmoothGrad, Grad-CAM, Guided backprop, Integrated Gradients and other saliency techniques

  •    Jupyter

If the sign of the value given by the saliency mask is not important, then use VisualizeImageGrayscale, otherwise use VisualizeImageDiverging. See the SmoothGrad paper for more details on which visualization method to use. This example iPython notebook shows these techniques is a good starting place.

ui-mask - Mask on an input field so the user can only type pre-determined pattern

  •    Javascript

Apply a mask on an input field so the user can only type pre-determined pattern.You can customize several behaviors of ui-mask by taking advantage of the ui-options object. Declare ui-options as an additional attribute on the same element where you declare ui-mask.

Pyod - A Python Toolkit for Scalable Outlier Detection (Anomaly Detection)

  •    Python

Important Notes: PyOD contains some neural network based models, e.g., AutoEncoders, which are implemented in keras. However, PyOD would NOT install keras and tensorflow automatically. This would reduce the risk of damaging your local installations. You are responsible for installing keras and tensorflow if you want to use neural net based models. An instruction is provided here. Anomaly detection resources, e.g., courses, books, papers and videos.