chuanqi305 / MobileNetv2-SSDLite

Caffe implementation of SSD and SSDLite detection on MobileNetv2, converted from tensorflow.
MIT License
448 stars 231 forks source link

IOError: [Errno 2] No such file or directory: 'output/Conv_bn_moving_mean.dat' #43

Open corleonechensiyu opened 5 years ago

corleonechensiyu commented 5 years ago

I1228 21:56:35.993526 22146 net.cpp:228] data_input_0_split does not need backward computation. I1228 21:56:35.993530 22146 net.cpp:228] input does not need backward computation. I1228 21:56:35.993532 22146 net.cpp:270] This network produces output detection_out I1228 21:56:35.993688 22146 net.cpp:283] Network initialization done. Conv conv Conv/bn conv Traceback (most recent call last): File "load_caffe_weights.py", line 82, in load_data(net_deploy) File "load_caffe_weights.py", line 29, in load_data net.params[key][0].data[...] = load_weights(prefix + '_moving_mean.dat') File "load_caffe_weights.py", line 15, in load_weights weights = np.fromfile(path, dtype=np.float32) IOError: [Errno 2] No such file or directory: 'output/Conv_bn_moving_mean.dat'

corleonechensiyu commented 5 years ago

i solved it , :-)

rsandler00 commented 5 years ago

How did you solve it??

ChenjingYu1993 commented 5 years ago

i solved it , :-)

can you share the methold to resolve this problem? thx~

corleonechensiyu commented 5 years ago

i solved it , :-)

can you share the methold to resolve this problem? thx~

==========SSD layers===========

layer { name: "conv_13/expand_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "conv_13/expand" top: "conv_13/expand_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 576 bias_term: false pad: 1 kernel_size: 3 group: 576 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "conv_13/expand_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "conv_13/expand_mbox_loc/depthwise/scale" type: "Scale" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "conv_13/expand_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" } layer { name: "conv_13/expand_mbox_loc" type: "Convolution" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 12 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "conv_13/expand_mbox_loc_perm" type: "Permute" bottom: "conv_13/expand_mbox_loc" top: "conv_13/expand_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "conv_13/expand_mbox_loc_flat" type: "Flatten" bottom: "conv_13/expand_mbox_loc_perm" top: "conv_13/expand_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "conv_13/expand_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "conv_13/expand" top: "conv_13/expand_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 576 bias_term: false pad: 1 kernel_size: 3 group: 576 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "conv_13/expand_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "conv_13/expand_mbox_conf/depthwise/scale" type: "Scale" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "conv_13/expand_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" } layer { name: "conv_13/expand_mbox_conf" type: "Convolution" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 273 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "conv_13/expand_mbox_conf_perm" type: "Permute" bottom: "conv_13/expand_mbox_conf" top: "conv_13/expand_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "conv_13/expand_mbox_conf_flat" type: "Flatten" bottom: "conv_13/expand_mbox_conf_perm" top: "conv_13/expand_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "conv_13/expand_mbox_priorbox" type: "PriorBox" bottom: "conv_13/expand" bottom: "data" top: "conv_13/expand_mbox_priorbox" prior_box_param { min_size: 60.0 aspect_ratio: 2.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "Conv_1_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "Conv_1" top: "Conv_1_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 1280 bias_term: false pad: 1 kernel_size: 3 group: 1280 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "Conv_1_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "Conv_1_mbox_loc/depthwise/scale" type: "Scale" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "Conv_1_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" } layer { name: "Conv_1_mbox_loc" type: "Convolution" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "Conv_1_mbox_loc_perm" type: "Permute" bottom: "Conv_1_mbox_loc" top: "Conv_1_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "Conv_1_mbox_loc_flat" type: "Flatten" bottom: "Conv_1_mbox_loc_perm" top: "Conv_1_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "Conv_1_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "Conv_1" top: "Conv_1_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 1280 bias_term: false pad: 1 kernel_size: 3 group: 1280 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "Conv_1_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "Conv_1_mbox_conf/depthwise/scale" type: "Scale" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "Conv_1_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" } layer { name: "Conv_1_mbox_conf" type: "Convolution" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "Conv_1_mbox_conf_perm" type: "Permute" bottom: "Conv_1_mbox_conf" top: "Conv_1_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "Conv_1_mbox_conf_flat" type: "Flatten" bottom: "Conv_1_mbox_conf_perm" top: "Conv_1_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "Conv_1_mbox_priorbox" type: "PriorBox" bottom: "Conv_1" bottom: "data" top: "Conv_1_mbox_priorbox" prior_box_param { min_size: 105.0 max_size: 150.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_2_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_2" top: "layer_19_2_2_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 512 bias_term: false pad: 1 kernel_size: 3 group: 512 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_2_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_2_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_2_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" } layer { name: "layer_19_2_2_mbox_loc" type: "Convolution" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_2_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_2_mbox_loc" top: "layer_19_2_2_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_2_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_2_mbox_loc_perm" top: "layer_19_2_2_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_2_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_2" top: "layer_19_2_2_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 512 bias_term: false pad: 1 kernel_size: 3 group: 512 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_2_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_2_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_2_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" } layer { name: "layer_19_2_2_mbox_conf" type: "Convolution" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_2_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_2_mbox_conf" top: "layer_19_2_2_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_2_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_2_mbox_conf_perm" top: "layer_19_2_2_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_2_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_2" bottom: "data" top: "layer_19_2_2_mbox_priorbox" prior_box_param { min_size: 150.0 max_size: 195.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_3_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_3" top: "layer_19_2_3_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_3_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_3_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_3_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" } layer { name: "layer_19_2_3_mbox_loc" type: "Convolution" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_3_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_3_mbox_loc" top: "layer_19_2_3_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_3_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_3_mbox_loc_perm" top: "layer_19_2_3_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_3_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_3" top: "layer_19_2_3_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_3_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_3_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_3_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" } layer { name: "layer_19_2_3_mbox_conf" type: "Convolution" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_3_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_3_mbox_conf" top: "layer_19_2_3_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_3_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_3_mbox_conf_perm" top: "layer_19_2_3_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_3_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_3" bottom: "data" top: "layer_19_2_3_mbox_priorbox" prior_box_param { min_size: 195.0 max_size: 240.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_4_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_4" top: "layer_19_2_4_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_4_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_4_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_4_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" } layer { name: "layer_19_2_4_mbox_loc" type: "Convolution" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_4_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_4_mbox_loc" top: "layer_19_2_4_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_4_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_4_mbox_loc_perm" top: "layer_19_2_4_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_4_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_4" top: "layer_19_2_4_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_4_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_4_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_4_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" } layer { name: "layer_19_2_4_mbox_conf" type: "Convolution" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_4_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_4_mbox_conf" top: "layer_19_2_4_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_4_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_4_mbox_conf_perm" top: "layer_19_2_4_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_4_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_4" bottom: "data" top: "layer_19_2_4_mbox_priorbox" prior_box_param { min_size: 240.0 max_size: 285.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_5_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_5" top: "layer_19_2_5_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 128 bias_term: false pad: 1 kernel_size: 3 group: 128 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_5_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_5_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_5_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" } layer { name: "layer_19_2_5_mbox_loc" type: "Convolution" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_5_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_5_mbox_loc" top: "layer_19_2_5_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_5_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_5_mbox_loc_perm" top: "layer_19_2_5_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_5_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_5" top: "layer_19_2_5_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 128 bias_term: false pad: 1 kernel_size: 3 group: 128 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_5_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_5_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_5_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" } layer { name: "layer_19_2_5_mbox_conf" type: "Convolution" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_5_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_5_mbox_conf" top: "layer_19_2_5_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_5_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_5_mbox_conf_perm" top: "layer_19_2_5_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_5_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_5" bottom: "data" top: "layer_19_2_5_mbox_priorbox" prior_box_param { min_size: 285.0 max_size: 300.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "mbox_loc" type: "Concat" bottom: "conv_13/expand_mbox_loc_flat" bottom: "Conv_1_mbox_loc_flat" bottom: "layer_19_2_2_mbox_loc_flat" bottom: "layer_19_2_3_mbox_loc_flat" bottom: "layer_19_2_4_mbox_loc_flat" bottom: "layer_19_2_5_mbox_loc_flat" top: "mbox_loc" concat_param { axis: 1 } } layer { name: "mbox_conf" type: "Concat" bottom: "conv_13/expand_mbox_conf_flat" bottom: "Conv_1_mbox_conf_flat" bottom: "layer_19_2_2_mbox_conf_flat" bottom: "layer_19_2_3_mbox_conf_flat" bottom: "layer_19_2_4_mbox_conf_flat" bottom: "layer_19_2_5_mbox_conf_flat" top: "mbox_conf" concat_param { axis: 1 } } layer { name: "mbox_priorbox" type: "Concat" bottom: "conv_13/expand_mbox_priorbox" bottom: "Conv_1_mbox_priorbox" bottom: "layer_19_2_2_mbox_priorbox" bottom: "layer_19_2_3_mbox_priorbox" bottom: "layer_19_2_4_mbox_priorbox" bottom: "layer_19_2_5_mbox_priorbox" top: "mbox_priorbox" concat_param { axis: 2 } } layer { name: "mbox_conf_reshape" type: "Reshape" bottom: "mbox_conf" top: "mbox_conf_reshape" reshape_param { shape { dim: 0 dim: -1 dim: 91 } } } layer { name: "mbox_conf_sigmoid" type: "Sigmoid" bottom: "mbox_conf_reshape" top: "mbox_conf_sigmoid" } layer { name: "mbox_conf_flatten" type: "Flatten" bottom: "mbox_conf_sigmoid" top: "mbox_conf_flatten" flatten_param { axis: 1 } } layer { name: "detection_out" type: "DetectionOutput" bottom: "mbox_loc" bottom: "mbox_conf_flatten" bottom: "mbox_priorbox" top: "detection_out" include { phase: TEST } detection_output_param { num_classes: 91 share_location: true background_label_id: 0 nms_param { nms_threshold: 0.45 top_k: 100 } code_type: CENTER_SIZE keep_top_k: 100 confidence_threshold: 0.35 } } 用ssdlite->voc里面的deploy.prototxt文件,修改里面的分类为91,以及相应的num_output,然后拷贝到ssdlite文件里,运行相应的py文件就行

ChenjingYu1993 commented 5 years ago

i solved it , :-)

can you share the methold to resolve this problem? thx~

==========SSD layers===========

layer { name: "conv_13/expand_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "conv_13/expand" top: "conv_13/expand_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 576 bias_term: false pad: 1 kernel_size: 3 group: 576 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "conv_13/expand_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "conv_13/expand_mbox_loc/depthwise/scale" type: "Scale" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "conv_13/expand_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc/depthwise" } layer { name: "conv_13/expand_mbox_loc" type: "Convolution" bottom: "conv_13/expand_mbox_loc/depthwise" top: "conv_13/expand_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 12 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "conv_13/expand_mbox_loc_perm" type: "Permute" bottom: "conv_13/expand_mbox_loc" top: "conv_13/expand_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "conv_13/expand_mbox_loc_flat" type: "Flatten" bottom: "conv_13/expand_mbox_loc_perm" top: "conv_13/expand_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "conv_13/expand_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "conv_13/expand" top: "conv_13/expand_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 576 bias_term: false pad: 1 kernel_size: 3 group: 576 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "conv_13/expand_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "conv_13/expand_mbox_conf/depthwise/scale" type: "Scale" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "conv_13/expand_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf/depthwise" } layer { name: "conv_13/expand_mbox_conf" type: "Convolution" bottom: "conv_13/expand_mbox_conf/depthwise" top: "conv_13/expand_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 273 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "conv_13/expand_mbox_conf_perm" type: "Permute" bottom: "conv_13/expand_mbox_conf" top: "conv_13/expand_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "conv_13/expand_mbox_conf_flat" type: "Flatten" bottom: "conv_13/expand_mbox_conf_perm" top: "conv_13/expand_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "conv_13/expand_mbox_priorbox" type: "PriorBox" bottom: "conv_13/expand" bottom: "data" top: "conv_13/expand_mbox_priorbox" prior_box_param { min_size: 60.0 aspect_ratio: 2.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "Conv_1_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "Conv_1" top: "Conv_1_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 1280 bias_term: false pad: 1 kernel_size: 3 group: 1280 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "Conv_1_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "Conv_1_mbox_loc/depthwise/scale" type: "Scale" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "Conv_1_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc/depthwise" } layer { name: "Conv_1_mbox_loc" type: "Convolution" bottom: "Conv_1_mbox_loc/depthwise" top: "Conv_1_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "Conv_1_mbox_loc_perm" type: "Permute" bottom: "Conv_1_mbox_loc" top: "Conv_1_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "Conv_1_mbox_loc_flat" type: "Flatten" bottom: "Conv_1_mbox_loc_perm" top: "Conv_1_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "Conv_1_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "Conv_1" top: "Conv_1_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 1280 bias_term: false pad: 1 kernel_size: 3 group: 1280 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "Conv_1_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "Conv_1_mbox_conf/depthwise/scale" type: "Scale" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "Conv_1_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf/depthwise" } layer { name: "Conv_1_mbox_conf" type: "Convolution" bottom: "Conv_1_mbox_conf/depthwise" top: "Conv_1_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "Conv_1_mbox_conf_perm" type: "Permute" bottom: "Conv_1_mbox_conf" top: "Conv_1_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "Conv_1_mbox_conf_flat" type: "Flatten" bottom: "Conv_1_mbox_conf_perm" top: "Conv_1_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "Conv_1_mbox_priorbox" type: "PriorBox" bottom: "Conv_1" bottom: "data" top: "Conv_1_mbox_priorbox" prior_box_param { min_size: 105.0 max_size: 150.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_2_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_2" top: "layer_19_2_2_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 512 bias_term: false pad: 1 kernel_size: 3 group: 512 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_2_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_2_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_2_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc/depthwise" } layer { name: "layer_19_2_2_mbox_loc" type: "Convolution" bottom: "layer_19_2_2_mbox_loc/depthwise" top: "layer_19_2_2_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_2_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_2_mbox_loc" top: "layer_19_2_2_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_2_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_2_mbox_loc_perm" top: "layer_19_2_2_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_2_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_2" top: "layer_19_2_2_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 512 bias_term: false pad: 1 kernel_size: 3 group: 512 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_2_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_2_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_2_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf/depthwise" } layer { name: "layer_19_2_2_mbox_conf" type: "Convolution" bottom: "layer_19_2_2_mbox_conf/depthwise" top: "layer_19_2_2_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_2_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_2_mbox_conf" top: "layer_19_2_2_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_2_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_2_mbox_conf_perm" top: "layer_19_2_2_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_2_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_2" bottom: "data" top: "layer_19_2_2_mbox_priorbox" prior_box_param { min_size: 150.0 max_size: 195.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_3_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_3" top: "layer_19_2_3_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_3_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_3_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_3_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc/depthwise" } layer { name: "layer_19_2_3_mbox_loc" type: "Convolution" bottom: "layer_19_2_3_mbox_loc/depthwise" top: "layer_19_2_3_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_3_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_3_mbox_loc" top: "layer_19_2_3_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_3_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_3_mbox_loc_perm" top: "layer_19_2_3_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_3_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_3" top: "layer_19_2_3_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_3_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_3_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_3_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf/depthwise" } layer { name: "layer_19_2_3_mbox_conf" type: "Convolution" bottom: "layer_19_2_3_mbox_conf/depthwise" top: "layer_19_2_3_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_3_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_3_mbox_conf" top: "layer_19_2_3_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_3_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_3_mbox_conf_perm" top: "layer_19_2_3_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_3_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_3" bottom: "data" top: "layer_19_2_3_mbox_priorbox" prior_box_param { min_size: 195.0 max_size: 240.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_4_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_4" top: "layer_19_2_4_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_4_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_4_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_4_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc/depthwise" } layer { name: "layer_19_2_4_mbox_loc" type: "Convolution" bottom: "layer_19_2_4_mbox_loc/depthwise" top: "layer_19_2_4_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_4_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_4_mbox_loc" top: "layer_19_2_4_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_4_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_4_mbox_loc_perm" top: "layer_19_2_4_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_4_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_4" top: "layer_19_2_4_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 256 bias_term: false pad: 1 kernel_size: 3 group: 256 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_4_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_4_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_4_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf/depthwise" } layer { name: "layer_19_2_4_mbox_conf" type: "Convolution" bottom: "layer_19_2_4_mbox_conf/depthwise" top: "layer_19_2_4_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_4_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_4_mbox_conf" top: "layer_19_2_4_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_4_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_4_mbox_conf_perm" top: "layer_19_2_4_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_4_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_4" bottom: "data" top: "layer_19_2_4_mbox_priorbox" prior_box_param { min_size: 240.0 max_size: 285.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "layer_19_2_5_mbox_loc/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_5" top: "layer_19_2_5_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 128 bias_term: false pad: 1 kernel_size: 3 group: 128 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_5_mbox_loc/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_5_mbox_loc/depthwise/scale" type: "Scale" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_5_mbox_loc/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc/depthwise" } layer { name: "layer_19_2_5_mbox_loc" type: "Convolution" bottom: "layer_19_2_5_mbox_loc/depthwise" top: "layer_19_2_5_mbox_loc" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 24 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_5_mbox_loc_perm" type: "Permute" bottom: "layer_19_2_5_mbox_loc" top: "layer_19_2_5_mbox_loc_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_5_mbox_loc_flat" type: "Flatten" bottom: "layer_19_2_5_mbox_loc_perm" top: "layer_19_2_5_mbox_loc_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_5_mbox_conf/depthwise" type: "DepthwiseConvolution" bottom: "layer_19_2_5" top: "layer_19_2_5_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 1.0 } convolution_param { num_output: 128 bias_term: false pad: 1 kernel_size: 3 group: 128 engine: CAFFE weight_filler { type: "msra" } } } layer { name: "layer_19_2_5_mbox_conf/depthwise/bn" type: "BatchNorm" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" batch_norm_param { eps: 0.001 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } param { lr_mult: 0 decay_mult: 0 } } layer { name: "layer_19_2_5_mbox_conf/depthwise/scale" type: "Scale" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" param { lr_mult: 1.0 decay_mult: 0.0 } param { lr_mult: 2.0 decay_mult: 0.0 } scale_param { filler { value: 1 } bias_term: true bias_filler { value: 0 } } } layer { name: "layer_19_2_5_mbox_conf/depthwise/relu" type: "ReLU6" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf/depthwise" } layer { name: "layer_19_2_5_mbox_conf" type: "Convolution" bottom: "layer_19_2_5_mbox_conf/depthwise" top: "layer_19_2_5_mbox_conf" param { lr_mult: 1.0 decay_mult: 1.0 } param { lr_mult: 2.0 decay_mult: 0.0 } convolution_param { num_output: 546 kernel_size: 1 weight_filler { type: "msra" } bias_filler { type: "constant" value: 0.0 } } } layer { name: "layer_19_2_5_mbox_conf_perm" type: "Permute" bottom: "layer_19_2_5_mbox_conf" top: "layer_19_2_5_mbox_conf_perm" permute_param { order: 0 order: 2 order: 3 order: 1 } } layer { name: "layer_19_2_5_mbox_conf_flat" type: "Flatten" bottom: "layer_19_2_5_mbox_conf_perm" top: "layer_19_2_5_mbox_conf_flat" flatten_param { axis: 1 } } layer { name: "layer_19_2_5_mbox_priorbox" type: "PriorBox" bottom: "layer_19_2_5" bottom: "data" top: "layer_19_2_5_mbox_priorbox" prior_box_param { min_size: 285.0 max_size: 300.0 aspect_ratio: 2.0 aspect_ratio: 3.0 flip: true clip: false variance: 0.1 variance: 0.1 variance: 0.2 variance: 0.2 offset: 0.5 } } layer { name: "mbox_loc" type: "Concat" bottom: "conv_13/expand_mbox_loc_flat" bottom: "Conv_1_mbox_loc_flat" bottom: "layer_19_2_2_mbox_loc_flat" bottom: "layer_19_2_3_mbox_loc_flat" bottom: "layer_19_2_4_mbox_loc_flat" bottom: "layer_19_2_5_mbox_loc_flat" top: "mbox_loc" concat_param { axis: 1 } } layer { name: "mbox_conf" type: "Concat" bottom: "conv_13/expand_mbox_conf_flat" bottom: "Conv_1_mbox_conf_flat" bottom: "layer_19_2_2_mbox_conf_flat" bottom: "layer_19_2_3_mbox_conf_flat" bottom: "layer_19_2_4_mbox_conf_flat" bottom: "layer_19_2_5_mbox_conf_flat" top: "mbox_conf" concat_param { axis: 1 } } layer { name: "mbox_priorbox" type: "Concat" bottom: "conv_13/expand_mbox_priorbox" bottom: "Conv_1_mbox_priorbox" bottom: "layer_19_2_2_mbox_priorbox" bottom: "layer_19_2_3_mbox_priorbox" bottom: "layer_19_2_4_mbox_priorbox" bottom: "layer_19_2_5_mbox_priorbox" top: "mbox_priorbox" concat_param { axis: 2 } } layer { name: "mbox_conf_reshape" type: "Reshape" bottom: "mbox_conf" top: "mbox_conf_reshape" reshape_param { shape { dim: 0 dim: -1 dim: 91 } } } layer { name: "mbox_conf_sigmoid" type: "Sigmoid" bottom: "mbox_conf_reshape" top: "mbox_conf_sigmoid" } layer { name: "mbox_conf_flatten" type: "Flatten" bottom: "mbox_conf_sigmoid" top: "mbox_conf_flatten" flatten_param { axis: 1 } } layer { name: "detection_out" type: "DetectionOutput" bottom: "mbox_loc" bottom: "mbox_conf_flatten" bottom: "mbox_priorbox" top: "detection_out" include { phase: TEST } detection_output_param { num_classes: 91 share_location: true background_label_id: 0 nms_param { nms_threshold: 0.45 top_k: 100 } code_type: CENTER_SIZE keep_top_k: 100 confidence_threshold: 0.35 } } 用ssdlite->voc里面的deploy.prototxt文件,修改里面的分类为91,以及相应的num_output,然后拷贝到ssdlite文件里,运行相应的py文件就行

thx a lot~

yuliang-liang commented 5 years ago

用ssdlite->voc里面的deploy.prototxt文件,修改里面的分类为91,以及相应的num_output,然后拷贝到ssdlite文件里,运行相应的py文件就行

thx a lot~

emmm, i change the num_output and num_class=91. Maybe i make wrong and i still can not run. Could you please give me a right deploy.prototxt

老哥,我改了不行啊,能不能发deploy.prototxt带带我

corleonechensiyu commented 5 years ago

用ssdlite->voc里面的deploy.prototxt文件,修改里面的分类为91,以及相应的num_output,然后拷贝到ssdlite文件里,运行相应的py文件就行

thx a lot~

emmm, i change the num_output and num_class=91. Maybe i make wrong and i still can not run. Could you please give me a right deploy.prototxt

老哥,我改了不行啊,能不能发deploy.prototxt带带我

deploy.prototxt我贴出来了,修改相应的layer_x_x_x_mbox_conf和layer_x_x_x_mbox_loc层的num_output ,你对照看一下

yuliang-liang commented 5 years ago

用ssdlite->voc里面的deploy.prototxt文件,修改里面的分类为91,以及相应的num_output,然后拷贝到ssdlite文件里,运行相应的py文件就行

thx a lot~

emmm, i change the num_output and num_class=91. Maybe i make wrong and i still can not run. Could you please give me a right deploy.prototxt 老哥,我改了不行啊,能不能发deploy.prototxt带带我

deploy.prototxt我贴出来了,修改相应的layer_x_x_x_mbox_conf和layer_x_x_x_mbox_loc层的num_output ,你对照看一下

感谢,我明白怎么弄了