layer { name: "data" type: "Input" top: "data" input_param { shape { dim: 1 dim: 3 dim: 512 dim: 512 } } } layer { name: "ssd0_mobilenet0_conv0" type: "Convolution" bottom: "data" top: "ssd0_mobilenet0_conv0" convolution_param { num_output: 8 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 2 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm0/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv0" top: "ssd0_mobilenet0_conv0" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv1" type: "Convolution" bottom: "ssd0_mobilenet0_conv0" top: "ssd0_mobilenet0_conv1" convolution_param { num_output: 8 bias_term: true pad: 1 kernel_size: 3 group: 8 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm1/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv1" top: "ssd0_mobilenet0_conv1" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv2" type: "Convolution" bottom: "ssd0_mobilenet0_conv1" top: "ssd0_mobilenet0_conv2" convolution_param { num_output: 16 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm2/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv2" top: "ssd0_mobilenet0_conv2" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv3" type: "Convolution" bottom: "ssd0_mobilenet0_conv2" top: "ssd0_mobilenet0_conv3" convolution_param { num_output: 16 bias_term: true pad: 1 kernel_size: 3 group: 16 stride: 2 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm3/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv3" top: "ssd0_mobilenet0_conv3" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv4" type: "Convolution" bottom: "ssd0_mobilenet0_conv3" top: "ssd0_mobilenet0_conv4" convolution_param { num_output: 32 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm4/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv4" top: "ssd0_mobilenet0_conv4" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv5" type: "Convolution" bottom: "ssd0_mobilenet0_conv4" top: "ssd0_mobilenet0_conv5" convolution_param { num_output: 32 bias_term: true pad: 1 kernel_size: 3 group: 32 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm5/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv5" top: "ssd0_mobilenet0_conv5" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv6" type: "Convolution" bottom: "ssd0_mobilenet0_conv5" top: "ssd0_mobilenet0_conv6" convolution_param { num_output: 32 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm6/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv6" top: "ssd0_mobilenet0_conv6" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv7" type: "Convolution" bottom: "ssd0_mobilenet0_conv6" top: "ssd0_mobilenet0_conv7" convolution_param { num_output: 32 bias_term: true pad: 1 kernel_size: 3 group: 32 stride: 2 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm7/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv7" top: "ssd0_mobilenet0_conv7" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv8" type: "Convolution" bottom: "ssd0_mobilenet0_conv7" top: "ssd0_mobilenet0_conv8" convolution_param { num_output: 64 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm8/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv8" top: "ssd0_mobilenet0_conv8" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv9" type: "Convolution" bottom: "ssd0_mobilenet0_conv8" top: "ssd0_mobilenet0_conv9" convolution_param { num_output: 64 bias_term: true pad: 1 kernel_size: 3 group: 64 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm9/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv9" top: "ssd0_mobilenet0_conv9" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv10" type: "Convolution" bottom: "ssd0_mobilenet0_conv9" top: "ssd0_mobilenet0_conv10" convolution_param { num_output: 64 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm10/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv10" top: "ssd0_mobilenet0_conv10" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv11" type: "Convolution" bottom: "ssd0_mobilenet0_conv10" top: "ssd0_mobilenet0_conv11" convolution_param { num_output: 64 bias_term: true pad: 1 kernel_size: 3 group: 64 stride: 2 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm11/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv11" top: "ssd0_mobilenet0_conv11" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv12" type: "Convolution" bottom: "ssd0_mobilenet0_conv11" top: "ssd0_mobilenet0_conv12" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm12/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv12" top: "ssd0_mobilenet0_conv12" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv13" type: "Convolution" bottom: "ssd0_mobilenet0_conv12" top: "ssd0_mobilenet0_conv13" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm13/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv13" top: "ssd0_mobilenet0_conv13" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv14" type: "Convolution" bottom: "ssd0_mobilenet0_conv13" top: "ssd0_mobilenet0_conv14" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm14/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv14" top: "ssd0_mobilenet0_conv14" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv15" type: "Convolution" bottom: "ssd0_mobilenet0_conv14" top: "ssd0_mobilenet0_conv15" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm15/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv15" top: "ssd0_mobilenet0_conv15" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv16" type: "Convolution" bottom: "ssd0_mobilenet0_conv15" top: "ssd0_mobilenet0_conv16" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm16/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv16" top: "ssd0_mobilenet0_conv16" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv17" type: "Convolution" bottom: "ssd0_mobilenet0_conv16" top: "ssd0_mobilenet0_conv17" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm17/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv17" top: "ssd0_mobilenet0_conv17" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv18" type: "Convolution" bottom: "ssd0_mobilenet0_conv17" top: "ssd0_mobilenet0_conv18" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm18/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv18" top: "ssd0_mobilenet0_conv18" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv19" type: "Convolution" bottom: "ssd0_mobilenet0_conv18" top: "ssd0_mobilenet0_conv19" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm19/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv19" top: "ssd0_mobilenet0_conv19" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv20" type: "Convolution" bottom: "ssd0_mobilenet0_conv19" top: "ssd0_mobilenet0_conv20" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm20/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv20" top: "ssd0_mobilenet0_conv20" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv21" type: "Convolution" bottom: "ssd0_mobilenet0_conv20" top: "ssd0_mobilenet0_conv21" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm21/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv21" top: "ssd0_mobilenet0_conv21" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv22" type: "Convolution" bottom: "ssd0_mobilenet0_conv21" top: "ssd0_mobilenet0_conv22" convolution_param { num_output: 128 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm22/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv22" top: "ssd0_mobilenet0_conv22" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor1_conv0" type: "Convolution" bottom: "ssd0_mobilenet0_conv22" top: "ssd0_convpredictor1_conv0" convolution_param { num_output: 12 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose6" type: "Permute" bottom: "ssd0_convpredictor1_conv0" top: "ssd0_transpose6" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten6" type: "Flatten" bottom: "ssd0_transpose6" top: "ssd0_flatten6" } layer { name: "ssd0_mobilenet0_conv23" type: "Convolution" bottom: "ssd0_mobilenet0_conv22" top: "ssd0_mobilenet0_conv23" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 128 stride: 2 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm23/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv23" top: "ssd0_mobilenet0_conv23" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv24" type: "Convolution" bottom: "ssd0_mobilenet0_conv23" top: "ssd0_mobilenet0_conv24" convolution_param { num_output: 256 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm24/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv24" top: "ssd0_mobilenet0_conv24" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv25" type: "Convolution" bottom: "ssd0_mobilenet0_conv24" top: "ssd0_mobilenet0_conv25" convolution_param { num_output: 256 bias_term: true pad: 1 kernel_size: 3 group: 256 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm25/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv25" top: "ssd0_mobilenet0_conv25" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_mobilenet0_conv26" type: "Convolution" bottom: "ssd0_mobilenet0_conv25" top: "ssd0_mobilenet0_conv26" convolution_param { num_output: 256 bias_term: true pad: 0 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_mobilenet0_batchnorm26/relu" type: "ReLU" bottom: "ssd0_mobilenet0_conv26" top: "ssd0_mobilenet0_conv26" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor3_conv0" type: "Convolution" bottom: "ssd0_mobilenet0_conv26" top: "ssd0_convpredictor3_conv0" convolution_param { num_output: 16 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose7" type: "Permute" bottom: "ssd0_convpredictor3_conv0" top: "ssd0_transpose7" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten7" type: "Flatten" bottom: "ssd0_transpose7" top: "ssd0_flatten7" } layer { name: "ssd0_expand_trans_conv0" type: "Convolution" bottom: "ssd0_mobilenet0_conv26" top: "ssd0_expand_trans_conv0" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_expand_trans_bn0/relu" type: "ReLU" bottom: "ssd0_expand_trans_conv0" top: "ssd0_expand_trans_conv0" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_expand_conv0" type: "Convolution" bottom: "ssd0_expand_trans_conv0" top: "ssd0_expand_conv0" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 2 dilation: 1 } } layer { name: "ssd0_expand_bn0/relu" type: "ReLU" bottom: "ssd0_expand_conv0" top: "ssd0_expand_conv0" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor5_conv0" type: "Convolution" bottom: "ssd0_expand_conv0" top: "ssd0_convpredictor5_conv0" convolution_param { num_output: 16 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose8" type: "Permute" bottom: "ssd0_convpredictor5_conv0" top: "ssd0_transpose8" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten8" type: "Flatten" bottom: "ssd0_transpose8" top: "ssd0_flatten8" } layer { name: "ssd0_expand_trans_conv1" type: "Convolution" bottom: "ssd0_expand_conv0" top: "ssd0_expand_trans_conv1" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_expand_trans_bn1/relu" type: "ReLU" bottom: "ssd0_expand_trans_conv1" top: "ssd0_expand_trans_conv1" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_expand_conv1" type: "Convolution" bottom: "ssd0_expand_trans_conv1" top: "ssd0_expand_conv1" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 2 dilation: 1 } } layer { name: "ssd0_expand_bn1/relu" type: "ReLU" bottom: "ssd0_expand_conv1" top: "ssd0_expand_conv1" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor7_conv0" type: "Convolution" bottom: "ssd0_expand_conv1" top: "ssd0_convpredictor7_conv0" convolution_param { num_output: 16 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose9" type: "Permute" bottom: "ssd0_convpredictor7_conv0" top: "ssd0_transpose9" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten9" type: "Flatten" bottom: "ssd0_transpose9" top: "ssd0_flatten9" } layer { name: "ssd0_expand_trans_conv2" type: "Convolution" bottom: "ssd0_expand_conv1" top: "ssd0_expand_trans_conv2" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_expand_trans_bn2/relu" type: "ReLU" bottom: "ssd0_expand_trans_conv2" top: "ssd0_expand_trans_conv2" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_expand_conv2" type: "Convolution" bottom: "ssd0_expand_trans_conv2" top: "ssd0_expand_conv2" convolution_param { num_output: 64 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 2 dilation: 1 } } layer { name: "ssd0_expand_bn2/relu" type: "ReLU" bottom: "ssd0_expand_conv2" top: "ssd0_expand_conv2" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor9_conv0" type: "Convolution" bottom: "ssd0_expand_conv2" top: "ssd0_convpredictor9_conv0" convolution_param { num_output: 12 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose10" type: "Permute" bottom: "ssd0_convpredictor9_conv0" top: "ssd0_transpose10" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten10" type: "Flatten" bottom: "ssd0_transpose10" top: "ssd0_flatten10" } layer { name: "ssd0_expand_trans_conv3" type: "Convolution" bottom: "ssd0_expand_conv2" top: "ssd0_expand_trans_conv3" convolution_param { num_output: 128 bias_term: true pad: 1 kernel_size: 1 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_expand_trans_bn3/relu" type: "ReLU" bottom: "ssd0_expand_trans_conv3" top: "ssd0_expand_trans_conv3" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_expand_conv3" type: "Convolution" bottom: "ssd0_expand_trans_conv3" top: "ssd0_expand_conv3" convolution_param { num_output: 64 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 2 dilation: 1 } } layer { name: "ssd0_expand_bn3/relu" type: "ReLU" bottom: "ssd0_expand_conv3" top: "ssd0_expand_conv3" relu_param { negative_slope: 0.0 } } layer { name: "ssd0_convpredictor11_conv0" type: "Convolution" bottom: "ssd0_expand_conv3" top: "ssd0_convpredictor11_conv0" convolution_param { num_output: 12 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose11" type: "Permute" bottom: "ssd0_convpredictor11_conv0" top: "ssd0_transpose11" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten11" type: "Flatten" bottom: "ssd0_transpose11" top: "ssd0_flatten11" } layer { name: "ssd0_concat1" type: "Concat" bottom: "ssd0_flatten6" bottom: "ssd0_flatten7" bottom: "ssd0_flatten8" bottom: "ssd0_flatten9" bottom: "ssd0_flatten10" bottom: "ssd0_flatten11" top: "ssd0_concat1" concat_param { axis: 1 } } layer { name: "ssd0_convpredictor0_conv0" type: "Convolution" bottom: "ssd0_mobilenet0_conv22" top: "ssd0_convpredictor0_conv0" convolution_param { num_output: 6 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose0" type: "Permute" bottom: "ssd0_convpredictor0_conv0" top: "ssd0_transpose0" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten0" type: "Flatten" bottom: "ssd0_transpose0" top: "ssd0_flatten0" } layer { name: "ssd0_convpredictor2_conv0" type: "Convolution" bottom: "ssd0_mobilenet0_conv26" top: "ssd0_convpredictor2_conv0" convolution_param { num_output: 8 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose1" type: "Permute" bottom: "ssd0_convpredictor2_conv0" top: "ssd0_transpose1" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten1" type: "Flatten" bottom: "ssd0_transpose1" top: "ssd0_flatten1" } layer { name: "ssd0_convpredictor4_conv0" type: "Convolution" bottom: "ssd0_expand_conv0" top: "ssd0_convpredictor4_conv0" convolution_param { num_output: 8 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose2" type: "Permute" bottom: "ssd0_convpredictor4_conv0" top: "ssd0_transpose2" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten2" type: "Flatten" bottom: "ssd0_transpose2" top: "ssd0_flatten2" } layer { name: "ssd0_convpredictor6_conv0" type: "Convolution" bottom: "ssd0_expand_conv1" top: "ssd0_convpredictor6_conv0" convolution_param { num_output: 8 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose3" type: "Permute" bottom: "ssd0_convpredictor6_conv0" top: "ssd0_transpose3" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten3" type: "Flatten" bottom: "ssd0_transpose3" top: "ssd0_flatten3" } layer { name: "ssd0_convpredictor8_conv0" type: "Convolution" bottom: "ssd0_expand_conv2" top: "ssd0_convpredictor8_conv0" convolution_param { num_output: 6 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose4" type: "Permute" bottom: "ssd0_convpredictor8_conv0" top: "ssd0_transpose4" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten4" type: "Flatten" bottom: "ssd0_transpose4" top: "ssd0_flatten4" } layer { name: "ssd0_convpredictor10_conv0" type: "Convolution" bottom: "ssd0_expand_conv3" top: "ssd0_convpredictor10_conv0" convolution_param { num_output: 6 bias_term: true pad: 1 kernel_size: 3 group: 1 stride: 1 dilation: 1 } } layer { name: "ssd0_transpose5" type: "Permute" bottom: "ssd0_convpredictor10_conv0" top: "ssd0_transpose5" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "ssd0_flatten5" type: "Flatten" bottom: "ssd0_transpose5" top: "ssd0_flatten5" } layer { name: "ssd0_concat0" type: "Concat" bottom: "ssd0_flatten0" bottom: "ssd0_flatten1" bottom: "ssd0_flatten2" bottom: "ssd0_flatten3" bottom: "ssd0_flatten4" bottom: "ssd0_flatten5" top: "ssd0_concat0" concat_param { axis: 1 } } layer { name: "ssd0_reshape6" type: "Reshape" bottom: "ssd0_concat0" top: "ssd0_reshape6" reshape_param { shape { dim: 0 dim: -1 dim: 2 } } } layer { name: "softmax0" type: "Softmax" bottom: "ssd0_reshape6" top: "softmax0" softmax_param { axis: 2 } } layer { name: "flatten0" type: "Flatten" bottom: "softmax0" top: "flatten0" } layer { name: "ssd0_mobilenet0_relu22_fwd_priorbox" type: "PriorBox" bottom: "ssd0_mobilenet0_conv22" bottom: "data" top: "ssd0_mobilenet0_relu22_fwd_priorbox" prior_box_param { min_size: 51.20000076293945 max_size: 102.4000015258789 aspect_ratio: 1.0 aspect_ratio: 2.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "ssd0_mobilenet0_relu26_fwd_priorbox" type: "PriorBox" bottom: "ssd0_mobilenet0_conv26" bottom: "data" top: "ssd0_mobilenet0_relu26_fwd_priorbox" prior_box_param { min_size: 102.4000015258789 max_size: 189.39999389648438 aspect_ratio: 1.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "ssd0_expand_reu0_priorbox" type: "PriorBox" bottom: "ssd0_expand_conv0" bottom: "data" top: "ssd0_expand_reu0_priorbox" prior_box_param { min_size: 189.39999389648438 max_size: 276.3999938964844 aspect_ratio: 1.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "ssd0_expand_reu1_priorbox" type: "PriorBox" bottom: "ssd0_expand_conv1" bottom: "data" top: "ssd0_expand_reu1_priorbox" prior_box_param { min_size: 276.3999938964844 max_size: 363.5199890136719 aspect_ratio: 1.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "ssd0_expand_reu2_priorbox" type: "PriorBox" bottom: "ssd0_expand_conv2" bottom: "data" top: "ssd0_expand_reu2_priorbox" prior_box_param { min_size: 363.5199890136719 max_size: 450.6000061035156 aspect_ratio: 1.0 aspect_ratio: 2.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "ssd0_expand_reu3_priorbox" type: "PriorBox" bottom: "ssd0_expand_conv3" bottom: "data" top: "ssd0_expand_reu3_priorbox" prior_box_param { min_size: 450.6000061035156 max_size: 492.0 aspect_ratio: 1.0 aspect_ratio: 2.0 flip: false clip: false variance: 0.10000000149011612 variance: 0.10000000149011612 variance: 0.20000000298023224 variance: 0.20000000298023224 offset: 0.5 } } layer { name: "concat0" type: "Concat" bottom: "ssd0_mobilenet0_relu22_fwd_priorbox" bottom: "ssd0_mobilenet0_relu26_fwd_priorbox" bottom: "ssd0_expand_reu0_priorbox" bottom: "ssd0_expand_reu1_priorbox" bottom: "ssd0_expand_reu2_priorbox" bottom: "ssd0_expand_reu3_priorbox" top: "concat0" concat_param { axis: 2 } } layer { name: "detection_out" type: "DetectionOutput" bottom: "ssd0_concat1" bottom: "flatten0" bottom: "concat0" top: "detection_out" detection_output_param { num_classes: 2 share_location: true background_label_id: 0 nms_param { nms_threshold: 0.44999998807907104 top_k: 400 } code_type: CENTER_SIZE keep_top_k: 100 confidence_threshold: 0.009999999776482582 } }