class_docstr: Randomly selects a rectangle region in an image and erases its pixels.
      'Random Erasing Data Augmentation' by Zhong et al.
      See https://arxiv.org/pdf/1708.04896.pdf
  
      This variant of RandomErasing is intended to be applied to either a batch
      or single image tensor after it has been normalized by dataset mean and std.
  Args:
       probability: Probability that the Random Erasing operation will be performed.
       min_area: Minimum percentage of erased area wrt input image area.
       max_area: Maximum percentage of erased area wrt input image area.
       min_aspect: Minimum aspect ratio of erased area.
       mode: pixel color mode, one of 'const', 'rand', or 'pixel'
          'const' - erase block is constant color of 0 for all channels
          'rand'  - erase block is same per-channel random (normal) color
          'pixel' - erase block is per-pixel random (normal) color
      max_count: maximum number of erasing blocks per image, area per box is scaled by count.
          per-image count is randomly chosen between 1 and this value.
code: def __call__(self, input):
      if len(input.size()) == 3:
          self._erase(input, *input.size(), input.dtype)
      else:
          batch_size, chan, img_h, img_w = input.size()
          # skip first slice of batch if num_splits is set (for clean portion of samples)
          batch_start = (
              batch_size // self.num_splits
              if self.num_splits > 1
              else 0
          )
          for i in range(batch_start, batch_size):
              self._erase(input[i], chan, img_h, img_w, input.dtype)
      return input
  
file_path: pytorch-image-models/timm/data/random_erasing.py
imports: import random
  import math
  import torch
label_desc: Use image node_id 3 for calling the RandomErasing obj's underlying member method code with example usage: obj.__call__(input) and returns: input