code: def bbox_vote(self, det):
      # order = det[:, 4].ravel().argsort()[::-1]
      # det = det[order, :]
      if det.shape[0] == 0:
          return np.zeros((0, 5))
          # dets = np.array([[10, 10, 20, 20, 0.002]])
          # det = np.empty(shape=[0, 5])
      dets = None
      while det.shape[0] > 0:
          if dets is not None and dets.shape[0] >= 750:
              break
          # IOU
          area = (det[:, 2] - det[:, 0] + 1) * (
              det[:, 3] - det[:, 1] + 1
          )
          xx1 = np.maximum(det[0, 0], det[:, 0])
          yy1 = np.maximum(det[0, 1], det[:, 1])
          xx2 = np.minimum(det[0, 2], det[:, 2])
          yy2 = np.minimum(det[0, 3], det[:, 3])
          w = np.maximum(0.0, xx2 - xx1 + 1)
          h = np.maximum(0.0, yy2 - yy1 + 1)
          inter = w * h
          o = inter / (area[0] + area[:] - inter)
  
          # nms
          merge_index = np.where(o >= self.nms_threshold)[0]
          det_accu = det[merge_index, :]
          det = np.delete(det, merge_index, 0)
          if merge_index.shape[0] <= 1:
              if det.shape[0] == 0:
                  try:
                      dets = np.row_stack((dets, det_accu))
                  except:
                      dets = det_accu
              continue
          det_accu[:, 0:4] = det_accu[:, 0:4] * np.tile(
              det_accu[:, -1:], (1, 4)
          )
          max_score = np.max(det_accu[:, 4])
          det_accu_sum = np.zeros((1, 5))
          det_accu_sum[:, 0:4] = np.sum(
              det_accu[:, 0:4], axis=0
          ) / np.sum(det_accu[:, -1:])
          det_accu_sum[:, 4] = max_score
          if dets is None:
              dets = det_accu_sum
          else:
              dets = np.row_stack((dets, det_accu_sum))
      dets = dets[0:750, :]
      return dets
  
imports: from __future__ import print_function
  import sys
  import os
  import datetime
  import time
  import numpy
  import mxnet
  from mxnet import ndarray
  import cv2
  from rcnn.logger import logger
  from rcnn.processing.bbox_transform import clip_boxes
  from rcnn.processing.generate_anchor import generate_anchors_fpn, anchors_plane
  from rcnn.processing.nms import gpu_nms_wrapper, cpu_nms_wrapper
  from rcnn.processing.bbox_transform import bbox_overlaps
label_desc: Use image node_id 11 for calling the RetinaFace obj's underlying member method code with example usage: obj.bbox_vote(det) and returns: dets, np