class_docstr: Default training transform for simple pose.
  
  Parameters
  ----------
  num_joints : int
      Number of joints defined by dataset
  image_size : tuple of int
      Image size, as (height, width).
class_docstr_tok: ["Default","training","transform","for","simple","pose",".","Parameters","--","--","--","--","--","num_joints",":","int","Number","of","joints","defined","by","dataset","image_size",":","tuple","of","int","Image","size",",","as","(","height",",","width",")","."]
code: def __call__(self, src, label, img_path):
      cv2 = try_import_cv2()
      bbox = label["bbox"]
      assert len(bbox) == 4
      joints_3d = label["joints_3d"]
      xmin, ymin, xmax, ymax = bbox
      center, scale = _box_to_center_scale(
          xmin, ymin, xmax - xmin, ymax - ymin, self._aspect_ratio
      )
      score = label.get("score", 1)
  
      h, w = self._image_size
      trans = get_affine_transform(center, scale, 0, [w, h])
      img = cv2.warpAffine(
          src.asnumpy(), trans, (int(w), int(h)), flags=cv2.INTER_LINEAR
      )
  
      # to tensor
      img = mx.nd.image.to_tensor(mx.nd.array(img))
      img = mx.nd.image.normalize(img, mean=self._mean, std=self._std)
  
      return img, scale, center, score, img_path
  
file_path: gluon-cv/gluoncv/data/transforms/presets/simple_pose.py
imports: from __future__ import absolute_import
  import random
  import numpy
  import mxnet
  from ..image import random_flip
  from ..pose import flip_joints_3d, get_affine_transform, affine_transform
  from ....utils.filesystem import try_import_cv2
label_desc: Use image node_id 2 for calling the SimplePoseDefaultValTransform obj's underlying member method code with example usage: obj.__call__(src, label, img_path) and returns: img,  scale,  center,  score,  img_path