zoukankan      html  css  js  c++  java
  • tensorflow中图像增强的方法详解

    tf.keras.preprocessing.image.ImageDataGenerator()官方文档如下:

     1 tf.keras.preprocessing.image.ImageDataGenerator(
     2     featurewise_center=False, 
     3     samplewise_center=False,
     4     featurewise_std_normalization=False,             
     5     samplewise_std_normalization=False,
     6     zca_whitening=False, 
     7     zca_epsilon=1e-06, 
     8     rotation_range=0, 
     9     width_shift_range=0.0,
    10     height_shift_range=0.0, 
    11     brightness_range=None, 
    12     shear_range=0.0, 
    13     zoom_range=0.0,
    14     channel_shift_range=0.0, 
    15     fill_mode='nearest', cval=0.0,
    16     horizontal_flip=False, 
    17     vertical_flip=False, 
    18     rescale=None,
    19     preprocessing_function=None, 
    20     data_format=None, 
    21     validation_split=0.0, 
    22     dtype=None
    23 )    

    1. featurewise_center

    布尔类型,大意是数据集去中心化,每个输入样本除以整个数据集的标准差

    2. samplewise_center  

    布尔类型,大意是样本去中心化,每个输入样本除以自身的标准差

    3. featurewise_std_normalization

    布尔类型,输入样本除以数据集的标准差以完成标准化, 按feature执行

    4. samplewise_std_normalization

    布尔类型,输入样本除以自身的标准差以完成标准化

    5. zca_whitening

    布尔类型,对输入数据施加ZCA白化,即对图像进行PCA降维操作,减少图片的冗余信息,保留最重要的特征,细节可参看:Whitening transformation--维基百科(https://en.wikipedia.org/wiki/Whitening_transformation),Whitening--斯坦福(http://ufldl.stanford.edu/wiki/index.php/Whitening)

    6. rotation_range

    整数(取值为0-180的整数),数据提升时图片随机转动的角度, 在 [0, 指定角度] 范围内进行随机角度旋转

    7. width_shift_range

    浮点数(取值为0-1的浮点数,可以大于1,但最好不要大于1),水平方向平移的幅度(平移距离 / 图像宽度)

    8. height_shift_range

    浮点数(取值为0-1的浮点数,可以大于1,但最好不要大于1),垂直方向平移的幅度(平移距离 / 图像高度)

    9. shear_range

    浮点数,剪切强度(逆时针方向的剪切变换角度),效果就是让所有点的x坐标(或者y坐标)保持不变,而对应的y坐标(或者x坐标)则按比例发生平移,且平移的大小和该点到x轴(或y轴)的垂直距离成正比。

    10. zoom_range

    浮点数或形如[width_zoom_range, height_zoom_range]的列表。若为浮点数,图片同时在长宽两个方向进行同等程度的放缩操作;若为列表,即分别对长宽进行不同程度的放缩

    参数大于0小于1时,执行的是放大操作,当参数大于1时,执行的是缩小操作

    11. channel_shift_range

    浮点数,颜色通道的数值偏移,改变图片的整体颜色,相当于给整个数据集加了一个“滤镜”

    12. fill_mode

    ‘constant',‘nearest',‘reflect'或‘wrap'之一,当对图片进行平移、放缩、剪切等操作时,图片中会出现一些缺失的地方,那这些缺失的地方该用什么方式补全呢?就由fill_mode中的参数确定

     13. cval

    浮点数或整数,当fill_mode=‘’constant‘’时,指定要向超出边界的点填充的值

    14. horizontal_flip

    布尔值,随机的对图片进行水平翻转,意味着不一定对所有图片都会执行水平翻转,这个参数适用于水平翻转不影响图片语义的时候。

    15. vertical_flip

    布尔值,随机垂直翻转

    16. rescale

    浮点数(取值为0-1的浮点数),将在执行其他处理前乘到整个图像上,我们的图像在RGB通道都是0~255的整数,所以该值通常定为 1/255

    17. preprocessing_function

    将被应用于每个输入的函数。该函数将在任何其他修改之前运行。该函数接受一个参数,为一张图片(秩为3的numpy array),并且输出一个具有相同shape的numpy array

    18. data_format

    字符串,“channel_first”或“channel_last”之一,代表图像的通道维的位置。该参数是Keras 1.x中的image_dim_ordering,“channel_last”对应原本的“tf”,“channel_first”对应原本的“th”。以128x128的RGB图像为例,“channel_first”应将数据组织为(3,128,128),而“channel_last”应将数据组织为(128,128,3)。该参数的默认值是~/.keras/keras.json中设置的值,若从未设置过,则为“channel_last”。

  • 相关阅读:
    仿QQ信息弹出
    天高云淡 leobbs皮肤
    http://www.xywq.com/files/ganzhi11.htm
    用Silverlight打造位运算器(3)--完成
    用Silverlight打造位运算器(1)--制作简易工具条控件
    用Silverlight打造位运算器(2)--制作数字文本框控件
    Lucky Sequence[SRM403DIVI500]
    答复:“判断一个整数的二进制位中有多少个1”的提问
    Python 笔记(1)
    #define中的#、## && #@
  • 原文地址:https://www.cnblogs.com/shuaishuaidefeizhu/p/15171052.html
Copyright © 2011-2022 走看看