Keras 3 API 文档 / KerasCV / / 增强层 / 随机剪切层

随机剪切层

[源代码]

RandomShear

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

一个对图像随机剪切的预处理层。

此层将对每个图像应用随机剪切,根据 fill_mode 填充空白区域。

输入像素值可以是任何范围和任何数据类型。

输入形状

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

输出形状

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

参数

  • x_factor: 两个浮点数的元组、单个浮点数或 keras_cv.FactorSampler。对于每个增强的图像,都会从提供的范围内采样一个值。如果传入浮点数,则该范围被解释为 (0, x_factor)。值表示图像上剪切像素的最大比例。例如,0.3 表示像素最多剪切到图像宽度的 30%。所有提供的值都应为正数。如果传入 None,则在 X 轴上不进行剪切。默认值为 None
  • y_factor: 两个浮点数的元组、单个浮点数或 keras_cv.FactorSampler。对于每个增强的图像,都会从提供的范围内采样一个值。如果传入浮点数,则该范围被解释为 (0, y_factor)。值表示图像上剪切像素的最大比例。例如,0.3 表示像素最多剪切到图像高度的 30%。所有提供的值都应为正数。如果传入 None,则在 Y 轴上不进行剪切。默认值为 None
  • interpolation: ImageProjectiveTransformV3 操作中使用的插值方法。支持的值为 "nearest""bilinear",默认值为 "bilinear"
  • fill_mode: ImageProjectiveTransformV3 操作中的填充模式。支持的值为 "reflect""wrap""constant""nearest"。默认值为 "reflect"
  • fill_value: ImageProjectiveTransformV3 操作中的填充值。float32 类型的 Tensor。当 fill_mode 为 “constant” 时要填充的值。默认值为 0.0
  • bounding_box_format: 输入数据集边界框的格式。有关支持的边界框格式的更多详细信息,请参考 https://github.com/keras-team/keras-cv/blob/master/keras_cv/bounding_box/converters.py。
  • seed: 整数。用于创建随机种子。