Texterkennung mit Tesseract und Python

Die Python-Bibliothek pytesseract erkennt Text in Grafiken und liest ihn aus. Unser kleines Programmier-Projekt liest aus einer PDF-Datei einen Speiseplan.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 13 Kommentare lesen
Texterkennung mit Tesseract und Python

(Bild: Albert Hulm)

Lesezeit: 8 Min.
Von
  • Otis Sotek
Inhaltsverzeichnis

Mit Optical character recognition (OCR) können Programme Text aus Bildern lesen und dann als Zeichenkette weiterverarbeiten. Das ist nützlich, um etwa gescannte Briefe maschinell zu durchsuchen oder in Bildern Kennzeichen zu erkennen. Unter der Haube von modernen OCR-Engines steckt meist künstliche Intelligenz. Die hat an tausenden von Beispielen gelernt, wie Zeichen und Schriften aussehen und welchen Text sie darstellen.

In diesem Beispiel soll die OCR-Bibliothek tesseract von Google den Speiseplan der Heise-Kantine im PDF-Format in Python auslesen und das Angebot des Tages bereitstellen.

Mehr zu Texterkennung (OCR)

Es mag übertrieben klingen, Bilderkennung auf ein PDF anzuwenden, wenn es Programme wie pdftotext gibt, die eingebetteten Text aus einem PDF von vorne bis hinten ausgeben. Bei einer Tabelle, die aus Excel exportiert wurde, wie dem Speiseplan, klappt das aber nicht. Zudem liest pdftotext nur Dateien, in denen der Text auch als Text eingebettet ist. Liegt der Plan als Bild vor, wird OCR benötigt.