当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.keras.layers.RandomZoom用法及代码示例


在训练期间随机缩放图像的预处理层。

继承自:LayerModule

用法

tf.keras.layers.RandomZoom(
    height_factor, width_factor=None, fill_mode='reflect',
    interpolation='bilinear', seed=None, fill_value=0.0, **kwargs
)

参数

  • height_factor 表示为值的分数的浮点数,或大小为 2 的元组,表示垂直缩放的下限和上限。当表示为单个浮点数时,此值用于上限和下限。正值表示缩小,而负值表示放大。例如,height_factor=(0.2, 0.3) 导致输出在 [+20%, +30%] 范围内随机缩小。 height_factor=(-0.3, -0.2) 导致输出在 [+20%, +30%] 范围内随机放大。
  • width_factor 表示为值的分数的浮点数,或大小为 2 的元组,表示水平缩放的下限和上限。当表示为单个浮点数时,此值用于上限和下限。例如,width_factor=(0.2, 0.3) 导致输出缩小 20% 到 30%。 width_factor=(-0.3, -0.2) 导致输出放大 20% 到 30%。默认为 None ,即通过保持纵横比缩放垂直和水平方向。
  • fill_mode 输入边界之外的点根据给定的模式填充(其中之一{"constant", "reflect", "wrap", "nearest"})。
    • 反映(d c b a | a b c d | d c b a)通过反射最后一个像素的边来扩展输入。
    • 常量(k k k k | a b c d | k k k k)通过用相同的常数 k = 0 填充边以外的所有值来扩展输入。
    • 包裹(a b c d | a b c d | a b c d)通过环绕到相对边来扩展输入。
    • 最近的(a a a a | a b c d | d d d d)输入由最近的像素扩展。
  • interpolation 插值模式。支持的值:"nearest" , "bilinear"
  • seed 整数。用于创建随机种子。
  • fill_value 浮点数表示 fill_mode="constant" 时要在边界外填充的值。

该层将在图像的每个轴上独立地随机放大或缩小,根据 fill_mode 填充空白空间。

输入像素值可以是任何范围(例如 [0., 1.)[0, 255] ),并且可以是整数或浮点数据类型。默认情况下,图层将输出浮点数。

有关预处理层的概述和完整列表,请参阅预处理指南。

例子:

input_img = np.random.random((32, 224, 224, 3))
layer = tf.keras.layers.RandomZoom(.5, .2)
out_img = layer(input_img)
out_img.shape
TensorShape([32, 224, 224, 3])

输入形状:

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

输出形状:

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

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.keras.layers.RandomZoom。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。