flightscope-test / inference /detr_config.py
agucci's picture
Initial test
3b82ac6
dataset_type = 'CocoDataset'
data_root = '/home/safouane/Downloads/benchmark_aircraft/data/'
backend_args = None
max_epochs = 500
metainfo = {
'classes': ('airplane', ),
'palette': [
(0, 128, 255),
]
}
num_classes = 1
train_pipeline = [
dict(type='LoadImageFromFile', backend_args=None),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='RandomFlip', prob=0.5),
dict(
type='RandomChoice',
transforms=[
[
dict(
type='RandomChoiceResize',
scales=[
(
480,
1333,
),
(
512,
1333,
),
(
544,
1333,
),
(
576,
1333,
),
(
608,
1333,
),
(
640,
1333,
),
(
672,
1333,
),
(
704,
1333,
),
(
736,
1333,
),
(
768,
1333,
),
(
800,
1333,
),
],
keep_ratio=True),
],
[
dict(
type='RandomChoiceResize',
scales=[
(
400,
1333,
),
(
500,
1333,
),
(
600,
1333,
),
],
keep_ratio=True),
dict(
type='RandomCrop',
crop_type='absolute_range',
crop_size=(
384,
600,
),
allow_negative_crop=True),
dict(
type='RandomChoiceResize',
scales=[
(
480,
1333,
),
(
512,
1333,
),
(
544,
1333,
),
(
576,
1333,
),
(
608,
1333,
),
(
640,
1333,
),
(
672,
1333,
),
(
704,
1333,
),
(
736,
1333,
),
(
768,
1333,
),
(
800,
1333,
),
],
keep_ratio=True),
],
]),
dict(type='PackDetInputs'),
]
test_pipeline = [
dict(type='LoadImageFromFile', backend_args=None),
dict(type='Resize', scale=(
1333,
800,
), keep_ratio=True),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='PackDetInputs',
meta_keys=(
'img_id',
'img_path',
'ori_shape',
'img_shape',
'scale_factor',
)),
]
train_dataloader = dict(
batch_size=8,
num_workers=2,
persistent_workers=True,
sampler=dict(type='DefaultSampler', shuffle=True),
batch_sampler=dict(type='AspectRatioBatchSampler'),
dataset=dict(
type='CocoDataset',
metainfo=dict(classes=('airplane', ), palette=[
(
220,
20,
60,
),
]),
data_root='/home/safouane/Downloads/benchmark_aircraft/data/',
ann_file='train/__coco.json',
data_prefix=dict(img='train/'),
filter_cfg=dict(filter_empty_gt=True, min_size=32),
pipeline=[
dict(type='LoadImageFromFile', backend_args=None),
dict(type='LoadAnnotations', with_bbox=True),
dict(type='RandomFlip', prob=0.5),
dict(
type='RandomChoice',
transforms=[
[
dict(
type='RandomChoiceResize',
scales=[
(
480,
1333,
),
(
512,
1333,
),
(
544,
1333,
),
(
576,
1333,
),
(
608,
1333,
),
(
640,
1333,
),
(
672,
1333,
),
(
704,
1333,
),
(
736,
1333,
),
(
768,
1333,
),
(
800,
1333,
),
],
keep_ratio=True),
],
[
dict(
type='RandomChoiceResize',
scales=[
(
400,
1333,
),
(
500,
1333,
),
(
600,
1333,
),
],
keep_ratio=True),
dict(
type='RandomCrop',
crop_type='absolute_range',
crop_size=(
384,
600,
),
allow_negative_crop=True),
dict(
type='RandomChoiceResize',
scales=[
(
480,
1333,
),
(
512,
1333,
),
(
544,
1333,
),
(
576,
1333,
),
(
608,
1333,
),
(
640,
1333,
),
(
672,
1333,
),
(
704,
1333,
),
(
736,
1333,
),
(
768,
1333,
),
(
800,
1333,
),
],
keep_ratio=True),
],
]),
dict(type='PackDetInputs'),
],
backend_args=None))
val_dataloader = dict(
batch_size=1,
num_workers=2,
persistent_workers=True,
drop_last=False,
sampler=dict(type='DefaultSampler', shuffle=False),
dataset=dict(
type='CocoDataset',
metainfo=dict(classes=('airplane', ), palette=[
(
220,
20,
60,
),
]),
data_root='/home/safouane/Downloads/benchmark_aircraft/data/',
ann_file='val/__coco.json',
data_prefix=dict(img='val/'),
test_mode=True,
pipeline=[
dict(type='LoadImageFromFile', backend_args=None),
dict(type='Resize', scale=(
1333,
800,
), keep_ratio=True),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='PackDetInputs',
meta_keys=(
'img_id',
'img_path',
'ori_shape',
'img_shape',
'scale_factor',
)),
],
backend_args=None))
test_dataloader = dict(
batch_size=1,
num_workers=2,
persistent_workers=True,
drop_last=False,
sampler=dict(type='DefaultSampler', shuffle=False),
dataset=dict(
type='CocoDataset',
metainfo=dict(classes=('airplane', ), palette=[
(
220,
20,
60,
),
]),
data_root='/home/safouane/Downloads/benchmark_aircraft/data/',
ann_file='test/__coco.json',
data_prefix=dict(img='test/'),
test_mode=True,
pipeline=[
dict(type='LoadImageFromFile', backend_args=None),
dict(type='Resize', scale=(
1333,
800,
), keep_ratio=True),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='PackDetInputs',
meta_keys=(
'img_id',
'img_path',
'ori_shape',
'img_shape',
'scale_factor',
)),
],
backend_args=None))
val_evaluator = dict(
type='CocoMetric',
ann_file='/home/safouane/Downloads/benchmark_aircraft/data/val/__coco.json',
metric='bbox',
format_only=False,
backend_args=None)
test_evaluator = dict(
type='CocoMetric',
ann_file=
'/home/safouane/Downloads/benchmark_aircraft/data/test/__coco.json',
metric='bbox',
format_only=False,
backend_args=None)
default_scope = 'mmdet'
default_hooks = dict(
timer=dict(type='IterTimerHook'),
logger=dict(type='LoggerHook', interval=5),
param_scheduler=dict(type='ParamSchedulerHook'),
checkpoint=dict(type='CheckpointHook', interval=5, save_best='auto'),
sampler_seed=dict(type='DistSamplerSeedHook'),
visualization=dict(type='DetVisualizationHook'))
env_cfg = dict(
cudnn_benchmark=False,
mp_cfg=dict(mp_start_method='fork', opencv_num_threads=0),
dist_cfg=dict(backend='nccl'))
vis_backends = [
dict(type='LocalVisBackend'),
]
visualizer = dict(
type='DetLocalVisualizer',
vis_backends=[
dict(type='LocalVisBackend'),
dict(type='TensorboardVisBackend'),
],
name='visualizer')
log_processor = dict(type='LogProcessor', window_size=50, by_epoch=True)
log_level = 'INFO'
load_from = '/home/safouane/Downloads/benchmark_aircraft/mmdetection/configs/detr/checkpoints/detr_r50_8xb2-150e_coco_20221023_153551-436d03e8.pth'
resume = False
model = dict(
type='DETR',
num_queries=100,
data_preprocessor=dict(
type='DetDataPreprocessor',
mean=[
123.675,
116.28,
103.53,
],
std=[
58.395,
57.12,
57.375,
],
bgr_to_rgb=True,
pad_size_divisor=1),
backbone=dict(
type='ResNet',
depth=50,
num_stages=4,
out_indices=(3, ),
frozen_stages=1,
norm_cfg=dict(type='BN', requires_grad=False),
norm_eval=True,
style='pytorch',
init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet50')),
neck=dict(
type='ChannelMapper',
in_channels=[
2048,
],
kernel_size=1,
out_channels=256,
act_cfg=None,
norm_cfg=None,
num_outs=1),
encoder=dict(
num_layers=6,
layer_cfg=dict(
self_attn_cfg=dict(
embed_dims=256, num_heads=8, dropout=0.1, batch_first=True),
ffn_cfg=dict(
embed_dims=256,
feedforward_channels=2048,
num_fcs=2,
ffn_drop=0.1,
act_cfg=dict(type='ReLU', inplace=True)))),
decoder=dict(
num_layers=6,
layer_cfg=dict(
self_attn_cfg=dict(
embed_dims=256, num_heads=8, dropout=0.1, batch_first=True),
cross_attn_cfg=dict(
embed_dims=256, num_heads=8, dropout=0.1, batch_first=True),
ffn_cfg=dict(
embed_dims=256,
feedforward_channels=2048,
num_fcs=2,
ffn_drop=0.1,
act_cfg=dict(type='ReLU', inplace=True))),
return_intermediate=True),
positional_encoding=dict(num_feats=128, normalize=True),
bbox_head=dict(
type='DETRHead',
num_classes=1,
embed_dims=256,
loss_cls=dict(
type='CrossEntropyLoss',
bg_cls_weight=0.1,
use_sigmoid=False,
loss_weight=1.0,
class_weight=1.0),
loss_bbox=dict(type='L1Loss', loss_weight=5.0),
loss_iou=dict(type='GIoULoss', loss_weight=2.0)),
train_cfg=dict(
assigner=dict(
type='HungarianAssigner',
match_costs=[
dict(type='ClassificationCost', weight=1.0),
dict(type='BBoxL1Cost', weight=5.0, box_format='xywh'),
dict(type='IoUCost', iou_mode='giou', weight=2.0),
])),
test_cfg=dict(max_per_img=100))
optim_wrapper = dict(
type='OptimWrapper',
optimizer=dict(type='AdamW', lr=0.0001, weight_decay=0.0001),
clip_grad=dict(max_norm=0.1, norm_type=2),
paramwise_cfg=dict(
custom_keys=dict(backbone=dict(lr_mult=0.1, decay_mult=1.0))))
train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=500, val_interval=1)
val_cfg = dict(type='ValLoop')
test_cfg = dict(type='TestLoop')
param_scheduler = [
dict(
type='MultiStepLR',
begin=0,
end=150,
by_epoch=True,
milestones=[
100,
],
gamma=0.1),
]
auto_scale_lr = dict(base_batch_size=16)
launcher = 'none'
work_dir = './work_dirs/detr_r50_8xb2-150e_coco'