Unverified Commit 0d5233a3 authored by Kai Chen's avatar Kai Chen Committed by GitHub
Browse files

Make data pre-processing pipeline customizable (#935)

* define data pipelines

* update two config files

* minor fix for config files

* allow img_scale to be optional and update config

* add some docstrings

* add extra aug to transform

* bug fix for mask resizing

* fix cropping

* add faster rcnn example

* fix imports

* fix robustness testing

* add img_norm_cfg to img_meta

* fix the inference api with the new data pipeline

* fix proposal loading

* delete args of DefaultFormatBundle

* add more configs

* update configs

* bug fix

* add a brief doc

* update gt_labels in RandomCrop

* fix key error for new apis

* bug fix for masks of crowd bboxes

* add argument data_root

* minor fix

* update new hrnet configs

* update docs

* rename MultiscaleFlipAug to MultiScaleFlipAug

* add __repr__ for all transforms

* move DATA_PIPELINE.md to docs/

* fix image url
parent 7bb38af4
...@@ -44,13 +44,8 @@ model = dict( ...@@ -44,13 +44,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -62,13 +57,8 @@ model = dict( ...@@ -62,13 +57,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -80,13 +70,8 @@ model = dict( ...@@ -80,13 +70,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
], ],
mask_roi_extractor=dict( mask_roi_extractor=dict(
type='SingleRoIExtractor', type='SingleRoIExtractor',
...@@ -196,6 +181,31 @@ dataset_type = 'CocoDataset' ...@@ -196,6 +181,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -203,35 +213,17 @@ data = dict( ...@@ -203,35 +213,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -52,13 +52,8 @@ model = dict( ...@@ -52,13 +52,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='BBoxHead', type='BBoxHead',
with_avg_pool=True, with_avg_pool=True,
...@@ -69,13 +64,8 @@ model = dict( ...@@ -69,13 +64,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='BBoxHead', type='BBoxHead',
with_avg_pool=True, with_avg_pool=True,
...@@ -86,13 +76,8 @@ model = dict( ...@@ -86,13 +76,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
], ],
mask_roi_extractor=None, mask_roi_extractor=None,
mask_head=dict( mask_head=dict(
...@@ -198,42 +183,49 @@ dataset_type = 'CocoDataset' ...@@ -198,42 +183,49 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[102.9801, 115.9465, 122.7717], std=[1.0, 1.0, 1.0], to_rgb=False) mean=[102.9801, 115.9465, 122.7717], std=[1.0, 1.0, 1.0], to_rgb=False)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=1, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
train=dict( train=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -44,13 +44,8 @@ model = dict( ...@@ -44,13 +44,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -62,13 +57,8 @@ model = dict( ...@@ -62,13 +57,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -80,13 +70,8 @@ model = dict( ...@@ -80,13 +70,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
], ],
mask_roi_extractor=dict( mask_roi_extractor=dict(
type='SingleRoIExtractor', type='SingleRoIExtractor',
...@@ -196,6 +181,31 @@ dataset_type = 'CocoDataset' ...@@ -196,6 +181,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -203,35 +213,17 @@ data = dict( ...@@ -203,35 +213,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -46,13 +46,8 @@ model = dict( ...@@ -46,13 +46,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -64,13 +59,8 @@ model = dict( ...@@ -64,13 +59,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -82,13 +72,8 @@ model = dict( ...@@ -82,13 +72,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
], ],
mask_roi_extractor=dict( mask_roi_extractor=dict(
type='SingleRoIExtractor', type='SingleRoIExtractor',
...@@ -198,6 +183,31 @@ dataset_type = 'CocoDataset' ...@@ -198,6 +183,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -205,35 +215,17 @@ data = dict( ...@@ -205,35 +215,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -46,13 +46,8 @@ model = dict( ...@@ -46,13 +46,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -64,13 +59,8 @@ model = dict( ...@@ -64,13 +59,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -82,13 +72,8 @@ model = dict( ...@@ -82,13 +72,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
], ],
mask_roi_extractor=dict( mask_roi_extractor=dict(
type='SingleRoIExtractor', type='SingleRoIExtractor',
...@@ -198,6 +183,31 @@ dataset_type = 'CocoDataset' ...@@ -198,6 +183,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -205,35 +215,17 @@ data = dict( ...@@ -205,35 +215,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -44,13 +44,8 @@ model = dict( ...@@ -44,13 +44,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -62,13 +57,8 @@ model = dict( ...@@ -62,13 +57,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -80,13 +70,8 @@ model = dict( ...@@ -80,13 +70,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -177,6 +162,31 @@ dataset_type = 'CocoDataset' ...@@ -177,6 +162,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -184,35 +194,17 @@ data = dict( ...@@ -184,35 +194,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -52,13 +52,8 @@ model = dict( ...@@ -52,13 +52,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='BBoxHead', type='BBoxHead',
with_avg_pool=True, with_avg_pool=True,
...@@ -69,13 +64,8 @@ model = dict( ...@@ -69,13 +64,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='BBoxHead', type='BBoxHead',
with_avg_pool=True, with_avg_pool=True,
...@@ -86,13 +76,8 @@ model = dict( ...@@ -86,13 +76,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -186,42 +171,49 @@ dataset_type = 'CocoDataset' ...@@ -186,42 +171,49 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[102.9801, 115.9465, 122.7717], std=[1.0, 1.0, 1.0], to_rgb=False) mean=[102.9801, 115.9465, 122.7717], std=[1.0, 1.0, 1.0], to_rgb=False)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=1, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
train=dict( train=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -44,13 +44,8 @@ model = dict( ...@@ -44,13 +44,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -62,13 +57,8 @@ model = dict( ...@@ -62,13 +57,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -80,13 +70,8 @@ model = dict( ...@@ -80,13 +70,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -177,6 +162,31 @@ dataset_type = 'CocoDataset' ...@@ -177,6 +162,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -184,35 +194,17 @@ data = dict( ...@@ -184,35 +194,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -46,13 +46,8 @@ model = dict( ...@@ -46,13 +46,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -64,13 +59,8 @@ model = dict( ...@@ -64,13 +59,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -82,13 +72,8 @@ model = dict( ...@@ -82,13 +72,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -179,6 +164,31 @@ dataset_type = 'CocoDataset' ...@@ -179,6 +164,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -186,35 +196,17 @@ data = dict( ...@@ -186,35 +196,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -46,13 +46,8 @@ model = dict( ...@@ -46,13 +46,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -64,13 +59,8 @@ model = dict( ...@@ -64,13 +59,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -82,13 +72,8 @@ model = dict( ...@@ -82,13 +72,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -179,6 +164,31 @@ dataset_type = 'CocoDataset' ...@@ -179,6 +164,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -186,35 +196,17 @@ data = dict( ...@@ -186,35 +196,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -102,49 +102,56 @@ dataset_type = 'CityscapesDataset' ...@@ -102,49 +102,56 @@ dataset_type = 'CityscapesDataset'
data_root = 'data/cityscapes/' data_root = 'data/cityscapes/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='Resize', img_scale=[(2048, 800), (2048, 1024)], keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(2048, 1024),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=1, imgs_per_gpu=1,
workers_per_gpu=2, workers_per_gpu=2,
train=dict( train=dict(
type='RepeatDataset', # to avoid reloading datasets frequently type='RepeatDataset',
times=8, times=8,
dataset=dict( dataset=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_train.json', 'annotations/instancesonly_filtered_gtFine_train.json',
img_prefix=data_root + 'train/', img_prefix=data_root + 'train/',
img_scale=[(2048, 800), (2048, 1024)], pipeline=train_pipeline)),
img_norm_cfg=img_norm_cfg,
multiscale_mode='range',
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True)),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_val.json', 'annotations/instancesonly_filtered_gtFine_val.json',
img_prefix=data_root + 'val/', img_prefix=data_root + 'val/',
img_scale=(2048, 1024), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_val.json', 'annotations/instancesonly_filtered_gtFine_val.json',
img_prefix=data_root + 'val/', img_prefix=data_root + 'val/',
img_scale=(2048, 1024), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
# lr is set for a batch size of 8 # lr is set for a batch size of 8
optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
......
...@@ -116,49 +116,56 @@ dataset_type = 'CityscapesDataset' ...@@ -116,49 +116,56 @@ dataset_type = 'CityscapesDataset'
data_root = 'data/cityscapes/' data_root = 'data/cityscapes/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(
type='Resize', img_scale=[(2048, 800), (2048, 1024)], keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(2048, 1024),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=1, imgs_per_gpu=1,
workers_per_gpu=2, workers_per_gpu=2,
train=dict( train=dict(
type='RepeatDataset', # to avoid reloading datasets frequently type='RepeatDataset',
times=8, times=8,
dataset=dict( dataset=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_train.json', 'annotations/instancesonly_filtered_gtFine_train.json',
img_prefix=data_root + 'train/', img_prefix=data_root + 'train/',
img_scale=[(2048, 800), (2048, 1024)], pipeline=train_pipeline)),
img_norm_cfg=img_norm_cfg,
multiscale_mode='range',
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True)),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_val.json', 'annotations/instancesonly_filtered_gtFine_val.json',
img_prefix=data_root + 'val/', img_prefix=data_root + 'val/',
img_scale=(2048, 1024), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + ann_file=data_root +
'annotations/instancesonly_filtered_gtFine_val.json', 'annotations/instancesonly_filtered_gtFine_val.json',
img_prefix=data_root + 'val/', img_prefix=data_root + 'val/',
img_scale=(2048, 1024), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
# lr is set for a batch size of 8 # lr is set for a batch size of 8
optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
......
...@@ -184,6 +184,31 @@ dataset_type = 'CocoDataset' ...@@ -184,6 +184,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -191,35 +216,17 @@ data = dict( ...@@ -191,35 +216,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -11,9 +11,7 @@ model = dict( ...@@ -11,9 +11,7 @@ model = dict(
frozen_stages=1, frozen_stages=1,
style='pytorch', style='pytorch',
dcn=dict( dcn=dict(
modulated=False, modulated=False, deformable_groups=1, fallback_on_stride=False),
deformable_groups=1,
fallback_on_stride=False),
stage_with_dcn=(False, True, True, True)), stage_with_dcn=(False, True, True, True)),
neck=dict( neck=dict(
type='FPN', type='FPN',
...@@ -49,13 +47,8 @@ model = dict( ...@@ -49,13 +47,8 @@ model = dict(
target_stds=[0.1, 0.1, 0.2, 0.2], target_stds=[0.1, 0.1, 0.2, 0.2],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -67,13 +60,8 @@ model = dict( ...@@ -67,13 +60,8 @@ model = dict(
target_stds=[0.05, 0.05, 0.1, 0.1], target_stds=[0.05, 0.05, 0.1, 0.1],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0)),
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0)),
dict( dict(
type='SharedFCBBoxHead', type='SharedFCBBoxHead',
num_fcs=2, num_fcs=2,
...@@ -85,13 +73,8 @@ model = dict( ...@@ -85,13 +73,8 @@ model = dict(
target_stds=[0.033, 0.033, 0.067, 0.067], target_stds=[0.033, 0.033, 0.067, 0.067],
reg_class_agnostic=True, reg_class_agnostic=True,
loss_cls=dict( loss_cls=dict(
type='CrossEntropyLoss', type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0),
use_sigmoid=False, loss_bbox=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1.0))
loss_weight=1.0),
loss_bbox=dict(
type='SmoothL1Loss',
beta=1.0,
loss_weight=1.0))
]) ])
# model training and testing settings # model training and testing settings
train_cfg = dict( train_cfg = dict(
...@@ -182,6 +165,31 @@ dataset_type = 'CocoDataset' ...@@ -182,6 +165,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -189,35 +197,17 @@ data = dict( ...@@ -189,35 +197,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -105,6 +105,31 @@ dataset_type = 'CocoDataset' ...@@ -105,6 +105,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -112,35 +137,17 @@ data = dict( ...@@ -112,35 +137,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -110,6 +110,31 @@ dataset_type = 'CocoDataset' ...@@ -110,6 +110,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -117,35 +142,17 @@ data = dict( ...@@ -117,35 +142,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -108,6 +108,31 @@ dataset_type = 'CocoDataset' ...@@ -108,6 +108,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -115,35 +140,17 @@ data = dict( ...@@ -115,35 +140,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -105,6 +105,31 @@ dataset_type = 'CocoDataset' ...@@ -105,6 +105,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -112,35 +137,17 @@ data = dict( ...@@ -112,35 +137,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -108,6 +108,31 @@ dataset_type = 'CocoDataset' ...@@ -108,6 +108,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -115,35 +140,17 @@ data = dict( ...@@ -115,35 +140,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=False,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
...@@ -10,9 +10,7 @@ model = dict( ...@@ -10,9 +10,7 @@ model = dict(
frozen_stages=1, frozen_stages=1,
style='pytorch', style='pytorch',
dcn=dict( dcn=dict(
modulated=False, modulated=False, deformable_groups=1, fallback_on_stride=False),
deformable_groups=1,
fallback_on_stride=False),
stage_with_dcn=(False, True, True, True)), stage_with_dcn=(False, True, True, True)),
neck=dict( neck=dict(
type='FPN', type='FPN',
...@@ -121,6 +119,31 @@ dataset_type = 'CocoDataset' ...@@ -121,6 +119,31 @@ dataset_type = 'CocoDataset'
data_root = 'data/coco/' data_root = 'data/coco/'
img_norm_cfg = dict( img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize', img_scale=(1333, 800), keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),
flip=False,
transforms=[
dict(type='Resize', keep_ratio=True),
dict(type='RandomFlip'),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='ImageToTensor', keys=['img']),
dict(type='Collect', keys=['img']),
])
]
data = dict( data = dict(
imgs_per_gpu=2, imgs_per_gpu=2,
workers_per_gpu=2, workers_per_gpu=2,
...@@ -128,35 +151,17 @@ data = dict( ...@@ -128,35 +151,17 @@ data = dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_train2017.json', ann_file=data_root + 'annotations/instances_train2017.json',
img_prefix=data_root + 'train2017/', img_prefix=data_root + 'train2017/',
img_scale=(1333, 800), pipeline=train_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0.5,
with_mask=True,
with_crowd=True,
with_label=True),
val=dict( val=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline),
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=True,
with_crowd=True,
with_label=True),
test=dict( test=dict(
type=dataset_type, type=dataset_type,
ann_file=data_root + 'annotations/instances_val2017.json', ann_file=data_root + 'annotations/instances_val2017.json',
img_prefix=data_root + 'val2017/', img_prefix=data_root + 'val2017/',
img_scale=(1333, 800), pipeline=test_pipeline))
img_norm_cfg=img_norm_cfg,
size_divisor=32,
flip_ratio=0,
with_mask=False,
with_label=False,
test_mode=True))
# optimizer # optimizer
optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment