code: def __call__(self, image, label):
      temp_scale = (
          self.scale[0]
          + (self.scale[1] - self.scale[0]) * random.random()
      )
      temp_aspect_ratio = 1.0
      if self.aspect_ratio is not None:
          temp_aspect_ratio = (
              self.aspect_ratio[0]
              + (self.aspect_ratio[1] - self.aspect_ratio[0])
              * random.random()
          )
          temp_aspect_ratio = math.sqrt(temp_aspect_ratio)
      scale_factor_x = temp_scale * temp_aspect_ratio
      scale_factor_y = temp_scale / temp_aspect_ratio
      image = cv2.resize(
          image,
          None,
          fx=scale_factor_x,
          fy=scale_factor_y,
          interpolation=cv2.INTER_LINEAR,
      )
      label = cv2.resize(
          label,
          None,
          fx=scale_factor_x,
          fy=scale_factor_y,
          interpolation=cv2.INTER_NEAREST,
      )
      return image, label
  
imports: import random
  import math
  import numpy
  import numbers
  import collections
  import cv2
  import torch
  import time
label_desc: Use image node_id 2 for calling the RandScale obj's underlying member method code with example usage: obj.__call__(image, label) and returns: image,  label