| | |
| | import copy |
| |
|
| | import numpy as np |
| |
|
| | from mmocr.datasets.pipelines import LoadImageFromNdarray, LoadTextAnnotations |
| |
|
| |
|
| | def _create_dummy_ann(): |
| | results = {} |
| | results['img_info'] = {} |
| | results['img_info']['height'] = 1000 |
| | results['img_info']['width'] = 1000 |
| | results['ann_info'] = {} |
| | results['ann_info']['masks'] = [] |
| | results['mask_fields'] = [] |
| | results['ann_info']['masks_ignore'] = [ |
| | [[499, 94, 531, 94, 531, 124, 499, 124]], |
| | [[3, 156, 81, 155, 78, 181, 0, 182]], |
| | [[11, 223, 59, 221, 59, 234, 11, 236]], |
| | [[500, 156, 551, 156, 550, 165, 499, 165]] |
| | ] |
| |
|
| | return results |
| |
|
| |
|
| | def test_loadtextannotation(): |
| |
|
| | results = _create_dummy_ann() |
| | with_bbox = True |
| | with_label = True |
| | with_mask = True |
| | with_seg = False |
| | poly2mask = False |
| |
|
| | |
| | |
| | |
| | loader = LoadTextAnnotations( |
| | with_bbox, |
| | with_label, |
| | with_mask, |
| | with_seg, |
| | poly2mask, |
| | use_img_shape=True) |
| | tmp_results = copy.deepcopy(results) |
| | output = loader._load_masks(tmp_results) |
| | assert len(output['gt_masks_ignore']) == 4 |
| | assert np.allclose(output['gt_masks_ignore'].masks[0], |
| | [[499, 94, 531, 94, 531, 124, 499, 124]]) |
| | assert output['gt_masks_ignore'].height == results['img_info']['height'] |
| |
|
| | |
| | |
| | loader = LoadTextAnnotations( |
| | with_bbox, |
| | with_label, |
| | with_mask, |
| | with_seg, |
| | poly2mask=True, |
| | use_img_shape=True) |
| | tmp_results = copy.deepcopy(results) |
| | tmp_results['ori_shape'] = (640, 640, 3) |
| | output = loader._load_masks(tmp_results) |
| | assert output['img_info']['height'] == 640 |
| | assert output['gt_masks_ignore'].height == 640 |
| |
|
| |
|
| | def test_load_img_from_numpy(): |
| | result = {'img': np.ones((32, 100, 3), dtype=np.uint8)} |
| |
|
| | load = LoadImageFromNdarray(color_type='color') |
| | output = load(result) |
| |
|
| | assert output['img'].shape[2] == 3 |
| | assert len(output['img'].shape) == 3 |
| |
|
| | result = {'img': np.ones((32, 100, 1), dtype=np.uint8)} |
| | load = LoadImageFromNdarray(color_type='color') |
| | output = load(result) |
| | assert output['img'].shape[2] == 3 |
| |
|
| | result = {'img': np.ones((32, 100, 3), dtype=np.uint8)} |
| | load = LoadImageFromNdarray(color_type='grayscale', to_float32=True) |
| | output = load(result) |
| | assert output['img'].shape[2] == 1 |
| |
|