stevfoy's picture
extra
985c437
import imgaug.augmenters as iaa
from torchvision import transforms
from pytorchyolo.utils.transforms import ToTensor, PadSquare, RelativeLabels, AbsoluteLabels, ImgAug, adjustGrassColor
import imgaug as ia
class DefaultAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
iaa.Sharpen((0.0, 0.1)),
iaa.Affine(rotate=(-0, 0), translate_percent=(-0.1, 0.1), scale=(0.8, 1.1)),
iaa.AddToBrightness((-20, 100)),
iaa.AddToHue((-10, 10)),
iaa.Fliplr(0.5),
])
class greenAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
iaa.Sharpen((0.0, 0.1)),
iaa.Affine(rotate=(-10, 10), translate_percent=(-0.1, 0.1), scale=(0.6, 1.2)),
iaa.ChangeColorspace(from_colorspace="RGB", to_colorspace="HSV"),
iaa.WithChannels(0, iaa.Add((4))), # Adjust hue
iaa.WithChannels(1, iaa.LinearContrast((1))), # Adjust saturation
iaa.WithChannels(1, iaa.Add((5))),
iaa.WithChannels(2, iaa.LinearContrast((1))), # Adjust value/brightness
iaa.WithChannels(2, iaa.Add((92))),
iaa.ChangeColorspace(from_colorspace="HSV", to_colorspace="RGB"),
])
class StrongAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
# iaa.Dropout([0.0, 0.01]),
iaa.Sharpen((0.0, 0.1)),
iaa.Affine(rotate=(-15, 15), translate_percent=(-0.1, 0.1), scale=(0.8, 1.1)),
iaa.AddToBrightness((-10, 60)),
iaa.AddToHue((-5, 10)),
iaa.Fliplr(0.5),
])
class greyAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
iaa.Dropout([0.0, 0.01]),
iaa.Sharpen((0.0, 0.1)),
iaa.Affine(rotate=(-45, 45), translate_percent=(-0.1, 0.1), scale=(0.8, 1.1)),
iaa.AddToBrightness((0, 80)),
iaa.AddToHue((10, 20)),
iaa.Fliplr(0.5),
# iaa.ChangeColorTemperature((1100,10000)),
iaa.Grayscale(alpha=(0.0, 1.0)),
])
class newAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
iaa.Fliplr(0.5), # Horizontally flip 50% of the images
iaa.Affine(
rotate=(-10, 10), # Rotate images between -25 and 25 degrees
shear=(-8, 8), # Shear images
scale={"x": (0.8, 1.2), "y": (0.8, 1.2)} # Scale images
),
iaa.GaussianBlur(sigma=(0, 1.0)), # Apply gaussian blur with a sigma between 0 and 1.0
iaa.Multiply((0.8, 4.2)), # Change brightness (50-150% of original value)
iaa.LinearContrast((0.8, 1.2)), # Adjust contrast
iaa.AddToHueAndSaturation((-20, 20)), # Add/Subtract hue and saturation
])
class GrassAug(ImgAug):
def __init__(self, ):
self.augmentations = iaa.Sequential([
iaa.Sharpen((0.0, 0.1)),
iaa.Affine(rotate=(-15, 15), translate_percent=(-0.1, 0.1), scale=(0.8, 1.1)),
iaa.AddToBrightness((0, 20)),
iaa.WithColorspace(
to_colorspace="HSV",
from_colorspace="RGB",
children=iaa.Sequential([
iaa.WithChannels(1, iaa.Add((-5, 5))), # Randomly adjust saturation
iaa.WithChannels(2,iaa.Add((-20, 90))) # Randomly adjust value/brightness
])
),
iaa.Fliplr(0.5),
])
AUGMENTATION_TRANSFORMS_Version1 = transforms.Compose([
AbsoluteLabels(),
StrongAug(),
PadSquare(),
RelativeLabels(),
ToTensor(),
])
AUGMENTATION_TRANSFORMS = transforms.Compose([
AbsoluteLabels(),
StrongAug(),
PadSquare(),
RelativeLabels(),
ToTensor(),
])
AUGMENTATION_TRANSFORMS_VersionHSV_PAPER = transforms.Compose([
AbsoluteLabels(),
GrassAug(),
PadSquare(),
RelativeLabels(),
ToTensor(),
])
AUGMENTATION_NONE = transforms.Compose([
AbsoluteLabels(),
PadSquare(),
RelativeLabels(),
ToTensor(),
])