RandomTranslation
類別keras.layers.RandomTranslation(
height_factor,
width_factor,
fill_mode="reflect",
interpolation="bilinear",
seed=None,
fill_value=0.0,
data_format=None,
**kwargs
)
一個在訓練期間隨機平移圖像的預處理層。
此層將在訓練期間對每個圖像應用隨機平移,並根據 fill_mode
填充空白區域。
輸入像素值可以是任何範圍(例如 [0., 1.)
或 [0, 255]
),並且可以是整數或浮點數 dtype。預設情況下,該層會輸出浮點數。
輸入形狀
形狀為 (..., height, width, channels)
的 3D(未批次)或 4D(已批次)張量,採用 "channels_last"
格式,或形狀為 (..., channels, height, width)
的 3D(未批次)或 4D(已批次)張量,採用 "channels_first"
格式。
輸出形狀
形狀為 (..., target_height, target_width, channels)
的 3D(未批次)或 4D(已批次)張量,或形狀為 (..., channels, target_height, target_width)
的 3D(未批次)或 4D(已批次)張量,採用 "channels_first"
格式。
注意:此層可以在 tf.data
管道內安全使用(與您使用的後端無關)。
引數
height_factor=(-0.2, 0.3)
會產生在範圍 [-20%, +30%]
內隨機平移的輸出。height_factor=0.2
會產生在範圍 [-20%, +20%]
內隨機平移的輸出高度。width_factor=(-0.2, 0.3)
會產生向左平移 20% 和向右平移 30% 的輸出。width_factor=0.2
會產生向左或向右平移 20% 的輸出高度。"constant"
、"nearest"
、"wrap"
和 "reflect"
。預設值為 "constant"
。"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)
輸入通過使用 fill_value
指定的相同常數值 k 來填充邊緣之外的所有值來擴展。"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)
輸入通過最近的像素來擴展。請注意,當使用 torch 後端時,"reflect"
會被重定向到 "mirror"
(c d c b | a b c d | c b a b)
,因為 torch 不支援 "reflect"
。請注意,torch 後端不支援 "wrap"
。"nearest"
、"bilinear"
。fill_mode="constant"
時要填充到邊界之外的值。"channels_last"
或 "channels_first"
。輸入中維度的順序。"channels_last"
對應於形狀為 (batch, height, width, channels)
的輸入,而 "channels_first"
對應於形狀為 (batch, channels, height, width)
的輸入。它預設為在您的 Keras 設定檔 ~/.keras/keras.json
中找到的 image_data_format
值。如果您從未設定它,則它將為 "channels_last"
。name
和 dtype
。