def __get_duplicate_box_mask(self, box_list # type: List
                                ):
        # type: (...) -> List
        """
        Creates a mask to remove duplicate objects (boxes) and their related probabilities and classifications
        that should be considered the same object.  This is determined by how similar the boxes are
        based on the intersection-over-union metric.
        
        box_list is as list of boxes (4 floats for centerX, centerY and Length and Width)
        
        The intersection-over-union threshold to use when determining duplicates.
        objects/boxes found that are over this threshold will be
        considered the same object.
        Returns a List of boolean True if objects were found/filtered. 
        """
        max_iou = self.iou_threshold

        box_mask = numpy.ones(len(box_list))

        # Calculate the intersection-over-union for the two boxes and set the indexes of the box_mask to 0 
        # if they exceed the max_iou threshold
        for i in range(len(box_list)):
            if box_mask[i] == 0: continue
            for j in range(i + 1, len(box_list)):
                if self.__get_intersection_over_union(box_list[i], box_list[j]) >= max_iou:
                    if box_list[i][4] < box_list[j][4]:
                        box_list[i], box_list[j] = box_list[j], box_list[i]
                    box_mask[j] = 0.0

        # convert the box_mask binary values to bool
        filter_iou_mask = numpy.array(box_mask > 0.0, dtype='bool')
        
        return filter_iou_mask

        Creates a mask to remove duplicate objects (boxes) and their related probabilities and classifications
        that should be considered the same object.  This is determined by how similar the boxes are
        based on the intersection-over-union metric.
        
        box_list is as list of boxes (4 floats for centerX, centerY and Length and Width)
        
        The intersection-over-union threshold to use when determining duplicates.
        objects/boxes found that are over this threshold will be
        considered the same object.
        Returns a List of boolean True if objects were found/filtered. 
        
networks/tiny_yolo_v3/Tiny_yolo_v3_object_detector.py