Sobes.tech
Middle

Jakie metryki są używane do OCR?

sobes.tech AI

Odpowiedź od AI

Aby ocenić jakość OCR (optycznego rozpoznawania znaków), zwykle stosuje się następujące metryki:

  • Wskaźnik błędów znaków (CER) — procent błędów na poziomie znaków. Oblicza się go jako stosunek liczby wstawek, usunięć i zamian znaków do łącznej liczby znaków w tekście odniesienia.

  • Wskaźnik błędów słów (WER) — podobnie jak CER, ale na poziomie słów. Ważne do oceny, jak poprawnie rozpoznawane są całe słowa.

  • Dokładność (Accuracy) — odsetek poprawnie rozpoznanych znaków lub słów.

  • Precyzja, Recall i F1-score — stosowane, jeśli OCR jest używany do wyodrębniania określonych encji lub klas znaków.

Przykład obliczania CER:

import editdistance

def cer(reference, hypothesis):
    ref = list(reference)
    hyp = list(hypothesis)
    distance = editdistance.eval(ref, hyp)
    return distance / len(ref)

reference = "przykład"
hypothesis = "przyklad"
print(f"CER: {cer(reference, hypothesis):.2%}")

Te metryki pomagają obiektywnie porównywać różne systemy OCR i poprawiać ich jakość.