Images Reporting

The image_reporting.py example demonstrates reporting (uploading) images in several formats, including NumPy arrays, uint8, uint8 RGB, PIL Image objects, and local files.

ClearML uploads images to the bucket specified in the ClearML configuration file, or you can configure ClearML for image storage, see Logger.set_default_upload_destination (storage for artifacts is different). Set credentials for storage in the ClearML configuration file.

ClearML reports these images as debug samples in the ClearML Web UI, experiment details, RESULTS tab, DEBUG SAMPLES sub-tab.

When the script runs, it creates an experiment named image reporting, which is associated with the examples project.

Report images using the following formats by calling the Logger.report_image method.

  • Numpy arrays

  • uint8

  • uint8 RGB

  • PIL Image object

      # report image as float image
      m = np.eye(256, 256, dtype=np.float)
      Logger.current_logger().report_image("image", "image float", iteration=iteration, image=m)
    
      # report image as uint8
      m = np.eye(256, 256, dtype=np.uint8) * 255
      Logger.current_logger().report_image("image", "image uint8", iteration=iteration, image=m)
    
      # report image as uint8 RGB
      m = np.concatenate((np.atleast_3d(m), np.zeros((256, 256, 2), dtype=np.uint8)), axis=2)
      Logger.current_logger().report_image("image", "image color red", iteration=iteration, image=m)
    
      # report PIL Image object
      image_open = Image.open(os.path.join("data_samples", "picasso.jpg"))
      Logger.current_logger().report_image("image", "image PIL", iteration=iteration, image=image_open)
    

image

Double click a thumbnail and the image viewer opens.

image