code: def imsave(path, img, channel_first=False, as_uint16=False, auto_scale=True, **kwargs):
      
  
      backend_manager.module.imsave(
          path, img, channel_first=channel_first, as_uint16=as_uint16, auto_scale=auto_scale, **kwargs)
docs: Save ``img`` to the file specified by ``path``.
      As default, the shape of ``img`` has to be (height, width, channel).
  
      Args:
          path (str): Output path.
          img (numpy.ndarray):
              Input image.
              All pixel values must be positive and in the range [0, 255] of int for uint8, [0, 65535] of int for uint16 or [0, 1] for float.
              When you pass float image, you must set `auto_scale` as True (If not, exception will be raised).
              If img with negative values is passed as input, exception will be raised.
          channel_first (bool):
              If True, you can input the image whose shape is (channel, height, width). Default is False.
          as_uint16 (bool):
              If True, cast image to uint16 before save. Default is False.
          auto_scale (bool):
              Whether the range of pixel values are scaled up or not.
              The range of upscaled pixel values depends on output dtype, which is [0, 255] as uint8 and [0, 65535] as uint16.