xiaofanghf commited on
Commit
e4e6759
·
verified ·
1 Parent(s): 684872d

Delete YOLOv8/configs/yolov8/yolov8_m_syncbn_fast_8xb16-500e_coco-ReLINZ-112px-RndSmpl_Imgs:all_Anno:small-only_FakeBBoxes:42.36px_IoU:0.500_Val:ReLINZ.py

Browse files
YOLOv8/configs/yolov8/yolov8_m_syncbn_fast_8xb16-500e_coco-ReLINZ-112px-RndSmpl_Imgs:all_Anno:small-only_FakeBBoxes:42.36px_IoU:0.500_Val:ReLINZ.py DELETED
@@ -1,245 +0,0 @@
1
- _base_ = './yolov8_s_syncbn_fast_8xb16-500e_coco.py'
2
-
3
- # ========================modified parameters======================
4
- deepen_factor = 0.67
5
- widen_factor = 0.75
6
- last_stage_out_channels = 768
7
-
8
- affine_scale = 0.9
9
- mixup_prob = 0.1
10
-
11
-
12
- img_scale = (128, 128) #_base_.img_scale
13
- # img_scale = (640, 640) #_base_.img_scale
14
- num_classes = 1
15
- class_name = ('small',)
16
- num_classes = len(class_name)
17
- metainfo = dict(classes=class_name, palette=[(20, 220, 60)])
18
-
19
- train_batch_size_per_gpu = 512
20
- val_batch_size_per_gpu = 128
21
- test_batch_size_per_gpu = 128
22
-
23
- train_num_workers = 16
24
- val_num_workers = 16
25
- test_num_workers = 16
26
-
27
- # -----train val related-----
28
- # Base learning rate for optim_wrapper. Corresponding to 8xb16=64 bs
29
- base_lr = 0.001
30
- lr_factor = 0.01 # Learning rate scaling factor
31
- max_epochs = 1000 # Maximum training epochs
32
-
33
- # Disable mosaic augmentation for final 10 epochs (stage 2)
34
- close_mosaic_epochs = 10
35
-
36
- save_epoch_intervals = 1
37
- max_keep_ckpts = 2
38
-
39
- # validation intervals in stage 2
40
- val_interval_stage2 = 1
41
-
42
- # TRAIN DATASET
43
- data_root_train = '/var/storage/Common/SatelliteVehicles/Datasets/Real/Real-LINZ_112px_0.125m_RndSmpl_Imgs:all_Anno:small-only/train/'
44
- ann_file_train = 'annotations_coco_FakeBBoxes:42.36px_ForIoU:0.500.json'
45
-
46
- # VAL DATASET
47
- # data_root_val = '/var/storage/Common/SatelliteVehicles/Datasets/Real/Real-LINZ_112px_0.125m_RndSmpl_Imgs:all_Anno:small-only/validation/'
48
- data_root_val = '/var/storage/Common/SatelliteVehicles/Datasets/Real/Real-LINZ_112px_0.125m_RndSmpl_Imgs:all_Anno:small-only/validation_subset025.0_seed0/'
49
- ann_file_val = 'annotations_coco_FakeBBoxes:42.36px_ForIoU:0.500.json'
50
-
51
- # TEST DATASET
52
- ## LINZ
53
- data_root_test = '/var/storage/Common/SatelliteVehicles/Datasets/Real/Real-LINZ_112px_0.125m_RndSmpl_Imgs:all_Anno:small-only/test/'
54
- ann_file_test = 'annotations_coco_FakeBBoxes:42.36px_ForIoU:0.500.json'
55
-
56
- ## Utah
57
- # data_root_test = '/var/storage/Common/SatelliteVehicles/Datasets/Real/Real-Utah_112px_0.125m_RndSmpl_Imgs:all_Anno:small-only/test/'
58
- # ann_file_test = 'annotations_coco_FakeBBoxes:42.36px_ForIoU:0.500.json'
59
-
60
-
61
- load_from = 'https://download.openmmlab.com/mmyolo/v0/yolov8/yolov8_m_syncbn_fast_8xb16-500e_coco/yolov8_m_syncbn_fast_8xb16-500e_coco_20230115_192200-c22e560a.pth'
62
-
63
-
64
- # =======================Unmodified in most cases==================
65
- pre_transform = _base_.pre_transform
66
- last_transform = _base_.last_transform
67
-
68
- model = dict(
69
- backbone=dict(
70
- last_stage_out_channels=last_stage_out_channels,
71
- deepen_factor=deepen_factor,
72
- widen_factor=widen_factor
73
- ),
74
- neck=dict(
75
- deepen_factor=deepen_factor,
76
- widen_factor=widen_factor,
77
- in_channels=[256, 512, last_stage_out_channels],
78
- out_channels=[256, 512, last_stage_out_channels]
79
- ),
80
- bbox_head=dict(
81
- head_module=dict(
82
- num_classes=num_classes,
83
- widen_factor=widen_factor,
84
- in_channels=[256, 512, last_stage_out_channels])
85
- ),
86
- train_cfg=dict(
87
- assigner=dict(
88
- num_classes=num_classes
89
- )
90
- )
91
- )
92
-
93
- mosaic_affine_transform = [
94
- dict(
95
- type='Mosaic',
96
- img_scale=img_scale,
97
- pad_val=114.0,
98
- pre_transform=pre_transform),
99
- dict(
100
- type='YOLOv5RandomAffine',
101
- max_rotate_degree=0.0,
102
- max_shear_degree=0.0,
103
- max_aspect_ratio=100,
104
- scaling_ratio_range=(1 - affine_scale, 1 + affine_scale),
105
- # img_scale is (width, height)
106
- border=(-img_scale[0] // 2, -img_scale[1] // 2),
107
- border_val=(114, 114, 114))
108
- ]
109
-
110
- # enable mixup
111
- train_pipeline = [
112
- *pre_transform, *mosaic_affine_transform,
113
- dict(
114
- type='YOLOv5MixUp',
115
- prob=mixup_prob,
116
- pre_transform=[*pre_transform, *mosaic_affine_transform]),
117
- *last_transform
118
- ]
119
-
120
- train_pipeline_stage2 = [
121
- *pre_transform,
122
- dict(type='YOLOv5KeepRatioResize', scale=img_scale),
123
- dict(
124
- type='LetterResize',
125
- scale=img_scale,
126
- allow_scale_up=True,
127
- pad_val=dict(img=114.0)
128
- ),
129
- dict(
130
- type='YOLOv5RandomAffine',
131
- max_rotate_degree=0.0,
132
- max_shear_degree=0.0,
133
- scaling_ratio_range=(1 - affine_scale, 1 + affine_scale),
134
- max_aspect_ratio=100,
135
- border_val=(114, 114, 114)
136
- ),
137
- *last_transform
138
- ]
139
-
140
- train_dataloader = dict(
141
- batch_size=train_batch_size_per_gpu,
142
- num_workers=train_num_workers,
143
- dataset=dict(
144
- data_root=data_root_train,
145
- ann_file=data_root_train+ann_file_train,
146
- data_prefix=dict(img='images/'),
147
- filter_cfg=dict(filter_empty_gt=False),
148
- metainfo=metainfo,
149
- pipeline=train_pipeline
150
- )
151
- )
152
-
153
- # _base_.test_pipeline[1].img_scale = img_scale
154
- # _base_.test_pipeline[2].scale = img_scale
155
-
156
- test_pipeline = [
157
- dict(type='LoadImageFromFile', backend_args=_base_.backend_args),
158
- dict(type='YOLOv5KeepRatioResize', scale=img_scale),
159
- dict(
160
- type='LetterResize',
161
- scale=img_scale,
162
- allow_scale_up=False,
163
- pad_val=dict(img=114)),
164
- dict(type='LoadAnnotations', with_bbox=True, _scope_='mmdet'),
165
- dict(
166
- type='mmdet.PackDetInputs',
167
- meta_keys=('img_id', 'img_path', 'ori_shape', 'img_shape',
168
- 'scale_factor', 'pad_param'))
169
- ]
170
-
171
- val_dataloader = dict(
172
- batch_size=val_batch_size_per_gpu,
173
- num_workers=val_num_workers,
174
- dataset=dict(
175
- data_root=data_root_val,
176
- ann_file=data_root_val+ann_file_val,
177
- data_prefix=dict(img='images/'),
178
- metainfo=metainfo,
179
- # filter_cfg=dict(filter_empty_gt=False), # Does this make a change?
180
- filter_cfg=dict(filter_empty_gt=True), # Does this make a change?
181
- pipeline=test_pipeline,
182
- )
183
- )
184
-
185
- test_dataloader = dict(
186
- batch_size=test_batch_size_per_gpu,
187
- num_workers=test_num_workers,
188
- dataset=dict(
189
- data_root=data_root_test,
190
- ann_file=data_root_test+ann_file_test,
191
- data_prefix=dict(img='images/'),
192
- metainfo=metainfo,
193
- filter_cfg=dict(filter_empty_gt=False), # Does this make a change?
194
- pipeline=test_pipeline,
195
- )
196
- )
197
-
198
-
199
- optim_wrapper = dict(
200
- optimizer=dict(
201
- lr=base_lr,
202
- batch_size_per_gpu=train_batch_size_per_gpu
203
- ),
204
- )
205
-
206
-
207
- default_hooks = dict(
208
- param_scheduler=dict(
209
- lr_factor=lr_factor,
210
- max_epochs=max_epochs
211
- ),
212
- checkpoint=dict(
213
- interval=save_epoch_intervals,
214
- max_keep_ckpts=max_keep_ckpts,
215
- save_best=['coco/bbox_mAP', 'coco/bbox_mAP_50']
216
- )
217
- )
218
-
219
- _base_.custom_hooks[1].switch_epoch = max_epochs - close_mosaic_epochs
220
- _base_.custom_hooks[1].switch_pipeline = train_pipeline_stage2
221
-
222
- val_evaluator = dict(
223
- ann_file=data_root_val + ann_file_val,
224
- )
225
-
226
- test_evaluator = dict(
227
- ann_file= data_root_test + ann_file_test,
228
- )
229
-
230
- train_cfg = dict(
231
- max_epochs=max_epochs,
232
- val_interval=save_epoch_intervals,
233
- dynamic_intervals=[
234
- ((max_epochs - close_mosaic_epochs),
235
- val_interval_stage2)
236
- ]
237
- )
238
-
239
-
240
- visualizer = dict(
241
- vis_backends=[
242
- dict(type='LocalVisBackend'),
243
- dict(type='TensorboardVisBackend')
244
- ]
245
- )