RandomGrayscale 图层

[source]

RandomGrayscale

keras.layers.RandomGrayscale(factor=0.5, data_format=None, seed=None, **kwargs)

用于将 RGB 图像随机转换为灰度的预处理图层。

此图层使用指定的因子随机将输入图像转换为灰度图像。应用后,它会保持原始通道数,但将所有通道设置为相同的灰度值。这对于数据增强和训练对颜色变化具有鲁棒性的模型非常有用。

转换使用标准的 RGB 到灰度转换系数来保留原始彩色图像的感知亮度。未被选中进行转换的图像保持不变。

注意: 此图层可以安全地在 tf.data 管道内使用(与您使用的后端无关)。

参数

  • factor: 介于 0 和 1 之间的浮点数,指定将每个图像转换为灰度的因子。默认为 0.5。值为 1.0 表示所有图像都将转换,而 0.0 表示没有图像将被转换。
  • data_format: 字符串,可以是 "channels_last" (默认) 或 "channels_first"。输入中维度的顺序。"channels_last" 对应于形状为 (batch, height, width, channels) 的输入,而 "channels_first" 对应于形状为 (batch, channels, height, width) 的输入。

输入形状

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

输出形状

与输入形状相同。即使对于灰度转换的图像(其中所有通道将具有相同的值),输出也保持与输入相同的通道数。