中心裁剪层

[源代码]

CenterCrop

keras.layers.CenterCrop(height, width, data_format=None, **kwargs)

一个用于裁剪图像的预处理层。

此层将图像的中心部分裁剪到目标大小。如果图像小于目标大小,它将被调整大小并裁剪,以便返回图像中与目标纵横比匹配的最大可能窗口。

输入像素值可以是任何范围(例如 [0., 1.)[0, 255])。

输入形状

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

输出形状

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

如果输入高度/宽度为偶数,而目标高度/宽度为奇数(或反之),则输入图像会在左侧填充 1 个像素。

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

参数

  • height:整数,输出形状的高度。
  • width:整数,输出形状的宽度。
  • 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"