code: def __init__(
      self,
      input_size: int = 224,
      cj_prob: float = 0.8,
      cj_strength: float = 1.0,
      cj_bright: float = 0.4,
      cj_contrast: float = 0.4,
      cj_sat: float = 0.2,
      cj_hue: float = 0.1,
      min_scale: float = 0.08,
      random_gray_scale: float = 0.2,
      gaussian_blur: float = 1.0,
      solarization_prob: float = 0.0,
      kernel_size: Optional[float] = None,
      sigmas: Tuple[float, float] = (0.1, 2),
      vf_prob: float = 0.0,
      hf_prob: float = 0.5,
      rr_prob: float = 0.0,
      rr_degrees: Union[None, float, Tuple[float, float]] = None,
      normalize: Union[
          None, Dict[str, List[float]]
      ] = IMAGENET_NORMALIZE,
  ):
      color_jitter = T.ColorJitter(
          brightness=cj_strength * cj_bright,
          contrast=cj_strength * cj_contrast,
          saturation=cj_strength * cj_sat,
          hue=cj_strength * cj_hue,
      )
  
      transform = [
          T.RandomResizedCrop(size=input_size, scale=(min_scale, 1.0)),
          random_rotation_transform(
              rr_prob=rr_prob, rr_degrees=rr_degrees
          ),
          T.RandomHorizontalFlip(p=hf_prob),
          T.RandomVerticalFlip(p=vf_prob),
          T.RandomApply([color_jitter], p=cj_prob),
          T.RandomGrayscale(p=random_gray_scale),
          GaussianBlur(
              kernel_size=kernel_size, sigmas=sigmas, prob=gaussian_blur
          ),
          RandomSolarization(prob=solarization_prob),
          T.ToTensor(),
      ]
      if normalize:
          transform += [
              T.Normalize(mean=normalize["mean"], std=normalize["std"])
          ]
      self.transform = T.Compose(transform)
  
file_path: lightly/lightly/transforms/byol_transform.py
imports: from typing import Dict, List, Optional, Tuple, Union
  import torchvision.transforms
  from PIL.Image import Image
  from torch import Tensor
  from lightly.transforms.gaussian_blur import GaussianBlur
  from lightly.transforms.multi_view_transform import MultiViewTransform
  from lightly.transforms.rotation import random_rotation_transform
  from lightly.transforms.solarize import RandomSolarization
  from lightly.transforms.utils import IMAGENET_NORMALIZE
label_desc: Use image node_id 1 to create a new BYOLView1Transform object  with example: obj = BYOLView1Transform(input_size, cj_prob, cj_strength, cj_bright, cj_contrast, cj_sat, cj_hue, min_scale, random_gray_scale, gaussian_blur, solarization_prob, kernel_size, sigmas, vf_prob, hf_prob, rr_prob, rr_degrees, normalize)