|
-
- import mindspore.dataset.vision as vision
- import mindspore.dataset.transforms as c_transforms
-
- # define Auto Augmentation operators
- PARAMETER_MAX = 10
-
- def float_parameter(level, maxval):
- return float(level) * maxval / PARAMETER_MAX
-
- def int_parameter(level, maxval):
- return int(level * maxval / PARAMETER_MAX)
-
- def shear_x(level):
- transforms_list = []
- v = float_parameter(level, 0.3)
-
- transforms_list.append(vision.RandomAffine(degrees=0, shear=(-v, -v)))
- transforms_list.append(vision.RandomAffine(degrees=0, shear=(v, v)))
- return c_transforms.RandomChoice(transforms_list)
-
- def shear_y(level):
- transforms_list = []
- v = float_parameter(level, 0.3)
-
- transforms_list.append(vision.RandomAffine(degrees=0, shear=(0, 0, -v, -v)))
- transforms_list.append(vision.RandomAffine(degrees=0, shear=(0, 0, v, v)))
- return c_transforms.RandomChoice(transforms_list)
-
- def translate_x(level):
- transforms_list = []
- v = float_parameter(level, 150 / 331)
-
- transforms_list.append(vision.RandomAffine(degrees=0, translate=(-v, -v)))
- transforms_list.append(vision.RandomAffine(degrees=0, translate=(v, v)))
- return c_transforms.RandomChoice(transforms_list)
-
- def translate_y(level):
- transforms_list = []
- v = float_parameter(level, 150 / 331)
-
- transforms_list.append(vision.RandomAffine(degrees=0, translate=(0, 0, -v, -v)))
- transforms_list.append(vision.RandomAffine(degrees=0, translate=(0, 0, v, v)))
- return c_transforms.RandomChoice(transforms_list)
-
- def color_impl(level):
- v = float_parameter(level, 1.8) + 0.1
- return vision.RandomColor(degrees=(v, v))
-
- def rotate_impl(level):
- transforms_list = []
- v = int_parameter(level, 30)
-
- transforms_list.append(vision.RandomRotation(degrees=(-v, -v)))
- transforms_list.append(vision.RandomRotation(degrees=(v, v)))
- return c_transforms.RandomChoice(transforms_list)
-
- def solarize_impl(level):
- level = int_parameter(level, 256)
- v = 256 - level
- return vision.RandomSolarize(threshold=(0, v))
-
- def posterize_impl(level):
- level = int_parameter(level, 4)
- v = 4 - level
- return vision.RandomPosterize(bits=(v, v))
-
- def contrast_impl(level):
- v = float_parameter(level, 1.8) + 0.1
- return vision.RandomColorAdjust(contrast=(v, v))
-
- def autocontrast_impl(level):
- return vision.AutoContrast()
-
- def sharpness_impl(level):
- v = float_parameter(level, 1.8) + 0.1
- return vision.RandomSharpness(degrees=(v, v))
-
- def brightness_impl(level):
- v = float_parameter(level, 1.8) + 0.1
- return vision.RandomColorAdjust(brightness=(v, v))
|