def METHOD_NAME(self):
    split_name = self._split_to_name[self.split]
    labels_path = [self.path, split_name, 'labels', 'detections.csv']
    labels_path = os.path.join(*labels_path)
    labels_file = open(labels_path, 'r')
    labels_reader = csv.reader(labels_file, delimiter=',')
    self._skip_header(labels_reader)
    image_ID_to_boxes = {}
    for sample in labels_reader:
        image_ID, machine_name = sample[0], sample[2]
        class_name = self.machine_to_human_name[machine_name]
        if class_name in self.class_names:
            coordinates = [float(coordinate) for coordinate in sample[4:8]]
            x_min, x_max, y_min, y_max = coordinates
            class_arg = self.class_name_to_arg[class_name]
            box_data = np.array([x_min, y_min, x_max, y_max, class_arg])
            if image_ID in image_ID_to_boxes:
                image_ID_to_boxes[image_ID].append(box_data)
            else:
                image_ID_to_boxes[image_ID] = [box_data]
    dataset = []
    for image_ID in image_ID_to_boxes.keys():
        image_path = os.path.join(self.root_image_path, image_ID + '.jpg')
        boxes = image_ID_to_boxes[image_ID]
        boxes = np.array(boxes)
        sample = {'image': image_path, 'boxes': boxes}
        dataset.append(sample)
    return dataset