py-faster-rcnn训练自己数据集需要修改的参数

xiaoxiao2021-02-28  155

faster rcnn默认有三种网络模型 ZF(小)、VGG_CNN_M_1024(中)、VGG16 (大)

训练图片大小为500*500,类别数1。

修改VGG_CNN_M_1024模型配置文件

1)train.protxt文件       input-data层的num_class数值由21改为2;       roi-data层的 num_class数值由21改为2;       cls_score层的num_output 数值由21改为2(1+1);       bbox_pred 层的 num_output 数值由84改为8(2*4); 2)test.prototxt文件 cls_score层的 num_output 数值由21改为2(1+1); bbox_pred层的num_output数值由84改为8(2*4); 3)lib/datasets/pascal_voc.py文件      修改self._classes = ('__background__',  '训练的数据类别')

测试模型时需要改的文件faster_rcnn_test.pt

cls_score层的num_output数值由21改为2;

bbox_pred层的num_output数值由84改为8;

cache问题

在重新训练新的数据之前将cache删除

1) py-faster-rcnn/output  2) py-faster-rcnn/data/cache

超参数

py-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/stage_fast_rcnn_solver*.pt

base_lr: 0.001

lr_policy: 'step'

step_size: 30000

display: 20

....

迭代次数在文件py-faster-rcnn/tools/train_faster_rcnn_alt_opt.py中进行修改

max_iters = [80000, 40000, 80000, 40000]

分别对应rpn第1阶段,fast rcnn第1阶段,rpn第2阶段,fast rcnn第2阶段的迭代次数。

开始训练:

cd py-faster-rcnn

./experiments/scripts/faster_rcnn_alt_opt.sh 0 VGG16 pascal_voc

参数表明使用第一块GPU(0);模型是VGG16;训练数据是pascal_voc(voc2007)。

转载请注明原文地址: https://www.6miu.com/read-26398.html

最新回复(0)