随机平移层

[source]

RandomTranslation class

keras.layers.RandomTranslation(
    height_factor,
    width_factor,
    fill_mode="reflect",
    interpolation="bilinear",
    seed=None,
    fill_value=0.0,
    data_format=None,
    **kwargs
)

一个在训练期间随机平移图像的预处理层.

该层将在训练期间对每个图像应用随机平移,根据 fill_mode 填充空白区域.

输入像素值可以是任何范围(例如 [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" 格式中.

注意: 该层在 tf.data 管道中使用是安全的(与您使用的后端无关).

参数: height_factor: 一个表示为值的分数的浮点数,或一个表示垂直平移上下限的大小为 2 的元组.负值表示向上平移图像,正值表示向下平移图像.当表示为一个正浮点数时,该值用于上下限.例如,height_factor=(-0.2, 0.3) 会导致输出在 [-20%, +30%] 范围内随机平移.height_factor=0.2 会导致输出高度在 [-20%, +20%] 范围内随机平移. width_factor: 一个表示为值的分数的浮点数,或一个表示水平平移上下限的大小为 2 的元组.负值表示向左平移图像,正值表示向右平移图像.当表示为一个正浮点数时,该值用于上下限.例如,width_factor=(-0.2, 0.3) 会导致输出向左平移 20%,向右平移 30%.width_factor=0.2 会导致输出高度向左或向右平移 20%. fill_mode: 根据给定模式填充输入边界外的点.可用方法有 "constant""nearest""wrap""reflect".默认为 "constant". - "reflect": (d c b a | a b c d | d c b a) 输入通过在最后一个像素的边缘反射来扩展. - "constant": (k k k k | a b c d | k k k k) 输入通过用 fill_value 指定的相同常量值 k 填充超出边缘的所有值来扩展. - "wrap": (a b c d | a b c d | a b c d) 输入通过环绕到相反边缘来扩展. - "nearest": (a a a a | a b c d | d d d d) 输入通过最近的像素扩展. 注意,当使用 torch 后端时,"reflect" 重定向到 "mirror" (c d c b | a b c d | c b a b),因为 torch 不支持 "reflect". 注意,torch 后端不支持 "wrap". interpolation: 插值模式.支持的值:"nearest""bilinear". seed: 整数.用于创建随机种子. fill_value: 一个浮点数,表示当 fill_mode="constant" 时填充边界外区域的值. data_format: 字符串,"channels_last""channels_first".输入中维度的顺序."channels_last" 对应于形状为 (batch, height, width, channels) 的输入,而 "channels_first" 对应于形状为 (batch, channels, height, width) 的输入.它默认为在 ~/.keras/keras.json 中的 image_data_format 值.如果您从未设置它,那么它将是 "channels_last". **kwargs: 基础层的键值对参数,例如 namedtype.