Data Augmentation Tools for image classification

Hello, everyone.
I’d like to know tools or packages except default torch augmentation tools, such as albumentations, …

you could augment the data using the transforms pipeline available in Torchvision. You create a transorm(a set of operations an image would go through in the pipeline ) as follows -

transforms = transforms.Compose([
                              transforms.Resize((350, 350)),
                              transforms.RandomHorizontalFlip(),
                              transforms.RandomRotation(degrees=20),
                              transforms.RandomAffine(degrees=20),
                              transforms.ColorJitter(hue=0.5, saturation=.01),
                              # Convert the image to tensor,
                              transforms.ToTensor()
                                ])

to get a Dataloader containing both modified and the original images (hence augmenting the dataset) do the following -

def getConcatedDataset(root_dir):

    image_transformations = transforms.Compose([
        transforms.Resize((600, 600)),
        transforms.RandomHorizontalFlip(),
        transforms.RandomRotation(degrees=20),
        transforms.RandomAffine(degrees=20),
        transforms.ColorJitter(hue=0.5, saturation=.01),
        # Convert the image to tensor,
        transforms.ToTensor(),
        #transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
    ])

    minimum_transformations = transforms.Compose([
        transforms.ToTensor(),
        #transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
    ])

    dataset1 = ImageFolder(root_dir, transform=minimum_transformations)
    dataset2 = ImageFolder(root_dir, image_transformations)
    return ConcatDataset([dataset1, dataset2])

This way, you can create multiple transformation pipelines and append them into one big Dataloader.

thanks for your help.
Do you know external tools like Imgaug, albumentations?

Nope, Do not know any of them…