class_docstr: Internal implementation of Pascal object detection metrics.
class_docstr_tok: ["Internal","implementation","of","Pascal","object","detection","metrics","."]
code: def __init__(
      self,
      num_groundtruth_classes,
      matching_iou_threshold=0.5,
      nms_iou_threshold=1.0,
      nms_max_output_boxes=10000,
      use_weighted_mean_ap=False,
      label_id_offset=0,
  ):
      if num_groundtruth_classes < 1:
          raise ValueError(
              "Need at least 1 groundtruth class for evaluation."
          )
  
      self.per_image_eval = per_image_evaluation.PerImageEvaluation(
          num_groundtruth_classes=num_groundtruth_classes,
          matching_iou_threshold=matching_iou_threshold,
      )
      self.num_class = num_groundtruth_classes
      self.use_weighted_mean_ap = use_weighted_mean_ap
      self.label_id_offset = label_id_offset
  
      self.groundtruth_boxes = {}
      self.groundtruth_class_labels = {}
      self.groundtruth_masks = {}
      self.groundtruth_is_difficult_list = {}
      self.groundtruth_is_group_of_list = {}
      self.num_gt_instances_per_class = np.zeros(
          self.num_class, dtype=int
      )
      self.num_gt_imgs_per_class = np.zeros(self.num_class, dtype=int)
  
      self._initialize_detections()
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import collections
  import logging
  import numpy
  from abc import ABCMeta, abstractmethod
  from .None import label_map_util, metrics, per_image_evaluation, standard_fields
label_desc: Use image node_id 1 to create a new ObjectDetectionEvaluation object  with example: obj = ObjectDetectionEvaluation(num_groundtruth_classes, matching_iou_threshold, nms_iou_threshold, nms_max_output_boxes, use_weighted_mean_ap, label_id_offset)