123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- _base_ = [
- '../_base_/models/faster-rcnn_r50_fpn.py',
- '../_base_/datasets/coco_detection.py',
- '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py'
- ]
- model = dict(
- # copied from configs/fcos/fcos_r50-caffe_fpn_gn-head_1x_coco.py
- neck=dict(
- start_level=1,
- add_extra_convs='on_output', # use P5
- relu_before_extra_convs=True),
- rpn_head=dict(
- _delete_=True, # ignore the unused old settings
- type='FCOSHead',
- # num_classes = 1 for rpn,
- # if num_classes > 1, it will be set to 1 in
- # TwoStageDetector automatically
- num_classes=1,
- in_channels=256,
- stacked_convs=4,
- feat_channels=256,
- strides=[8, 16, 32, 64, 128],
- loss_cls=dict(
- type='FocalLoss',
- use_sigmoid=True,
- gamma=2.0,
- alpha=0.25,
- loss_weight=1.0),
- loss_bbox=dict(type='IoULoss', loss_weight=1.0),
- loss_centerness=dict(
- type='CrossEntropyLoss', use_sigmoid=True, loss_weight=1.0)),
- roi_head=dict( # update featmap_strides
- bbox_roi_extractor=dict(featmap_strides=[8, 16, 32, 64, 128])))
- # learning rate
- param_scheduler = [
- dict(
- type='LinearLR', start_factor=0.001, by_epoch=False, begin=0,
- end=1000), # Slowly increase lr, otherwise loss becomes NAN
- dict(
- type='MultiStepLR',
- begin=0,
- end=12,
- by_epoch=True,
- milestones=[8, 11],
- gamma=0.1)
- ]
|