| | name: "LtoAB"
|
| |
|
| | layer {
|
| | name: "data_l"
|
| | type: "Input"
|
| | top: "data_l"
|
| | input_param {
|
| | shape { dim: 1 dim: 1 dim: 224 dim: 224 }
|
| | }
|
| | }
|
| |
|
| | # *****************
|
| | # ***** conv1 *****
|
| | # *****************
|
| | layer {
|
| | name: "bw_conv1_1"
|
| | type: "Convolution"
|
| | bottom: "data_l"
|
| | top: "conv1_1"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 64
|
| | pad: 1
|
| | kernel_size: 3
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu1_1"
|
| | type: "ReLU"
|
| | bottom: "conv1_1"
|
| | top: "conv1_1"
|
| | }
|
| | layer {
|
| | name: "conv1_2"
|
| | type: "Convolution"
|
| | bottom: "conv1_1"
|
| | top: "conv1_2"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 64
|
| | pad: 1
|
| | kernel_size: 3
|
| | stride: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu1_2"
|
| | type: "ReLU"
|
| | bottom: "conv1_2"
|
| | top: "conv1_2"
|
| | }
|
| | layer {
|
| | name: "conv1_2norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv1_2"
|
| | top: "conv1_2norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv2 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv2_1"
|
| | type: "Convolution"
|
| | # bottom: "conv1_2"
|
| | bottom: "conv1_2norm"
|
| | # bottom: "pool1"
|
| | top: "conv2_1"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 128
|
| | pad: 1
|
| | kernel_size: 3
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu2_1"
|
| | type: "ReLU"
|
| | bottom: "conv2_1"
|
| | top: "conv2_1"
|
| | }
|
| | layer {
|
| | name: "conv2_2"
|
| | type: "Convolution"
|
| | bottom: "conv2_1"
|
| | top: "conv2_2"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 128
|
| | pad: 1
|
| | kernel_size: 3
|
| | stride: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu2_2"
|
| | type: "ReLU"
|
| | bottom: "conv2_2"
|
| | top: "conv2_2"
|
| | }
|
| | layer {
|
| | name: "conv2_2norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv2_2"
|
| | top: "conv2_2norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv3 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv3_1"
|
| | type: "Convolution"
|
| | # bottom: "conv2_2"
|
| | bottom: "conv2_2norm"
|
| | # bottom: "pool2"
|
| | top: "conv3_1"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 256
|
| | pad: 1
|
| | kernel_size: 3
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu3_1"
|
| | type: "ReLU"
|
| | bottom: "conv3_1"
|
| | top: "conv3_1"
|
| | }
|
| | layer {
|
| | name: "conv3_2"
|
| | type: "Convolution"
|
| | bottom: "conv3_1"
|
| | top: "conv3_2"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 256
|
| | pad: 1
|
| | kernel_size: 3
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu3_2"
|
| | type: "ReLU"
|
| | bottom: "conv3_2"
|
| | top: "conv3_2"
|
| | }
|
| | layer {
|
| | name: "conv3_3"
|
| | type: "Convolution"
|
| | bottom: "conv3_2"
|
| | top: "conv3_3"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 256
|
| | pad: 1
|
| | kernel_size: 3
|
| | stride: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu3_3"
|
| | type: "ReLU"
|
| | bottom: "conv3_3"
|
| | top: "conv3_3"
|
| | }
|
| | layer {
|
| | name: "conv3_3norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv3_3"
|
| | top: "conv3_3norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv4 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv4_1"
|
| | type: "Convolution"
|
| | # bottom: "conv3_3"
|
| | bottom: "conv3_3norm"
|
| | # bottom: "pool3"
|
| | top: "conv4_1"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu4_1"
|
| | type: "ReLU"
|
| | bottom: "conv4_1"
|
| | top: "conv4_1"
|
| | }
|
| | layer {
|
| | name: "conv4_2"
|
| | type: "Convolution"
|
| | bottom: "conv4_1"
|
| | top: "conv4_2"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu4_2"
|
| | type: "ReLU"
|
| | bottom: "conv4_2"
|
| | top: "conv4_2"
|
| | }
|
| | layer {
|
| | name: "conv4_3"
|
| | type: "Convolution"
|
| | bottom: "conv4_2"
|
| | top: "conv4_3"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu4_3"
|
| | type: "ReLU"
|
| | bottom: "conv4_3"
|
| | top: "conv4_3"
|
| | }
|
| | layer {
|
| | name: "conv4_3norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv4_3"
|
| | top: "conv4_3norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv5 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv5_1"
|
| | type: "Convolution"
|
| | # bottom: "conv4_3"
|
| | bottom: "conv4_3norm"
|
| | # bottom: "pool4"
|
| | top: "conv5_1"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu5_1"
|
| | type: "ReLU"
|
| | bottom: "conv5_1"
|
| | top: "conv5_1"
|
| | }
|
| | layer {
|
| | name: "conv5_2"
|
| | type: "Convolution"
|
| | bottom: "conv5_1"
|
| | top: "conv5_2"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu5_2"
|
| | type: "ReLU"
|
| | bottom: "conv5_2"
|
| | top: "conv5_2"
|
| | }
|
| | layer {
|
| | name: "conv5_3"
|
| | type: "Convolution"
|
| | bottom: "conv5_2"
|
| | top: "conv5_3"
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | # param {lr_mult: 0 decay_mult: 0}
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | stride: 1
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu5_3"
|
| | type: "ReLU"
|
| | bottom: "conv5_3"
|
| | top: "conv5_3"
|
| | }
|
| | layer {
|
| | name: "conv5_3norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv5_3"
|
| | top: "conv5_3norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv6 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv6_1"
|
| | type: "Convolution"
|
| | bottom: "conv5_3norm"
|
| | top: "conv6_1"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu6_1"
|
| | type: "ReLU"
|
| | bottom: "conv6_1"
|
| | top: "conv6_1"
|
| | }
|
| | layer {
|
| | name: "conv6_2"
|
| | type: "Convolution"
|
| | bottom: "conv6_1"
|
| | top: "conv6_2"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu6_2"
|
| | type: "ReLU"
|
| | bottom: "conv6_2"
|
| | top: "conv6_2"
|
| | }
|
| | layer {
|
| | name: "conv6_3"
|
| | type: "Convolution"
|
| | bottom: "conv6_2"
|
| | top: "conv6_3"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 2
|
| | dilation: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu6_3"
|
| | type: "ReLU"
|
| | bottom: "conv6_3"
|
| | top: "conv6_3"
|
| | }
|
| | layer {
|
| | name: "conv6_3norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv6_3"
|
| | top: "conv6_3norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv7 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv7_1"
|
| | type: "Convolution"
|
| | bottom: "conv6_3norm"
|
| | top: "conv7_1"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu7_1"
|
| | type: "ReLU"
|
| | bottom: "conv7_1"
|
| | top: "conv7_1"
|
| | }
|
| | layer {
|
| | name: "conv7_2"
|
| | type: "Convolution"
|
| | bottom: "conv7_1"
|
| | top: "conv7_2"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu7_2"
|
| | type: "ReLU"
|
| | bottom: "conv7_2"
|
| | top: "conv7_2"
|
| | }
|
| | layer {
|
| | name: "conv7_3"
|
| | type: "Convolution"
|
| | bottom: "conv7_2"
|
| | top: "conv7_3"
|
| | convolution_param {
|
| | num_output: 512
|
| | kernel_size: 3
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu7_3"
|
| | type: "ReLU"
|
| | bottom: "conv7_3"
|
| | top: "conv7_3"
|
| | }
|
| | layer {
|
| | name: "conv7_3norm"
|
| | type: "BatchNorm"
|
| | bottom: "conv7_3"
|
| | top: "conv7_3norm"
|
| | batch_norm_param{ }
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | param {lr_mult: 0 decay_mult: 0}
|
| | }
|
| | # *****************
|
| | # ***** conv8 *****
|
| | # *****************
|
| | layer {
|
| | name: "conv8_1"
|
| | type: "Deconvolution"
|
| | bottom: "conv7_3norm"
|
| | top: "conv8_1"
|
| | convolution_param {
|
| | num_output: 256
|
| | kernel_size: 4
|
| | pad: 1
|
| | dilation: 1
|
| | stride: 2
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu8_1"
|
| | type: "ReLU"
|
| | bottom: "conv8_1"
|
| | top: "conv8_1"
|
| | }
|
| | layer {
|
| | name: "conv8_2"
|
| | type: "Convolution"
|
| | bottom: "conv8_1"
|
| | top: "conv8_2"
|
| | convolution_param {
|
| | num_output: 256
|
| | kernel_size: 3
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu8_2"
|
| | type: "ReLU"
|
| | bottom: "conv8_2"
|
| | top: "conv8_2"
|
| | }
|
| | layer {
|
| | name: "conv8_3"
|
| | type: "Convolution"
|
| | bottom: "conv8_2"
|
| | top: "conv8_3"
|
| | convolution_param {
|
| | num_output: 256
|
| | kernel_size: 3
|
| | pad: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "relu8_3"
|
| | type: "ReLU"
|
| | bottom: "conv8_3"
|
| | top: "conv8_3"
|
| | }
|
| | # *******************
|
| | # ***** Softmax *****
|
| | # *******************
|
| | layer {
|
| | name: "conv8_313"
|
| | type: "Convolution"
|
| | bottom: "conv8_3"
|
| | top: "conv8_313"
|
| | convolution_param {
|
| | num_output: 313
|
| | kernel_size: 1
|
| | stride: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "conv8_313_rh"
|
| | type: "Scale"
|
| | bottom: "conv8_313"
|
| | top: "conv8_313_rh"
|
| | scale_param {
|
| | bias_term: false
|
| | filler { type: 'constant' value: 2.606 }
|
| | }
|
| | }
|
| | layer {
|
| | name: "class8_313_rh"
|
| | type: "Softmax"
|
| | bottom: "conv8_313_rh"
|
| | top: "class8_313_rh"
|
| | }
|
| | # ********************
|
| | # ***** Decoding *****
|
| | # ********************
|
| | layer {
|
| | name: "class8_ab"
|
| | type: "Convolution"
|
| | bottom: "class8_313_rh"
|
| | top: "class8_ab"
|
| | convolution_param {
|
| | num_output: 2
|
| | kernel_size: 1
|
| | stride: 1
|
| | dilation: 1
|
| | }
|
| | }
|
| | layer {
|
| | name: "Silence"
|
| | type: "Silence"
|
| | bottom: "class8_ab"
|
| | } |