Hello. If you are the first time,
I recommend to use the albumentation.
Which is very easy to use for data augmentation in the computer vision.
For example
import cv2
import numpy as np
from albumentations import (CropNonEmptyMaskIfExists,HorizontalFlip,VerticalFlip, RandomBrightness,RandomContrast,MotionBlur,RandomCrop,RandomRotate90)

def rr(img,mask):
    aug=RandomRotate90(p=1)
    augmented = aug(image=img, mask=mask)
    img=augmented['image']
    mask=augmented['mask']
    return(img,mask)

#This is is data loader section. train_imgr is img, target_imgr is ground truth mask
train_img2,target_img2=rr(train_imgr,target_imgr) #random brightness
self.train_data.append(train_img2)   # this is train data list
self.train_labels.append(target_img2) # this is ground truth list