code: def autocontrast(image):
      """Implements Autocontrast function from PIL using TF ops.
  
      Args:
        image: A 3D uint8 tensor.
  
      Returns:
        The image after it has had autocontrast applied to it and will be of type
        uint8.
      """
  
      def scale_channel(image):
          """Scale the 2D image using the autocontrast rule."""
          # A possibly cheaper version can be done using cumsum/unique_with_counts
          # over the histogram values, rather than iterating over the entire image.
          # to compute mins and maxes.
          lo = tf.to_float(tf.reduce_min(image))
          hi = tf.to_float(tf.reduce_max(image))
  
          # Scale the image, making the lowest value 0 and the highest value 255.
          def scale_values(im):
              scale = 255.0 / (hi - lo)
              offset = -lo * scale
              im = tf.to_float(im) * scale + offset
              im = tf.clip_by_value(im, 0.0, 255.0)
              return tf.cast(im, tf.uint8)
  
          result = tf.cond(
              hi > lo, lambda: scale_values(image), lambda: image
          )
          return result
  
      # Assumes RGB for now.  Scales each channel independently
      # and then stacks the result.
      s1 = scale_channel(image[:, :, 0])
      s2 = scale_channel(image[:, :, 1])
      s3 = scale_channel(image[:, :, 2])
      image = tf.stack([s1, s2, s3], 2)
      return image
  
imports: import dataclasses
  import inspect
  import math
  import tensorflow.compat.v1
  from tensorflow_addons import image
label_desc: Use image node_id 16 for calling a global function with example usage: autocontrast(image) and returns: image, result, tf