Mxnet(2)---faster-rcnn制作自己的数据集进行训练

 Mxnet自带有faster-rcnn的例子,但是如果要用自己的数据进行训练可能需要作一些更改,一个是类别的数目,一个数据的标签。其实它的修改方式和py-faster-rcnn差不多。

**

1.环境的安装可以参考

**:Mxnet—faster-rcnn环境安装

**

2.制作数据集

**
制作数据集可以参考:py-faster-rcnn制作自己的数据集做目标检测。
作成VOC格式的数据集。

**

3.训练

**

  • 训练前的准备
  • 训练和测试命令

3.1训练前的准备

(1)VOCdevkit文件夹复制到rcnn目录中的data文件夹里面。
(2) 修改config.py和pascal_voc.py

修改config.py中的config.NUM_CLASSES = 你的类别数+1(1是背景)

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第1张图片

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第2张图片

修改pascal_voc.py中的self.classes = ['__background__',
'标签1','标签2','标签n']

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第3张图片

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第4张图片

注意:训练前把data\cache清空

3.2 训练和测试命令

训练命令:

bash script/vgg_voc07.sh 0,1 #0,1代表两个gpu

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第5张图片

结束后会在model你们生成模型文件

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第6张图片

在测试之前需要修改类别标签:
这里写图片描述

测试命令:

 python demo.py --prefix ./model/e2e-0010 --epoch 0 --image 000013.jpg --gpu 0

参数 --prefix后面跟模型文件
参数 --image后面跟图片
改变的就是这两个参数,其他的一般不需要改变。
运行结束后会以result后缀结尾的图片保存到目录中,如果需要显示可以添加参数--vis

python demo.py --prefix ./model/e2e-0010 --epoch 0 --image 000013.jpg --gpu 0 --vis

Mxnet(2)---faster-rcnn制作自己的数据集进行训练_第7张图片

附:QQ282617340

参考文献:
1.https://github.com/dmlc/mxnet/tree/master/example/rcnn
2.http://mxnet.io/tutorials/computer_vision/detection.html

你可能感兴趣的:(目标检测,mxnet)