【机器学习】 - keras学习 - 图片生成器ImageDataGenerator

函数原型:

keras.preprocessing.image.ImageDataGenerator(featurewise_center=False,samplewise_center=False,featurewise_std_normalization=False,samplewise_std_normalization=False,zca_whitening=False,zca_epsilon=1e-6,rotation_range=0.,width_shift_range=0.,height_shift_range=0.,shear_range=0.,zoom_range=0.,channel_shift_range=0.,fill_mode='nearest',cval=0.,horizontal_flip=False,vertical_flip=False,rescale=None,preprocessing_function=None,data_format=K.image_data_format())

用以生成一个batch的图像数据,支持实时数据提升。训练时该函数会无限生成数据,直到达到规定的epoch次数为止。

参数

  • featurewise_center:布尔值,使输入数据集去中心化(均值为0), 按feature执行

  • samplewise_center:布尔值,使输入数据的每个样本均值为0

  • featurewise_std_normalization:布尔值,将输入除以数据集的标准差以完成标准化, 按feature执行

  • samplewise_std_normalization:布尔值,将输入的每个样本除以其自身的标准差

  • zca_whitening:布尔值,对输入数据施加ZCA白化

  • zca_epsilon: ZCA使用的eposilon,默认1e-6

  • rotation_range:整数,数据提升时图片随机转动的角度

  • width_shift_range:浮点数,图片宽度的某个比例,数据提升时图片水平偏移的幅度

  • height_shift_range:浮点数,图片高度的某个比例,数据提升时图片竖直偏移的幅度

  • shear_range:浮点数,剪切强度(逆时针方向的剪切变换角度)

  • zoom_range:浮点数或形如[lower,upper]的列表,随机缩放的幅度,若为浮点数,则相当于[lower,upper] = [1 - zoom_range, 1+zoom_range]

  • channel_shift_range:浮点数,随机通道偏移的幅度

  • fill_mode:;‘constant’,‘nearest’,‘reflect’或‘wrap’之一,当进行变换时超出边界的点将根据本参数给定的方法进行处理

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

  • horizontal_flip:布尔值,进行随机水平翻转

  • vertical_flip:布尔值,进行随机竖直翻转

  • rescale: 重放缩因子,默认为None. 如果为None或0则不进行放缩,否则会将该数值乘到数据上(在应用其他变换之前)

  • preprocessing_function: 将被应用于每个输入的函数。该函数将在图片缩放和数据提升之后运行。该函数接受一个参数,为一张图片(秩为3的numpy array),并且输出一个具有相同shape的numpy array

  • 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”

 

方法1

方法

  • fit(x, augment=False, rounds=1):计算依赖于数据的变换所需要的统计信息(均值方差等),只有使用featurewise_centerfeaturewise_std_normalizationzca_whitening时需要此函数。

    • X:numpy array,样本数据,秩应为4.在黑白图像的情况下channel轴的值为1,在彩色图像情况下值为3

    • augment:布尔值,确定是否使用随即提升过的数据

    • round:若设augment=True,确定要在数据上进行多少轮数据提升,默认值为1

    • seed: 整数,随机数种子

  • flow(self, X, y, batch_size=32, shuffle=True, seed=None, save_to_dir=None, save_prefix='', save_format='png'):接收numpy数组和标签为参数,生成经过数据提升或标准化后的batch数据,并在一个无限循环中不断的返回batch数据

    • x:样本数据,秩应为4.在黑白图像的情况下channel轴的值为1,在彩色图像情况下值为3

    • y:标签

    • batch_size:整数,默认32

    • shuffle:布尔值,是否随机打乱数据,默认为True

    • save_to_dir:None或字符串,该参数能让你将提升后的图片保存起来,用以可视化

    • save_prefix:字符串,保存提升后图片时使用的前缀, 仅当设置了save_to_dir时生效

    • save_format:"png"或"jpeg"之一,指定保存图片的数据格式,默认"jpeg"

    • yields:形如(x,y)的tuple,x是代表图像数据的numpy数组.y是代表标签的numpy数组.该迭代器无限循环.

    • seed: 整数,随机数种子

  • flow_from_directory(directory): 以文件夹路径为参数,生成经过数据提升/归一化后的数据,在一个无限循环中无限产生batch数据

    • directory: 目标文件夹路径,对于每一个类,该文件夹都要包含一个子文件夹.子文件夹中任何JPG、PNG、BNP、PPM的图片都会被生成器使用.详情请查看此脚本
    • target_size: 整数tuple,默认为(256, 256). 图像将被resize成该尺寸
    • color_mode: 颜色模式,为"grayscale","rgb"之一,默认为"rgb".代表这些图片是否会被转换为单通道或三通道的图片.
    • classes: 可选参数,为子文件夹的列表,如['dogs','cats']默认为None. 若未提供,则该类别列表将从directory下的子文件夹名称/结构自动推断。每一个子文件夹都会被认为是一个新的类。(类别的顺序将按照字母表顺序映射到标签值)。通过属性class_indices可获得文件夹名与类的序号的对应字典。
    • class_mode: "categorical", "binary", "sparse"或None之一. 默认为"categorical. 该参数决定了返回的标签数组的形式, "categorical"会返回2D的one-hot编码标签,"binary"返回1D的二值标签."sparse"返回1D的整数标签,如果为None则不返回任何标签, 生成器将仅仅生成batch数据, 这种情况在使用model.predict_generator()model.evaluate_generator()等函数时会用到.
    • batch_size: batch数据的大小,默认32
    • shuffle: 是否打乱数据,默认为True
    • seed: 可选参数,打乱数据和进行变换时的随机数种子
    • save_to_dir: None或字符串,该参数能让你将提升后的图片保存起来,用以可视化
    • save_prefix:字符串,保存提升后图片时使用的前缀, 仅当设置了save_to_dir时生效
    • save_format:"png"或"jpeg"之一,指定保存图片的数据格式,默认"jpeg"
    • flollow_links: 是否访问子文件夹中的软链接

 

https://keras-cn.readthedocs.io/en/latest/preprocessing/image/

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439379.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SharePoint 2007 and 2010 的服务器场的端口

由于要把一台SharePoint Server放到外网去,就把IP改到DMZ区了,结果除了系统管理员,其他帐号都无法验证通过,肯定是一些端口没开. 网上一查,SharePoint所需要的端口还真多,不过Client和WFE之间的应该开放80和443就OK了,其余的都是SharePoint Server之间,或者和 公司网络环境的…

【Python学习】 - 使用Anaconda的Spyder查看某些函数的原型的6种方法汇总

1.Ctrl鼠标点击函数名(对应的函数名会加下划线) 或 Ctrlg 2.help(function) 在某些情况下方法1失效,比如TensorFlow中的一些函数tf.constant,他只会跳转到一个init文件,并不会展示函数原型。 所以可以这样help(tf.co…

SharePoint2013 备份还原

你执行的是导出导入操作,用powershell命令吧,backup-spsite,restore-spsite,备份还原和导入导出是不一样的。 备份还原和导入导出的区别: 1、 还原是完全的覆盖操作,就是还原的网站和之前的网站完全一样&a…

【Python学习】 - TensorFlow.keras 不显示epochs进度条的方法

一、概述 在我们使用TensorFlow进行神经网络的搭建时,难免遇到需要训练很多次来拟合数据的情况,假设需要拟合1000次数据,那么可能前800次的拟合效果都不是很好,所以显示进度条就会使得输出面板被填满,输出的信息我们并…

【Python学习】 - 关于函数返回拷贝还是返回视图的几组函数汇总

1.np.flatten() 和 np.ravel() 两者的功能是一致的,将多维数组降为一维,但是两者的区别是返回拷贝还是返回视图。 np.flatten()返回一份拷贝,对拷贝所做修改不会影响原始矩阵,而np.ravel()返回的是视图,修改时会影响…

SharePoint2010开发最佳实践

目 录 第1章 SharePoint Foundation开发基础1 1.1 SharePoint能做什么1 1.2 SharePoint Foundation和SharePoint Server 2010的区别2 1.3 SharePoint Foundation新特性4 1.4 SharePoint 2010基础概念4 1.4.1 服务器场5 1.4.2 Web应用程序6 1.4.3 服务应用程序8 1.4.4 网站集和网…

关于报错:'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

使用cmd查看电脑显卡的信息,调用nvidia-smi查看显卡使用情况报错如下: 因为它找不到该命令。这个文件是一个exe文件,一般都在下面这个文件夹中。 C:\Program Files\NVIDIA Corporation\NVSMI 所以想要使用该命令必须要能得到这个文件夹&…

SharePoint网站集备份与恢复

下面是操作过程&#xff1a;尝试三是成功的 尝试一&#xff1a;移动网站集&#xff08;无效&#xff09; 向Web应用程序新增了一个数据库&#xff0c;把网站集迁移到新数据库里&#xff1b; Get-SPSite -ContentDatabase <SourceContentDb> | Move-SPSite -Destination…

【机器学习】 - 使用dlib进行人脸定位,人脸检测,给人脸图片戴口罩

detector dlib.get_frontal_face_detector() 功能&#xff1a;人脸检测画框 参数&#xff1a;无 返回值&#xff1a;默认的人脸检测器 faces detector(img_gray, 0) 功能&#xff1a;对图像画人脸框 参数&#xff1a;img_gray&#xff1a;输入的图片 返回值&#xff1a;人脸…

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1 Sharepoint服务是Sharepoint的重要组成&#xff0c;可以说Sharepoint的许多网站功能都是基于这些服务构架起来的。这里把Sharepoint服务的相关要点总结一下。 1、…

【机器学习】 - import cv2 opencv安装python

果然不出我所料&#xff0c;直接pip就出了很多奇奇怪怪的错误&#xff0c;还是用清华镜像吧 输入&#xff1a;pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple 安装完后&#xff0c;重启spyder即可使用。 下载方法2&#xff1a; 下载地址&#xff1a…

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 2

上一篇我们以问答的方式明确了Sharepoint服务的一些概念&#xff0c;这里我们重点来看两个方面:Sharepoint服务器构架对象模型以及Sharepoint 服务应用程序的某些拓扑结构 一、Sharepoint服务器构架对象模型 二、Sharepoint 服务应用程序的某些拓扑结构 Sharepoint 服务应用程…

【深度学习】 - MobileNet使用的可分离卷积

任何看过MobileNet架构的人都会遇到可分离卷积&#xff08;separable convolutions&#xff09;这个概念。但什么是“可分离卷积”&#xff0c;它与标准的卷积又有什么区别&#xff1f;可分离卷积主要有两种类型&#xff1a; 空间可分离卷积&#xff08;spatial separable con…

SharePoint 2010 WSP包部署过程中究竟发生什么?

在SharePoint 2010中&#xff0c;我们可以使用Visual Studio 2010轻松创建WSP包来安装Web Part&#xff0c; Event Handler&#xff0c; Application Page以及其他。非常方便&#xff0c;但是你有没有研究过在在整个过程中SharePoint究竟做了些什么&#xff1f;以下是我根据htt…

【机器学习】 - 目标检测 - VOC格式数据集介绍与自己制作

一、VOC数据集 PASCAL VOC 挑战赛主要有 Object Classification 、Object Detection、Object Segmentation、Human Layout、Action Classification 这几类子任务。每年都有新的数据集供参赛者进行训练。公布了2007和2012两年的数据集&#xff0c;分别称之为VOC2007和VOC2012&am…

【Python学习】win10+Anaconda3环境,安装phthon第三方库Jieba

一、介绍 jieba库是一款优秀的 Python 第三方中文分词库&#xff0c;jieba 支持三种分词模式&#xff1a;精确模式、全模式和搜索引擎模式&#xff0c;下面是三种模式的特点。 精确模式&#xff1a;试图将语句最精确的切分&#xff0c;不存在冗余数据&#xff0c;适合做文本分…

WebPart开发

Webpart的生命周期 1. 当一个包含WebPart的WSS站点页面被响应请求或者是它被提交到Server端的时候&#xff0c;这时WebPart生存周期开始了 2. OnInit 初始化&#xff0c;加载相关配置文件 (如WebPart任务面板上的属性&#xff0c;样式等配置信息) . 3. Loa…

【PAT甲级最新题解】PAT甲级2020.7月春季考试满分题解(附代码)

写在前面&#xff1a;这次题目虽然大多数是模拟题且不算难&#xff0c;但是题面其实不算友好&#xff0c;不少同学因为题目描述而错失满分。 A&#xff1a; 题意&#xff1a;给定一个数字串&#xff0c;问每一个前缀串是否是素数。 模拟题不多解释。 #include<cstdio>…

如何收缩超大的SharePoint_Config数据库

前言 在已经运行了2年多的SharePoint服务器上&#xff0c;发现SharePoint_Config的数据库文件越来越大&#xff0c;已经达到90几个GB&#xff0c;收缩可以减小20几个GB&#xff0c;但是一周以后又会恢复到90几个GB大小&#xff0c;甚是奇怪。 因为磁盘空间不足&#xff0c;一共…

SharePoint PowerShell命令系列

(1) Backup-SPSite & Restore-SPSite 这两条命令可能是大家最先接触的PowerShell命令了吧, 一个是备份网站集, 另一个是还原网站集. Backup-SPSite 例子 Backup-SPSite http://site_name -Path C:\Backup\site_name.bak 参数 Force: 覆盖现有备份NoSiteLock: 设置备份…