input: "data" input_dim: 1 # change to input_dim: 1 if not using color inputs input_dim: 3 input_dim: 256 input_dim: 256 input: "gt" input_dim: 1 input_dim: 1 input_dim: 256 input_dim: 256 layer { name: "Convolution1" type: "Convolution" bottom: "data" top: "Convolution1" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_0" type: "ReLU" bottom: "Convolution1" top: "Convolution1" } layer { name: "Convolution2" type: "Convolution" bottom: "Convolution1" top: "Convolution2" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_1" type: "ReLU" bottom: "Convolution2" top: "Convolution2" } layer { name: "Convolution3" type: "Convolution" bottom: "Convolution2" top: "Convolution3" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_2" type: "ReLU" bottom: "Convolution3" top: "Convolution3" } layer { name: "Convolution4" type: "Convolution" bottom: "Convolution3" top: "Convolution4" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_3" type: "ReLU" bottom: "Convolution4" top: "Convolution4" } layer { name: "Convolution5" type: "Convolution" bottom: "Convolution4" top: "Convolution5" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_4" type: "ReLU" bottom: "Convolution5" top: "Convolution5" } layer { name: "Convolution6" type: "Convolution" bottom: "Convolution5" top: "Convolution6" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_5" type: "ReLU" bottom: "Convolution6" top: "Convolution6" } layer { name: "Convolution7" type: "Convolution" bottom: "Convolution6" top: "Convolution7" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_0_6" type: "ReLU" bottom: "Convolution7" top: "Convolution7" } layer { name: "Pooling1" type: "Pooling" bottom: "Convolution1" top: "Pooling1" pooling_param { pool: AVE kernel_size: 2 stride: 2 } } layer { name: "Convolution8" type: "Convolution" bottom: "Pooling1" top: "Convolution8" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_0" type: "ReLU" bottom: "Convolution8" top: "Convolution8" } layer { name: "Convolution9" type: "Convolution" bottom: "Convolution8" top: "Convolution9" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_1" type: "ReLU" bottom: "Convolution9" top: "Convolution9" } layer { name: "Convolution10" type: "Convolution" bottom: "Convolution9" top: "Convolution10" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_2" type: "ReLU" bottom: "Convolution10" top: "Convolution10" } layer { name: "Convolution11" type: "Convolution" bottom: "Convolution10" top: "Convolution11" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_3" type: "ReLU" bottom: "Convolution11" top: "Convolution11" } layer { name: "Convolution12" type: "Convolution" bottom: "Convolution11" top: "Convolution12" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_4" type: "ReLU" bottom: "Convolution12" top: "Convolution12" } layer { name: "Convolution13" type: "Convolution" bottom: "Convolution12" top: "Convolution13" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_1_5" type: "ReLU" bottom: "Convolution13" top: "Convolution13" } layer { name: "Pooling2" type: "Pooling" bottom: "Convolution8" top: "Pooling2" pooling_param { pool: AVE kernel_size: 2 stride: 2 } } layer { name: "Convolution14" type: "Convolution" bottom: "Pooling2" top: "Convolution14" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_2_0" type: "ReLU" bottom: "Convolution14" top: "Convolution14" } layer { name: "Convolution15" type: "Convolution" bottom: "Convolution14" top: "Convolution15" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_2_1" type: "ReLU" bottom: "Convolution15" top: "Convolution15" } layer { name: "Convolution16" type: "Convolution" bottom: "Convolution15" top: "Convolution16" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_2_2" type: "ReLU" bottom: "Convolution16" top: "Convolution16" } layer { name: "Convolution17" type: "Convolution" bottom: "Convolution16" top: "Convolution17" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_2_3" type: "ReLU" bottom: "Convolution17" top: "Convolution17" } layer { name: "Convolution18" type: "Convolution" bottom: "Convolution17" top: "Convolution18" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_2_4" type: "ReLU" bottom: "Convolution18" top: "Convolution18" } layer { name: "Pooling3" type: "Pooling" bottom: "Convolution14" top: "Pooling3" pooling_param { pool: AVE kernel_size: 2 stride: 2 } } layer { name: "Convolution19" type: "Convolution" bottom: "Pooling3" top: "Convolution19" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_3_0" type: "ReLU" bottom: "Convolution19" top: "Convolution19" } layer { name: "Convolution20" type: "Convolution" bottom: "Convolution19" top: "Convolution20" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_3_1" type: "ReLU" bottom: "Convolution20" top: "Convolution20" } layer { name: "Convolution21" type: "Convolution" bottom: "Convolution20" top: "Convolution21" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_3_2" type: "ReLU" bottom: "Convolution21" top: "Convolution21" } layer { name: "Convolution22" type: "Convolution" bottom: "Convolution21" top: "Convolution22" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "conv_3_3" type: "ReLU" bottom: "Convolution22" top: "Convolution22" } layer { name: "upsample_1" type: "Deconvolution" bottom: "Convolution13" top: "upsample_1" param { lr_mult: 0 decay_mult: 0 } convolution_param { kernel_size: 4 num_output: 32 group: 32 stride: 2 pad: 1 weight_filler: { type: 'bilinear' } bias_term: false } } layer { name: "upsample_2" type: "Deconvolution" bottom: "Convolution18" top: "upsample_2" param { lr_mult: 0 decay_mult: 0 } convolution_param { kernel_size: 8 num_output: 32 group: 32 stride: 4 pad: 2 weight_filler: { type: 'bilinear' } bias_term: false } } layer { name: "upsample_3" type: "Deconvolution" bottom: "Convolution22" top: "upsample_3" param { lr_mult: 0 decay_mult: 0 } convolution_param { kernel_size: 16 num_output: 32 group: 32 stride: 8 pad: 4 weight_filler: { type: 'bilinear' } bias_term: false } } layer { name: "merged" type: "Concat" bottom: "Convolution7" bottom: "upsample_1" bottom: "upsample_2" bottom: "upsample_3" top: "merged" } layer { name: "Convolution26" type: "Convolution" bottom: "merged" top: "Convolution26" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 3 kernel_size: 7 stride: 1 weight_filler { type: "msra" } } } layer { name: "merged_conv" type: "ReLU" bottom: "Convolution26" top: "Convolution26" } layer { name: "Convolution27" type: "Convolution" bottom: "Convolution26" top: "Convolution27" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "ReLU1" type: "ReLU" bottom: "Convolution27" top: "Convolution27" } layer { name: "Convolution28" type: "Convolution" bottom: "Convolution27" top: "Convolution28" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "rep_layer_0" type: "ReLU" bottom: "Convolution28" top: "Convolution28" } layer { name: "Convolution29" type: "Convolution" bottom: "Convolution28" top: "Convolution29" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 32 pad: 2 kernel_size: 5 stride: 1 weight_filler { type: "msra" } } } layer { name: "ReLU2" type: "ReLU" bottom: "Convolution29" top: "Convolution29" } layer { name: "Convolution30" type: "Convolution" bottom: "Convolution29" top: "out" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 2 pad: 0 kernel_size: 1 stride: 1 weight_filler { type: "msra" } } } layer { name: "baselines_7_loss_0" type: "SoftmaxWithLoss" bottom: "out" bottom: "gt" top: "loss" loss_weight: 1.0 }