code: def _convert_output_type_range(img, dst_type):
      """Convert the type and range of the image according to dst_type.
  
      It converts the image to desired type and range. If `dst_type` is np.uint8,
      images will be converted to np.uint8 type with range [0, 255]. If
      `dst_type` is np.float32, it converts the image to np.float32 type with
      range [0, 1].
      It is mainly used for post-processing images in colorspace conversion
      functions such as rgb2ycbcr and ycbcr2rgb.
  
      Args:
          img (ndarray): The image to be converted with np.float32 type and
              range [0, 255].
          dst_type (np.uint8 | np.float32): If dst_type is np.uint8, it
              converts the image to np.uint8 type with range [0, 255]. If
              dst_type is np.float32, it converts the image to np.float32 type
              with range [0, 1].
  
      Returns:
          (ndarray): The converted image with desired type and range.
      """
      if dst_type not in (np.uint8, np.float32):
          raise TypeError(
              "The dst_type should be np.float32 or np.uint8, "
              f"but got {dst_type}"
          )
      if dst_type == np.uint8:
          img = img.round()
      else:
          img /= 255.0
      return img.astype(dst_type)
  
file_path: lavis/lavis/common/annotator/uniformer/mmcv/image/colorspace.py
imports: import cv2
  import numpy
label_desc: Use image node_id 7 for calling a global function with example usage: _convert_output_type_range(img, dst_type) and returns: img