def compute_accuracy(passport, ground_truth): """ :param passport: Passport object to compare :param ground_truth: Ground truth Passport object :return: Accuracy metrics """ return { "__acc__country": ground_truth.country == passport.country, "__acc__id_number": ground_truth.id_number == passport.id_number, "__acc__birth_date": ground_truth.birth_date == passport.birth_date, "__acc__expiry_date": ground_truth.expiry_date == passport.expiry_date, "__acc__issuance_date": ground_truth.issuance_date == passport.issuance_date, "__acc__gender": ground_truth.gender == passport.gender, "__acc__surname": ground_truth.surname == passport.surname, "__acc__mrz1": ground_truth.mrz1 == passport.mrz1, "__acc__mrz2": ground_truth.mrz2 == passport.mrz2, "__acc__given_names": Field.compare_arrays(passport.given_names, ground_truth.given_names), "__acc__mrz": ground_truth.mrz == passport.mrz, "__acc__full_name": ground_truth.full_name == passport.full_name, }
def compute_accuracy(license_plate, ground_truth): """ :param license_plate: CarPlate object to compare :param ground_truth: Ground truth CarPlate object :return: Accuracy metrics """ return { "__acc__license_plates": Field.compare_arrays( license_plate.license_plates, ground_truth.license_plates) }
def compute_precision(license_plate, ground_truth): """ :param license_plate: CarPlate object to compare :param ground_truth: Ground truth CarPlate object :return: Precisions metrics """ precisions = {} if len(license_plate.license_plates) == 0: precisions["__pre__license_plates"] = None else: precisions["__pre__license_plates"] = Field.compare_arrays( license_plate.license_plates, ground_truth.license_plates) return precisions
def compute_precision(passport, ground_truth): """ :param passport: Passport object to compare :param ground_truth: Ground truth Passport object :return: Precision metrics """ precisions = { "__pre__country": Benchmark.scalar_precision_score(passport.country, ground_truth.country), "__pre__id_number": Benchmark.scalar_precision_score(passport.id_number, ground_truth.id_number), "__pre__birth_date": Benchmark.scalar_precision_score(passport.birth_date, ground_truth.birth_date), "__pre__expiry_date": Benchmark.scalar_precision_score(passport.expiry_date, ground_truth.expiry_date), "__pre__issuance_date": Benchmark.scalar_precision_score(passport.issuance_date, ground_truth.issuance_date), "__pre__gender": Benchmark.scalar_precision_score(passport.gender, ground_truth.gender), "__pre__surname": Benchmark.scalar_precision_score(passport.surname, ground_truth.surname), "__pre__mrz1": Benchmark.scalar_precision_score(passport.mrz1, ground_truth.mrz1), "__pre__mrz2": Benchmark.scalar_precision_score(passport.mrz2, ground_truth.mrz2), "__pre__mrz": Benchmark.scalar_precision_score(passport.mrz, ground_truth.mrz), "__pre__full_name": Benchmark.scalar_precision_score(passport.full_name, ground_truth.full_name), } if len(passport.given_names) == 0: precisions["__pre__given_names"] = None else: precisions["__pre__given_names"] = Field.compare_arrays( passport.given_names, ground_truth.given_names) return precisions