'Labels true/false positives of detections of an image across all classes.
Args:
detected_boxes: A float numpy array of shape [N, 4], representing N
regions of detected object regions.
Each row is of the format [y_min, x_min, y_max, x_max]
detected_scores: A float numpy array of shape [N, 1], representing
the confidence scores of the detected N object instances.
detected_class_labels: A integer numpy array of shape [N, 1], repreneting
the class labels of the detected N object instances.
groundtruth_boxes: A float numpy array of shape [M, 4], representing M
regions of object instances in ground truth
groundtruth_class_labels: An integer numpy array of shape [M, 1],
representing M class labels of object instances in ground truth
groundtruth_is_difficult_lists: A boolean numpy array of length M denoting
whether a ground truth box is a difficult instance or not
Returns:
result_scores: A list of float numpy arrays. Each numpy array is of
shape [K, 1], representing K scores detected with object class
label c
result_tp_fp_labels: A list of boolean numpy array. Each numpy array is of
shape [K, 1], representing K True/False positive label of object
instances detected with class label c'

def _compute_tp_fp(self, detected_boxes, detected_scores, detected_class_labels, groundtruth_boxes, groundtruth_class_labels, groundtruth_is_difficult_lists):

    result_scores = []
    result_tp_fp_labels = []
    for i in range(self.num_groundtruth_classes):
        gt_boxes_at_ith_class = groundtruth_boxes[(groundtruth_class_labels == i), :]
        groundtruth_is_difficult_list_at_ith_class = groundtruth_is_difficult_lists[(groundtruth_class_labels == i)]
        detected_boxes_at_ith_class = detected_boxes[(detected_class_labels == i), :]
        detected_scores_at_ith_class = detected_scores[(detected_class_labels == i)]
        (scores, tp_fp_labels) = self._compute_tp_fp_for_single_class(detected_boxes_at_ith_class, detected_scores_at_ith_class, gt_boxes_at_ith_class, groundtruth_is_difficult_list_at_ith_class)
        result_scores.append(scores)
        result_tp_fp_labels.append(tp_fp_labels)
    return (result_scores, result_tp_fp_labels)
