Skip to content

lhCheung1991/ya_mxdet

 
 

Repository files navigation

Yet Another MXnet DETection(ya_mxdet)

ya_mxdet provides a simple Faster R-CNN (proposed in Faster R-CNN) implementation fully in MXNet gluon API. More functions are in developing.

ya_mxdet is not exactly the re-implementation of Faster R-CNN. You may need to tune it carefully for your tasks.

News

  • 2018.07.26 Support multiple GPUs training.
  • 2017.09.26 Begin of the beginning.

Dependency

ya_mxdet depends on MXNet 0.12 with GPU support.

Refer to https://mxnet.incubator.apache.org/get_started/install.html for more details.

OpenCV is also required. Installation from source is highly recommended, since in the repo of some linux distribution OpenCV does not support imshow().

Run the model

Before you train a model, you need to prepare Pascal VOC 2007 dataset. You can download it from http://host.robots.ox.ac.uk/pascal/VOC/. Then set a soft link VOC2007Train pointing to VOCdevkit/VOC2007.

You also need a GPU with at least 11GB memory. The code may download VGG16 pretrained model at the first run.

$ mkdir model_dump
$ python3 train_faster_rcnn.py

Test the model

Currently only a visualization tool is finished. You can watch the detection result with

$ python3 test_faster_rcnn.py [model file]

Other issues

All the code are distributed with a MIT-style license. If you use this repo in your research, it would be nice to cite the original Faster R-CNN paper and add the link of this project into your report.

Sample examples

In following samples, the blue boxes are the ground truth while the red boxes are the detection result.

RCNN Demo

Only the boxes with scores higher than 0.5 are shown in the demo.

Demo3

RPN Demo

Only 4 boxes after NMS are shown in the demo.

Demo1 Demo2

About

Yet Another MXnet DETection

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Cuda 74.2%
  • Python 23.5%
  • Jupyter Notebook 2.0%
  • Other 0.3%