太阳化层

[来源]

Solarization

keras.layers.Solarization(
    addition_factor=0.0, threshold_factor=0.0, value_range=(0, 255), seed=None, **kwargs
)

对图像中的每个像素应用 (max_value - pixel + min_value)

在没有 `threshold` 参数的情况下创建时,该层会对所有值执行太阳化。在指定了 `threshold` 参数的情况下创建时,该层仅增强高于 `threshold` 值的像素。

参数

  • addition_factor: (可选)两个浮点数或单个浮点数的元组,介于 0 和 1 之间。对于每个增强图像,从提供的范围内采样一个值。如果传递的是浮点数,则范围被解释为 (0, addition_factor)。如果指定,则此值(乘以输入图像的值范围,例如 255)在太阳化和阈值化之前添加到每个像素。默认为 0.0。
  • threshold_factor: (可选)两个浮点数或单个浮点数的元组。对于每个增强图像,从提供的范围内采样一个值。如果传递的是浮点数,则范围被解释为 (0, threshold_factor)。如果指定,则只有高于此阈值的像素值才会被太阳化。
  • value_range: 包含两个元素的元组或列表。第一个值表示输入图像中值的较低边界,第二个值表示较高的边界。传递到该层的图像应具有 `value_range` 内的值。要传递的典型值是 (0, 255)(RGB 图像)或 (0., 1.)(缩放图像)。
  • seed: 整数。用于创建随机种子。
  • **kwargs: 基础层关键字参数,例如 `name` 和 `dtype`。

示例

(images, labels), _ = keras.datasets.cifar10.load_data()
print(images[0, 0, 0])
# [59 62 63]
# Note that images are Tensor with values in the range [0, 255]
solarization = Solarization(value_range=(0, 255))
images = solarization(images)
print(images[0, 0, 0])
# [196, 193, 192]