1.数据增强

这里,笔者主要讲的是,深度学习中数据增强的相关手段。通过数据增强,可以达到扩充数据集的目的。

对一副图片,做如下图所示的变换,可以达到扩充图像数据集的目的。甚至,有时,可以在图片中,加入一些噪声,来达到扩充数据集的目的。

在这里插入图片描述
在这里插入图片描述

2.相关代码(python+keras)

from keras.preprocessing.image import ImageDataGenerator, array_to_img, img_to_array, load_img

datagen = ImageDataGenerator(
    rotation_range=30,
    width_shift_range=0.2,
    height_shift_range=0.2,
    shear_range=0.2,
    zoom_range=0.2,
    horizontal_flip=True,
    fill_mode='nearest')

img = load_img('F:\\xiangmu\\maxrect_crop_2\\16-6.tif')  # this is a PIL image
x = img_to_array(img)  # this is a Numpy array with shape (3, 150, 150)
x = x.reshape((1,) + x.shape)  # this is a Numpy array with shape (1, 3, 150, 150)
# the .flow() command below generates batches of randomly transformed images

i = 0
for batch in datagen.flow(x, batch_size=1,  # save_to_dir 要保存的文件夹   prefix图片名字   format图片的格式
                          save_to_dir='./Model', save_prefix='data', save_format='jpeg'):
    i += 1
    if i > 10:
        break

注:使用keras下的相关图形处理工具包,来把一副图片,经过数据增强生成多种图片。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐