一:数据集制作,参考我的上一篇文章http://blog.csdn.net/qq_29133371/article/details/54408165
数据集制作完成后将这三个文件夹复制至一个文件夹(命名为VOC2007)当中,再移动至$pva-faster-rcnn/data/VOCdevkit2007中,替换原来的VOC2007
二:训练阶段
类别设置:(有几类设置几类,我的这里只标记了1类车辆数据)
1)打开文件/models/pvanet/example_train384/train.prototxt
搜索:num_classes,有两处均改为2(背景和car);
搜索cls_score层,将num_out:21改为2;
搜索bbox_pred层,将num_out:84改为8.
2)修改lib/datasets/pascal_voc.py
self._classes = ('__background__', # always index 0
'car')(只有这一类)
3)修改lib/datasets/imdb.py
数据整理,在一行代码为 boxes[:, 2] = widths[i] - oldx1 - 1 下加入代码:for b in range(len(boxes)):
if boxes[b][2]< boxes[b][0]:
boxes[b][0] = 0
4)修改完pascal_voc.py和imdb.py后进入lib/datasets目录下删除原来的pascal_voc.pyc和imdb.pyc文件,重新生成这两个文件,因为这两个文件是Python编译后的文件,系统会直接调用。
5)记得将dataset/cache文件删除掉,如果在训练自己数据集之前存在。
完成!