Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- name: "ResNet-50"
- layer {
- name: 'input-data'
- type: 'Python'
- top: 'data'
- top: 'im_info'
- top: 'gt_boxes'
- python_param {
- module: 'roi_data_layer.layer'
- layer: 'RoIDataLayer'
- param_str: "'num_classes': 81"
- }
- }
- #===============CONV1===========
- layer {
- name: "conv1"
- type: "Convolution"
- bottom: "data"
- top: "conv1"
- param {
- lr_mult: 1
- decay_mult: 1
- }
- convolution_param {
- num_output: 64
- bias_term: false
- pad: 1
- kernel_size: 3
- stride: 2
- weight_filler {
- type: "msra"
- }
- }
- }
- layer {
- name: "conv1_bn"
- type: "BatchNorm"
- bottom: "conv1"
- top: "conv1"
- }
- layer {
- name: "conv1_scale"
- type: "Scale"
- bottom: "conv1"
- top: "conv1"
- scale_param {
- filler {
- value: 1
- }
- bias_term: true
- bias_filler {
- value: 1
- }
- }
- }
- layer {
- name: "conv1_relu"
- bottom: "conv1"
- top: "conv1"
- type: "ReLU"
- }
- #===rpn1===
- layer {
- name: "rpn_cls_score1"
- type: "Convolution"
- bottom: "conv1"
- top: "rpn_cls_score1"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 18 # 2(bg/fg) * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- name: "rpn_bbox_pred1"
- type: "Convolution"
- bottom: "conv1"
- top: "rpn_bbox_pred1"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 36 # 4 * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- bottom: "rpn_cls_score1"
- top: "rpn_cls_score_reshape1"
- name: "rpn_cls_score_reshape1"
- type: "Reshape"
- reshape_param { shape { dim: 0 dim: 2 dim: -1 dim: 0 } }
- }
- #===============CONV2===========
- layer {
- name: "conv2"
- type: "Convolution"
- bottom: "conv1"
- top: "conv2"
- param {
- lr_mult: 1
- decay_mult: 1
- }
- convolution_param {
- num_output: 128
- bias_term: false
- pad: 1
- kernel_size: 3
- stride: 2
- weight_filler {
- type: "msra"
- }
- }
- }
- layer {
- name: "conv2_bn"
- type: "BatchNorm"
- bottom: "conv2"
- top: "conv2"
- }
- layer {
- name: "conv2_scale"
- type: "Scale"
- bottom: "conv2"
- top: "conv2"
- scale_param {
- filler {
- value: 1
- }
- bias_term: true
- bias_filler {
- value: 1
- }
- }
- }
- layer {
- name: "conv2_relu"
- bottom: "conv2"
- top: "conv2"
- type: "ReLU"
- }
- #===rpn2===
- layer {
- name: "rpn_cls_score2"
- type: "Convolution"
- bottom: "conv2"
- top: "rpn_cls_score2"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 18 # 2(bg/fg) * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- name: "rpn_bbox_pred2"
- type: "Convolution"
- bottom: "conv2"
- top: "rpn_bbox_pred2"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 36 # 4 * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- bottom: "rpn_cls_score2"
- top: "rpn_cls_score_reshape2"
- name: "rpn_cls_score_reshape2"
- type: "Reshape"
- reshape_param { shape { dim: 0 dim: 2 dim: -1 dim: 0 } }
- }
- #===============CONV3===========
- layer {
- name: "conv3"
- type: "Convolution"
- bottom: "conv2"
- top: "conv3"
- param {
- lr_mult: 1
- decay_mult: 1
- }
- convolution_param {
- num_output: 256
- bias_term: false
- pad: 1
- kernel_size: 3
- stride: 2
- weight_filler {
- type: "msra"
- }
- }
- }
- layer {
- name: "conv3_bn"
- type: "BatchNorm"
- bottom: "conv3"
- top: "conv3"
- }
- layer {
- name: "conv3_scale"
- type: "Scale"
- bottom: "conv3"
- top: "conv3"
- scale_param {
- filler {
- value: 1
- }
- bias_term: true
- bias_filler {
- value: 1
- }
- }
- }
- layer {
- name: "conv3_relu"
- bottom: "conv3"
- top: "conv3"
- type: "ReLU"
- }
- #===rpn3===
- layer {
- name: "rpn_cls_score3"
- type: "Convolution"
- bottom: "conv3"
- top: "rpn_cls_score3"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 18 # 2(bg/fg) * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- name: "rpn_bbox_pred3"
- type: "Convolution"
- bottom: "conv3"
- top: "rpn_bbox_pred3"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 36 # 4 * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- bottom: "rpn_cls_score3"
- top: "rpn_cls_score_reshape3"
- name: "rpn_cls_score_reshape3"
- type: "Reshape"
- reshape_param { shape { dim: 0 dim: 2 dim: -1 dim: 0 } }
- }
- #===============CONV4===========
- layer {
- name: "conv4"
- type: "Convolution"
- bottom: "conv3"
- top: "conv4"
- param {
- lr_mult: 1
- decay_mult: 1
- }
- convolution_param {
- num_output: 512
- bias_term: false
- pad: 1
- kernel_size: 3
- stride: 2
- weight_filler {
- type: "msra"
- }
- }
- }
- layer {
- name: "conv4_bn"
- type: "BatchNorm"
- bottom: "conv4"
- top: "conv4"
- }
- layer {
- name: "conv4_scale"
- type: "Scale"
- bottom: "conv4"
- top: "conv4"
- scale_param {
- filler {
- value: 1
- }
- bias_term: true
- bias_filler {
- value: 1
- }
- }
- }
- layer {
- name: "conv4_relu"
- bottom: "conv4"
- top: "conv4"
- type: "ReLU"
- }
- #===rpn4===
- layer {
- name: "rpn_cls_score4"
- type: "Convolution"
- bottom: "conv4"
- top: "rpn_cls_score4"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 18 # 2(bg/fg) * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- name: "rpn_bbox_pred4"
- type: "Convolution"
- bottom: "conv4"
- top: "rpn_bbox_pred4"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 36 # 4 * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- bottom: "rpn_cls_score4"
- top: "rpn_cls_score_reshape4"
- name: "rpn_cls_score_reshape4"
- type: "Reshape"
- reshape_param { shape { dim: 0 dim: 2 dim: -1 dim: 0 } }
- }
- #===============CONV5===========
- layer {
- name: "conv5"
- type: "Convolution"
- bottom: "conv4"
- top: "conv5"
- param {
- lr_mult: 1
- decay_mult: 1
- }
- convolution_param {
- num_output: 1024
- bias_term: false
- pad: 1
- kernel_size: 3
- stride: 2
- weight_filler {
- type: "msra"
- }
- }
- }
- layer {
- name: "conv5_bn"
- type: "BatchNorm"
- bottom: "conv5"
- top: "conv5"
- }
- layer {
- name: "conv5_scale"
- type: "Scale"
- bottom: "conv5"
- top: "conv5"
- scale_param {
- filler {
- value: 1
- }
- bias_term: true
- bias_filler {
- value: 1
- }
- }
- }
- layer {
- name: "conv5_relu"
- bottom: "conv5"
- top: "conv5"
- type: "ReLU"
- }
- #===rpn5===
- layer {
- name: "rpn_cls_score5"
- type: "Convolution"
- bottom: "conv5"
- top: "rpn_cls_score5"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 18 # 2(bg/fg) * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- name: "rpn_bbox_pred5"
- type: "Convolution"
- bottom: "conv5"
- top: "rpn_bbox_pred5"
- param { lr_mult: 1.0 decay_mult: 1.0 }
- param { lr_mult: 2.0 decay_mult: 0 }
- convolution_param {
- num_output: 36 # 4 * 9(anchors)
- kernel_size: 1 pad: 0 stride: 1
- weight_filler { type: "gaussian" std: 0.01 }
- bias_filler { type: "constant" value: 0 }
- }
- }
- layer {
- bottom: "rpn_cls_score5"
- top: "rpn_cls_score_reshape5"
- name: "rpn_cls_score_reshape5"
- type: "Reshape"
- reshape_param { shape { dim: 0 dim: 2 dim: -1 dim: 0 } }
- }
- #===loss===
- layer {
- name: "rpn_loss_bbox"
- type: "SmoothL1Loss"
- bottom: "rpn_bbox_pred1"
- bottom: "rpn_bbox_pred2"
- bottom: "rpn_bbox_pred3"
- bottom: "rpn_bbox_pred4"
- bottom: "rpn_bbox_pred5"
- bottom: "gt_boxes"
- top: "rpn_loss_bbox"
- loss_weight: 1
- smooth_l1_loss_param { sigma: 3.0 }
- }
- layer {
- name: "rpn_loss_cls"
- type: "SoftmaxWithLoss"
- bottom: "rpn_cls_score_reshape1"
- bottom: "rpn_cls_score_reshape2"
- bottom: "rpn_cls_score_reshape3"
- bottom: "rpn_cls_score_reshape4"
- bottom: "rpn_cls_score_reshape5"
- bottom: "gt_boxes"
- propagate_down: 1
- propagate_down: 0
- top: "rpn_cls_loss"
- loss_weight: 1
- loss_param {
- ignore_label: -1
- normalize: true
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement