Skip to content

Commit

Permalink
Merge ad71d79 into 1fb54ac
Browse files Browse the repository at this point in the history
  • Loading branch information
youqingxiaozhua authored Dec 14, 2020
2 parents 1fb54ac + ad71d79 commit 8a56b37
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 1 deletion.
2 changes: 1 addition & 1 deletion mmseg/apis/inference.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ def inference_segmentor(model, img):
# scatter to specified GPU
data = scatter(data, [device])[0]
else:
data['img_metas'] = data['img_metas'][0].data
data['img_metas'] = [i.data[0] for i in data['img_metas']]

# forward the model
with torch.no_grad():
Expand Down
29 changes: 29 additions & 0 deletions tests/test_inference.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import os.path as osp

import mmcv

from mmseg.apis import inference_segmentor, init_segmentor


def test_test_time_augmentation_on_cpu():
config_file = 'configs/pspnet/pspnet_r50-d8_512x1024_40k_cityscapes.py'
config = mmcv.Config.fromfile(config_file)

# Remove pretrain model download for testing
config.model.pretrained = None
# Replace SyncBN with BN to inference on CPU
norm_cfg = dict(type='BN', requires_grad=True)
config.model.backbone.norm_cfg = norm_cfg
config.model.decode_head.norm_cfg = norm_cfg
config.model.auxiliary_head.norm_cfg = norm_cfg

# Enable test time augmentation
config.data.test.pipeline[1].flip = True

checkpoint_file = None
model = init_segmentor(config, checkpoint_file, device='cpu')

img = mmcv.imread(
osp.join(osp.dirname(__file__), 'data/color.jpg'), 'color')
result = inference_segmentor(model, img)
assert result[0].shape == (288, 512)

0 comments on commit 8a56b37

Please sign in to comment.