class_docstr: Combination of transforms for training.
  Follow the style of https://github.com/facebookresearch/SlowFast/
      (1) random short side scale jittering
      (2) random crop
      (3) random horizontal flip
      (4) to tensor
      (5) normalize
class_docstr_tok: ["Combination","of","transforms","for","training",".","Follow","the","style","of","https",":","\/\/github.com\/facebookresearch\/SlowFast\/","(","1",")","random","short","side","scale","jittering","(","2",")","random","crop","(","3",")","random","horizontal","flip","(","4",")","to","tensor","(","5",")","normalize"]
code: def forward(self, clips):
      h, w, _ = clips[0].shape
  
      # step 1: random short side scale jittering
      size = int(round(np.random.uniform(self.min_size, self.max_size)))
      new_w = size
      new_h = size
      if w < h:
          new_h = int(math.floor((float(h) / w) * size))
      else:
          new_w = int(math.floor((float(w) / h) * size))
  
      # step 2: random crop
      h_off = 0
      if new_h > self.height:
          h_off = int(np.random.randint(0, new_h - self.height))
      w_off = 0
      if new_w > self.width:
          w_off = int(np.random.randint(0, new_w - self.width))
  
      # step 3: random horizontal flip
      is_flip = random.random() < self.prob
  
      new_clips = []
      for cur_img in clips:
          scale_img = self.cv2.resize(cur_img, (new_w, new_h))
          crop_img = scale_img[
              h_off : h_off + self.height, w_off : w_off + self.width, :
          ]
          if is_flip:
              flip_img = np.flip(crop_img, axis=1)
          else:
              flip_img = crop_img
          tensor_img = (
              np.transpose(flip_img, axes=(2, 0, 1))
              / self.max_intensity
          )
          new_clips.append((tensor_img - self.mean) / self.std)
      return new_clips
  
imports: from __future__ import division
  import random
  import math
  import numbers
  import numpy
  from mxnet.gluon import Block
label_desc: Use image node_id 2 for calling the VideoGroupTrainTransformV3 obj's underlying member method code with example usage: obj.forward(clips) and returns: new_clips