欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Keras中 ImageDataGenerator函數(shù)的參數(shù)用法

 更新時(shí)間:2020年07月03日 14:34:58   作者:ShellCollector  
這篇文章主要介紹了Keras中 ImageDataGenerator函數(shù)的參數(shù)用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

一、Keras ImageDataGenerator參數(shù)

from keras.preprocessing.image import ImageDataGenerator
keras.preprocessing.image.ImageDataGenerator(featurewise_center=False,
  samplewise_center=False,
  featurewise_std_normalization = False,
  samplewise_std_normalization = False,
  zca_whitening = False,
  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.0,
  horizontal_flip = False,
  vertical_flip = False,
  rescale = None,
  preprocessing_function = None,
  data_format = K.image_data_format(),
)

featurewise_center:布爾值,使輸入數(shù)據(jù)集去中心化(均值為0), 按feature執(zhí)行。

samplewise_center:布爾值,使輸入數(shù)據(jù)的每個(gè)樣本均值為0。

featurewise_std_normalization:布爾值,將輸入除以數(shù)據(jù)集的標(biāo)準(zhǔn)差以完成標(biāo)準(zhǔn)化, 按feature執(zhí)行。

samplewise_std_normalization:布爾值,將輸入的每個(gè)樣本除以其自身的標(biāo)準(zhǔn)差。

zca_whitening:布爾值,對(duì)輸入數(shù)據(jù)施加ZCA白化。

rotation_range:整數(shù),數(shù)據(jù)提升時(shí)圖片隨機(jī)轉(zhuǎn)動(dòng)的角度。隨機(jī)選擇圖片的角度,是一個(gè)0~180的度數(shù),取值為0~180。 在 [0, 指定角度] 范圍內(nèi)進(jìn)行隨機(jī)角度旋轉(zhuǎn)。

width_shift_range:浮點(diǎn)數(shù),圖片寬度的某個(gè)比例,數(shù)據(jù)提升時(shí)圖片隨機(jī)水平偏移的幅度。

height_shift_range:浮點(diǎn)數(shù),圖片高度的某個(gè)比例,數(shù)據(jù)提升時(shí)圖片隨機(jī)豎直偏移的幅度。 height_shift_range和width_shift_range是用來(lái)指定水平和豎直方向隨機(jī)移動(dòng)的程度,這是兩個(gè)0~1之間的比例。

shear_range:浮點(diǎn)數(shù),剪切強(qiáng)度(逆時(shí)針?lè)较虻募羟凶儞Q角度)。是用來(lái)進(jìn)行剪切變換的程度。

zoom_range:浮點(diǎn)數(shù)或形如[lower,upper]的列表,隨機(jī)縮放的幅度,若為浮點(diǎn)數(shù),則相當(dāng)于[lower,upper] = [1 - zoom_range, 1+zoom_range]。用來(lái)進(jìn)行隨機(jī)的放大。(后面的例子與此處說(shuō)法有矛盾,感覺(jué)后邊是對(duì)的?)

channel_shift_range:浮點(diǎn)數(shù),隨機(jī)通道偏移的幅度。

fill_mode:‘constant',‘nearest',‘reflect'或‘wrap'之一,當(dāng)進(jìn)行變換時(shí)超出邊界的點(diǎn)將根據(jù)本參數(shù)給定的方法進(jìn)行處理

cval:浮點(diǎn)數(shù)或整數(shù),當(dāng)fill_mode=constant時(shí),指定要向超出邊界的點(diǎn)填充的值。

horizontal_flip:布爾值,進(jìn)行隨機(jī)水平翻轉(zhuǎn)。隨機(jī)的對(duì)圖片進(jìn)行水平翻轉(zhuǎn),這個(gè)參數(shù)適用于水平翻轉(zhuǎn)不影響圖片語(yǔ)義的時(shí)候。

vertical_flip:布爾值,進(jìn)行隨機(jī)豎直翻轉(zhuǎn)。

rescale: 值將在執(zhí)行其他處理前乘到整個(gè)圖像上,我們的圖像在RGB通道都是0~255的整數(shù),這樣的操作可能使圖像的值過(guò)高或過(guò)低,所以我們將這個(gè)值定為0~1之間的數(shù)。

preprocessing_function: 將被應(yīng)用于每個(gè)輸入的函數(shù)。該函數(shù)將在任何其他修改之前運(yùn)行。該函數(shù)接受一個(gè)參數(shù),為一張圖片(秩為3的numpy array),并且輸出一個(gè)具有相同shape的numpy array

data_format:字符串,“channel_first”或“channel_last”之一,代表圖像的通道維的位置。該參數(shù)是Keras 1.x中的image_dim_ordering,“channel_last”對(duì)應(yīng)原本的“tf”,“channel_first”對(duì)應(yīng)原本的“th”。以128x128的RGB圖像為例,“channel_first”應(yīng)將數(shù)據(jù)組織為(3,128,128),而“channel_last”應(yīng)將數(shù)據(jù)組織為(128,128,3)。該參數(shù)的默認(rèn)值是~/.keras/keras.json中設(shè)置的值,若從未設(shè)置過(guò),則為“channel_last”。

二、Data Aumentation(數(shù)據(jù)擴(kuò)充)說(shuō)明

Data Aumentation(數(shù)據(jù)擴(kuò)充)指的是在使用以下或者其他方法增加數(shù)據(jù)輸入量。這里,我們特指圖像數(shù)據(jù)。

旋轉(zhuǎn) | 反射變換(Rotation/reflection): 隨機(jī)旋轉(zhuǎn)圖像一定角度; 改變圖像內(nèi)容的朝向;

翻轉(zhuǎn)變換(flip): 沿著水平或者垂直方向翻轉(zhuǎn)圖像;

縮放變換(zoom): 按照一定的比例放大或者縮小圖像;

平移變換(shift): 在圖像平面上對(duì)圖像以一定方式進(jìn)行平移;可以采用隨機(jī)或人為定義的方式指定平移范圍和平移步長(zhǎng), 沿水平或豎直方向進(jìn)行平移. 改變圖像內(nèi)容的位置;

尺度變換(scale): 對(duì)圖像按照指定的尺度因子, 進(jìn)行放大或縮小; 或者參照SIFT特征提取思想, 利用指定的尺度因子對(duì)圖像濾波構(gòu)造尺度空間. 改變圖像內(nèi)容的大小或模糊程度;

對(duì)比度變換(contrast): 在圖像的HSV顏色空間,改變飽和度S和V亮度分量,保持色調(diào)H不變. 對(duì)每個(gè)像素的S和V分量進(jìn)行指數(shù)運(yùn)算(指數(shù)因子在0.25到4之間), 增加光照變化;

噪聲擾動(dòng)(noise): 對(duì)圖像的每個(gè)像素RGB進(jìn)行隨機(jī)擾動(dòng), 常用的噪聲模式是椒鹽噪聲和高斯噪聲;

三、某些屬性測(cè)試

3.1 shear_range

datagen = image.ImageDataGenerator(shear_range=0.5)

shear_range就是錯(cuò)切變換,效果就是讓所有點(diǎn)的x坐標(biāo)(或者y坐標(biāo))保持不變,而對(duì)應(yīng)的y坐標(biāo)(或者x坐標(biāo))則按比例發(fā)生平移,且平移的大小和該點(diǎn)到x軸(或y軸)的垂直距離成正比。

如圖8所示,一個(gè)黑色矩形圖案變換為藍(lán)色平行四邊形圖案。狗狗圖片變換效果如圖9所示。

3.2 zoom_range

datagen = image.ImageDataGenerator(zoom_range=0.5)

zoom_range參數(shù)可以讓圖片在長(zhǎng)或?qū)挼姆较蜻M(jìn)行放大,可以理解為某方向的resize,因此這個(gè)參數(shù)可以是一個(gè)數(shù)或者是一個(gè)list。當(dāng)給出一個(gè)數(shù)時(shí),圖片同時(shí)在長(zhǎng)寬兩個(gè)方向進(jìn)行同等程度的放縮操作;當(dāng)給出一個(gè)list時(shí),則代表[width_zoom_range, height_zoom_range],即分別對(duì)長(zhǎng)寬進(jìn)行不同程度的放縮。而參數(shù)大于0小于1時(shí),執(zhí)行的是放大操作,當(dāng)參數(shù)大于1時(shí),執(zhí)行的是縮小操作。

參數(shù)大于0小于1時(shí),效果如圖10:

參數(shù)等于4時(shí),效果如圖11:

3.3 . fill_mode

datagen = image.ImageDataGenerator(fill_mode='wrap', zoom_range=[4, 4])

fill_mode為填充模式,如前面提到,當(dāng)對(duì)圖片進(jìn)行平移、放縮、錯(cuò)切等操作時(shí),圖片中會(huì)出現(xiàn)一些缺失的地方,那這些缺失的地方該用什么方式補(bǔ)全呢?就由fill_mode中的參數(shù)確定,包括:“constant”、“nearest”(默認(rèn))、“reflect”和“wrap”。這四種填充方式的效果對(duì)比如圖18所示,從左到右,從上到下分別為:“reflect”、“wrap”、“nearest”、“constant”。

以上這篇Keras中 ImageDataGenerator函數(shù)的參數(shù)用法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • sqlalchemy對(duì)象轉(zhuǎn)dict的示例

    sqlalchemy對(duì)象轉(zhuǎn)dict的示例

    這篇文章主要介紹了sqlalchemy對(duì)象轉(zhuǎn)dict的示例,需要的朋友可以參考下
    2014-04-04
  • 基于python的ini配置文件操作工具類(lèi)

    基于python的ini配置文件操作工具類(lèi)

    這篇文章主要為大家詳細(xì)介紹了基于python的ini配置文件操作工具類(lèi),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Python獲取svn版本信息

    Python獲取svn版本信息

    本文主要介紹了Python獲取svn版本信息,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 詳解Flask前后端分離項(xiàng)目案例

    詳解Flask前后端分離項(xiàng)目案例

    這篇文章主要介紹了Flask前后端分離項(xiàng)目案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • python實(shí)現(xiàn)AES和RSA加解密的方法

    python實(shí)現(xiàn)AES和RSA加解密的方法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)AES和RSA加解密的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Python上下文管理器Content Manager

    Python上下文管理器Content Manager

    在Python中,我們會(huì)經(jīng)常聽(tīng)到上下文管理器,那么上下文管理器到底是干什么的,本文就來(lái)介紹一下,感興趣的小伙伴們可以參考一下
    2021-06-06
  • Python腳本實(shí)現(xiàn)自動(dòng)登錄校園網(wǎng)

    Python腳本實(shí)現(xiàn)自動(dòng)登錄校園網(wǎng)

    今天給大家?guī)?lái)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著如何使用Python腳本實(shí)現(xiàn)自動(dòng)登錄校園網(wǎng)展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • 在Python中操作文件之read()方法的使用教程

    在Python中操作文件之read()方法的使用教程

    這篇文章主要介紹了在Python中操作文件之read()方法的使用教程,是Python入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Python+OpenCV之形態(tài)學(xué)操作詳解

    Python+OpenCV之形態(tài)學(xué)操作詳解

    這篇文章主要為大家詳細(xì)介紹了Python?OpenCV中的形態(tài)學(xué)操作(開(kāi)運(yùn)算、閉運(yùn)算)的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-09-09
  • Python實(shí)現(xiàn)切割mp3片段并降低碼率

    Python實(shí)現(xiàn)切割mp3片段并降低碼率

    MoviePy是一個(gè)基于Python的視頻編輯庫(kù),它提供了創(chuàng)建、編輯、合并、剪輯和轉(zhuǎn)換視頻的功能,所以本文主要介紹如何使用moviepy來(lái)分割音頻流并降低碼率,感興趣的可以了解下
    2023-08-08

最新評(píng)論