RandomShear 层

[源代码]

RandomShear

keras.layers.RandomShear(
    x_factor=0.0,
    y_factor=0.0,
    interpolation="bilinear",
    fill_mode="reflect",
    fill_value=0.0,
    data_format=None,
    seed=None,
    **kwargs
)

一个预处理层,用于对图像随机应用剪切变换。

该层在 x 轴和/或 y 轴方向上,按照指定范围内随机选择的因子对输入图像进行剪切。剪切变换独立应用于批次中的每个图像。变换过程中产生的空白区域会根据 fill_modefill_value 参数进行填充。

参数

  • x_factor: 包含两个浮点数的元组。对于每个增强的图像,将从提供的范围中采样一个值。如果传递的是浮点数,则范围将被解释为 (0, x_factor)。值表示图像要剪切的百分比。例如,0.3 表示将像素剪切图像宽度的 30%。所有提供的值都应为正数。
  • y_factor: 包含两个浮点数的元组。对于每个增强的图像,将从提供的范围中采样一个值。如果传递的是浮点数,则范围将被解释为 (0, y_factor)。值表示图像要剪切的百分比。例如,0.3 表示将像素剪切图像高度的 30%。所有提供的值都应为正数。
  • interpolation: 插值模式。支持的值:"nearest", "bilinear"
  • 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"
  • fill_value: 一个浮点数,表示当 fill_mode="constant" 时,在边界外填充的值。
  • seed: 整数。用于创建随机种子。