Faster RCNN参数详解

1.首先是function model =ZF_for_Faster_RCNN_VOC2007(model)中的参数

% Stride in inputimage pixels at the last conv layer

model.feat_stride                               = 16;

%此处必须是16,和5次卷积对应。若不是16,如为8,则只有左上角1/4的位置有anchor

%% final test

% 对已排好序的abox,先选择6000个,然后进行nms消除,阈值0.7,最后从中筛选300个。

model.final_test.nms.per_nms_topN                  =6000; %图像中目标较少时可考虑降低

model.final_test.nms.after_nms_topN                =300; %图像中目标较少时可考虑降低,recall较低时可考虑增大

 

2. functionconf = proposal_config(varargin)和function conf = fast_rcnn_config(varargin)中的参数

    ip.addParamValue('scales',          600,            @ismatrix);

    % Max pixel size of a scaled input image

    ip.addParamValue('max_size',        1000,          @isscalar);

    ip.addParamValue('batch_size',     128,            @isscalar);

   ip.addParamValue('test_min_box_size',16,           @isscalar);

根据图片和目标的尺度可以修改scale和max_size参数;根据图片中目标的尺度,可以修改test_min_box_size参数。
根据类别数量和每张图包含目标数目,可修改batch_size

3.solve.txt中的参数

base_lr: 0.001 

lr_policy:"step" 

gamma: 0.1

stepsize: 30000

这四个参数根据loss变化情况修改,loss波动较大时考虑降低lr

max_iter: 40000 %样本较少时可以适当降低

weight_decay: 0.0005 %过拟合时可以考虑增大

 

4.function anchors =proposal_generate_anchors(cache_name, varargin)中的参数

    ip.addParamValue('base_size',       16,             @isscalar);

    % ratio list of anchors

    ip.addParamValue('ratios',          [0.5, 1, 2],    @ismatrix);

    % scale list of anchors

    ip.addParamValue('scales',          2.^[3:5],       @ismatrix);   

小目标时,可考虑降低base_size或者scales。

 

5.ZF-net和VGG-net选择

样本较多,目标尺度较大时,优先考虑VGG-net;

小样本容易过拟合,优先考虑ZF-net

 

6. RPN的train_val.prototxt

如果proposal_config中修改了base_size,则这里的loss_bbox层(最后一层)中的loss_weight也需要相应调整

 

你可能感兴趣的:(Faster-RCNN,CNN,目标检测)