code: def test_img_pil_to_multicrop(self) -> None:
      torch.cuda.manual_seed(0)
  
      transform = ImgPilToMultiCrop(
          total_num_crops=8,
          num_crops=[2, 6],
          size_crops=[224, 96],
          crop_scales=[[0.14, 1], [0.05, 0.14]],
      )
  
      image = torch.randn(size=(3, 256, 256))
      image = Image.fromarray(image.numpy(), mode="RGB")
      crops = transform(image)
      self.assertEqual(8, len(crops))
      for crop in crops[:2]:
          self.assertEqual((224, 224), crop.size)
      for crop in crops[2:]:
          self.assertEqual((96, 96), crop.size)
  
file_path: vissl/tests/test_transforms.py
imports: import unittest
  import numpy
  import torch
  from PIL import Image
  from torchvision.transforms import Compose, ToTensor
  from vissl.data.ssl_transforms.img_pil_to_multicrop import ImgPilToMultiCrop
  from vissl.data.ssl_transforms.img_pil_to_tensor import ImgToTensor
  from vissl.data.ssl_transforms.mnist_img_pil_to_rgb_mode import MNISTImgPil2RGB
  from vissl.utils.hydra_config import compose_hydra_configuration, convert_to_attrdict
  from vissl.utils.test_utils import augly_test, gpu_test, in_temporary_directory, run_integration_test
label_desc: Use image node_id 3 for calling the TestTransform obj's underlying member method code with example usage: obj.test_img_pil_to_multicrop() without return types