code: def __init__(
      self,
      anno_file,
      num_samples,
      num_joints,
      output_eval,
      save_prediction_only=False,
  ):
      super(KeyPointTopDownCOCOWholeBadyHandEval, self).__init__()
      self.coco = COCO(anno_file)
      self.num_samples = num_samples
      self.num_joints = num_joints
      self.output_eval = output_eval
      self.res_file = os.path.join(
          output_eval, "keypoints_results.json"
      )
      self.save_prediction_only = save_prediction_only
      self.parse_dataset()
      self.reset()
  
imports: import os
  import json
  from collections import defaultdict, OrderedDict
  import numpy
  import paddle
  from pycocotools.coco import COCO
  from pycocotools.cocoeval import COCOeval
  from ..modeling.keypoint_utils import oks_nms, keypoint_pck_accuracy, keypoint_auc, keypoint_epe
  from scipy.io import loadmat, savemat
  from ppdet.utils.logger import setup_logger
label_desc: Use image node_id 1 to create a new KeyPointTopDownCOCOWholeBadyHandEval object from inherited base classes: object with example: obj = KeyPointTopDownCOCOWholeBadyHandEval(anno_file, num_samples, num_joints, output_eval, save_prediction_only)