Keras 2 API 文件 / 層 API / 預處理層 / 影像增強層 / RandomTranslation 層

RandomTranslation 層

[來源]

RandomTranslation 類別

tf_keras.layers.RandomTranslation(
    height_factor,
    width_factor,
    fill_mode="reflect",
    interpolation="bilinear",
    seed=None,
    fill_value=0.0,
    **kwargs
)

一個在訓練期間隨機平移影像的預處理層。

此層將在訓練期間對每個影像套用隨機平移,並根據 fill_mode 填充空白空間。

輸入像素值可以是任何範圍 (例如 [0., 1.)[0, 255]),且可以是整數或浮點數 dtype。依預設,該層將輸出浮點數。

如需預處理層的概述和完整列表,請參閱預處理指南

引數

  • height_factor:以值的比例表示的浮點數,或大小為 2 的元組,表示垂直平移的下限和上限。負值表示向上平移影像,而正值表示向下平移影像。當表示為單個正浮點數時,此值將用於上限和下限。例如,height_factor=(-0.2, 0.3) 會產生在範圍 [-20%, +30%] 內隨機平移的輸出。height_factor=0.2 會產生在範圍 [-20%, +20%] 內隨機平移的輸出高度。
  • width_factor:以值的比例表示的浮點數,或大小為 2 的元組,表示水平平移的下限和上限。負值表示向左平移影像,而正值表示向右平移影像。當表示為單個正浮點數時,此值將用於上限和下限。例如,width_factor=(-0.2, 0.3) 會產生向左平移 20% 並向右平移 30% 的輸出。width_factor=0.2 會產生向左或向右平移 20% 的輸出高度。
  • fill_mode:輸入邊界以外的點會根據給定的模式({"constant", "reflect", "wrap", "nearest"} 其中之一)填充。
    • reflect(d c b a | a b c d | d c b a) 輸入會透過關於最後一個像素邊緣的反射來延伸。
    • constant(k k k k | a b c d | k k k k) 輸入會透過用相同的常數值 k = 0 填充邊緣以外的所有值來延伸。
    • wrap(a b c d | a b c d | a b c d) 輸入會透過環繞到相反的邊緣來延伸。
    • nearest(a a a a | a b c d | d d d d) 輸入會透過最近的像素來延伸。
  • interpolation:插值模式。支援的值:"nearest""bilinear"
  • seed:整數。用於建立隨機種子。
  • fill_value:當 fill_mode="constant" 時,表示在邊界之外填充的值的浮點數。

輸入形狀

具有形狀 (..., height, width, channels) 的 3D (未批次化) 或 4D (批次化) 張量,採用 "channels_last" 格式。

輸出形狀

具有形狀 (..., height, width, channels) 的 3D (未批次化) 或 4D (批次化) 張量,採用 "channels_last" 格式。