score_writer = csv.DictWriter(scorefile, fieldnames=fieldnames2) score_writer.writeheader() rect_writer = csv.DictWriter(rect_precision_file, fieldnames=fieldnames) rect_writer.writeheader() # Read Ground Truth. map_gt_list = []; for m in range(1, 11): map_name = ['1920-1.png', '1920-2.png', '1920-3.png', '1920-4.png', '1920-5.png', '1920-6.png', '1920-7.png', '1920-8.png', '1920-9.png', '1920-10.png'] groundTruthFile = './GroundTruths/' + map_name[m - 1].split('.')[0] + '.geojson' gt_obj = GeoJsonReader.load_json_file(groundTruthFile) gt_list = GeoJsonReader.get_ground_truth_list(gt_obj, 1, 1) map_gt_list.append(gt_list) candidate_file = './narges result/candidates' cf = open(candidate_file, 'r') map_feature_list = [] map_result_obj_features = [] map_result_feature_count = [] map_result_rects = [] # Read result files. count = 0 for i in range(1, MAP_NUM): result_file_name = './narges result/1920-' + str(i) + '.png_EdditedByPixels.txt' result_obj = GeoJsonReader.load_json_file(result_file_name)
def evaluate_result(gt_obj, result_obj, group_para=0, scale_w=1, scale_h=1): gt_list = GeoJsonReader.get_ground_truth_list(gt_obj, scale_w, scale_h) result_rect_list = GeoJsonReader.get_result_rectangles(result_obj) return ResultEvaluation.evaluation_simple(result_rect_list, gt_list, area_threshold=0.7, group_para=group_para)