|
- _base_ = [
- '../_base_/models/mask_rcnn_r50_fpn.py',
- '../_base_/datasets/cityscapes_instance.py', '../_base_/default_runtime.py'
- ]
- model = dict(
- backbone=dict(init_cfg=None),
- roi_head=dict(
- bbox_head=dict(
- type='Shared2FCBBoxHead',
- in_channels=256,
- fc_out_channels=1024,
- roi_feat_size=7,
- num_classes=8,
- bbox_coder=dict(
- type='DeltaXYWHBBoxCoder',
- target_means=[0., 0., 0., 0.],
- target_stds=[0.1, 0.1, 0.2, 0.2]),
- reg_class_agnostic=False,
- loss_cls=dict(
- type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
- loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
- mask_head=dict(
- type='FCNMaskHead',
- num_convs=4,
- in_channels=256,
- conv_out_channels=256,
- num_classes=8,
- loss_mask=dict(
- type='CrossEntropyLoss', use_mask=True, loss_weight=1.0))))
- # optimizer
- # lr is set for a batch size of 8
- optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
- optimizer_config = dict(grad_clip=None)
- # learning policy
- lr_config = dict(
- policy='step',
- warmup='linear',
- warmup_iters=500,
- warmup_ratio=0.001,
- # [7] yields higher performance than [6]
- step=[7])
- runner = dict(
- type='EpochBasedRunner', max_epochs=8) # actual epoch = 8 * 8 = 64
- log_config = dict(interval=100)
- # For better, more stable performance initialize from COCO
- load_from = 'https://download.openmmlab.com/mmdetection/v2.0/mask_rcnn/mask_rcnn_r50_fpn_1x_coco/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth' # noqa
|