用已有的图像数据文件夹进行数据增强,生成数据增强后的图像数据文件夹
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
版权声明:本文为yyfhq原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。