Zeichenerkennung mit tesseract
Ich versuche, die Interaktion mit tesseract
API auch ich bin neu in der Bildbearbeitung und ich bin nur mit ihm zu kämpfen für die letzten paar Tage. Ich habe versucht, einfache algorithmen und ich erreicht haben, rund 70% Genauigkeit.
Ich will Ihre Richtigkeit zu 90+%. Das problem mit den Bildern ist, dass Sie in 72dpi. Ich habe auch versucht, um die Auflösung zu erhöhen, aber nicht bekommen gute Ergebnisse, die Bilder, die ich versucht bin, erkannt zu werden, befestigt sind.
Jede Hilfe würde geschätzt, und ich bin sorry, wenn ich fragte, etwas sehr grundlegendes.
BEARBEITEN
Ich vergaß zu erwähnen, dass ich versuche, alles zu tun, die Verarbeitung und die Anerkennung innerhalb 2-2.5 Sek. auf Linux
Plattform und Methode zur Erkennung der text erwähnt in dieser Antwort sehr viel Zeit. Auch ich lieber nicht verwenden, um Befehlszeilen-Lösung, aber ich würde lieber Leptonica
oder OpenCV
.
Meisten Bilder sind hochgeladen hier
Ich habe versucht, folgende Dinge zu beispielsweise binarisieren die tickets, aber kein Glück
- http://www.vincent-net.com/luc/papers/10wiley_morpho_DIAapps.pdf
- http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.193.6347&rep=rep1&type=pdf
- http://iit.demokritos.gr/~bgat/PatRec2006.pdf
- http://psych.stanford.edu/~jlm/pdfs/Sternberg67.pdf
Ticket enthält
- bisschen schlechtes Licht
- Nicht-text-Bereich
- weniger Auflösung
Habe ich versucht zu füttern, das Bild direkt auf tesseract-API und es gibt mir 70% gute Ergebnisse im 1-Sekunden-Durchschnitt. Aber ich möchte die Messgenauigkeit zu erhöhen, die in dem bemerken der Faktor Zeit bisher habe ich versucht
- Kanten des Bildes
- Die Blob-Analyse zur blobs
- Binarized das ticket die adaptive schwellenwertbestimmung aktiviert ist
Dann habe ich versucht zu füttern, diese binarized images zu tesseract, die Genauigkeit reduziert sich auf weniger als 50-60%, obwohl binarized image perfekt Aussehen.
- Nicht sicher, was Ihre Frage ist, haben Sie jeden code, könnte, sollte, wo das problem ist?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es mehrere Dinge, die Sie könnten versuchen:
In der Lage sein zur Verbesserung der Genauigkeit sollten Sie verbessern die Qualität des Bildes für die OCR-engine, und das bedeutet, dass Vorverarbeitung der Bilder vor der Fütterung auf Tesseract. Ich schlage vor, zu untersuchen OpenCV für diesen Zweck.
Das Hauptproblem mit OCR-engines ist, dass Sie nicht so gut im erkennen von Zeichen, wie wir sind. So auch Dinge, die nicht text sind manchmal fälschlicherweise als identifiziert, wenn Sie. Daher, um dies zu verhindern ist es am besten, um erkennen der Bereiche mit text und senden Sie diese an Tesseract, anstatt das ganze Bild, wie Sie tun mit dem Bild #2.
Anderen Weg zum extrahieren der text-Bereiche eines Bildes können Sie mit diese Technik zu Sie isolieren.
Wenn man die Ergebnisse von Tesseract, können Sie verbessern Sie durch vergleicht man den resultierenden text in einem Wörterbuch.
Einige mögliche Verbesserungen:
Können Sie es oben mit Ihrem eigenen Programmierung oder Fred ' s ImageMagick Scripts helfen könnte.
Ich bin mir nicht sicher, ob mein Beitrag ist nützlich für Sie, weil meine Antwort nicht über Tesseract. Es ist aber über eine hohe Genauigkeit, so habe ich beschlossen, dass es für Sie auch interessant sein zu sehen, wie bezahlt OCR-SDK-Lösung funktioniert.
Dass die Ergebnisse der Erkennung mit ABBYY Cloud OCR SDK ohne zusätzliche Einstellungen.
Disclaimer: ich arbeite für ABBYY.
Können Sie versuchen, zu verwenden ScanTailor (http://scantailor.sourceforge.net/ es hat auch die CLI-Schnittstelle), um beispielsweise binarisieren, begradigen und entzerren Sie ein Bilder. Das skalieren von Bildern bis könnte helfen, um die Anerkennungsverfahren zu verbessern. Da Tesseract Anerkennung profile wurden optimiert, um die Arbeit auf mindestens 300 DPI.
Andere Möglichkeit ist die Ausbildung der Tesserakt auf die schriftart, die charakteristisch für das material (mehr dazu hier: https://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3).
Ich glaube nicht, dass Wörterbuchs wird hier helfen, denn Sie haben meist zahlen.