卷积神经网路调参--数据增强

数据增强是通过图像缩放、裁剪、翻转和色彩调整等手段增加模型训练数据多样性的一种方法。本文介绍了如何使用TensorFlow库进行图像缩放、裁剪、翻转和光照调整,以丰富数据集,提升卷积神经网络的泛化能力。在实践中,需要注意数据维度的正确处理,避免因数据类型和形状不匹配导致的错误。
摘要由CSDN通过智能技术生成

数据增强:

和网络没有比较大的关系,而是在数据层面做处理。

比较常用的方法有:归一化、图像变换、色彩变换、多尺度。

归一化:

将数据归一化到一定的区间内,使网络更容易学习。

图像变换:

也就是为了使数据变多,方式有:对图像进行翻转、拉伸、裁剪、变形等。

色彩变换:

可以改变图像的对比度、亮度等。

多尺度:

就是将图像裁剪到不同大小。也就是使神经网络能够看到更多层面的图像信息,也能达到增加数据的效果。

eg:将某张图像缩减到256 * 256,之后裁剪224 * 224的块,其比例就是 224/256。多尺度可以是,将图像缩减为非 256 * 256的大小,然后用224采样。

程序实现:

1.  导入需要用到的数据包:

import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
from matplotlib.pyplot import imshow

2. 显示原始图片

name = './gugong.jpg' # 图片路径
img_string = tf.read_file(name) # read_file :是将图片以字符串的形式进行读入
img_decoded = tf.image.decode_image(img_string) # 将 string 解析成一个图片
sess = tf.Session() # 启动进程
img_decoded_val = sess.run(img_decoded)
print(img_decoded_val.shape)
%matplotlib inline
# 在文档中显示图片
imshow(img_decoded_val)

结果:

对图像进行缩放

常用的缩放 API:
(1)tf.image.resize_area 

(2)tf.image.resize_bicubic :

用二次线性插值法对图片进行缩放,就是当图片缩小的时候,是没有损失的,直接压缩图片即可;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值