Example #1
0
    #         category_id = result["category_id"]
    #         # assert category_id < num_classes, (
    #         #     f"A prediction has class={category_id}, "
    #         #     f"but the dataset only has {num_classes} classes and "
    #         #     f"predicted class id should be in [0, {num_classes - 1}]."
    #         # )
    #         result["category_id"] = reverse_id_mapping[category_id]
    #         seg_results.append(result)
    #
    # if not os.path.exists('{}/results'.format(args.result_dir)):
    #     os.mkdir('{}/results'.format(args.result_dir))
    #
    # with open('{}/results/{}_seg_results.json'.format(args.result_dir, args.data_type), 'w') as f_det:
    #     json.dump(seg_results, f_det)

    if 'test' not in args.data_type:
        if not os.path.exists('{}/results/plot'.format(args.result_dir)):
            os.mkdir('{}/results/plot'.format(args.result_dir))
        print(
            '---------------------------------------------------------------------------------'
        )
        print('Running COCO segmentation val17 evaluation ...')
        coco_pred = coco.loadRes('{}/results/{}_seg_results.json'.format(
            args.result_dir, args.data_type))
        coco_eval = COCOeval(coco, coco_pred, 'segm')
        coco_eval.evaluate()
        coco_eval.accumulate()
        coco_eval.summarize()
        coco_eval.analyze(
            save_to_dir='{}/results/plot'.format(args.result_dir))