mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1898 lines
30 KiB
1898 lines
30 KiB
layer { |
|
name: "data" |
|
type: "AnnotatedData" |
|
top: "data" |
|
top: "label" |
|
include { |
|
phase: TRAIN |
|
} |
|
transform_param { |
|
mirror: true |
|
mean_value: 104 |
|
mean_value: 117 |
|
mean_value: 123 |
|
resize_param { |
|
prob: 1 |
|
resize_mode: WARP |
|
height: 300 |
|
width: 300 |
|
interp_mode: LINEAR |
|
interp_mode: AREA |
|
interp_mode: NEAREST |
|
interp_mode: CUBIC |
|
interp_mode: LANCZOS4 |
|
} |
|
emit_constraint { |
|
emit_type: CENTER |
|
} |
|
distort_param { |
|
brightness_prob: 0.5 |
|
brightness_delta: 32 |
|
contrast_prob: 0.5 |
|
contrast_lower: 0.5 |
|
contrast_upper: 1.5 |
|
hue_prob: 0.5 |
|
hue_delta: 18 |
|
saturation_prob: 0.5 |
|
saturation_lower: 0.5 |
|
saturation_upper: 1.5 |
|
random_order_prob: 0.0 |
|
} |
|
expand_param { |
|
prob: 0.5 |
|
max_expand_ratio: 4.0 |
|
} |
|
} |
|
data_param { |
|
source: "train_lmdb/" |
|
batch_size: 16 |
|
backend: LMDB |
|
} |
|
annotated_data_param { |
|
batch_sampler { |
|
max_sample: 1 |
|
max_trials: 1 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
min_jaccard_overlap: 0.1 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
min_jaccard_overlap: 0.3 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
min_jaccard_overlap: 0.5 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
min_jaccard_overlap: 0.7 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
min_jaccard_overlap: 0.9 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
batch_sampler { |
|
sampler { |
|
min_scale: 0.3 |
|
max_scale: 1.0 |
|
min_aspect_ratio: 0.5 |
|
max_aspect_ratio: 2.0 |
|
} |
|
sample_constraint { |
|
max_jaccard_overlap: 1.0 |
|
} |
|
max_sample: 1 |
|
max_trials: 50 |
|
} |
|
} |
|
} |
|
|
|
layer { |
|
name: "data_bn" |
|
type: "BatchNorm" |
|
bottom: "data" |
|
top: "data_bn" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "data_scale" |
|
type: "Scale" |
|
bottom: "data_bn" |
|
top: "data_bn" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "conv1_h" |
|
type: "Convolution" |
|
bottom: "data_bn" |
|
top: "conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 32 |
|
pad: 3 |
|
kernel_size: 7 |
|
stride: 2 |
|
weight_filler { |
|
type: "msra" |
|
variance_norm: FAN_OUT |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv1_bn_h" |
|
type: "BatchNorm" |
|
bottom: "conv1_h" |
|
top: "conv1_h" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "conv1_scale_h" |
|
type: "Scale" |
|
bottom: "conv1_h" |
|
top: "conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "conv1_relu" |
|
type: "ReLU" |
|
bottom: "conv1_h" |
|
top: "conv1_h" |
|
} |
|
layer { |
|
name: "conv1_pool" |
|
type: "Pooling" |
|
bottom: "conv1_h" |
|
top: "conv1_pool" |
|
pooling_param { |
|
kernel_size: 3 |
|
stride: 2 |
|
} |
|
} |
|
layer { |
|
name: "layer_64_1_conv1_h" |
|
type: "Convolution" |
|
bottom: "conv1_pool" |
|
top: "layer_64_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 32 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_64_1_bn2_h" |
|
type: "BatchNorm" |
|
bottom: "layer_64_1_conv1_h" |
|
top: "layer_64_1_conv1_h" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_64_1_scale2_h" |
|
type: "Scale" |
|
bottom: "layer_64_1_conv1_h" |
|
top: "layer_64_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_64_1_relu2" |
|
type: "ReLU" |
|
bottom: "layer_64_1_conv1_h" |
|
top: "layer_64_1_conv1_h" |
|
} |
|
layer { |
|
name: "layer_64_1_conv2_h" |
|
type: "Convolution" |
|
bottom: "layer_64_1_conv1_h" |
|
top: "layer_64_1_conv2_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 32 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_64_1_sum" |
|
type: "Eltwise" |
|
bottom: "layer_64_1_conv2_h" |
|
bottom: "conv1_pool" |
|
top: "layer_64_1_sum" |
|
} |
|
layer { |
|
name: "layer_128_1_bn1_h" |
|
type: "BatchNorm" |
|
bottom: "layer_64_1_sum" |
|
top: "layer_128_1_bn1_h" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_scale1_h" |
|
type: "Scale" |
|
bottom: "layer_128_1_bn1_h" |
|
top: "layer_128_1_bn1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_relu1" |
|
type: "ReLU" |
|
bottom: "layer_128_1_bn1_h" |
|
top: "layer_128_1_bn1_h" |
|
} |
|
layer { |
|
name: "layer_128_1_conv1_h" |
|
type: "Convolution" |
|
bottom: "layer_128_1_bn1_h" |
|
top: "layer_128_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_bn2" |
|
type: "BatchNorm" |
|
bottom: "layer_128_1_conv1_h" |
|
top: "layer_128_1_conv1_h" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_scale2" |
|
type: "Scale" |
|
bottom: "layer_128_1_conv1_h" |
|
top: "layer_128_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_relu2" |
|
type: "ReLU" |
|
bottom: "layer_128_1_conv1_h" |
|
top: "layer_128_1_conv1_h" |
|
} |
|
layer { |
|
name: "layer_128_1_conv2" |
|
type: "Convolution" |
|
bottom: "layer_128_1_conv1_h" |
|
top: "layer_128_1_conv2" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_conv_expand_h" |
|
type: "Convolution" |
|
bottom: "layer_128_1_bn1_h" |
|
top: "layer_128_1_conv_expand_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
bias_term: false |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_128_1_sum" |
|
type: "Eltwise" |
|
bottom: "layer_128_1_conv2" |
|
bottom: "layer_128_1_conv_expand_h" |
|
top: "layer_128_1_sum" |
|
} |
|
layer { |
|
name: "layer_256_1_bn1" |
|
type: "BatchNorm" |
|
bottom: "layer_128_1_sum" |
|
top: "layer_256_1_bn1" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_scale1" |
|
type: "Scale" |
|
bottom: "layer_256_1_bn1" |
|
top: "layer_256_1_bn1" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_relu1" |
|
type: "ReLU" |
|
bottom: "layer_256_1_bn1" |
|
top: "layer_256_1_bn1" |
|
} |
|
layer { |
|
name: "layer_256_1_conv1" |
|
type: "Convolution" |
|
bottom: "layer_256_1_bn1" |
|
top: "layer_256_1_conv1" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_bn2" |
|
type: "BatchNorm" |
|
bottom: "layer_256_1_conv1" |
|
top: "layer_256_1_conv1" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_scale2" |
|
type: "Scale" |
|
bottom: "layer_256_1_conv1" |
|
top: "layer_256_1_conv1" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_relu2" |
|
type: "ReLU" |
|
bottom: "layer_256_1_conv1" |
|
top: "layer_256_1_conv1" |
|
} |
|
layer { |
|
name: "layer_256_1_conv2" |
|
type: "Convolution" |
|
bottom: "layer_256_1_conv1" |
|
top: "layer_256_1_conv2" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_conv_expand" |
|
type: "Convolution" |
|
bottom: "layer_256_1_bn1" |
|
top: "layer_256_1_conv_expand" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
bias_term: false |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_256_1_sum" |
|
type: "Eltwise" |
|
bottom: "layer_256_1_conv2" |
|
bottom: "layer_256_1_conv_expand" |
|
top: "layer_256_1_sum" |
|
} |
|
layer { |
|
name: "layer_512_1_bn1" |
|
type: "BatchNorm" |
|
bottom: "layer_256_1_sum" |
|
top: "layer_512_1_bn1" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_scale1" |
|
type: "Scale" |
|
bottom: "layer_512_1_bn1" |
|
top: "layer_512_1_bn1" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_relu1" |
|
type: "ReLU" |
|
bottom: "layer_512_1_bn1" |
|
top: "layer_512_1_bn1" |
|
} |
|
layer { |
|
name: "layer_512_1_conv1_h" |
|
type: "Convolution" |
|
bottom: "layer_512_1_bn1" |
|
top: "layer_512_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
bias_term: false |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 # 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_bn2_h" |
|
type: "BatchNorm" |
|
bottom: "layer_512_1_conv1_h" |
|
top: "layer_512_1_conv1_h" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_scale2_h" |
|
type: "Scale" |
|
bottom: "layer_512_1_conv1_h" |
|
top: "layer_512_1_conv1_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_relu2" |
|
type: "ReLU" |
|
bottom: "layer_512_1_conv1_h" |
|
top: "layer_512_1_conv1_h" |
|
} |
|
layer { |
|
name: "layer_512_1_conv2_h" |
|
type: "Convolution" |
|
bottom: "layer_512_1_conv1_h" |
|
top: "layer_512_1_conv2_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
bias_term: false |
|
pad: 2 # 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
dilation: 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_conv_expand_h" |
|
type: "Convolution" |
|
bottom: "layer_512_1_bn1" |
|
top: "layer_512_1_conv_expand_h" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
bias_term: false |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 1 # 2 |
|
weight_filler { |
|
type: "msra" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0.0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "layer_512_1_sum" |
|
type: "Eltwise" |
|
bottom: "layer_512_1_conv2_h" |
|
bottom: "layer_512_1_conv_expand_h" |
|
top: "layer_512_1_sum" |
|
} |
|
layer { |
|
name: "last_bn_h" |
|
type: "BatchNorm" |
|
bottom: "layer_512_1_sum" |
|
top: "layer_512_1_sum" |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
param { |
|
lr_mult: 0.0 |
|
} |
|
} |
|
layer { |
|
name: "last_scale_h" |
|
type: "Scale" |
|
bottom: "layer_512_1_sum" |
|
top: "layer_512_1_sum" |
|
param { |
|
lr_mult: 1.0 |
|
decay_mult: 1.0 |
|
} |
|
param { |
|
lr_mult: 2.0 |
|
decay_mult: 1.0 |
|
} |
|
scale_param { |
|
bias_term: true |
|
} |
|
} |
|
layer { |
|
name: "last_relu" |
|
type: "ReLU" |
|
bottom: "layer_512_1_sum" |
|
top: "fc7" |
|
} |
|
|
|
layer { |
|
name: "conv6_1_h" |
|
type: "Convolution" |
|
bottom: "fc7" |
|
top: "conv6_1_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv6_1_relu" |
|
type: "ReLU" |
|
bottom: "conv6_1_h" |
|
top: "conv6_1_h" |
|
} |
|
layer { |
|
name: "conv6_2_h" |
|
type: "Convolution" |
|
bottom: "conv6_1_h" |
|
top: "conv6_2_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 256 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 2 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_relu" |
|
type: "ReLU" |
|
bottom: "conv6_2_h" |
|
top: "conv6_2_h" |
|
} |
|
layer { |
|
name: "conv7_1_h" |
|
type: "Convolution" |
|
bottom: "conv6_2_h" |
|
top: "conv7_1_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 64 |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv7_1_relu" |
|
type: "ReLU" |
|
bottom: "conv7_1_h" |
|
top: "conv7_1_h" |
|
} |
|
layer { |
|
name: "conv7_2_h" |
|
type: "Convolution" |
|
bottom: "conv7_1_h" |
|
top: "conv7_2_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 2 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_relu" |
|
type: "ReLU" |
|
bottom: "conv7_2_h" |
|
top: "conv7_2_h" |
|
} |
|
layer { |
|
name: "conv8_1_h" |
|
type: "Convolution" |
|
bottom: "conv7_2_h" |
|
top: "conv8_1_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 64 |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv8_1_relu" |
|
type: "ReLU" |
|
bottom: "conv8_1_h" |
|
top: "conv8_1_h" |
|
} |
|
layer { |
|
name: "conv8_2_h" |
|
type: "Convolution" |
|
bottom: "conv8_1_h" |
|
top: "conv8_2_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
pad: 0 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_relu" |
|
type: "ReLU" |
|
bottom: "conv8_2_h" |
|
top: "conv8_2_h" |
|
} |
|
layer { |
|
name: "conv9_1_h" |
|
type: "Convolution" |
|
bottom: "conv8_2_h" |
|
top: "conv9_1_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 64 |
|
pad: 0 |
|
kernel_size: 1 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv9_1_relu" |
|
type: "ReLU" |
|
bottom: "conv9_1_h" |
|
top: "conv9_1_h" |
|
} |
|
layer { |
|
name: "conv9_2_h" |
|
type: "Convolution" |
|
bottom: "conv9_1_h" |
|
top: "conv9_2_h" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 128 |
|
pad: 0 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_relu" |
|
type: "ReLU" |
|
bottom: "conv9_2_h" |
|
top: "conv9_2_h" |
|
} |
|
layer { |
|
name: "conv4_3_norm" |
|
type: "Normalize" |
|
bottom: "layer_256_1_bn1" |
|
top: "conv4_3_norm" |
|
norm_param { |
|
across_spatial: false |
|
scale_filler { |
|
type: "constant" |
|
value: 20 |
|
} |
|
channel_shared: false |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_loc" |
|
type: "Convolution" |
|
bottom: "conv4_3_norm" |
|
top: "conv4_3_norm_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 16 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "conv4_3_norm_mbox_loc" |
|
top: "conv4_3_norm_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "conv4_3_norm_mbox_loc_perm" |
|
top: "conv4_3_norm_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_conf" |
|
type: "Convolution" |
|
bottom: "conv4_3_norm" |
|
top: "conv4_3_norm_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 8 # 84 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "conv4_3_norm_mbox_conf" |
|
top: "conv4_3_norm_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "conv4_3_norm_mbox_conf_perm" |
|
top: "conv4_3_norm_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv4_3_norm_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "conv4_3_norm" |
|
bottom: "data" |
|
top: "conv4_3_norm_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 30.0 |
|
max_size: 60.0 |
|
aspect_ratio: 2 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 8 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_loc" |
|
type: "Convolution" |
|
bottom: "fc7" |
|
top: "fc7_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 24 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "fc7_mbox_loc" |
|
top: "fc7_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "fc7_mbox_loc_perm" |
|
top: "fc7_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_conf" |
|
type: "Convolution" |
|
bottom: "fc7" |
|
top: "fc7_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 12 # 126 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "fc7_mbox_conf" |
|
top: "fc7_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "fc7_mbox_conf_perm" |
|
top: "fc7_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "fc7_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "fc7" |
|
bottom: "data" |
|
top: "fc7_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 60.0 |
|
max_size: 111.0 |
|
aspect_ratio: 2 |
|
aspect_ratio: 3 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 16 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_loc" |
|
type: "Convolution" |
|
bottom: "conv6_2_h" |
|
top: "conv6_2_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 24 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "conv6_2_mbox_loc" |
|
top: "conv6_2_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "conv6_2_mbox_loc_perm" |
|
top: "conv6_2_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_conf" |
|
type: "Convolution" |
|
bottom: "conv6_2_h" |
|
top: "conv6_2_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 12 # 126 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "conv6_2_mbox_conf" |
|
top: "conv6_2_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "conv6_2_mbox_conf_perm" |
|
top: "conv6_2_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv6_2_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "conv6_2_h" |
|
bottom: "data" |
|
top: "conv6_2_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 111.0 |
|
max_size: 162.0 |
|
aspect_ratio: 2 |
|
aspect_ratio: 3 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 32 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_loc" |
|
type: "Convolution" |
|
bottom: "conv7_2_h" |
|
top: "conv7_2_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 24 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "conv7_2_mbox_loc" |
|
top: "conv7_2_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "conv7_2_mbox_loc_perm" |
|
top: "conv7_2_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_conf" |
|
type: "Convolution" |
|
bottom: "conv7_2_h" |
|
top: "conv7_2_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 12 # 126 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "conv7_2_mbox_conf" |
|
top: "conv7_2_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "conv7_2_mbox_conf_perm" |
|
top: "conv7_2_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv7_2_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "conv7_2_h" |
|
bottom: "data" |
|
top: "conv7_2_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 162.0 |
|
max_size: 213.0 |
|
aspect_ratio: 2 |
|
aspect_ratio: 3 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 64 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_loc" |
|
type: "Convolution" |
|
bottom: "conv8_2_h" |
|
top: "conv8_2_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 16 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "conv8_2_mbox_loc" |
|
top: "conv8_2_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "conv8_2_mbox_loc_perm" |
|
top: "conv8_2_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_conf" |
|
type: "Convolution" |
|
bottom: "conv8_2_h" |
|
top: "conv8_2_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 8 # 84 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "conv8_2_mbox_conf" |
|
top: "conv8_2_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "conv8_2_mbox_conf_perm" |
|
top: "conv8_2_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv8_2_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "conv8_2_h" |
|
bottom: "data" |
|
top: "conv8_2_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 213.0 |
|
max_size: 264.0 |
|
aspect_ratio: 2 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 100 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_loc" |
|
type: "Convolution" |
|
bottom: "conv9_2_h" |
|
top: "conv9_2_mbox_loc" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 16 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_loc_perm" |
|
type: "Permute" |
|
bottom: "conv9_2_mbox_loc" |
|
top: "conv9_2_mbox_loc_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_loc_flat" |
|
type: "Flatten" |
|
bottom: "conv9_2_mbox_loc_perm" |
|
top: "conv9_2_mbox_loc_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_conf" |
|
type: "Convolution" |
|
bottom: "conv9_2_h" |
|
top: "conv9_2_mbox_conf" |
|
param { |
|
lr_mult: 1 |
|
decay_mult: 1 |
|
} |
|
param { |
|
lr_mult: 2 |
|
decay_mult: 0 |
|
} |
|
convolution_param { |
|
num_output: 8 # 84 |
|
pad: 1 |
|
kernel_size: 3 |
|
stride: 1 |
|
weight_filler { |
|
type: "xavier" |
|
} |
|
bias_filler { |
|
type: "constant" |
|
value: 0 |
|
} |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_conf_perm" |
|
type: "Permute" |
|
bottom: "conv9_2_mbox_conf" |
|
top: "conv9_2_mbox_conf_perm" |
|
permute_param { |
|
order: 0 |
|
order: 2 |
|
order: 3 |
|
order: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_conf_flat" |
|
type: "Flatten" |
|
bottom: "conv9_2_mbox_conf_perm" |
|
top: "conv9_2_mbox_conf_flat" |
|
flatten_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "conv9_2_mbox_priorbox" |
|
type: "PriorBox" |
|
bottom: "conv9_2_h" |
|
bottom: "data" |
|
top: "conv9_2_mbox_priorbox" |
|
prior_box_param { |
|
min_size: 264.0 |
|
max_size: 315.0 |
|
aspect_ratio: 2 |
|
flip: true |
|
clip: false |
|
variance: 0.1 |
|
variance: 0.1 |
|
variance: 0.2 |
|
variance: 0.2 |
|
step: 300 |
|
offset: 0.5 |
|
} |
|
} |
|
layer { |
|
name: "mbox_loc" |
|
type: "Concat" |
|
bottom: "conv4_3_norm_mbox_loc_flat" |
|
bottom: "fc7_mbox_loc_flat" |
|
bottom: "conv6_2_mbox_loc_flat" |
|
bottom: "conv7_2_mbox_loc_flat" |
|
bottom: "conv8_2_mbox_loc_flat" |
|
bottom: "conv9_2_mbox_loc_flat" |
|
top: "mbox_loc" |
|
concat_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "mbox_conf" |
|
type: "Concat" |
|
bottom: "conv4_3_norm_mbox_conf_flat" |
|
bottom: "fc7_mbox_conf_flat" |
|
bottom: "conv6_2_mbox_conf_flat" |
|
bottom: "conv7_2_mbox_conf_flat" |
|
bottom: "conv8_2_mbox_conf_flat" |
|
bottom: "conv9_2_mbox_conf_flat" |
|
top: "mbox_conf" |
|
concat_param { |
|
axis: 1 |
|
} |
|
} |
|
layer { |
|
name: "mbox_priorbox" |
|
type: "Concat" |
|
bottom: "conv4_3_norm_mbox_priorbox" |
|
bottom: "fc7_mbox_priorbox" |
|
bottom: "conv6_2_mbox_priorbox" |
|
bottom: "conv7_2_mbox_priorbox" |
|
bottom: "conv8_2_mbox_priorbox" |
|
bottom: "conv9_2_mbox_priorbox" |
|
top: "mbox_priorbox" |
|
concat_param { |
|
axis: 2 |
|
} |
|
} |
|
|
|
layer { |
|
name: "mbox_loss" |
|
type: "MultiBoxLoss" |
|
bottom: "mbox_loc" |
|
bottom: "mbox_conf" |
|
bottom: "mbox_priorbox" |
|
bottom: "label" |
|
top: "mbox_loss" |
|
include { |
|
phase: TRAIN |
|
} |
|
propagate_down: true |
|
propagate_down: true |
|
propagate_down: false |
|
propagate_down: false |
|
loss_param { |
|
normalization: VALID |
|
} |
|
multibox_loss_param { |
|
loc_loss_type: SMOOTH_L1 |
|
conf_loss_type: SOFTMAX |
|
loc_weight: 1.0 |
|
num_classes: 2 # 21 |
|
share_location: true |
|
match_type: PER_PREDICTION |
|
overlap_threshold: 0.5 |
|
use_prior_for_matching: true |
|
background_label_id: 0 |
|
use_difficult_gt: true |
|
neg_pos_ratio: 3.0 |
|
neg_overlap: 0.5 |
|
code_type: CENTER_SIZE |
|
ignore_cross_boundary_bbox: false |
|
mining_type: MAX_NEGATIVE |
|
} |
|
} |