tf.keras.layers.RandomFlip

A preprocessing layer which randomly flips images during training.

Inherits From: Layer, Module

This layer will flip the images horizontally and or vertically based on the mode attribute. During inference time, the output will be identical to input. Call the layer with training=True to flip the input.

Input pixel values can be of any range (e.g. [0., 1.) or [0, 255]) and of interger or floating point dtype. By default, the layer will output floats.

For an overview and full list of preprocessing layers, see the preprocessing guide.

3D unbatched) or 4D (batched) tensor with shape

(..., height, width, channels), in "channels_last" format.

3D unbatched) or 4D (batched) tensor with shape

(..., height, width, channels), in "channels_last" format.

mode String indicating which flip mode to use. Can be "horizontal", "vertical", or "horizontal_and_vertical". Defaults to "horizontal_and_vertical". "horizontal" is a left-right flip and "vertical" is a top-bottom flip.
seed Integer. Used to create a random seed.

auto_vectorize Control whether automatic vectorization occurs.

By default the call() method leverages the tf.vectorized_map() function. Auto-vectorization can be disabled by setting self.auto_vectorize = False in your __init__() method. When disabled, call() instead relies on tf.map_fn(). For example:

class SubclassLayer(BaseImageAugmentationLayer):
  def __init__(self):
    super().__init__()
    self.auto_vectorize = False