Optische Zeichenerkennung (OCR) wandelt Bilder von Text – Scans, Smartphone-Fotos, PDFs – in maschinenlesbare Zeichenketten und zunehmend in strukturierte Daten um. Moderne OCR ist eine Pipeline, die ein Bild bereinigt, Text findet, ihn liest und umfassende Metadaten exportiert, damit nachgelagerte Systeme Felder suchen, indizieren oder extrahieren können. Zwei weit verbreitete Ausgabestandards sind hOCR, ein HTML-Mikroformat für Text und Layout, und ALTO XML, ein auf Bibliotheken/Archive ausgerichtetes Schema; beide erhalten Positionen, Lesereihenfolge und andere Layout-Hinweise und werden von populären Engines wie Tesseractunterstützt.
Vorverarbeitung. Die OCR-Qualität beginnt mit der Bildbereinigung: Graustufenumwandlung, Entrauschen, Schwellenwertbildung (Binarisierung) und Schräglagenkorrektur. Kanonische OpenCV-Tutorials behandeln globale, adaptive und Otsu Schwellenwertbildung – unerlässlich für Dokumente mit ungleichmäßiger Beleuchtung oder bimodalen Histogrammen. Wenn die Beleuchtung innerhalb einer Seite variiert (denken Sie an Handy-Schnappschüsse), übertreffen adaptive Methoden oft einen einzigen globalen Schwellenwert; Otsu wählt automatisch einen Schwellenwert durch Analyse des Histogramms. Die Neigungskorrektur ist ebenso wichtig: Hough-basierte Schräglagenkorrektur (Hough-Linientransformation) in Verbindung mit Otsu-Binarisierung ist ein gängiges und effektives Rezept in Produktions-Vorverarbeitungspipelines.
Erkennung vs. Erkennung. OCR wird typischerweise in Texterkennung (wo ist der Text?) und Texterkennung (was steht da?) unterteilt. In natürlichen Szenen und vielen Scans sind vollständig konvolutionale Detektoren wie EAST effizient bei der Vorhersage von Vierecken auf Wort- oder Zeilenebene ohne aufwändige Vorschlagsphasen und sind in gängigen Toolkits implementiert (z. B. OpenCVs Tutorial zur Texterkennung). Bei komplexen Seiten (Zeitungen, Formulare, Bücher) sind die Segmentierung von Zeilen/Regionen und die Inferenz der Lesereihenfolge von Bedeutung:Kraken implementiert traditionelle Zonen-/Zeilensegmentierung und neuronale Grundlinien-Segmentierung, mit expliziter Unterstützung für verschiedene Schriften und Richtungen (LTR/RTL/vertikal).
Erkennungsmodelle. Das klassische Open-Source-Arbeitspferd Tesseract (von Google als Open Source veröffentlicht, mit Wurzeln bei HP) entwickelte sich von einem Zeichenklassifikator zu einem LSTM-basierten Sequenz- Erkenner und kann durchsuchbare PDFs, hOCR/ALTO-freundliche Ausgabenund mehr über die CLI ausgeben. Moderne Erkenner setzen auf Sequenzmodellierung ohne vorsegmentierte Zeichen. Connectionist Temporal Classification (CTC) bleibt grundlegend und lernt die Ausrichtungen zwischen Eingabemerkmalfolgen und Ausgabezeichenfolgen; es wird häufig in Handschrift- und Szenentext-Pipelines verwendet.
In den letzten Jahren haben Transformer die OCR neu gestaltet. TrOCR verwendet einen Vision-Transformer-Encoder plus einen Text-Transformer-Decoder, trainiert auf großen synthetischen Korpora und dann feinabgestimmt auf realen Daten, mit starker Leistung bei gedruckten, handschriftlichen und Szenentext-Benchmarks (siehe auch Hugging Face-Dokumentation). Parallel dazu umgehen einige Systeme OCR für das nachgelagerte Verständnis: Donut (Document Understanding Transformer) ist ein OCR-freier Encoder-Decoder, der direkt strukturierte Antworten (wie Schlüssel-Wert-JSON) aus Dokumenten- bildern ausgibt (Repo, Modellkarte), um Fehlerakkumulation zu vermeiden, wenn ein separater OCR-Schritt ein IE-System speist.
Wenn Sie eine umfassende Texterkennung für viele Schriften wünschen, bietet EasyOCR eine einfache API mit über 80 Sprachmodellen, die Boxen, Text und Konfidenzen zurückgibt – praktisch für Prototypen und nicht-lateinische Schriften. Für historische Dokumente glänzt Kraken mit Grundliniensegmentierung und schriftbewusster Lesereihenfolge; für flexibles Training auf Zeilenebene, Calamari baut auf der Ocropy-Linie auf (Ocropy) mit (Multi-)LSTM+CTC-Erkennern und einer CLI zur Feinabstimmung benutzerdefinierter Modelle.
Generalisierung hängt von Daten ab. Für Handschrift bietet die IAM Handwriting Database schreiberdiverse englische Sätze für Training und Evaluierung; sie ist ein langjähriger Referenzdatensatz für Zeilen- und Worterkennung. Für Szenentext hat COCO-Text umfangreiche Annotationen über MS-COCO gelegt, mit Labels für gedruckt/handschriftlich, lesbar/unlesbar, Schrift und vollständigen Transkriptionen (siehe auch die ursprüngliche Projektseite). Das Feld stützt sich auch stark auf synthetisches Vortraining: SynthText in the Wild rendert Text in Fotografien mit realistischer Geometrie und Beleuchtung und liefert riesige Datenmengen zum Vortrainieren von Detektoren und Erkennern (Referenz Code & Daten).
Wettbewerbe unter dem Dach von ICDARs Robust Reading halten die Evaluierung auf dem Boden. Jüngste Aufgaben betonen die End-to-End-Erkennung/Lesung und umfassen das Verknüpfen von Wörtern zu Phrasen, wobei der offizielle Code Präzision/Recall/F-Score, Intersection-over-Union (IoU) und zeichenbasierte Edit-Distanz-Metriken meldet – was widerspiegelt, was Praktiker verfolgen sollten.
OCR endet selten bei reinem Text. Archive und digitale Bibliotheken bevorzugen ALTO XML , da es das physische Layout (Blöcke/Zeilen/Wörter mit Koordinaten) neben dem Inhalt kodiert und gut mit METS-Verpackungen harmoniert. Das hOCR Mikroformat hingegen bettet dieselbe Idee in HTML/CSS ein, indem es Klassen wie ocr_line und ocrx_word verwendet, was die Anzeige, Bearbeitung und Transformation mit Web-Werkzeugen erleichtert. Tesseract bietet beides – z. B. die Erzeugung von hOCR oder durchsuchbaren PDFs direkt über die CLI (PDF-Ausgabe-Anleitung); Python-Wrapper wie pytesseract bieten zusätzlichen Komfort. Es gibt Konverter, um zwischen hOCR und ALTO zu übersetzen, wenn Repositories feste Aufnahme- standards haben – siehe diese kuratierte Liste von OCR-Dateiformat-Tools.
Der stärkste Trend ist die Konvergenz: Erkennung, Erkennung, Sprachmodellierung und sogar aufgabenspezifische Dekodierung verschmelzen zu einheitlichen Transformer-Stacks. Vortraining auf großen synthetischen Korpora bleibt ein Kraftmultiplikator. OCR-freie Modelle werden aggressiv konkurrieren, wo immer das Ziel strukturierte Ausgaben anstelle von wörtlichen Transkripten sind. Erwarten Sie auch hybride Bereitstellungen: einen leichtgewichtigen Detektor plus einen TrOCR-Stil- Erkenner für Langformtext und ein Donut-Stil-Modell für Formulare und Belege.
Tesseract (GitHub) · Tesseract-Dokumentation · hOCR-Spezifikation · ALTO-Hintergrund · EAST-Detektor · OpenCV-Texterkennung · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · IAM Handschrift · OCR-Dateiformat-Tools · EasyOCR
Die Optical Character Recognition (OCR) ist eine Technologie, die verwendet wird, um verschiedene Arten von Dokumenten, wie gescannte Papiere, PDF-Dateien oder Bilder, die mit einer Digitalkamera aufgenommen wurden, in bearbeitbare und durchsuchbare Daten umzuwandeln.
OCR funktioniert, indem es ein Eingabebild oder Dokument scannt, das Bild in einzelne Zeichen segmentiert und jedes Zeichen mit einer Datenbank von Zeichenformen mit Hilfe von Mustererkennung oder Feature-Erkennung vergleicht.
OCR wird in einer Vielzahl von Bereichen und Anwendungen genutzt, einschließlich der Digitalisierung von gedruckten Dokumenten, der Aktivierung von Text-zu-Sprachdiensten, der Automatisierung von Dateneingabeprozessen und der Unterstützung von sehbehinderten Benutzern bei der Interaktion mit Texten.
Obwohl große Fortschritte in der OCR-Technologie gemacht wurden, ist sie nicht unfehlbar. Die Genauigkeit kann abhängig von der Qualität des Originaldokuments und den Spezifika der verwendeten OCR-Software variieren.
Obwohl OCR hauptsächlich für gedruckten Text konzipiert wurde, können einige fortschrittliche OCR-Systeme auch klare und konsistente Handschriften erkennen. Allerdings ist die Handschriftenerkennung in der Regel weniger genau aufgrund der großen Variation in individuellen Schreibstilen.
Ja, viele OCR-Software-Systeme können mehrere Sprachen erkennen. Es ist jedoch wichtig zu gewährleisten, dass die spezifische Sprache von der von Ihnen verwendeten Software unterstützt wird.
OCR steht für Optical Character Recognition und wird verwendet, um gedruckten Text zu erkennen, während ICR für Intelligent Character Recognition steht und wird zur Fortschrittlicheren Erkennung von handschriftlichen Text verwendet.
OCR funktioniert am besten mit klaren, leicht lesbaren Schriftarten und Standard-Textgrößen. Obwohl es mit verschiedenen Schriftarten und Größen arbeiten kann, neigt die Genauigkeit dazu, zu sinken, wenn man mit ungewöhnlichen Schriftarten oder sehr kleinen Textgrößen umgeht.
OCR kann Probleme haben mit niedrigauflösenden Dokumenten, komplexen Schriftarten, schlecht gedruckten Texten, Handschriften und Dokumenten mit Hintergründen, die den Text stören. Außerdem kann es, obwohl es mit vielen Sprachen arbeiten kann, nicht jede Sprache perfekt abdecken.
Ja, OCR kann farbigen Text und Hintergründe scannen, obwohl es in der Regel effektiver mit Hochkontrast-Farbkombinationen ist, wie schwarzem Text auf weißem Hintergrund. Die Genauigkeit kann abnehmen, wenn Text und Hintergrundfarben nicht genug Kontrast aufweisen.
Das PBM-Format (Portable Bitmap) ist eines der einfachsten und ältesten Grafikdateiformate, das zum Speichern von monochromen Bildern verwendet wird. Es ist Teil der Netpbm-Suite, zu der auch PGM (Portable GrayMap) für Graustufenbilder und PPM (Portable PixMap) für Farbbilder gehören. Das PBM-Format ist so konzipiert, dass es in einem Programm extrem einfach zu lesen und zu schreiben ist und klar und eindeutig ist. Es ist nicht als eigenständiges Format gedacht, sondern eher als kleinster gemeinsamer Nenner für die Konvertierung zwischen verschiedenen Bildformaten.
Das PBM-Format unterstützt nur Schwarzweißbilder (1 Bit). Jedes Pixel im Bild wird durch ein einzelnes Bit dargestellt – 0 für Weiß und 1 für Schwarz. Die Einfachheit des Formats macht es einfach, es mit einfachen Textbearbeitungswerkzeugen oder Programmiersprachen zu bearbeiten, ohne dass spezielle Bildverarbeitungsbibliotheken erforderlich sind. Diese Einfachheit bedeutet jedoch auch, dass PBM-Dateien größer sein können als anspruchsvollere Formate wie JPEG oder PNG, die Komprimierungsalgorithmen verwenden, um die Dateigröße zu reduzieren.
Es gibt zwei Varianten des PBM-Formats: das ASCII-Format (einfaches Format), bekannt als P1, und das Binärformat (Rohformat), bekannt als P4. Das ASCII-Format ist für Menschen lesbar und kann mit einem einfachen Texteditor erstellt oder bearbeitet werden. Das Binärformat ist nicht für Menschen lesbar, aber platzsparender und für Programme schneller zu lesen und zu schreiben. Trotz der Unterschiede in der Speicherung repräsentieren beide Formate denselben Typ von Bilddaten und können ohne Informationsverlust ineinander konvertiert werden.
Die Struktur einer PBM-Datei im ASCII-Format beginnt mit einer Zwei-Byte-Magischen Zahl, die den Dateityp identifiziert. Für das PBM-ASCII-Format ist dies 'P1'. Nach der magischen Zahl folgt ein Leerzeichen (Leerzeichen, TABs, CRs, LFs) und dann eine Breitenspezifikation, die die Anzahl der Spalten im Bild ist, gefolgt von mehr Leerzeichen und dann einer Höhenspezifikation, die die Anzahl der Zeilen im Bild ist. Nach der Höhenspezifikation folgt mehr Leerzeichen und dann beginnen die Pixeldaten.
Die Pixeldaten in einer ASCII-PBM-Datei bestehen aus einer Reihe von '0' und '1', wobei jede '0' ein weißes Pixel und jede '1' ein schwarzes Pixel darstellt. Die Pixel sind in Zeilen angeordnet, wobei jede Pixelzeile in einer neuen Zeile steht. Leerzeichen sind überall in den Pixeldaten zulässig, außer innerhalb einer Zwei-Zeichen-Sequenz (sie sind nicht zwischen den beiden Zeichen der Sequenz zulässig). Das Ende der Datei wird erreicht, nachdem width*height Bits gelesen wurden.
Im Gegensatz dazu beginnt das binäre PBM-Format mit einer magischen Zahl von 'P4' anstelle von 'P1'. Nach der magischen Zahl ist das Format der Datei das gleiche wie die ASCII-Version, bis die Pixeldaten beginnen. Die binären Pixeldaten werden in Bytes gepackt, wobei das höchstwertige Bit (MSB) jedes Bytes das am weitesten links liegende Pixel darstellt und jede Pixelzeile nach Bedarf aufgefüllt wird, um das letzte Byte auszufüllen. Die Auffüllbits sind nicht signifikant und ihre Werte werden ignoriert.
Das Binärformat ist platzsparender, da es ein vollständiges Byte verwendet, um acht Pixel darzustellen, im Gegensatz zum ASCII-Format, das mindestens acht Bytes verwendet (ein Zeichen pro Pixel plus Leerzeichen). Das Binärformat ist jedoch nicht für Menschen lesbar und erfordert ein Programm, das das PBM-Format versteht, um das Bild anzuzeigen oder zu bearbeiten.
Das programmgesteuerte Erstellen einer PBM-Datei ist relativ einfach. In einer Programmiersprache wie C würde man eine Datei im Schreibmodus öffnen, die entsprechende magische Zahl ausgeben, die Breite und Höhe als ASCII-Zahlen durch Leerzeichen getrennt schreiben und dann die Pixeldaten ausgeben. Für eine ASCII-PBM können die Pixeldaten als eine Reihe von '0' und '1' mit entsprechenden Zeilenumbrüchen geschrieben werden. Für eine binäre PBM müssen die Pixeldaten in Bytes gepackt und im Binärmodus in die Datei geschrieben werden.
Das Lesen einer PBM-Datei ist ebenfalls einfach. Ein Programm würde die magische Zahl lesen, um das Format zu bestimmen, die Leerzeichen überspringen, die Breite und Höhe lesen, weitere Leerzeichen überspringen und dann die Pixeldaten lesen. Für eine ASCII-PBM kann das Programm Zeichen einzeln lesen und sie als Pixelwerte interpretieren. Für eine binäre PBM muss das Programm Bytes lesen und sie in einzelne Bits entpacken, um die Pixelwerte zu erhalten.
Das PBM-Format unterstützt keine Form der Komprimierung oder Kodierung, was bedeutet, dass die Dateigröße direkt proportional zur Anzahl der Pixel im Bild ist. Dies kann bei hochauflösenden Bildern zu sehr großen Dateien führen. Die Einfachheit des Formats macht es jedoch ideal, um etwas über Bildverarbeitung zu lernen, für den Einsatz in Situationen, in denen die Bildtreue wichtiger ist als die Dateigröße, oder für die Verwendung als Zwischenformat in Bildkonvertierungsprozessen.
Einer der Vorteile des PBM-Formats ist seine Einfachheit und die Leichtigkeit, mit der es bearbeitet werden kann. Um beispielsweise ein PBM-Bild zu invertieren (alle schwarzen Pixel weiß und umgekehrt zu machen), kann man einfach alle '0' durch '1' und alle '1' durch '0' in den Pixeldaten ersetzen. Dies kann mit einem einfachen Textverarbeitungsskript oder -programm erfolgen. Ebenso können andere grundlegende Bildoperationen wie Drehen oder Spiegeln mit einfachen Algorithmen implementiert werden.
Trotz seiner Einfachheit wird das PBM-Format nicht allgemein für die allgemeine Bildspeicherung oder den Austausch verwendet. Dies liegt in erster Linie an der fehlenden Komprimierung, die es ineffizient für die Speicherung großer Bilder oder für die Verwendung über das Internet macht, wo die Bandbreite ein Problem darstellen kann. Modernere Formate wie JPEG, PNG und GIF bieten verschiedene Formen der Komprimierung und sind für diese Zwecke besser geeignet. Das PBM-Format wird jedoch immer noch in einigen Kontexten verwendet, insbesondere für einfache Grafiken in der Softwareentwicklung und als Lehrmittel für Bildverarbeitungskonzepte.
Die Netpbm-Suite, zu der auch das PBM-Format gehört, bietet eine Sammlung von Werkzeugen zur Bearbeitung von PBM-, PGM- und PPM-Dateien. Diese Werkzeuge ermöglichen die Konvertierung zwischen den Netpbm-Formaten und anderen gängigen Bildformaten sowie grundlegende Bildverarbeitungsvorgänge wie Skalierung, Zuschneiden und Farbmanipulation. Die Suite ist so konzipiert, dass sie leicht erweiterbar ist, mit einer einfachen Schnittstelle zum Hinzufügen neuer Funktionen.
Zusammenfassend lässt sich sagen, dass das PBM-Bildformat ein einfaches, schnörkelloses Dateiformat zum Speichern von monochromen Bitmap-Bildern ist. Seine Einfachheit macht es leicht verständlich und zu bearbeiten, was für Bildungszwecke oder für einfache Bildverarbeitungsaufgaben von Vorteil sein kann. Obwohl es aufgrund seiner fehlenden Komprimierung und der daraus resultierenden großen Dateigrößen nicht für alle Anwendungen geeignet ist, bleibt es ein nützliches Format in den spezifischen Kontexten, in denen seine Stärken am vorteilhaftesten sind. Das PBM-Format ist zusammen mit dem Rest der Netpbm-Suite weiterhin ein wertvolles Werkzeug für diejenigen, die mit grundlegender Bildverarbeitung und Formatkonvertierung arbeiten.
Dieser Konverter läuft vollständig in Ihrem Browser. Wenn Sie eine Datei auswählen, wird sie in den Speicher gelesen und in das ausgewählte Format konvertiert. Sie können die konvertierte Datei dann herunterladen.
Die Konvertierung beginnt sofort, und die meisten Dateien werden in weniger als einer Sekunde konvertiert. Größere Dateien können länger dauern.
Ihre Dateien werden niemals auf unsere Server hochgeladen. Sie werden in Ihrem Browser konvertiert, und die konvertierte Datei wird dann heruntergeladen. Wir sehen Ihre Dateien niemals.
Wir unterstützen die Konvertierung zwischen allen Bildformaten, einschließlich JPEG, PNG, GIF, WebP, SVG, BMP, TIFF und mehr.
Dieser Konverter ist völlig kostenlos und wird immer kostenlos sein. Da er in Ihrem Browser läuft, müssen wir nicht für Server bezahlen, also müssen wir Ihnen auch nichts berechnen.
Ja! Sie können so viele Dateien auf einmal konvertieren, wie Sie möchten. Wählen Sie einfach mehrere Dateien aus, wenn Sie sie hinzufügen.