Menü
c't Magazin

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.

Von
vorlesen Drucken Kommentare lesen 12 Beiträge
Texterkennung mit Tesseract und Python

(Bild: Albert Hulm)

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.

Immer mehr Wissen. Das digitale Abo für IT und Technik.

  • Zugriff auf alle Inhalte von heise+
  • exklusive Tests, Ratgeber & Hintergründe: unabhängig, kritisch fundiert
  • c't, iX, Technology Review, Mac & i, Make, c't Fotografie direkt im Browser lesen
  • einmal anmelden – auf allen Geräten lesen - jederzeit kündbar
  • erster Monat gratis, danach monatlich 9,95 €
  • Wöchentlicher Newsletter mit persönlichen Leseempfehlungen des Chefredakteurs
GRATIS-Monat beginnen Jetzt GRATIS-Monat beginnen Mehr Informationen zu heise+
Anzeige