class_docstr: Crop 10 regions from images.
  This is performed same as:
  http://chainercv.readthedocs.io/en/stable/reference/transforms.html#ten-crop
  
  This method crops 10 regions. All regions will be in shape
  :obj`size`. These regions consist of 1 center crop and 4 corner
  crops and horizontal flips of them.
  The crops are ordered in this order.
  * center crop
  * top-left crop
  * bottom-left crop
  * top-right crop
  * bottom-right crop
  * center crop (flipped horizontally)
  * top-left crop (flipped horizontally)
  * bottom-left crop (flipped horizontally)
  * top-right crop (flipped horizontally)
  * bottom-right crop (flipped horizontally)
  
  Parameters:
  ----------
  size : int
      height and width required by network input, e.g., (224, 224)
  
  Inputs:
      - **data**: a list of N frames with shape [H x W x C]
  
  Outputs:
      - **out**: a list of 10xN frames with shape [size x size x C]
class_docstr_tok: ["Crop","10","regions","from","images",".","This","is","performed","same","as",":","http",":","\/\/chainercv.readthedocs.io\/en\/stable\/reference\/transforms.html","#","ten-crop","This","method","crops","10","regions",".","All","regions","will","be","in","shape",":","obj","`","size","`",".","These","regions","consist","of","1","center","crop","and","4","corner","crops","and","horizontal","flips","of","them",".","The","crops","are","ordered","in","this","order",".","*","center","crop","*","top-left","crop","*","bottom-left","crop","*","top-right","crop","*","bottom-right","crop","*","center","crop","(","flipped","horizontally",")","*","top-left","crop","(","flipped","horizontally",")","*","bottom-left","crop","(","flipped","horizontally",")","*","top-right","crop","(","flipped","horizontally",")","*","bottom-right","crop","(","flipped","horizontally",")","Parameters",":","--","--","--","--","--","size",":","int","height","and","width","required","by","network","input",",","e.g.",",","(","224",",","224",")","Inputs",":","-","*","*","data","*","*",":","a","list","of","N","frames","with","shape","[","H","x","W","x","C","]","Outputs",":","-","*","*","out","*","*",":","a","list","of","10xN","frames","with","shape","[","size","x","size","x","C","]"]
code: def forward(self, clips):
      h, w, _ = clips[0].shape
      oh, ow = self.size
      if h < oh or w < ow:
          raise ValueError(
              "Cannot crop area {} from image with size \
              	({}, {})".format(
                  str(self.size), h, w
              )
          )
  
      new_clips = []
      for cur_img in clips:
          center = cur_img[
              (h - oh) // 2 : (h + oh) // 2,
              (w - ow) // 2 : (w + ow) // 2,
              :,
          ]
          tl = cur_img[0:oh, 0:ow, :]
          bl = cur_img[h - oh : h, 0:ow, :]
          tr = cur_img[0:oh, w - ow : w, :]
          br = cur_img[h - oh : h, w - ow : w, :]
          new_clips.append(center)
          new_clips.append(tl)
          new_clips.append(bl)
          new_clips.append(tr)
          new_clips.append(br)
          new_clips.append(np.flip(center, axis=1))
          new_clips.append(np.flip(tl, axis=1))
          new_clips.append(np.flip(bl, axis=1))
          new_clips.append(np.flip(tr, axis=1))
          new_clips.append(np.flip(br, axis=1))
      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 VideoTenCrop obj's underlying member method code with example usage: obj.forward(clips) and returns: new_clips