Befehlszeilen-OCR in Windows 7

Antworten:

4

Meiner Ansicht nach Tesseract ist die beste (kostenlose) befehlszeilenbasierte OCR-Software. Leider ist anscheinend keine 64-Bit-Binärdatei für Windows 7 verfügbar, sodass Sie sie selbst kompilieren müssen. hier sind die anweisungen dazu (entnommen aus einem kommentar zum Tesseract FAQ Seite ):

  1. Laden Sie tesseract 2.04 herunter. Pack es aus. In diesem Beispiel habe ich nach ausgepackt   C: \ projects \ tesseract-2.04. Windows 7   verstehe immer noch nicht .tar.gz out   der Box. Meine Empfehlung lautet:   Holen Sie sich eine Kopie von 7-Zip.

  2. Laden Sie die gewünschten Sprachdateien herunter. Ich brauche deutsch und englisch ich   entpacke diese in die tessdata   Unterverzeichnis von   C: \ projects \ tesseract-2.04 \ tessdata.

  3. Installieren Sie libtiff. Auf meinem (64 Bit) System das vorgeschlagene Installationsverzeichnis   ist C: \ Programme (x86) \ GnuWin32 ?.   Unter diesem Verzeichnis sind ein paar   von Unterverzeichnissen mit Dateien   Wir müssen Tesseract mit kompilieren   tiff support, nämlich include, bin und   lib.

  4. Fügen Sie Ihrem PFAD C: \ Programme (x86) \ GnuWin32? \ Bin hinzu   Umgebungsvariable, so dass die   Ausgabe tesseract.exe kann das finden   libtiff dll. Neustart.

  5. Öffnen Sie die VC-Lösung (tesseract.sln)

  6. Ändern Sie die Lösungskonfiguration in den Modus "Freigeben". Beachten Sie, dass, wenn Sie   später wieder in den Debug-Modus wechseln,   Sie müssen alle einrichten   wieder folgen ...

  7. Klicken Sie im Lösungsexplorer mit der rechten Maustaste auf den Lösungsknoten (Lösung   'tesseract') und klicken Sie auf "Eigenschaften".   Wechseln Sie zu "Konfigurationseigenschaften"   und wählen Sie "Release" Konfiguration   aus dem Dropdown oben auf der   Fenster. Navigieren Sie zu: Extras - & gt; Optionen   - & gt; Projekte und Lösungen - & gt; VC ++ - Verzeichnisse Hier werden wir das hinzufügen   vollständige Pfade für die Unterverzeichnisse lib   und aus dem libtiff installieren   damit VC das benötigte finden kann   Header (.h) und statische Bibliothek (.lib)   Dateien. In diesem Beispiel sind dies:   $ (ProgramFiles?) \ GnuWin32? \ Include   $ (ProgramFiles?) \ GnuWin32? \ Lib wie ich bin   mit einer Umgebungsvariablen. Ich könnte   habe sie aber gerade als geschrieben   C: \ Programme   (x86) \ GnuWin32? \ include.   Ändern Sie die "Show Directories For"   Dropdown zu "Include files". Ergänzen Sie die   Folgendes:   $ (ProgramFiles?) \ GnuWin32? \ Include   Ändern Sie nun die "Show Directories For"   Dropdown zu "Bibliotheksdateien". Ergänzen Sie die   Folgendes:   $ (ProgramFiles?) \ GnuWin32? \ Lib

  8. Öffnen Sie nun das Projekteigenschaftenfenster für das tesseract Projekt (nicht   die Lösung). In der Lösung   Explorer Rechtsklick auf den Tesseract   projizieren und Eigenschaften anklicken. Navigieren   die horrende liste der optionen an   Konfigurationseigenschaften - & gt; C / C ++ - & gt;   Präprozessor und fügen Sie HAVE_LIBTIFF hinzu   die Liste der Präprozessordefinitionen.   Dies führt dazu, dass eine Reihe von #includes vorhanden sind   im Code aktiviert.

  9. Sie möchten auch eine "Zusätzliche Abhängigkeit" hinzufügen. gehe zu "Additional   "Abhängigkeiten" für das Projekt   Eigenschaften und fügen Sie libtiff.lib hinzu.

  10. Erstellen Sie die Lösung. Beobachten Sie die Fehlerliste. Wenn Sie ein paar bekommen   LNK2109 Fehler, das heißt der Linker   Ich kann nichts Tesseraktes finden   Verweise. Sie vermissen eine Referenz   zu einem der wege von libtiff. Ob   Sie erhalten einen Fehler, der mt.exe erwähnt,   Möglicherweise ist ein Fehler in aufgetreten   der sdk. Versuchen Sie es einfach noch einmal. sehen http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=106634 Für mehr Information.

Wenn / wenn die Lösung erstellt wird   erfolgreich wirst du eine haben   tesseract.exe-Datei in der gleichen   Verzeichnis als Tesseract-Lösung   Datei. zieh dich mehrseitig komprimiert   tiff hier und versuche tesseract laufen zu lassen.   Zum Beispiel, wenn Ihr tiff angerufen wird   in.tif und Sie möchten Text ausgeben   out.txt und die Sprache der Dokumente   ist deutsch dann wäre deine befehlszeile   aussehen wie:

tesseract.exe in.tif out -l deu Die   An die Ausgabedatei wird TXT angehängt   es durch tesseract. Wenn du nur bist   Englisch Text übersetzen, dann können Sie   Lassen Sie die Option -l als tesseract weg   geht von "eng" aus, wenn Sie nichts angeben   etwas. Wenn Ihre TIF-Datei die hat   Dateierweiterung .tiff, dann tesseract   wird sich so bescheißen:

C: \ projects \ tesseract-2.04 & gt; tesseract.exe   in.tiff out -l deu Tesseract Open   Quell-OCR-Engine   name_to_image_type: Fehler: Nicht erkannt   Bildtyp: in.tiff   IMAGE :: read_header: Fehler: Kann nicht lesen   dieser Bildtyp: in.tiff   tesseract.exe: Fehler: Lesen der Datei   fehlgeschlagen: in.tiff

Hoffentlich (Daumen drücken, heh)   Sie haben jetzt eine OCR'd out.txt-Datei   sitzen in C: \ projects \ tesseract-2.04.

jwaddell
quelle
1

Ich kenne nur JOCR, das unter Windows funktioniert und auf der Befehlszeile basiert. Zeigen Sie die Webseite an Hier

Daisetsu
quelle
0

Es gibt ein Installationsprogramm für Windows 7 für Tesseract. Ich habe es gerade installiert und habe es dazu gebracht, OCR auf einem kleinen Bild auszuführen. Das Ergebnis war schrecklich, aber ich hoffe, dass ich mit einigem Tuning die Ergebnisse verbessern kann.

andrew
quelle