Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
raojy
mmdetection3d_rjy
Commits
eb1107e4
Commit
eb1107e4
authored
Apr 01, 2026
by
raojy
Browse files
fix_mmdetection
parent
7aa442d5
Pipeline
#3461
canceled with stages
Changes
569
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
1676 additions
and
0 deletions
+1676
-0
mmde/mmdet/.mim/configs/centernet/centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py
...ternet/centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py
+83
-0
mmde/mmdet/.mim/configs/centernet/centernet_r18-dcnv2_8xb16-crop512-140e_coco.py
.../centernet/centernet_r18-dcnv2_8xb16-crop512-140e_coco.py
+136
-0
mmde/mmdet/.mim/configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py
...onfigs/centernet/centernet_r18_8xb16-crop512-140e_coco.py
+3
-0
mmde/mmdet/.mim/configs/centernet/centernet_tta.py
mmde/mmdet/.mim/configs/centernet/centernet_tta.py
+39
-0
mmde/mmdet/.mim/configs/centernet/metafile.yml
mmde/mmdet/.mim/configs/centernet/metafile.yml
+60
-0
mmde/mmdet/.mim/configs/centripetalnet/centripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco.py
...ripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco.py
+181
-0
mmde/mmdet/.mim/configs/centripetalnet/metafile.yml
mmde/mmdet/.mim/configs/centripetalnet/metafile.yml
+39
-0
mmde/mmdet/.mim/configs/cityscapes/faster-rcnn_r50_fpn_1x_cityscapes.py
...m/configs/cityscapes/faster-rcnn_r50_fpn_1x_cityscapes.py
+41
-0
mmde/mmdet/.mim/configs/cityscapes/mask-rcnn_r50_fpn_1x_cityscapes.py
...mim/configs/cityscapes/mask-rcnn_r50_fpn_1x_cityscapes.py
+43
-0
mmde/mmdet/.mim/configs/common/lsj-100e_coco-detection.py
mmde/mmdet/.mim/configs/common/lsj-100e_coco-detection.py
+122
-0
mmde/mmdet/.mim/configs/common/lsj-100e_coco-instance.py
mmde/mmdet/.mim/configs/common/lsj-100e_coco-instance.py
+122
-0
mmde/mmdet/.mim/configs/common/lsj-200e_coco-detection.py
mmde/mmdet/.mim/configs/common/lsj-200e_coco-detection.py
+18
-0
mmde/mmdet/.mim/configs/common/lsj-200e_coco-instance.py
mmde/mmdet/.mim/configs/common/lsj-200e_coco-instance.py
+18
-0
mmde/mmdet/.mim/configs/common/ms-90k_coco.py
mmde/mmdet/.mim/configs/common/ms-90k_coco.py
+122
-0
mmde/mmdet/.mim/configs/common/ms-poly-90k_coco-instance.py
mmde/mmdet/.mim/configs/common/ms-poly-90k_coco-instance.py
+130
-0
mmde/mmdet/.mim/configs/common/ms-poly_3x_coco-instance.py
mmde/mmdet/.mim/configs/common/ms-poly_3x_coco-instance.py
+118
-0
mmde/mmdet/.mim/configs/common/ms_3x_coco-instance.py
mmde/mmdet/.mim/configs/common/ms_3x_coco-instance.py
+108
-0
mmde/mmdet/.mim/configs/common/ms_3x_coco.py
mmde/mmdet/.mim/configs/common/ms_3x_coco.py
+108
-0
mmde/mmdet/.mim/configs/common/ssj_270k_coco-instance.py
mmde/mmdet/.mim/configs/common/ssj_270k_coco-instance.py
+125
-0
mmde/mmdet/.mim/configs/common/ssj_scp_270k_coco-instance.py
mmde/mmdet/.mim/configs/common/ssj_scp_270k_coco-instance.py
+60
-0
No files found.
Too many changes to show.
To preserve performance only
569 of 569+
files are displayed.
Plain diff
Email patch
mmde/mmdet/.mim/configs/centernet/centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
'../common/lsj-200e_coco-detection.py'
image_size
=
(
1024
,
1024
)
batch_augments
=
[
dict
(
type
=
'BatchFixedSizePad'
,
size
=
image_size
)]
model
=
dict
(
type
=
'CenterNet'
,
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
=
32
,
batch_augments
=
batch_augments
),
backbone
=
dict
(
type
=
'ResNet'
,
depth
=
50
,
num_stages
=
4
,
out_indices
=
(
0
,
1
,
2
,
3
),
frozen_stages
=
1
,
norm_cfg
=
dict
(
type
=
'BN'
,
requires_grad
=
True
),
norm_eval
=
True
,
style
=
'pytorch'
,
init_cfg
=
dict
(
type
=
'Pretrained'
,
checkpoint
=
'torchvision://resnet50'
)),
neck
=
dict
(
type
=
'FPN'
,
in_channels
=
[
256
,
512
,
1024
,
2048
],
out_channels
=
256
,
start_level
=
1
,
add_extra_convs
=
'on_output'
,
num_outs
=
5
,
init_cfg
=
dict
(
type
=
'Caffe2Xavier'
,
layer
=
'Conv2d'
),
relu_before_extra_convs
=
True
),
bbox_head
=
dict
(
type
=
'CenterNetUpdateHead'
,
num_classes
=
80
,
in_channels
=
256
,
stacked_convs
=
4
,
feat_channels
=
256
,
strides
=
[
8
,
16
,
32
,
64
,
128
],
loss_cls
=
dict
(
type
=
'GaussianFocalLoss'
,
pos_weight
=
0.25
,
neg_weight
=
0.75
,
loss_weight
=
1.0
),
loss_bbox
=
dict
(
type
=
'GIoULoss'
,
loss_weight
=
2.0
),
),
train_cfg
=
None
,
test_cfg
=
dict
(
nms_pre
=
1000
,
min_bbox_size
=
0
,
score_thr
=
0.05
,
nms
=
dict
(
type
=
'nms'
,
iou_threshold
=
0.6
),
max_per_img
=
100
))
train_dataloader
=
dict
(
batch_size
=
8
,
num_workers
=
4
)
# Enable automatic-mixed-precision training with AmpOptimWrapper.
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.01
*
4
,
momentum
=
0.9
,
weight_decay
=
0.00004
),
paramwise_cfg
=
dict
(
norm_decay_mult
=
0.
))
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.00025
,
by_epoch
=
False
,
begin
=
0
,
end
=
4000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
25
,
by_epoch
=
True
,
milestones
=
[
22
,
24
],
gamma
=
0.1
)
]
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (8 GPUs) x (8 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
64
)
mmde/mmdet/.mim/configs/centernet/centernet_r18-dcnv2_8xb16-crop512-140e_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
[
'../_base_/datasets/coco_detection.py'
,
'../_base_/schedules/schedule_1x.py'
,
'../_base_/default_runtime.py'
,
'./centernet_tta.py'
]
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# model settings
model
=
dict
(
type
=
'CenterNet'
,
data_preprocessor
=
dict
(
type
=
'DetDataPreprocessor'
,
mean
=
[
123.675
,
116.28
,
103.53
],
std
=
[
58.395
,
57.12
,
57.375
],
bgr_to_rgb
=
True
),
backbone
=
dict
(
type
=
'ResNet'
,
depth
=
18
,
norm_eval
=
False
,
norm_cfg
=
dict
(
type
=
'BN'
),
init_cfg
=
dict
(
type
=
'Pretrained'
,
checkpoint
=
'torchvision://resnet18'
)),
neck
=
dict
(
type
=
'CTResNetNeck'
,
in_channels
=
512
,
num_deconv_filters
=
(
256
,
128
,
64
),
num_deconv_kernels
=
(
4
,
4
,
4
),
use_dcn
=
True
),
bbox_head
=
dict
(
type
=
'CenterNetHead'
,
num_classes
=
80
,
in_channels
=
64
,
feat_channels
=
64
,
loss_center_heatmap
=
dict
(
type
=
'GaussianFocalLoss'
,
loss_weight
=
1.0
),
loss_wh
=
dict
(
type
=
'L1Loss'
,
loss_weight
=
0.1
),
loss_offset
=
dict
(
type
=
'L1Loss'
,
loss_weight
=
1.0
)),
train_cfg
=
None
,
test_cfg
=
dict
(
topk
=
100
,
local_maximum_kernel
=
3
,
max_per_img
=
100
))
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
{{
_base_
.
backend_args
}}),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'PhotoMetricDistortion'
,
brightness_delta
=
32
,
contrast_range
=
(
0.5
,
1.5
),
saturation_range
=
(
0.5
,
1.5
),
hue_delta
=
18
),
dict
(
type
=
'RandomCenterCropPad'
,
# The cropped images are padded into squares during training,
# but may be less than crop_size.
crop_size
=
(
512
,
512
),
ratios
=
(
0.6
,
0.7
,
0.8
,
0.9
,
1.0
,
1.1
,
1.2
,
1.3
),
mean
=
[
0
,
0
,
0
],
std
=
[
1
,
1
,
1
],
to_rgb
=
True
,
test_pad_mode
=
None
),
# Make sure the output is always crop_size.
dict
(
type
=
'Resize'
,
scale
=
(
512
,
512
),
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
{{
_base_
.
backend_args
}},
to_float32
=
True
),
# don't need Resize
dict
(
type
=
'RandomCenterCropPad'
,
ratios
=
None
,
border
=
None
,
mean
=
[
0
,
0
,
0
],
std
=
[
1
,
1
,
1
],
to_rgb
=
True
,
test_mode
=
True
,
test_pad_mode
=
[
'logical_or'
,
31
],
test_pad_add_pix
=
1
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'border'
))
]
# Use RepeatDataset to speed up training
train_dataloader
=
dict
(
batch_size
=
16
,
num_workers
=
4
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
dataset
=
dict
(
_delete_
=
True
,
type
=
'RepeatDataset'
,
times
=
5
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
{{
_base_
.
backend_args
}},
)))
val_dataloader
=
dict
(
dataset
=
dict
(
pipeline
=
test_pipeline
))
test_dataloader
=
val_dataloader
# optimizer
# Based on the default settings of modern detectors, the SGD effect is better
# than the Adam in the source code, so we use SGD default settings and
# if you use adam+lr5e-4, the map is 29.1.
optim_wrapper
=
dict
(
clip_grad
=
dict
(
max_norm
=
35
,
norm_type
=
2
))
max_epochs
=
28
# learning policy
# Based on the default settings of modern detectors, we added warmup settings.
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_epochs
,
by_epoch
=
True
,
milestones
=
[
18
,
24
],
# the real step is [18*5, 24*5]
gamma
=
0.1
)
]
train_cfg
=
dict
(
max_epochs
=
max_epochs
)
# the real epoch is 28*5=140
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (8 GPUs) x (16 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
128
)
mmde/mmdet/.mim/configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
'./centernet_r18-dcnv2_8xb16-crop512-140e_coco.py'
model
=
dict
(
neck
=
dict
(
use_dcn
=
False
))
mmde/mmdet/.mim/configs/centernet/centernet_tta.py
0 → 100644
View file @
eb1107e4
# This is different from the TTA of official CenterNet.
tta_model
=
dict
(
type
=
'DetTTAModel'
,
tta_cfg
=
dict
(
nms
=
dict
(
type
=
'nms'
,
iou_threshold
=
0.5
),
max_per_img
=
100
))
tta_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
to_float32
=
True
,
backend_args
=
None
),
dict
(
type
=
'TestTimeAug'
,
transforms
=
[
[
# ``RandomFlip`` must be placed before ``RandomCenterCropPad``,
# otherwise bounding box coordinates after flipping cannot be
# recovered correctly.
dict
(
type
=
'RandomFlip'
,
prob
=
1.
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.
)
],
[
dict
(
type
=
'RandomCenterCropPad'
,
ratios
=
None
,
border
=
None
,
mean
=
[
0
,
0
,
0
],
std
=
[
1
,
1
,
1
],
to_rgb
=
True
,
test_mode
=
True
,
test_pad_mode
=
[
'logical_or'
,
31
],
test_pad_add_pix
=
1
),
],
[
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
)],
[
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'flip'
,
'flip_direction'
,
'border'
))
]
])
]
mmde/mmdet/.mim/configs/centernet/metafile.yml
0 → 100644
View file @
eb1107e4
Collections
:
-
Name
:
CenterNet
Metadata
:
Training Data
:
COCO
Training Techniques
:
-
SGD with Momentum
-
Weight Decay
Training Resources
:
8x TITANXP GPUs
Architecture
:
-
ResNet
Paper
:
URL
:
https://arxiv.org/abs/1904.07850
Title
:
'
Objects
as
Points'
README
:
configs/centernet/README.md
Code
:
URL
:
https://github.com/open-mmlab/mmdetection/blob/v2.13.0/mmdet/models/detectors/centernet.py#L10
Version
:
v2.13.0
Models
:
-
Name
:
centernet_r18-dcnv2_8xb16-crop512-140e_coco
In Collection
:
CenterNet
Config
:
configs/centernet/centernet_r18-dcnv2_8xb16-crop512-140e_coco.py
Metadata
:
Batch Size
:
128
Training Memory (GB)
:
3.47
Epochs
:
140
Results
:
-
Task
:
Object Detection
Dataset
:
COCO
Metrics
:
box AP
:
29.5
Weights
:
https://download.openmmlab.com/mmdetection/v2.0/centernet/centernet_resnet18_dcnv2_140e_coco/centernet_resnet18_dcnv2_140e_coco_20210702_155131-c8cd631f.pth
-
Name
:
centernet_r18_8xb16-crop512-140e_coco
In Collection
:
CenterNet
Config
:
configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py
Metadata
:
Batch Size
:
128
Training Memory (GB)
:
3.45
Epochs
:
140
Results
:
-
Task
:
Object Detection
Dataset
:
COCO
Metrics
:
box AP
:
25.9
Weights
:
https://download.openmmlab.com/mmdetection/v2.0/centernet/centernet_resnet18_140e_coco/centernet_resnet18_140e_coco_20210705_093630-bb5b3bf7.pth
-
Name
:
centernet-update_r50-caffe_fpn_ms-1x_coco
In Collection
:
CenterNet
Config
:
configs/centernet/centernet-update_r50-caffe_fpn_ms-1x_coco.py
Metadata
:
Batch Size
:
16
Training Memory (GB)
:
3.3
Epochs
:
12
Results
:
-
Task
:
Object Detection
Dataset
:
COCO
Metrics
:
box AP
:
40.2
Weights
:
https://download.openmmlab.com/mmdetection/v3.0/centernet/centernet-update_r50-caffe_fpn_ms-1x_coco/centernet-update_r50-caffe_fpn_ms-1x_coco_20230512_203845-8306baf2.pth
mmde/mmdet/.mim/configs/centripetalnet/centripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
[
'../_base_/default_runtime.py'
,
'../_base_/datasets/coco_detection.py'
]
data_preprocessor
=
dict
(
type
=
'DetDataPreprocessor'
,
mean
=
[
123.675
,
116.28
,
103.53
],
std
=
[
58.395
,
57.12
,
57.375
],
bgr_to_rgb
=
True
)
# model settings
model
=
dict
(
type
=
'CornerNet'
,
data_preprocessor
=
data_preprocessor
,
backbone
=
dict
(
type
=
'HourglassNet'
,
downsample_times
=
5
,
num_stacks
=
2
,
stage_channels
=
[
256
,
256
,
384
,
384
,
384
,
512
],
stage_blocks
=
[
2
,
2
,
2
,
2
,
2
,
4
],
norm_cfg
=
dict
(
type
=
'BN'
,
requires_grad
=
True
)),
neck
=
None
,
bbox_head
=
dict
(
type
=
'CentripetalHead'
,
num_classes
=
80
,
in_channels
=
256
,
num_feat_levels
=
2
,
corner_emb_channels
=
0
,
loss_heatmap
=
dict
(
type
=
'GaussianFocalLoss'
,
alpha
=
2.0
,
gamma
=
4.0
,
loss_weight
=
1
),
loss_offset
=
dict
(
type
=
'SmoothL1Loss'
,
beta
=
1.0
,
loss_weight
=
1
),
loss_guiding_shift
=
dict
(
type
=
'SmoothL1Loss'
,
beta
=
1.0
,
loss_weight
=
0.05
),
loss_centripetal_shift
=
dict
(
type
=
'SmoothL1Loss'
,
beta
=
1.0
,
loss_weight
=
1
)),
# training and testing settings
train_cfg
=
None
,
test_cfg
=
dict
(
corner_topk
=
100
,
local_maximum_kernel
=
3
,
distance_threshold
=
0.5
,
score_thr
=
0.05
,
max_per_img
=
100
,
nms
=
dict
(
type
=
'soft_nms'
,
iou_threshold
=
0.5
,
method
=
'gaussian'
)))
# data settings
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
_base_
.
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'PhotoMetricDistortion'
,
brightness_delta
=
32
,
contrast_range
=
(
0.5
,
1.5
),
saturation_range
=
(
0.5
,
1.5
),
hue_delta
=
18
),
dict
(
# The cropped images are padded into squares during training,
# but may be smaller than crop_size.
type
=
'RandomCenterCropPad'
,
crop_size
=
(
511
,
511
),
ratios
=
(
0.6
,
0.7
,
0.8
,
0.9
,
1.0
,
1.1
,
1.2
,
1.3
),
test_mode
=
False
,
test_pad_mode
=
None
,
mean
=
data_preprocessor
[
'mean'
],
std
=
data_preprocessor
[
'std'
],
# Image data is not converted to rgb.
to_rgb
=
data_preprocessor
[
'bgr_to_rgb'
]),
dict
(
type
=
'Resize'
,
scale
=
(
511
,
511
),
keep_ratio
=
False
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
),
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
to_float32
=
True
,
backend_args
=
_base_
.
backend_args
),
# don't need Resize
dict
(
type
=
'RandomCenterCropPad'
,
crop_size
=
None
,
ratios
=
None
,
border
=
None
,
test_mode
=
True
,
test_pad_mode
=
[
'logical_or'
,
127
],
mean
=
data_preprocessor
[
'mean'
],
std
=
data_preprocessor
[
'std'
],
# Image data is not converted to rgb.
to_rgb
=
data_preprocessor
[
'bgr_to_rgb'
]),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'border'
))
]
train_dataloader
=
dict
(
batch_size
=
6
,
num_workers
=
3
,
batch_sampler
=
None
,
dataset
=
dict
(
pipeline
=
train_pipeline
))
val_dataloader
=
dict
(
dataset
=
dict
(
pipeline
=
test_pipeline
))
test_dataloader
=
val_dataloader
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'Adam'
,
lr
=
0.0005
),
clip_grad
=
dict
(
max_norm
=
35
,
norm_type
=
2
))
max_epochs
=
210
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1.0
/
3
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_epochs
,
by_epoch
=
True
,
milestones
=
[
190
],
gamma
=
0.1
)
]
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
max_epochs
,
val_interval
=
1
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (16 GPUs) x (6 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
96
)
tta_model
=
dict
(
type
=
'DetTTAModel'
,
tta_cfg
=
dict
(
nms
=
dict
(
type
=
'soft_nms'
,
iou_threshold
=
0.5
,
method
=
'gaussian'
),
max_per_img
=
100
))
tta_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
to_float32
=
True
,
backend_args
=
_base_
.
backend_args
),
dict
(
type
=
'TestTimeAug'
,
transforms
=
[
[
# ``RandomFlip`` must be placed before ``RandomCenterCropPad``,
# otherwise bounding box coordinates after flipping cannot be
# recovered correctly.
dict
(
type
=
'RandomFlip'
,
prob
=
1.
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.
)
],
[
dict
(
type
=
'RandomCenterCropPad'
,
crop_size
=
None
,
ratios
=
None
,
border
=
None
,
test_mode
=
True
,
test_pad_mode
=
[
'logical_or'
,
127
],
mean
=
data_preprocessor
[
'mean'
],
std
=
data_preprocessor
[
'std'
],
# Image data is not converted to rgb.
to_rgb
=
data_preprocessor
[
'bgr_to_rgb'
])
],
[
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
)],
[
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'flip'
,
'flip_direction'
,
'border'
))
]
])
]
mmde/mmdet/.mim/configs/centripetalnet/metafile.yml
0 → 100644
View file @
eb1107e4
Collections
:
-
Name
:
CentripetalNet
Metadata
:
Training Data
:
COCO
Training Techniques
:
-
Adam
Training Resources
:
16x V100 GPUs
Architecture
:
-
Corner Pooling
-
Stacked Hourglass Network
Paper
:
URL
:
https://arxiv.org/abs/2003.09119
Title
:
'
CentripetalNet:
Pursuing
High-quality
Keypoint
Pairs
for
Object
Detection'
README
:
configs/centripetalnet/README.md
Code
:
URL
:
https://github.com/open-mmlab/mmdetection/blob/v2.5.0/mmdet/models/detectors/cornernet.py#L9
Version
:
v2.5.0
Models
:
-
Name
:
centripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco
In Collection
:
CentripetalNet
Config
:
configs/centripetalnet/centripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco.py
Metadata
:
Batch Size
:
96
Training Memory (GB)
:
16.7
inference time (ms/im)
:
-
value
:
270.27
hardware
:
V100
backend
:
PyTorch
batch size
:
1
mode
:
FP32
resolution
:
(800, 1333)
Epochs
:
210
Results
:
-
Task
:
Object Detection
Dataset
:
COCO
Metrics
:
box AP
:
44.8
Weights
:
https://download.openmmlab.com/mmdetection/v2.0/centripetalnet/centripetalnet_hourglass104_mstest_16x6_210e_coco/centripetalnet_hourglass104_mstest_16x6_210e_coco_20200915_204804-3ccc61e5.pth
mmde/mmdet/.mim/configs/cityscapes/faster-rcnn_r50_fpn_1x_cityscapes.py
0 → 100644
View file @
eb1107e4
_base_
=
[
'../_base_/models/faster-rcnn_r50_fpn.py'
,
'../_base_/datasets/cityscapes_detection.py'
,
'../_base_/default_runtime.py'
,
'../_base_/schedules/schedule_1x.py'
]
model
=
dict
(
backbone
=
dict
(
init_cfg
=
None
),
roi_head
=
dict
(
bbox_head
=
dict
(
num_classes
=
8
,
loss_bbox
=
dict
(
type
=
'SmoothL1Loss'
,
beta
=
1.0
,
loss_weight
=
1.0
))))
# optimizer
# lr is set for a batch size of 8
optim_wrapper
=
dict
(
optimizer
=
dict
(
lr
=
0.01
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
8
,
by_epoch
=
True
,
# [7] yields higher performance than [6]
milestones
=
[
7
],
gamma
=
0.1
)
]
# actual epoch = 8 * 8 = 64
train_cfg
=
dict
(
max_epochs
=
8
)
# For better, more stable performance initialize from COCO
load_from
=
'https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth'
# noqa
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (8 GPUs) x (1 samples per GPU)
# TODO: support auto scaling lr
# auto_scale_lr = dict(base_batch_size=8)
mmde/mmdet/.mim/configs/cityscapes/mask-rcnn_r50_fpn_1x_cityscapes.py
0 → 100644
View file @
eb1107e4
_base_
=
[
'../_base_/models/mask-rcnn_r50_fpn.py'
,
'../_base_/datasets/cityscapes_instance.py'
,
'../_base_/default_runtime.py'
,
'../_base_/schedules/schedule_1x.py'
]
model
=
dict
(
backbone
=
dict
(
init_cfg
=
None
),
roi_head
=
dict
(
bbox_head
=
dict
(
type
=
'Shared2FCBBoxHead'
,
num_classes
=
8
,
loss_bbox
=
dict
(
type
=
'SmoothL1Loss'
,
beta
=
1.0
,
loss_weight
=
1.0
)),
mask_head
=
dict
(
num_classes
=
8
)))
# optimizer
# lr is set for a batch size of 8
optim_wrapper
=
dict
(
optimizer
=
dict
(
lr
=
0.01
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
8
,
by_epoch
=
True
,
# [7] yields higher performance than [6]
milestones
=
[
7
],
gamma
=
0.1
)
]
# actual epoch = 8 * 8 = 64
train_cfg
=
dict
(
max_epochs
=
8
)
# 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
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (8 GPUs) x (1 samples per GPU)
# TODO: support auto scaling lr
# auto_scale_lr = dict(base_batch_size=8)
mmde/mmdet/.mim/configs/common/lsj-100e_coco-detection.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
image_size
=
(
1024
,
1024
)
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
image_size
,
ratio_range
=
(
0.1
,
2.0
),
keep_ratio
=
True
),
dict
(
type
=
'RandomCrop'
,
crop_type
=
'absolute_range'
,
crop_size
=
image_size
,
recompute_bbox
=
True
,
allow_negative_crop
=
True
),
dict
(
type
=
'FilterAnnotations'
,
min_gt_bbox_wh
=
(
1e-2
,
1e-2
)),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
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'
))
]
# Use RepeatDataset to speed up training
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
dataset
=
dict
(
type
=
'RepeatDataset'
,
times
=
4
,
# simply change this from 2 to 16 for 50e - 400e training.
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
)))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
'bbox'
,
format_only
=
False
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
max_epochs
=
25
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
max_epochs
,
val_interval
=
5
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# optimizer assumes bs=64
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.1
,
momentum
=
0.9
,
weight_decay
=
0.00004
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.067
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_epochs
,
by_epoch
=
True
,
milestones
=
[
22
,
24
],
gamma
=
0.1
)
]
# only keep latest 2 checkpoints
default_hooks
=
dict
(
checkpoint
=
dict
(
max_keep_ckpts
=
2
))
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (32 GPUs) x (2 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
64
)
mmde/mmdet/.mim/configs/common/lsj-100e_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
image_size
=
(
1024
,
1024
)
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
image_size
,
ratio_range
=
(
0.1
,
2.0
),
keep_ratio
=
True
),
dict
(
type
=
'RandomCrop'
,
crop_type
=
'absolute_range'
,
crop_size
=
image_size
,
recompute_bbox
=
True
,
allow_negative_crop
=
True
),
dict
(
type
=
'FilterAnnotations'
,
min_gt_bbox_wh
=
(
1e-2
,
1e-2
)),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'scale_factor'
))
]
# Use RepeatDataset to speed up training
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
dataset
=
dict
(
type
=
'RepeatDataset'
,
times
=
4
,
# simply change this from 2 to 16 for 50e - 400e training.
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
)))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
[
'bbox'
,
'segm'
],
format_only
=
False
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
max_epochs
=
25
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
max_epochs
,
val_interval
=
5
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# optimizer assumes bs=64
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.1
,
momentum
=
0.9
,
weight_decay
=
0.00004
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.067
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_epochs
,
by_epoch
=
True
,
milestones
=
[
22
,
24
],
gamma
=
0.1
)
]
# only keep latest 2 checkpoints
default_hooks
=
dict
(
checkpoint
=
dict
(
max_keep_ckpts
=
2
))
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (32 GPUs) x (2 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
64
)
mmde/mmdet/.mim/configs/common/lsj-200e_coco-detection.py
0 → 100644
View file @
eb1107e4
_base_
=
'./lsj-100e_coco-detection.py'
# 8x25=200e
train_dataloader
=
dict
(
dataset
=
dict
(
times
=
8
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.067
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
25
,
by_epoch
=
True
,
milestones
=
[
22
,
24
],
gamma
=
0.1
)
]
mmde/mmdet/.mim/configs/common/lsj-200e_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'./lsj-100e_coco-instance.py'
# 8x25=200e
train_dataloader
=
dict
(
dataset
=
dict
(
times
=
8
))
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.067
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
25
,
by_epoch
=
True
,
milestones
=
[
22
,
24
],
gamma
=
0.1
)
]
mmde/mmdet/.mim/configs/common/ms-90k_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
# Align with Detectron2
backend
=
'pillow'
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
,
imdecode_backend
=
backend
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'RandomChoiceResize'
,
scales
=
[(
1333
,
640
),
(
1333
,
672
),
(
1333
,
704
),
(
1333
,
736
),
(
1333
,
768
),
(
1333
,
800
)],
keep_ratio
=
True
,
backend
=
backend
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
,
imdecode_backend
=
backend
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
,
backend
=
backend
),
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
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
pin_memory
=
True
,
sampler
=
dict
(
type
=
'InfiniteSampler'
,
shuffle
=
True
),
batch_sampler
=
dict
(
type
=
'AspectRatioBatchSampler'
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
pin_memory
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
'bbox'
,
format_only
=
False
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# training schedule for 90k
max_iter
=
90000
train_cfg
=
dict
(
type
=
'IterBasedTrainLoop'
,
max_iters
=
max_iter
,
val_interval
=
10000
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_iter
,
by_epoch
=
False
,
milestones
=
[
60000
,
80000
],
gamma
=
0.1
)
]
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.02
,
momentum
=
0.9
,
weight_decay
=
0.0001
))
# Default setting for scaling LR automatically
# - `enable` means enable scaling LR automatically
# or not by default.
# - `base_batch_size` = (8 GPUs) x (2 samples per GPU).
auto_scale_lr
=
dict
(
enable
=
False
,
base_batch_size
=
16
)
default_hooks
=
dict
(
checkpoint
=
dict
(
by_epoch
=
False
,
interval
=
10000
))
log_processor
=
dict
(
by_epoch
=
False
)
mmde/mmdet/.mim/configs/common/ms-poly-90k_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
# Align with Detectron2
backend
=
'pillow'
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
,
imdecode_backend
=
backend
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
,
poly2mask
=
False
),
dict
(
type
=
'RandomChoiceResize'
,
scales
=
[(
1333
,
640
),
(
1333
,
672
),
(
1333
,
704
),
(
1333
,
736
),
(
1333
,
768
),
(
1333
,
800
)],
keep_ratio
=
True
,
backend
=
backend
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
,
imdecode_backend
=
backend
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
,
backend
=
backend
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
,
poly2mask
=
False
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'scale_factor'
))
]
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
pin_memory
=
True
,
sampler
=
dict
(
type
=
'InfiniteSampler'
,
shuffle
=
True
),
batch_sampler
=
dict
(
type
=
'AspectRatioBatchSampler'
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
pin_memory
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
[
'bbox'
,
'segm'
],
format_only
=
False
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# training schedule for 90k
max_iter
=
90000
train_cfg
=
dict
(
type
=
'IterBasedTrainLoop'
,
max_iters
=
max_iter
,
val_interval
=
10000
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# learning rate
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
max_iter
,
by_epoch
=
False
,
milestones
=
[
60000
,
80000
],
gamma
=
0.1
)
]
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.02
,
momentum
=
0.9
,
weight_decay
=
0.0001
))
# Default setting for scaling LR automatically
# - `enable` means enable scaling LR automatically
# or not by default.
# - `base_batch_size` = (8 GPUs) x (2 samples per GPU).
auto_scale_lr
=
dict
(
enable
=
False
,
base_batch_size
=
16
)
default_hooks
=
dict
(
checkpoint
=
dict
(
by_epoch
=
False
,
interval
=
10000
))
log_processor
=
dict
(
by_epoch
=
False
)
mmde/mmdet/.mim/configs/common/ms-poly_3x_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
# In mstrain 3x config, img_scale=[(1333, 640), (1333, 800)],
# multiscale_mode='range'
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
,
poly2mask
=
False
),
dict
(
type
=
'RandomResize'
,
scale
=
[(
1333
,
640
),
(
1333
,
800
)],
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
),
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
,
poly2mask
=
False
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'scale_factor'
))
]
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
batch_sampler
=
dict
(
type
=
'AspectRatioBatchSampler'
),
dataset
=
dict
(
type
=
'RepeatDataset'
,
times
=
3
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
)))
val_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
[
'bbox'
,
'segm'
],
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# training schedule for 3x with `RepeatDataset`
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
12
,
val_interval
=
1
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# learning rate
# Experiments show that using milestones=[9, 11] has higher performance
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
12
,
by_epoch
=
True
,
milestones
=
[
9
,
11
],
gamma
=
0.1
)
]
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.02
,
momentum
=
0.9
,
weight_decay
=
0.0001
))
# Default setting for scaling LR automatically
# - `enable` means enable scaling LR automatically
# or not by default.
# - `base_batch_size` = (8 GPUs) x (2 samples per GPU).
auto_scale_lr
=
dict
(
enable
=
False
,
base_batch_size
=
16
)
mmde/mmdet/.mim/configs/common/ms_3x_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
[(
1333
,
640
),
(
1333
,
800
)],
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'scale_factor'
))
]
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
batch_sampler
=
dict
(
type
=
'AspectRatioBatchSampler'
),
dataset
=
dict
(
type
=
'RepeatDataset'
,
times
=
3
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
)))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
'bbox'
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# training schedule for 3x with `RepeatDataset`
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
12
,
val_interval
=
1
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# learning rate
# Experiments show that using milestones=[9, 11] has higher performance
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
12
,
by_epoch
=
True
,
milestones
=
[
9
,
11
],
gamma
=
0.1
)
]
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.02
,
momentum
=
0.9
,
weight_decay
=
0.0001
))
# Default setting for scaling LR automatically
# - `enable` means enable scaling LR automatically
# or not by default.
# - `base_batch_size` = (8 GPUs) x (2 samples per GPU).
auto_scale_lr
=
dict
(
enable
=
False
,
base_batch_size
=
16
)
mmde/mmdet/.mim/configs/common/ms_3x_coco.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
[(
1333
,
640
),
(
1333
,
800
)],
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
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
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
batch_sampler
=
dict
(
type
=
'AspectRatioBatchSampler'
),
dataset
=
dict
(
type
=
'RepeatDataset'
,
times
=
3
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
)))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
'bbox'
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# training schedule for 3x with `RepeatDataset`
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
12
,
val_interval
=
1
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# learning rate
# Experiments show that using milestones=[9, 11] has higher performance
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
500
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
12
,
by_epoch
=
True
,
milestones
=
[
9
,
11
],
gamma
=
0.1
)
]
# optimizer
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.02
,
momentum
=
0.9
,
weight_decay
=
0.0001
))
# Default setting for scaling LR automatically
# - `enable` means enable scaling LR automatically
# or not by default.
# - `base_batch_size` = (8 GPUs) x (2 samples per GPU).
auto_scale_lr
=
dict
(
enable
=
False
,
base_batch_size
=
16
)
mmde/mmdet/.mim/configs/common/ssj_270k_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'../_base_/default_runtime.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
image_size
=
(
1024
,
1024
)
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
# Standard Scale Jittering (SSJ) resizes and crops an image
# with a resize range of 0.8 to 1.25 of the original image size.
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
image_size
,
ratio_range
=
(
0.8
,
1.25
),
keep_ratio
=
True
),
dict
(
type
=
'RandomCrop'
,
crop_type
=
'absolute_range'
,
crop_size
=
image_size
,
recompute_bbox
=
True
,
allow_negative_crop
=
True
),
dict
(
type
=
'FilterAnnotations'
,
min_gt_bbox_wh
=
(
1e-2
,
1e-2
)),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'PackDetInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'Resize'
,
scale
=
(
1333
,
800
),
keep_ratio
=
True
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'PackDetInputs'
,
meta_keys
=
(
'img_id'
,
'img_path'
,
'ori_shape'
,
'img_shape'
,
'scale_factor'
))
]
train_dataloader
=
dict
(
batch_size
=
2
,
num_workers
=
2
,
persistent_workers
=
True
,
sampler
=
dict
(
type
=
'InfiniteSampler'
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
train_pipeline
,
backend_args
=
backend_args
))
val_dataloader
=
dict
(
batch_size
=
1
,
num_workers
=
2
,
persistent_workers
=
True
,
drop_last
=
False
,
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
False
),
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_val2017.json'
,
data_prefix
=
dict
(
img
=
'val2017/'
),
test_mode
=
True
,
pipeline
=
test_pipeline
,
backend_args
=
backend_args
))
test_dataloader
=
val_dataloader
val_evaluator
=
dict
(
type
=
'CocoMetric'
,
ann_file
=
data_root
+
'annotations/instances_val2017.json'
,
metric
=
[
'bbox'
,
'segm'
],
format_only
=
False
,
backend_args
=
backend_args
)
test_evaluator
=
val_evaluator
# The model is trained by 270k iterations with batch_size 64,
# which is roughly equivalent to 144 epochs.
max_iters
=
270000
train_cfg
=
dict
(
type
=
'IterBasedTrainLoop'
,
max_iters
=
max_iters
,
val_interval
=
10000
)
val_cfg
=
dict
(
type
=
'ValLoop'
)
test_cfg
=
dict
(
type
=
'TestLoop'
)
# optimizer assumes bs=64
optim_wrapper
=
dict
(
type
=
'OptimWrapper'
,
optimizer
=
dict
(
type
=
'SGD'
,
lr
=
0.1
,
momentum
=
0.9
,
weight_decay
=
0.00004
))
# learning rate policy
# lr steps at [0.9, 0.95, 0.975] of the maximum iterations
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.001
,
by_epoch
=
False
,
begin
=
0
,
end
=
1000
),
dict
(
type
=
'MultiStepLR'
,
begin
=
0
,
end
=
270000
,
by_epoch
=
False
,
milestones
=
[
243000
,
256500
,
263250
],
gamma
=
0.1
)
]
default_hooks
=
dict
(
checkpoint
=
dict
(
by_epoch
=
False
,
interval
=
10000
))
log_processor
=
dict
(
by_epoch
=
False
)
# NOTE: `auto_scale_lr` is for automatically scaling LR,
# USER SHOULD NOT CHANGE ITS VALUES.
# base_batch_size = (32 GPUs) x (2 samples per GPU)
auto_scale_lr
=
dict
(
base_batch_size
=
64
)
mmde/mmdet/.mim/configs/common/ssj_scp_270k_coco-instance.py
0 → 100644
View file @
eb1107e4
_base_
=
'ssj_270k_coco-instance.py'
# dataset settings
dataset_type
=
'CocoDataset'
data_root
=
'data/coco/'
image_size
=
(
1024
,
1024
)
# Example to use different file client
# Method 1: simply set the data root and let the file I/O module
# automatically infer from prefix (not support LMDB and Memcache yet)
# data_root = 's3://openmmlab/datasets/detection/coco/'
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
# backend_args = dict(
# backend='petrel',
# path_mapping=dict({
# './data/': 's3://openmmlab/datasets/detection/',
# 'data/': 's3://openmmlab/datasets/detection/'
# }))
backend_args
=
None
# Standard Scale Jittering (SSJ) resizes and crops an image
# with a resize range of 0.8 to 1.25 of the original image size.
load_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
,
backend_args
=
backend_args
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
,
with_mask
=
True
),
dict
(
type
=
'RandomResize'
,
scale
=
image_size
,
ratio_range
=
(
0.8
,
1.25
),
keep_ratio
=
True
),
dict
(
type
=
'RandomCrop'
,
crop_type
=
'absolute_range'
,
crop_size
=
image_size
,
recompute_bbox
=
True
,
allow_negative_crop
=
True
),
dict
(
type
=
'FilterAnnotations'
,
min_gt_bbox_wh
=
(
1e-2
,
1e-2
)),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
),
dict
(
type
=
'Pad'
,
size
=
image_size
),
]
train_pipeline
=
[
dict
(
type
=
'CopyPaste'
,
max_num_pasted
=
100
),
dict
(
type
=
'PackDetInputs'
)
]
train_dataloader
=
dict
(
dataset
=
dict
(
_delete_
=
True
,
type
=
'MultiImageMixDataset'
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
data_root
,
ann_file
=
'annotations/instances_train2017.json'
,
data_prefix
=
dict
(
img
=
'train2017/'
),
filter_cfg
=
dict
(
filter_empty_gt
=
True
,
min_size
=
32
),
pipeline
=
load_pipeline
,
backend_args
=
backend_args
),
pipeline
=
train_pipeline
))
Prev
1
…
23
24
25
26
27
28
29
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment