class_docstr: resize image by target_size and max_size
  Args:
      target_size (int): the target size of image
      keep_ratio (bool): whether keep_ratio or not, default true
      interp (int): method of resize
docstr: Args:
      im (np.ndarray): image (np.ndarray)
      im_info (dict): info of image
  Returns:
      im (np.ndarray):  processed image (np.ndarray)
      im_info (dict): info of processed image
code: def __call__(self, im, im_info):
      """
      Args:
          im (np.ndarray): image (np.ndarray)
          im_info (dict): info of image
      Returns:
          im (np.ndarray):  processed image (np.ndarray)
          im_info (dict): info of processed image
      """
      assert len(self.target_size) == 2
      assert self.target_size[0] > 0 and self.target_size[1] > 0
      im_channel = im.shape[2]
      im_scale_y, im_scale_x = self.generate_scale(im)
      im = cv2.resize(
          im,
          None,
          None,
          fx=im_scale_x,
          fy=im_scale_y,
          interpolation=self.interp,
      )
      im_info["im_shape"] = np.array(im.shape[:2]).astype("float32")
      im_info["scale_factor"] = np.array(
          [im_scale_y, im_scale_x]
      ).astype("float32")
      return im, im_info
  
imports: import base64
  import cv2
  import numpy
  from .keypoint_preprocess import get_affine_transform
label_desc: Use image node_id 2 for calling the Resize obj's underlying member method code with example usage: obj.__call__(im, im_info) and returns: im,  im_info