深度学习项目 | 一招让你的mao(猫)片十倍增长

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深度学习项目 | 一招让你的mao(猫)片十倍增长相关的知识,希望对你有一定的参考价值。

我们知道深度学习模型训练时通常都需要大量的训练集,我们在做图像相关的应用时同样需要进行图像数据增加,下面我将给大家总结10种图像数据增强常用的方式,并给出keras的实现方法。

一. 水平翻转

随机的对图片进行水平翻转,这个参数适用于水平翻转不影响图片语义的时候

技术分享图片

技术分享图片

二. 竖直翻转

随机的对图片进行竖直翻转,这个参数适用于竖直翻转不影响图片语义的时候

技术分享图片

技术分享图片

三. 随机旋转角度

设置一个0~180的度数,用来指定随机旋转图片的角度

技术分享图片

技术分享图片

四. 随机水平平移

用来指定水平方向随机移动的程度

技术分享图片

技术分享图片

五. 随机竖直平移

用来指定竖直方向随机移动的程度

技术分享图片

技术分享图片

六. 随机错切变换

在某方向上,按照一定的比例对图形的每个点到某条平行于该方向的直线的有向距离做放缩得到的平面图形

技术分享图片

技术分享图片

七. 随机放大

进行随机的放大

技术分享图片

技术分享图片

八. 颜色抖动

改变图片的颜色,通过对颜色通道的数值偏移,改变图片的整体的颜色
技术分享图片

技术分享图片

九. rescale

rescale的作用是对图片的每个像素值均乘上这个放缩因子,这个操作在所有其它变换操作之前执行,在一些模型当中,直接输入原图的像素值可能会落入激活函数的饱和区,因此设置放缩因子为1/255,把像素值放缩到0和1之间有利于模型的收敛,避免神经元饱和。图片经过rescale之后,保存到本地的图片用肉眼看是没有任何区别的

十. fill_mode

fill_mode为填充模式,如前面提到,当对图片进行平移、放缩、错切等操作时,图片中会出现一些缺失的地方,就由fill_mode中的参数确定。包括:“constant”、“nearest”(默认)、“reflect”和“wrap”。

  • ‘constant‘: kkkkkkkk|abcd|kkkkkkkk (cval=k)

  • ‘nearest‘: aaaaaaaa|abcd|dddddddd

  • ‘reflect‘: abcddcba|abcd|dcbaabcd

  • ‘wrap‘: abcdabcd|abcd|abcdabcd

技术分享图片

技术分享图片

技术分享图片

技术分享图片

通常来说我们不会只使用单一的数据增加方法,而是会多种方式结合使用,比如使用多种数据增加的方法后得到的结果如下图:

技术分享图片

项目打包

百度网盘:
https://pan.baidu.com/s/1U9YwXCTRF0oBxENfh_JsWQ

以上是关于深度学习项目 | 一招让你的mao(猫)片十倍增长的主要内容,如果未能解决你的问题,请参考以下文章

面试必会一招让你拿下seata分布式事务框架,看这一篇就够了!

一招让你下载Maven依赖速度快如闪电

工作感悟一招让你拿下seata分布式事务框架

教你一招让你在机房成为最亮的仔(Java中的Swing编程初级应用)

教你一招让你在机房成为最亮的仔(Java中的Swing编程初级应用)

“八仙过海各传一招”,八招让你成为一名优秀的程序员!