class_docstr: Args:
      input_shape (int): network input image size
      scale_factor (float): scale factor of ori image
code: def __call__(self, decode_boxes, select_scores):
      batch_size = 1
      out_boxes_list = []
      for batch_id in range(batch_size):
          # nms
          bboxes = np.concatenate(decode_boxes, axis=0)
          confidences = np.concatenate(select_scores, axis=0)
          picked_box_probs = []
          picked_labels = []
          for class_index in range(0, confidences.shape[1]):
              probs = confidences[:, class_index]
              mask = probs > self.score_threshold
              probs = probs[mask]
              if probs.shape[0] == 0:
                  continue
              subset_boxes = bboxes[mask, :]
              box_probs = np.concatenate(
                  [subset_boxes, probs.reshape(-1, 1)], axis=1
              )
              box_probs = hard_nms(
                  box_probs,
                  iou_threshold=self.nms_threshold,
                  top_k=self.keep_top_k,
              )
              picked_box_probs.append(box_probs)
              picked_labels.extend([class_index] * box_probs.shape[0])
  
          if len(picked_box_probs) == 0:
              out_boxes_list.append(np.empty((0, 4)))
  
          else:
              picked_box_probs = np.concatenate(picked_box_probs)
  
              # resize output boxes
              picked_box_probs[:, 0] *= self.scale_x
              picked_box_probs[:, 2] *= self.scale_x
              picked_box_probs[:, 1] *= self.scale_y
              picked_box_probs[:, 3] *= self.scale_y
  
              # clas score box
              out_boxes_list.append(
                  np.concatenate(
                      [
                          np.expand_dims(
                              np.array(picked_labels), axis=-1
                          ),
                          np.expand_dims(
                              picked_box_probs[:, 4], axis=-1
                          ),
                          picked_box_probs[:, :4],
                      ],
                      axis=1,
                  )
              )
  
      out_boxes_list = np.concatenate(out_boxes_list, axis=0)
      return out_boxes_list
  
file_path: PaddleDetection/deploy/third_engine/demo_openvino/python/openvino_infer.py
imports: import cv2
  import numpy
  import argparse
  from scipy.special import softmax
  from openvino.runtime import Core
label_desc: Use image node_id 2 for calling the PicoDetNMS obj's underlying member method code with example usage: obj.__call__(decode_boxes, select_scores) and returns: out_boxes_list