|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"""Evaluator factory.""" |
|
|
|
from __future__ import absolute_import |
|
from __future__ import division |
|
from __future__ import print_function |
|
|
|
from official.vision.detection.evaluation import coco_evaluator |
|
|
|
|
|
def evaluator_generator(params): |
|
"""Generator function for various evaluators.""" |
|
if params.type == 'box': |
|
evaluator = coco_evaluator.COCOEvaluator( |
|
annotation_file=params.val_json_file, include_mask=False) |
|
elif params.type == 'box_and_mask': |
|
evaluator = coco_evaluator.COCOEvaluator( |
|
annotation_file=params.val_json_file, include_mask=True) |
|
elif params.type == 'shapemask_box_and_mask': |
|
evaluator = coco_evaluator.ShapeMaskCOCOEvaluator( |
|
mask_eval_class=params.mask_eval_class, |
|
annotation_file=params.val_json_file, include_mask=True) |
|
|
|
else: |
|
raise ValueError('Evaluator %s is not supported.' % params.type) |
|
|
|
return coco_evaluator.MetricWrapper(evaluator) |
|
|