class_docstr: Calculate mean AP for object detection task
  
  Parameters:
  ---------
  iou_thresh : float
      IOU overlap threshold for TP
  class_names : list of str
      optional, if provided, will print out AP for each class
class_docstr_tok: ["Calculate","mean","AP","for","object","detection","task","Parameters",":","--","--","--","--","-","iou_thresh",":","float","IOU","overlap","threshold","for","TP","class_names",":","list","of","str","optional",",","if","provided",",","will","print","out","AP","for","each","class"]
docstr: Get the current evaluation result.
  
  Returns
  -------
  name : str
     Name of the metric.
  value : float
     Value of the evaluation.
docstr_tok: ["Get","the","current","evaluation","result",".","Returns","--","--","--","-","name",":","str","Name","of","the","metric",".","value",":","float","Value","of","the","evaluation","."]
code: def get(self):
      """Get the current evaluation result.
  
      Returns
      -------
      name : str
         Name of the metric.
      value : float
         Value of the evaluation.
      """
      self._update()  # update metric at this time
      if self.num is None:
          if self.num_inst == 0:
              return (self.name, float("nan"))
          else:
              return (self.name, self.sum_metric / self.num_inst)
      else:
          names = ["%s" % (self.name[i]) for i in range(self.num)]
          values = [
              x / y if y != 0 else float("nan")
              for x, y in zip(self.sum_metric, self.num_inst)
          ]
          return (names, values)
  
file_path: gluon-cv/gluoncv/utils/metrics/voc_detection.py
imports: from __future__ import division
  from collections import defaultdict
  import numpy
  import mxnet
  from ..bbox import bbox_iou
label_desc: Use image node_id 3 for calling the VOCMApMetric obj's underlying member method code with example usage: obj.get() and returns: names,  values, self,  float, self,  unknown