code: def gamma_transform(img, gamma):
      if img.dtype == np.uint8:
          table = (np.arange(0, 256.0 / 255, 1.0 / 255) ** gamma) * 255
          img = cv2.LUT(img, table.astype(np.uint8))
      else:
          img = np.power(img, gamma)
  
      return img
  
imports: from __future__ import division
  from typing import Optional, Sequence, Union
  from warnings import warn
  import cv2
  import numpy
  import skimage
  from albumentations import random_utils
  from albumentations.augmentations.utils import MAX_VALUES_BY_DTYPE, _maybe_process_in_chunks, clip, clipped, ensure_contiguous, is_grayscale_image, is_rgb_image, non_rgb_warning, preserve_channel_dim, preserve_shape
label_desc: Use image node_id 29 for calling a global function with example usage: gamma_transform(img, gamma) and returns: img