数据层名: AnnotatedData
1、transform_param
作用:数据变换
transform_param {# 镜像,左右翻转mirror: true # 三个通道均值mean_value: 104.0 mean_value: 117.0 mean_value: 123.0#将输入图像resize到特定尺寸,如果设置多个,可以变成多尺度训练resize_param { prob: 1.0resize_mode: WARPheight: 320width: 320interp_mode: LINEARinterp_mode: AREAinterp_mode: LANCZOS4}# batch sampler 的额外限制条件(坐标表示形式)emit_constraint {emit_type: CENTER}#数据像素变换,数据增强distort_param {#随机改变图像亮度(Random Brightness) brightness_prob: 0.5 brightness_delta: 32.0#随机改变对比度、色度、饱和度(Random Contrast, Hue, Saturation)contrast_prob: 0.5contrast_lower: 0.5contrast_upper: 1.5hue_prob: 0.5hue_delta: 18.0saturation_prob: 0.5saturation_lower: 0.5saturation_upper: 1.5#随机改变颜色通道random_order_prob: 0.0}#对原图周围用均值扩充,变成一个大图片,后面缩放到特定尺寸之后,原图目标就会缩小,目的是使网络适应小尺寸的目标,增强小目标的检测效果expand_param {prob: 0.5 #expand发生的概率 max_expand_ratio: 2.0 #最大的扩充倍数}}
2、data_param
作用:指定训练数据的路径,批大小,和数据格式
data_param {source: "E:/dataset/train_lmdb/" #训练数据路径batch_size: 16 #训练批大小backend: LMDB #训练数据格式(LMDB,LEVELDB)}
3、annotated_data_param
作用:随机采样
annotated_data_param {batch_sampler {sampler {##随机选择的高范围(占原图高的比例)min_scale: 0.3 max_scale: 1.0#随机选择的宽高比min_aspect_ratio: 0.5max_aspect_ratio: 2.0}#采样的patch必须满足的约束条件sample_constraint {#min_jaccard_overlap: 0.3 #裁剪出的patch和目标框的IOU(用的最多)#min_sample_coverage:0.1 #表示裁剪出的patch中,目标占了多少百分比min_object_coverage: 1.0 #裁剪出的patch中的目标,占完整目标的百分比(YuDetectNet中使用)}max_sample: 1 #一个采样器要选择的符合条件的patch数量max_trials: 50 #一个采样器的最大尝试次数,如果超过这个次数就不再查找}......label_map_file: "./labelmap_voc.prototxt" #类别标签文件}