W podanym przykładzie obrazu tekst jest wizualnie z dość dobrej jakości, więc pytanie brzmi, jak chodzi, że OCR daje niedokładne wyniki?
Aby zilustrować wnioski podane w dalszej treści niniejszego odpowiedź niech uruchomić dany obraz
przez Tesseract. Poniżej wyniku Tesseract OCR:
"fhpgearedmomrs©gmachom"
Teraz zmieńmy rozmiar obrazu cztery razy i zastosuj do niego progowanie. Ręcznie zmierzyłem rozmiar i próg w Gimpie, ale z odpowiednią metodą zmiany rozmiaru i wartości progowej dla PIL, może być to na pewno zautomatyzowane, tak że po ulepszeniu otrzymujesz obraz podobny do ulepszonego obrazu, który mam:
ulepszony obraz prowadzony przez Tesseract OCR daje następujący tekst:
"fhpgearedmotors © gmail.com"
To pokazuje, że pl Powiększenie obrazu może pomóc osiągnąć 100% dokładność na podanym przykładzie tekstu-obrazu.
Może wydawać się dziwne, że powiększenie obrazu pomaga osiągnąć lepszą dokładność OCR, ALE ... OCR został opracowany do konwersji skanów mediów drukowanych do tekstów i oczekuje od projektu 300 dpi obrazów tekstu. To tłumaczy, dlaczego niektóre programy OCR nie zmieniły rozmiaru tekstu samodzielnie, aby poprawić swoje wyniki i źle wpływają na małe czcionki oczekujące wyższej rozdzielczości obrazu, którą można osiągnąć poprzez powiększanie.
Oto fragment Tesseract FAQ on github.com prooving powyższe oświadczenie:
[Istnieje minimalny rozmiar tekstu za rozsądną dokładnością. Musisz wziąć pod uwagę zarówno rozdzielczość, jak i wielkość punktu. Dokładność spada poniżej 10pt x 300dpi, szybko poniżej 8pt x 300dpi. Szybkim sprawdzeniem jest policzenie pikseli wysokości x twoich postaci. (Wysokość X to wysokość małej litery x.) Na 10pt x 300 dpi x-wysokości mają zwykle około 20 pikseli, chociaż może się to znacznie różnić od czcionki do czcionki. Poniżej wysokości x 10 pikseli masz bardzo małe szanse na uzyskanie dokładnych wyników, a poniżej około 8 pikseli, większość tekstu będzie "usunięta".]
O ile rozumiem, istnieją dość sztywne zasady tutaj na stackoverflow i jedną z tych zasad jest skupienie się na odpowiadaniu na pytanie, a nie na pokazaniu, co jeszcze można zrobić, aby osiągnąć cel, jeśli nie było o to poproszone.Więc jeśli chcesz również odpowiedzi, które mogą dać lepsze wyniki, ale nie opierają się na ulepszaniu obrazu, możesz poprosić o to w swoim pytaniu. – Claudio
Co powiesz o oznaczeniu mojej odpowiedzi jako zaakceptowanej? Czy chybiłem coś wyjaśnić? – Claudio
P.S. sprawdź ponownie moją odpowiedź - dodałem do niej kilka wyjaśnień. – Claudio