tf.keras.layers.RandomInvert

Preprocessing layer for random inversion of image colors.

Inherits From: Layer, Operation

This layer randomly inverts the colors of input images with a specified
probability range. When applied, each image has a chance of having its
colors inverted, where the pixel values are transformed to their
complementary values. Images that are not selected for inversion
remain unchanged.

Note: This layer is safe to use inside a <a href="../../../tf/data"><code>tf.data</code></a> or `grain` pipeline
(independently of which backend you're using).

Args:
    factor: A single float or a tuple of two floats.
        `factor` controls the probability of inverting the image colors.
        If a tuple is provided, the value is sampled between the two values
        for each image, where `factor[0]` is the minimum and `factor[1]` is
        the maximum probability. If a single float is provided, a value
        between `0.0` and the provided float is sampled.
        Defaults to `(0, 1)`.
    value_range: a tuple or a list of two elements. The first value
        represents the lower bound for values in passed images, the second
        represents the upper bound. Images passed to the layer should have
        values within `value_range`. Defaults to `(0, 255)`.
    seed: Integer. Used to create a random seed.

Example:
layer = keras.layers.RandomInvert(value_range=(0, 255))
images = np.random.randint(0, 255, (8, 224, 224, 3), dtype="uint8")

labels = keras.ops.one_hot(
    np.array([0, 1, 2, 0, 1, 2, 0, 1]),
    num_classes=3
)

segmentation_masks = np.random.randint(0, 3, (8, 224, 224, 1), dtype="uint8")

output = layer(
    {
        "images": images,
        "labels": labels,
        "segmentation_masks": segmentation_masks
    },
    training=True
)

input Retrieves the input tensor(s) of a symbolic operation.

Only returns the tensor(s) corresponding to the first time the operation was called.

output Retrieves the output tensor(s) of a layer.

Only returns the tensor(s) corresponding to the first time the operation was called.

Methods

convert_weight

View source

Convert the weight if it is from the a different backend.

from_config

View source

Creates an operation from its config.

This method is the reverse of get_config, capable of instantiating the same operation from the config dictionary.

if "dtype" in config and isinstance(config["dtype"], dict):
    policy = dtype_policies.deserialize(config["dtype"])

Args
config A Python dictionary, typically the output of get_config.

Returns
An operation instance.

get_random_transformation

View source

transform_bounding_boxes

View source

transform_images

View source

transform_labels

View source

transform_segmentation_masks

View source

transform_single_bounding_box

View source

transform_single_image

View source

transform_single_label

View source

transform_single_segmentation_mask

View source