Skip to content

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

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.Mask_R-CNN
Notifications You must be signed in to change notification settings

FrederikBark/mask_rcnn_ros

 
 

Repository files navigation

The ROS Package of Mask R-CNN for Object Detection and Segmentation

This is a ROS package of Mask R-CNN algorithm for object detection and segmentation.

The package contains ROS node of Mask R-CNN with topic-based ROS interface.

Most of core algorithm code was based on Mask R-CNN implementation by Matterport, Inc.

Training

This repository doesn't contain code for training Mask R-CNN network model. If you want to train the model on your own class definition or dataset, try it on the upstream reposity and give the result weight to model_path parameter.

Requirements

  • ROS kinetic
  • TensorFlow 1.3+
  • Keras 2.0.8+
  • Numpy, skimage, scipy, Pillow, cython, h5py

ROS Interfaces

Parameters

  • ~input: string

    Topic name of the input RGB image.

    Default: '/camera/rgb/image_raw'

  • ~model_path: string

    Path to the HDF5 model file. If the model_path is default value and the file doesn't exist, the node automatically downloads the file.

    Default: $ROS_HOME/mask_rcnn_coco.h5

  • ~visualization: bool

    If true, the node publish visualized images to ~visualization topic. Default: true

  • ~class_names: string[]

    Class names to be treated as detection targets. Default: All MS COCO classes.

Topics Published

  • ~result: mask_rcnn_ros/Result

    Result of detection. See also Result.msg for detailed description.

  • ~visualization: sensor_mgs/Image

    Visualized result over an input image.

Getting Started

  1. Clone this repository to your catkin workspace
  2. Build workspace and source devel environment
  3. Run mask_rcnn node
    $ rosrun mask_rcnn_ros mask_rcnn_node

Example

There is a simple example launch file using RGB-D SLAM Dataset.

$ ./scripts/download_freiburg3_rgbd_example_bag.sh
$ roslaunch mask_rcnn_ros freiburg3_rgbd_example.launch

Then RViz window will appear and show result like following:

About

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

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.Mask_R-CNN

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.8%
  • Other 0.2%