TensorFlow 1 version View source on GitHub

Randomly changes jpeg encoding quality for inducing jpeg noise.

    image, min_jpeg_quality, max_jpeg_quality, seed=None

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.0, 2.0, 3.0], 
      [4.0, 5.0, 6.0]], 
    [[7.0, 8.0, 9.0], 
      [10.0, 11.0, 12.0]]] 
tf.image.random_jpeg_quality(x, 75, 95) 
<tf.Tensor: shape=(2, 2, 3), dtype=float32, numpy=...> 


  • 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: An operation-specific seed. It will be used in conjunction with the graph-level seed to determine the real seeds that will be used in this operation. Please see the documentation of set_random_seed for its interaction with the graph-level random seed.


Adjusted image(s), same shape and DType as image.


  • ValueError: if min_jpeg_quality or max_jpeg_quality is invalid.