用已有的图像数据文件夹进行数据增强,生成数据增强后的图像数据文件夹 import glob import cv2 import os from albumentations import ( PadIfNeeded, HorizontalFlip, # 随机水平翻转 VerticalFlip, # 随机垂直翻转 Flip, # 随机翻转 CenterCrop, Crop, Compose, Transpose, RandomRotate90, # 随机90度旋转 ElasticTransform, GridDistortion, OpticalDistortion, RandomSizedCrop, # 随机尺寸裁剪并缩放回原始大小 OneOf, CLAHE, RandomBrightnessContrast, RandomGamma ) if __name__ == "__main__": old_path = ("C:/Users/sun/Desktop/color") # 输入img地址 new_path = ("C:/Users/sun/Desktop/addcolor") # 输出img地址 pictures = os.listdir(old_path) a = 1 for picture in pictures: old_dir = os.path.join(old_path, picture) # cv读入图片 image = cv2.imread(old_dir) # 将图片进行100%的垂直翻转、水平翻转、旋转180° h_image = HorizontalFlip(p=1)(image=image)['image'] v_image = VerticalFlip(p=1)(image=image)['image'] f_image = Flip(p=1)(image=image)['image'] # 取出图片的后缀名.jpg 这里os.path.splitext将文件名分开,[1]取出来它的后半部分 filetype = os.path.splitext(old_dir)[1] # 因为这里有三种变换方式,所以给了三种命名 h_new_dir = os.path.join(new_path, "h_cellcolor" + str(a) + filetype) cv2.imwrite(h_new_dir, h_image) v_new_dir = os.path.join(new_path, "v_cellcolor" + str(a) + filetype) cv2.imwrite(v_new_dir, v_image) f_new_dir = os.path.join(new_path, "f_cellcolor" + str(a) + filetype) cv2.imwrite(f_new_dir, f_image) a = a + 1