| |
| import numpy as np |
|
|
| import mmocr.datasets.pipelines.dbnet_transforms as transforms |
|
|
|
|
| def test_imgaug(): |
| args = [['Fliplr', 0.5], |
| dict(cls='Affine', rotate=[-10, 10]), ['Resize', [0.5, 3.0]]] |
| imgaug = transforms.ImgAug(args) |
| img = np.random.rand(3, 100, 200) |
| poly = np.array([[[0, 0, 50, 0, 50, 50, 0, 50]], |
| [[20, 20, 50, 20, 50, 50, 20, 50]]]) |
| box = np.array([[0, 0, 50, 50], [20, 20, 50, 50]]) |
| results = dict(img=img, masks=poly, bboxes=box) |
| results['mask_fields'] = ['masks'] |
| results['bbox_fields'] = ['bboxes'] |
| results = imgaug(results) |
| assert np.allclose(results['bboxes'][0], |
| results['masks'].masks[0][0][[0, 1, 4, 5]]) |
| assert np.allclose(results['bboxes'][1], |
| results['masks'].masks[1][0][[0, 1, 4, 5]]) |
|
|
|
|
| def test_eastrandomcrop(): |
| crop = transforms.EastRandomCrop(target_size=(60, 60), max_tries=100) |
| img = np.random.rand(3, 100, 200) |
| poly = np.array([[[0, 0, 50, 0, 50, 50, 0, 50]], |
| [[20, 20, 50, 20, 50, 50, 20, 50]]]) |
| box = np.array([[0, 0, 50, 50], [20, 20, 50, 50]]) |
| results = dict(img=img, gt_masks=poly, bboxes=box) |
| results['mask_fields'] = ['gt_masks'] |
| results['bbox_fields'] = ['bboxes'] |
| results = crop(results) |
| assert np.allclose(results['bboxes'][0], |
| results['gt_masks'].masks[0][0][[0, 2]].flatten()) |
|
|