Albumentations¶
- class mmpretrain.datasets.transforms.Albumentations(transforms, keymap=None)[source]¶
Wrapper to use augmentation from albumentations library.
Required Keys:
img
Modified Keys:
img
img_shape
Adds custom transformations from albumentations library. More details can be found in Albumentations. An example of
transforms
is as followed:[ dict( type='ShiftScaleRotate', shift_limit=0.0625, scale_limit=0.0, rotate_limit=0, interpolation=1, p=0.5), dict( type='RandomBrightnessContrast', brightness_limit=[0.1, 0.3], contrast_limit=[0.1, 0.3], p=0.2), dict(type='ChannelShuffle', p=0.1), dict( type='OneOf', transforms=[ dict(type='Blur', blur_limit=3, p=1.0), dict(type='MedianBlur', blur_limit=3, p=1.0) ], p=0.1), ]
- Parameters:
transforms (List[Dict]) – List of albumentations transform configs.
keymap (Optional[Dict]) – Mapping of mmpretrain to albumentations fields, in format {‘input key’:’albumentation-style key’}. Defaults to None.
Example
>>> import mmcv >>> from mmpretrain.datasets import Albumentations >>> transforms = [ ... dict( ... type='ShiftScaleRotate', ... shift_limit=0.0625, ... scale_limit=0.0, ... rotate_limit=0, ... interpolation=1, ... p=0.5), ... dict( ... type='RandomBrightnessContrast', ... brightness_limit=[0.1, 0.3], ... contrast_limit=[0.1, 0.3], ... p=0.2), ... dict(type='ChannelShuffle', p=0.1), ... dict( ... type='OneOf', ... transforms=[ ... dict(type='Blur', blur_limit=3, p=1.0), ... dict(type='MedianBlur', blur_limit=3, p=1.0) ... ], ... p=0.1), ... ] >>> albu = Albumentations(transforms) >>> data = {'img': mmcv.imread('./demo/demo.JPEG')} >>> data = albu(data) >>> print(data['img'].shape) (375, 500, 3)