inception Net如何实现数据增强?

网友解答: 谢邀看到悟空问答官方给我推荐这个问题,我不得不说,这推荐是不是有点太精准了?我才前几天在酷米号上发布的Inception Net如何实现数据增强,今天就给我推送这个问题,这一

网友解答:

谢邀

看到悟空问答官方给我推荐这个问题,我不得不说,这推荐是不是有点太精准了?我才前几天在酷米号上发布的Inception Net如何实现数据增强,今天就给我推送这个问题,这一点我不得不服。所以接下来我就直接引用我之前写过的文章了。

在CNN中,为了增大数据量避免模型的过拟合,通常都会对训练数据做数据增强处理,这篇文章主要介绍在Inception Net中是如何做数据增强的,tensorflow官方通过slim已经实现了VGG、Inception、LeNet网络的数据增强的,官网链接如下:https://github.com/tensorflow/models/tree/master/research/slim/preprocessing,Inception Net数据增强主要包括以下几个部分:

1、将图片的像素缩放到[0,1)

#将图片的像素值缩放到[0,1)

image = tf.image.convert_image_dtype(image, dtype=tf.float32)

2、随机裁剪图片

image:一个3维的图片tensor,数据的取值范围在[0,1],即表示已经做了归一化后的图片

bbox:box的边框,[ymin,xmin,ymax,xmax],默认是[0,0,1,1]表示使用的是整张图片

min_object_covered:在随机裁剪图片的时候必须要包括box边框的比例

aspect_ratio_range:随机裁剪的图片,宽/高的比例需要满足的范围

area_range:随机裁剪的图片需要占图片的比例

max_attempts:随机裁剪,尝试的最多次数,超过最大尝试次数返回整张图片

返回的是一张裁剪之后的图片和随机裁剪所选的区域,后面会通过tensorflow对这个区域进行标注,裁剪的图片就是从这个区域中选择的。

标签: