tf.image.stateless_random_jpeg_quality
Deterministically radomize jpeg encoding quality for inducing jpeg noise.
tf.image.stateless_random_jpeg_quality(
image, min_jpeg_quality, max_jpeg_quality, seed
)
Guarantees the same results given the same seed independent of how many times the function is called, and independent of global seed settings (e.g. tf.random.set_seed).
min_jpeg_quality must be in the interval [0, 100] and less than max_jpeg_quality. max_jpeg_quality must be in the interval [0, 100].
Usage Example:
x = [[[1, 2, 3],
[4, 5, 6]],
[[7, 8, 9],
[10, 11, 12]]]
x_uint8 = tf.cast(x, tf.uint8)
seed = (1, 2)
tf.image.stateless_random_jpeg_quality(x_uint8, 75, 95, seed)
<tf.Tensor: shape=(2, 2, 3), dtype=uint8, numpy=
array([[[ 0, 4, 5],
[ 1, 5, 6]],
[[ 5, 9, 10],
[ 5, 9, 10]]], dtype=uint8)>
| Args | |
|---|---|
image | 3D image. Size of the last dimension must be 1 or 3. |
min_jpeg_quality | Minimum jpeg encoding quality to use. |
max_jpeg_quality | Maximum jpeg encoding quality to use. |
seed | A shape [2] Tensor, the seed to the random number generator. Must have dtype int32 or int64. (When using XLA, only int32 is allowed.) |
| Returns | |
|---|---|
Adjusted image(s), same shape and DType as image. |
| Raises | |
|---|---|
ValueError | if min_jpeg_quality or max_jpeg_quality is invalid. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/image/stateless_random_jpeg_quality