Keras 3 API 文档 / 层 API / 预处理层 / 图像增强层 / RandomTranslation 层

随机平移层

[源]

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。默认情况下,该层将输出浮点数。

输入形状

3D(非批量)或 4D(批量)张量,形状为:采用 "channels_last" 格式的 (..., height, width, channels),或采用 "channels_first" 格式的 (..., channels, height, width)

输出形状

3D(非批量)或 4D(批量)张量,形状为:(..., target_height, target_width, channels),或采用 "channels_first" 格式的 (..., channels, target_height, target_width)

注意:该层可以安全地在 tf.data 管线中使用(无论您使用哪个后端)。

参数

  • 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"(常数)、"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"
  • interpolation(插值):插值模式。支持的值:"nearest"(最近邻)、"bilinear"(双线性)。
  • seed(种子):整数。用于创建随机种子。
  • fill_value(填充值):当 fill_mode="constant" 时,表示用于填充边界之外的值的浮点数。
  • data_format(数据格式):字符串,可以是 "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"
  • **kwargs:基础层关键字参数,例如 namedtype