Home

Awesome

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

<img src="https://github.com/yehengchen/mask_rcnn_ros/blob/master/scripts/mask_rcnn.gif" width="50%" height="50%">

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

Quick Start

  1. Clone this repository to your catkin workspace, build workspace and source devel environment
$ cd ~/.catkin_ws/src
$ git clone https://github.com/qixuxiang/mask_rcnn_ros.git
$ cd mask_rcnn_ros
$ python2 -m pip install --upgrade pip
$ python2 -m pip install -r requirements.txt
$ cd ../..
$ catkin_make
$ source devel/setup.bash

  1. Run mask_rcnn node
    $ rosrun mask_rcnn_ros mask_rcnn_node
    

Example

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

$ sudo chmod 777 scripts/download_freiburg3_rgbd_example_bag.sh
$ ./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:

Other issue

References

mask_rcnn_ros