1
0
mirror of https://github.com/open-mmlab/mmsegmentation.git synced 2025-06-03 22:03:48 +08:00
mmsegmentation/tests/test_inference.py
Youqing Xiaozhua d5712c4d38 Bugfix: num of augmentations and image meta not match when run TTA on CPU ()
* add inference test

* fix E501 line too long (81 > 79 characters

* fix wrong config path

* fix num of augmentations (2) != num of image meta (1)

* Update test_inference.py

Co-authored-by: Jerry Jiarui XU <xvjiarui0826@gmail.com>
2020-12-13 23:51:42 -08:00

30 lines
948 B
Python

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)