class_docstr: Randomly crop a tensor image and its boxes
  
  Args:
  ----
      scale: tuple of floats, relative (min_area, max_area) of the crop
      ratio: tuple of float, relative (min_ratio, max_ratio) where ratio = h/w
code: def __call__(
      self, img: Any, target: Dict[str, np.ndarray]
  ) -> Tuple[Any, Dict[str, np.ndarray]]:
      scale = random.uniform(self.scale[0], self.scale[1])
      ratio = random.uniform(self.ratio[0], self.ratio[1])
      # Those might overflow
      crop_h = math.sqrt(scale * ratio)
      crop_w = math.sqrt(scale / ratio)
      xmin, ymin = random.uniform(0, 1 - crop_w), random.uniform(
          0, 1 - crop_h
      )
      xmax, ymax = xmin + crop_w, ymin + crop_h
      # Clip them
      xmin, ymin = max(xmin, 0), max(ymin, 0)
      xmax, ymax = min(xmax, 1), min(ymax, 1)
  
      croped_img, crop_boxes = F.crop_detection(
          img, target["boxes"], (xmin, ymin, xmax, ymax)
      )
      return croped_img, dict(boxes=crop_boxes)
  
imports: import math
  import random
  from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  import numpy
  from doctr.utils.repr import NestedObject
  from ..None import functional
label_desc: Use image node_id 3 for calling the RandomCrop obj's underlying member method code with example usage: obj.__call__(img, target) and returns: croped_img,  dict