Skip to content

Commit 621b8c8

Browse files
authoredMar 17, 2023
[Refactor] migrate File I/O to the newest mmengine (open-mmlab#9709)
1 parent 0f5cd10 commit 621b8c8

File tree

158 files changed

+1255
-842
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+1255
-842
lines changed
 

‎configs/_base_/datasets/cityscapes_detection.py

+23-5
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,23 @@
22
dataset_type = 'CityscapesDataset'
33
data_root = 'data/cityscapes/'
44

5+
# Example to use different file client
6+
# Method 1: simply set the data root and let the file I/O module
7+
# automatically infer from prefix (not support LMDB and Memcache yet)
8+
9+
# data_root = 's3://openmmlab/datasets/segmentation/cityscapes/'
10+
11+
# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6
12+
# backend_args = dict(
13+
# backend='petrel',
14+
# path_mapping=dict({
15+
# './data/': 's3://openmmlab/datasets/segmentation/',
16+
# 'data/': 's3://openmmlab/datasets/segmentation/'
17+
# }))
18+
backend_args = None
19+
520
train_pipeline = [
6-
dict(type='LoadImageFromFile'),
21+
dict(type='LoadImageFromFile', backend_args=backend_args),
722
dict(type='LoadAnnotations', with_bbox=True),
823
dict(
924
type='RandomResize',
@@ -14,7 +29,7 @@
1429
]
1530

1631
test_pipeline = [
17-
dict(type='LoadImageFromFile'),
32+
dict(type='LoadImageFromFile', backend_args=backend_args),
1833
dict(type='Resize', scale=(2048, 1024), keep_ratio=True),
1934
# If you don't have a gt annotation, delete the pipeline
2035
dict(type='LoadAnnotations', with_bbox=True),
@@ -39,7 +54,8 @@
3954
ann_file='annotations/instancesonly_filtered_gtFine_train.json',
4055
data_prefix=dict(img='leftImg8bit/train/'),
4156
filter_cfg=dict(filter_empty_gt=True, min_size=32),
42-
pipeline=train_pipeline)))
57+
pipeline=train_pipeline,
58+
backend_args=backend_args)))
4359

4460
val_dataloader = dict(
4561
batch_size=1,
@@ -54,13 +70,15 @@
5470
data_prefix=dict(img='leftImg8bit/val/'),
5571
test_mode=True,
5672
filter_cfg=dict(filter_empty_gt=True, min_size=32),
57-
pipeline=test_pipeline))
73+
pipeline=test_pipeline,
74+
backend_args=backend_args))
5875

5976
test_dataloader = val_dataloader
6077

6178
val_evaluator = dict(
6279
type='CocoMetric',
6380
ann_file=data_root + 'annotations/instancesonly_filtered_gtFine_val.json',
64-
metric='bbox')
81+
metric='bbox',
82+
backend_args=backend_args)
6583

6684
test_evaluator = val_evaluator

‎configs/_base_/datasets/cityscapes_instance.py

+26-9
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,23 @@
22
dataset_type = 'CityscapesDataset'
33
data_root = 'data/cityscapes/'
44

5+
# Example to use different file client
6+
# Method 1: simply set the data root and let the file I/O module
7+
# automatically infer from prefix (not support LMDB and Memcache yet)
8+
9+
# data_root = 's3://openmmlab/datasets/segmentation/cityscapes/'
10+
11+
# Method 2: Use backend_args, file_client_args in versions before 3.0.0rc6
12+
# backend_args = dict(
13+
# backend='petrel',
14+
# path_mapping=dict({
15+
# './data/': 's3://openmmlab/datasets/segmentation/',
16+
# 'data/': 's3://openmmlab/datasets/segmentation/'
17+
# }))
18+
backend_args = None
19+
520
train_pipeline = [
6-
dict(type='LoadImageFromFile'),
21+
dict(type='LoadImageFromFile', backend_args=backend_args),
722
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
823
dict(
924
type='RandomResize',
@@ -14,7 +29,7 @@
1429
]
1530

1631
test_pipeline = [
17-
dict(type='LoadImageFromFile'),
32+
dict(type='LoadImageFromFile', backend_args=backend_args),
1833
dict(type='Resize', scale=(2048, 1024), keep_ratio=True),
1934
# If you don't have a gt annotation, delete the pipeline
2035
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
@@ -39,7 +54,8 @@
3954
ann_file='annotations/instancesonly_filtered_gtFine_train.json',
4055
data_prefix=dict(img='leftImg8bit/train/'),
4156
filter_cfg=dict(filter_empty_gt=True, min_size=32),
42-
pipeline=train_pipeline)))
57+
pipeline=train_pipeline,
58+
backend_args=backend_args)))
4359

4460
val_dataloader = dict(
4561
batch_size=1,
@@ -54,7 +70,8 @@
5470
data_prefix=dict(img='leftImg8bit/val/'),
5571
test_mode=True,
5672
filter_cfg=dict(filter_empty_gt=True, min_size=32),
57-
pipeline=test_pipeline))
73+
pipeline=test_pipeline,
74+
backend_args=backend_args))
5875

5976
test_dataloader = val_dataloader
6077

@@ -63,13 +80,13 @@
6380
type='CocoMetric',
6481
ann_file=data_root +
6582
'annotations/instancesonly_filtered_gtFine_val.json',
66-
metric=['bbox', 'segm']),
83+
metric=['bbox', 'segm'],
84+
backend_args=backend_args),
6785
dict(
6886
type='CityScapesMetric',
69-
ann_file=data_root +
70-
'annotations/instancesonly_filtered_gtFine_val.json',
71-
seg_prefix=data_root + '/gtFine/val',
72-
outfile_prefix='./work_dirs/cityscapes_metric/instance')
87+
seg_prefix=data_root + 'gtFine/val',
88+
outfile_prefix='./work_dirs/cityscapes_metric/instance',
89+
backend_args=backend_args)
7390
]
7491

7592
test_evaluator = val_evaluator

0 commit comments

Comments
 (0)
Please sign in to comment.