class_docstr: SolarizeAdd images. For each pixel in the image that is less than 128,
  add an additional amount to it decided by the magnitude.
  
  Required Keys:
  
  - img
  
  Modified Keys:
  
  - img
  
  Args:
      prob (float): The probability for performing SolarizeAdd
          transformation. Defaults to 1.0.
      level (int, optional): Should be in range [0,_MAX_LEVEL].
          If level is None, it will generate from [0, _MAX_LEVEL] randomly.
          Defaults to None.
      min_mag (float): The minimum magnitude for SolarizeAdd transformation.
          Defaults to 0.0.
      max_mag (float): The maximum magnitude for SolarizeAdd transformation.
          Defaults to 110.0.
code: def __init__(
      self,
      prob: float = 1.0,
      level: Optional[int] = None,
      min_mag: float = 0.0,
      max_mag: float = 110.0,
  ) -> None:
      assert 0.0 <= min_mag <= 110.0, (
          f"min_mag for SolarizeAdd should be "
          f"in range [0, 110], got {min_mag}."
      )
      assert 0.0 <= max_mag <= 110.0, (
          f"max_mag for SolarizeAdd should be "
          f"in range [0, 110], got {max_mag}."
      )
      super().__init__(
          prob=prob, level=level, min_mag=min_mag, max_mag=max_mag
      )
  
imports: import math
  from typing import Optional
  import mmcv
  import numpy
  from mmcv.transforms import BaseTransform
  from mmcv.transforms.utils import cache_randomness
  from mmdet.registry import TRANSFORMS
  from .augment_wrappers import _MAX_LEVEL, level_to_mag
label_desc: Use image node_id 1 to create a new SolarizeAdd object from inherited base classes: ColorTransform with example: obj = SolarizeAdd(prob, level, min_mag, max_mag)