Antworten:
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 ):
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.
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.
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.
Fügen Sie Ihrem PFAD C: \ Programme (x86) \ GnuWin32? \ Bin hinzu Umgebungsvariable, so dass die Ausgabe tesseract.exe kann das finden libtiff dll. Neustart.
Öffnen Sie die VC-Lösung (tesseract.sln)
Ä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 ...
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
Ö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.
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.
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.