pyTesseract

Was ist pyTesseract?

pyTesseract ist eine native Python-Anbindung für die Tesseract 2.04, die wohl beste Open-Source OCR Engine. Im Gegensatz zu PyTesser, das nur ein Wrapper für das Tesseract-Kommandozeilenprogramm ist, verwendet pyTesseract direkt die C++-API (via SWIG) und lässt sich damit nahtlos integrieren.

Wie benutze ich pyTesseract?

Die Benutzung von pyTesseract ist denkbar einfach und wird an folgendem Codebeispiel deutlich:

import Image
from tesseract import tesseract

def ocr():
    image = Image.open("test.jpg")
    tesseract.init("deu", "/usr/share/tesseract-ocr/")
    text = tesseract.recognize_image(image)
    # tesseract.recognize_opencv_image(image) für OpenCV-Bilder
    tesseract.end()
    print text
  • tesseract.init(sprache, tessdata-Elternordner) initialisiert Tesseract
  • tesseract.recognize_image(im) bzw. tesseract.recognize_opencv_image(im) führt die Texterkennung auf einem PIL-Image bzw. OpenCV-Image im durch und gibt den erkannten Text als String zurück
  • tesseract.end() muss zum Schluss noch aufgerufen werden, um allfälligen Speicher, den Tesseract alloziert hat, freizugeben. Es können mehrere recognize-Calls zwischen init() und end() erfolgen.

Download

Tesseract 2.04 + pyTesseract 0.1b (leicht modifiziertes Bundle)

Installation

  • Archiv herunterladen, entpacken und in den Ordner wechseln
  • “configure” und “make” ausführen (jetzt wäre der richtige Zeitpunkt für ein Gebet)
  • “python setup.py install” (benötigt root-Rechte) für eine Installation bzw. “python setup.py build_ext” für einen Build der Library ausführen
  • Programmieren!

Einschränkungen / TODO:

  • Das Kompilieren ist nur unter Linux (Ubuntu 10.10 x64) getestet, für Windows muss wahrscheinlich das ein oder andere Makefile angepasst werden
  • Support für Confidence Values in Tesseract wäre eine Option

Lizenz:

Tesseract steht unter der Apache-Lizenz, Version 2.0.

pyTesseract steht unter der Apache-Lizenz, Version 2.0.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>