class_docstr: Apply Random color distortions to the input image.
  There are multiple different ways of applying these distortions.
  This implementation follows SimCLR - https://arxiv.org/abs/2002.05709
  It randomly distorts the hue, saturation, brightness of an image and can
  randomly convert the image to grayscale.
docstr: Instantiates ImgPilColorDistortion from configuration.
  
  Args:
      config (Dict): arguments for for the transform
  
  Returns:
      ImgPilColorDistortion instance.
code: def from_config(
      cls, config: Dict[str, Any]
  ) -> "ImgPilColorDistortion":
      """
      Instantiates ImgPilColorDistortion from configuration.
  
      Args:
          config (Dict): arguments for for the transform
  
      Returns:
          ImgPilColorDistortion instance.
      """
      strength = config.get("strength", 1.0)
      logging.info(
          f"ImgPilColorDistortion | Using strength: {strength}"
      )
      return cls(strength=strength)
  
file_path: vissl/vissl/data/ssl_transforms/img_pil_color_distortion.py
imports: import logging
  from typing import Any, Dict
  import torchvision.transforms
  from classy_vision.dataset.transforms import register_transform
  from classy_vision.dataset.transforms.classy_transform import ClassyTransform
label_desc: Use image node_id 3 for calling the ImgPilColorDistortion obj's underlying member method code with example usage: obj.from_config(cls, config) and returns: cls