Ich habe immer festgestellt, dass die OCR-Technologie auf Open Source-Systemen im Rückstand ist. Ich habe auch das Ocropus-Projekt von Anfang an gesehen. Ich habe versucht, was ich gehört habe, ist die beste OCR-Engine, die für Linux verfügbar ist, Tesseract , und habe festgestellt, dass es für Geschäftsdokumente schmerzlich fehlt. Gibt es noch vielversprechendere OCR-Implementierungen? Was ist mit dem noch hoffnungsvolleren Ziel, Handschrift zu interpretieren? Was ist auf * nix-Systemen in diesem Bereich möglich?
opensource-projects
ocr
documents
jjclarkson
quelle
quelle
Antworten:
Tesseract
Ab 2018 ist Tesseract 4 (Beta) mit seinem neuen LSTM-OCR-Modell für neuronale Netze die beste verfügbare Open-Source-OCR-Software . Die OCR-Leistung ist viel besser als beim vorherigen OCR-Modell in Version 3.
Beispiel (PDF-Datei
output.pdf
mit Textebene für ein gescanntes deutsches Dokument erstellen ):Drucken Sie den erkannten Text auf stdout:
Liste installierter Sprachen:
Unterstützung für ziemlich viele Sprachen / Skripte gibt es in Form eines herunterladbaren trainierten Datensatzes , zB gibt es sogar einen Datensatz für Fraktur.
Mit dem neuen LSTM-Modell lässt sich Tesseract vom Forschungsprojekt OCRopus inspirieren .
Die Tesseract-Version 3 bietet selbst bei hochwertigen Eingabebildern eine relativ schlechte Leistung, dh, sie erkennt fälschlicherweise einzelne Zeichen in Staubpixeln (außerhalb eines beliebigen Textkontexts) und fügt in bekannten Wörtern leicht einzelne Zeichenfehler ein.
Keilschrift
Die Leistung von Cuneiform OCR ist nicht so schlecht, wird aber nicht aktiv gewartet (letzte Version im Jahr 2011, Version 1.1) und stürzt leicht ab und weist einige andere Probleme auf:
Sie können den Layout-Algorithmus wie folgt deaktivieren:
(
-l
Gibt die Sprache des Quelldokuments an.)ocrad
Der Text wird standardmäßig in Standardausgabe gedruckt.
In einem Geschäftsdokument fehlte ein unterstrichenes Wort, in dem Keilschrift / Tesseract / Gocr nicht vorkam.
gocr
Der Text wird standardmäßig in Standardausgabe gedruckt.
Hardware
Sane bietet eine sehr gute Unterstützung für viele Scanner mit automatischem Dokumenteneinzug (ADF), z. B. für die Scanner von Avision und Fujitsu .
In Sane ist das
scanimage
Kommandozeilenprogramm enthalten, mit dem Sie geskriptete Scan-Pipelines erstellen können (vgl. ZB meinadf2pdf.py
Skript).quelle
Ich habe eine ähnliche Frage bei StackOverflow gefunden und das Asprise OCR SDK , eines der verknüpften kommerziellen Produkte, verfügt über eine Linux-Version.
quelle
Es gibt nur wenige beliebte OCR-Befehlszeilentools:
Tesseract ( ReadMe , FAQ ) (Python)
Auch verfügbar für: Tesseract .NET , Tesseract iOS
Verwendung:
Beispiel: Vorhandenes PDF über Befehlszeile / Skript durchsuchbar machen
GOCR
OCRopus ™ ( FAQ ) (geschrieben in Python, NumPy und SciPy)
Tessnet2 (Open Source, Texterkennung , Tesseract, .NET, DOTNET, C #, VB.NET, C ++ / CLI)
Andere bereits vorgeschlagen: ABBYY CLI OCR für Linux , Asprise OCR .
Lesen Sie auch:
Eine vollständige Liste finden Sie unter: Liste der optischen Zeichenerkennungssoftware bei Wikipedia.
quelle
... OCR ist mehr als "nur Zeichenerkennung". Bildbearbeitung, Vorverarbeitung - Seiten- / Layoutanalyse zum Auffinden der Texte, Bilder, Tabellen oder Barcodes. Für die Erkennung müssen Sie sich mit verschiedenen Schriftarten, Größen und Sprachen auseinandersetzen. Dies ist wichtig, da Sie Wörterbücher und Sprachdefinitionen verwenden müssen, um gute Ergebnisse zu erzielen. Schließlich erwarten die Benutzer mehr Exportoptionen als Text (z. B. XML, RTF oder durchsuchbares PDF). Es gibt einige kommerzielle Optionen für SDKs, die jedoch nicht billig und kostenlos sind.
Kürzlich habe ich eine CLI OCR für Linux von ABBYY gefunden . Es gibt eine kostenlose 100-Seiten-Testversion.
quelle
Wenn Sie ein Budget haben, empfehle ich ABBYY FineReader Engine CLI für Linux . Unsere Firma verwendet es seit einem Jahr in unserer Webanwendung und wir planen, die Lizenz zu erneuern. Sehr gute Erkennungsqualität, Befehlszeilenschnittstelle, Erkennung in vielen Sprachen.
quelle