数据增强(扩充图像,以增加数据集)
通过数据增强,可以达到扩充数据集的目的。对一副图片,做相应的变换,可以达到扩充图像的目的。使用keras下的相关图像处理工具包进行实现。
·
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下的相关图形处理工具包,来把一副图片,经过数据增强生成多种图片。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)