CH714891B1 - Bildbearbeitung unter Verwendung von neuronalen Netzwerken. - Google Patents
Bildbearbeitung unter Verwendung von neuronalen Netzwerken. Download PDFInfo
- Publication number
- CH714891B1 CH714891B1 CH00502/18A CH5022018A CH714891B1 CH 714891 B1 CH714891 B1 CH 714891B1 CH 00502/18 A CH00502/18 A CH 00502/18A CH 5022018 A CH5022018 A CH 5022018A CH 714891 B1 CH714891 B1 CH 714891B1
- Authority
- CH
- Switzerland
- Prior art keywords
- image
- pixel
- image file
- file
- copy
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/60—Image enhancement or restoration using machine learning, e.g. neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
- G06T5/92—Dynamic range modification of images or parts thereof based on global image properties
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
- Character Input (AREA)
Abstract
Anhand von synthetisch erzeugten Beispieldaten wird ein neuronales Netzwerk darauf hin traininert, für jedes Pixel in einem (potentiell verunreinigten) Bild eine Vorhersage für dessen korrigierten Graustufenwert zu machen. Das neu entstandene Bild aus berechneten Graustufenwerten hat schliesslich bessere Eigenschaften für die gängigen Texterkennungsprogramme als das Ursprungsbild.
Description
Technisches Gebiet
[0001] Die vorliegende Erfindung bezieht sich allgemein auf ein Verfahren zur automatischen Aufbesserung von Textinformationen in Bilddateien und fällt in das Gebiet der digitalen Bildbearbeitung und optischen Texterkennung.
Stand der Technik
[0002] Optical Character Recognition (OCR, Optische Zeichenerkennung) ist eine Technologie die bei der Digitalisierung von Dokumenten weite Verbreitung findet. Dabei wird versucht aus Bilddokumenten Textzeichen zu extrahieren, welche dann in digitaler Form weiter verwendet werden können.
[0003] Die Erkennungsrate und Genauigkeit der Textextraktion ist dabei stark von der Bildqualität abhängig. Eine Vorverarbeitung der zu untersuchenden Bildern ist ein zentraler Verarbeitungsschritt, mit dem Ziel die Qualität der Textextraktion möglichst positiv zu beeinflussen. Es gilt dabei, qualitätsmindernde Merkmale im Bild zu entfernen, ohne dabei textliche Inhalte zu verlieren.
[0004] Die verwendeten Methoden sind zahlreich und können untereinander kombiniert, oder verkettet werden. Als Beispiele sollen hier zwei Methodengruppen genannt werden: 1) Tief- und Hochpassfilter-Methoden: Diese werden zur Schärfung oder Glättung von Bildern verwendet. Tiefpassfilter reduzieren dabei kleine Störsignale durch Mittelung der Werte über einen fest definierten Bereich. Im Gegenzug werden gleichzeitig scharfe Kanten verwaschen. Umgekehrt sind Hochpassfilter dazu geeignet Kanten zu betonen, verstärken aber auch den Effekt kleinerer Verunreinigungen. 2) Schwellwertmethoden: Jedem Bildpunkt wird einer von zwei Werten zugewiesen, je nach dem ob der Bildpunkt den vorher definierten Schwellwert über- oder unterschreitet. Bei Graustufenbildern resultiert dabei ein schwarzweisses Binärbild. Es wird zwischen globalen und adaptiven Schwellwertmethoden unterschieden, bei welchen der Schwellwert entweder über das Gesamte Bild angewendet wird, oder ob sich dieser Schwellwert dynamisch an verschiedene Bildregionen anpasst.
Nachteil
[0005] Je nach Art der Bildverunreinigungen müssen mehrere Prozessschritte ausgeführt werden, die einzeln von spezifischen Parametern abhängig sind (z. B. die grosse des Mittelungsbereichs bei Tiefpassfiltermethoden oder der Schwellwert selbst). Dabei gibt es kein Standardverfahren um optimale Ergebnisse zu finden. Die verschiedenen Methoden stehen oft in einem Zielkonflikt indem sich ein gewisser Aspekt der Bildqualität verbessert, dafür andere negative Effekte verstärkt werden. So sind z. B. bei der Rauschunterdrückung durch Tiefpassfilter die entstehenden weicheren Kanten oft unerwünscht.
Aufgabe/Vorteile
[0006] Patentanspruch 1 ist eine weitere Methode digitaler Bildbearbeitung zur Verbesserung von OCR Ergebnissen. Dabei wird ein oder mehrere neuronale Netzwerke darauf trainiert diese Aufgabe zu erfüllen. Es gibt bei der Anwendung keine Parameter festzulegen und es besteht kein intrinsischer Zielkonflikt zwischen Text-hervohebenden- und Störeffekte-unterdrückenden Massnahmen.
Aufzählung der Figuren
[0007] Abbildung 1 zeigt eine grafische Darstellung der Methode zur Erzeugung von Trainingsdaten die zur Erstellung des neuronalen Netzwerks benötigt werden. Beim Erstellen der Beispieldateien ist darauf zu achten, dass möglichst realistische Dokumente erzeugt werden. Dies in Bezug auf die textlichen Inhalte, sowie in der Gliederung (Man sollte z. B. nicht einfach zufällige Buchstabenreihenfolgen wählen.). Im weiteren sollen verschiedene Schriftarten und -grossen verwendet werden.
[0008] Abbildung 2 zeigt einen typischen Ausschnitt, einer Beispieldatei mit Störsignalen. Um den korrigierten Graustufenwert des schwarz umrandeten Bildpunktes zu berechnen, werden die Bildpunkte rund um diesen Punkt in Betracht gezogen (umliegendes schwarz umrandetes Quadrat). Die Bildpunkte dieser Fläche aus der Bilddatei mit Störsignal wird als Eingabe in den Trainingsdaten verwendet, der Graustufenwert des eingerahmten Bildpunktes aus der Bilddatei ohne Störsignale als vorgegebener Ausgabewert (=label).
[0009] Abbildung 3 zeigt ein Beispiel für ein Label-Datei (ohne Störsignale) 1a) und Daten-Datei (mit Störsignalen) 1b) Paar. Beide Dateien haben dasselbe Format.
Beschreibung
[0010] Neuronale Netzwerke werden anhand von Beispieldaten trainiert um zu einem späteren Zeitpunkt Entscheidungen und Vorhersagen aufgrund neuer Daten zu treffen. Im Fall von Patentanspruch 1 besteht ein solcher Datensatz aus einer Ansammlung von Bildern die Text enthalten.
Erstellen von Beispieldateien
[0011] Beispiel-/ Trainings-Dateien bestehen aus Daten-Dateien und Label-Dateien. Daten-Dateien sind digitale Bilder in einem Pixelgrafik-Format wie .jpeg, .png oder ähnliches und können ein beliebiges Format aufweisen. Die Label-Dateien enthalten die korrekten Graustufenwerte für jedes Pixel der Daten-Dateien. Zur Herstellung von synthetischen Trainingsdatensätzen werden erst Label-Dateien erstellt. Dies geschieht durch ein beliebiges Textverarbeitungsprogramm, sofern dieses den Export als Bitmap oder pdf unterstützen. Die Daten-Dateien sind zunächst Kopien der Label-Dateien. Ihnen werden in einem weiteren Schritt aber noch Störeffekte hinzugefügt. Ein Beispiel für ein Paar aus Label- und Daten-Datei ist in Abbildung 3a) (Label) und Abbildung 3b) (Daten) zu sehen. Es sollen möglichst verschiedene (gängige) Schrift-Arten und Grössen verwendet werden um bei der Textsäuberung später gute Resultate zu erzielen. Ebenfalls wichtig sind möglichst realistische Störeffekte einzuarbeiten.
Erstellen von Trainingsdatensätzen
[0012] Ein Trainingsdatensatz besteht aus Daten (d1...dm) und Labeln (l1...lm). Diese werden aus Daten-Dateien und Label-Dateien gewonnen. Die eigentlichen Daten sind Ausschnitte aus Daten-Dateien in einem Format von ax×ayPixeln. Wobei wir ax=ay=129 verwenden. axund aymüssen nicht identisch, aber beide ungerade sein, damit es einen Zentralen Bildpunkt gibt. Das dazugehörige Label entspricht dem Pixelwert des Zentralen Pixels aus demselben Ausschnitt der Label-Datei (siehe Abbildung 2).
[0013] Es gibt n Daten-Dateien (D<(1)>...D<(n)>) und n Label-Dateien (L<(1)>...L<(n)>). Die zu jeder Daten-Datei zugehörige Label-Datei hat dasselbe Format in Pixeln wie die Daten-Datei. (Format L<(i)>= Format D<(l)>Daten-Dateien können unterschiedliche Formate haben (Format D<(i)>≠ D<(j)>). Folgender Algorithmus generiert dann Trainingsdatensätze:
1. Wähle zufällig eine der n Label-Dateien L<(i)>und die dazugehörige Daten-Datei D<(i)>.
2. Wähle zufällig die Koordinaten eines Bildpunktes aus L<(i)>.
3. Das label I ist dann der Wert des Bildpunktes in L<(i)>.
4. Das Datum d ist dann der 129 × 129 Pixel Bildausschnitt um den Bildpunkt aus D<(i)>, ausschliesslich des Zentralen Bildpunktes, für den es den Graustufenwert zu berechnen gilt. Das heisst es wird in D<(i)>von p aus ein Ausschnitt von 64 Pixeln nach links, rechts, oben und unten genommen.
5. Wiederhole 1. bis 4. m-Mal
Erstellung des neuronalen Netzwerks
[0014] Das spezifische Design des neuronalen Netzwerks soll hier nicht vorgegeben werden, da dies je nach Anwendungsfall, verfügbarer Rechner-Ressourcen und Menge an Trainingsdaten stark variieren kann.
Anwendung des neuronalen Netzwerks
[0015] Hat man nun eine neue Bilddatei B, wird für jedes Pixel (nx,ny), (mit 64<nx<Nx-64 und 64<ny<Ny-64) eine Vorhersage des neuronalen Netzwerks berechnet. Wobei Nxdie totale Anzahl Pixel in x-Richtung und Nydie totale Anzahl Pixel in y-Richtung von B sind. Somit entsteht ein neues, gesäubertes Bild vom Format (Nx-128 × Ny-128). Das Ausgangsbild wird dabei nicht Pixel für Pixel durch die Ausgabe des neuronalen Netzwerks ersetzt, sondern es entsteht ein neues Bild ausschliesslich aus den berechneten Graustufenwerten.
Claims (4)
1. Verfahren zur automatischen Vorverarbeitung von Textinformation in einer Bilddatei für eine verbesserte optische Zeichenerkennung,
gekennzeichnet durch die folgenden Verfahrensschritte:
• Berechnung durch ein trainiertes neuronales Netzwerk einer Vorhersage für einen korrigierten Graustufenwert für jedes Pixel eines Bereichs der Bilddatei;
• Erzeugung eines Ausgangsbilds mit den korrigierten Graustufenwerten für jedes Pixel des Bereichs der Bilddatei.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, dass
• das neuronale Netzwerk eine Vorhersage für einen korrigierten Graustufenwert für jedes Pixel (nx,ny) der Bilddatei im Bereich berechnet, mit axund ayungeraden Ganzzahlen, Nxdie totale Anzahl Pixel der Bilddatei in x-Richtung und Nydie totale Anzahl Pixel der Bilddatei in y-Richtung;
• ein Ausgangsbild im Format (Nx-(ax-1)×Ny-(ay-1)) erzeugt wird.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, dass
zur Berechnung der korrigierten Graustufenwerte ein quadratischer Bildausschnitt von ax=ay=129 Pixeln um jedes Pixel (nx,ny) der Bilddatei verwendet wird.
4. Verfahren nach Anspruch 1,
gekennzeichnet durch die folgenden vorgängigen Verfahrensschritte:
• Erstellung eines synthetischen Trainingsdatensatzes bestehend aus Paaren von jeweils einem Eingabewert und einem Zielwert durch:
a) Erstellung von n Beispieldateien mit Text;
b) Erstellung einer Kopie jeder Beispieldatei und Hinzufügen von Störsignalen zur Kopie, wobei jede Beispieldatei ohne Störsignal und ihre Kopie mit Störsignalen zusammen ein Bildpaar bilden;
c) Auswahl eines zufälligen Bildpaars;
d) Auswahl eines gleichen zufälligen Bildpunktes aus der Bilddatei und aus ihrer Kopie des Bildpaars;
e) Verwendung des Graustufenwerts aus der Beispieldatei ohne Störsignal als Zielwert;
f) Verwendung der Graustufenwerte aus der Region um den ausgewählten Bildpunkt aus der Kopie mit Störsignal als Eingabewert;
g) Wiederholung der Schritte c) bis f) n Mal;
• Trainieren eines neuronalen Netzwerkes mit dem Trainingsdatensatz.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CH00502/18A CH714891B1 (de) | 2018-04-13 | 2018-04-13 | Bildbearbeitung unter Verwendung von neuronalen Netzwerken. |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CH00502/18A CH714891B1 (de) | 2018-04-13 | 2018-04-13 | Bildbearbeitung unter Verwendung von neuronalen Netzwerken. |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CH714891A2 CH714891A2 (de) | 2019-10-15 |
| CH714891B1 true CH714891B1 (de) | 2022-05-13 |
Family
ID=68170565
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CH00502/18A CH714891B1 (de) | 2018-04-13 | 2018-04-13 | Bildbearbeitung unter Verwendung von neuronalen Netzwerken. |
Country Status (1)
| Country | Link |
|---|---|
| CH (1) | CH714891B1 (de) |
-
2018
- 2018-04-13 CH CH00502/18A patent/CH714891B1/de unknown
Also Published As
| Publication number | Publication date |
|---|---|
| CH714891A2 (de) | 2019-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69329380T2 (de) | Verfahren zum Segmentieren von Bildern und Klassifizieren von Bildelementen zur Dokumentverarbeitung | |
| DE69533054T2 (de) | Mehrfenstertechnik zur Schwellenwertverarbeitung eines Bildes unter Verwendung lokaler Bildeigenschaften | |
| DE3780955T2 (de) | Verfahren zur automatischen spitzenerkennung im graustufenhistogramm eines digitalen bildes. | |
| DE3113555A1 (de) | Verfahren zum automatischen erkennen von weissbloecken sowie text-, graphik- und/oder graubildbereichen auf druckvorlagen | |
| DE102013210375A1 (de) | Auffinden von text in natürlichen szenen | |
| DE69209866T2 (de) | Verfahren zur Bildverarbeitung und Abtastsystem/Ausdrucksystem zur Durchführung dieses Verfahrens | |
| DE19956158A1 (de) | Bild-Binärisierungsverfahren auf Bereichsbasis | |
| DE102012201024B4 (de) | Verfahren zum Verarbeiten eines Bildes zur Verdeutlichung von Text in dem Bild | |
| DE112015003626T5 (de) | System und verfahren zum erhöhen der bittiefe von bildern | |
| DE60024535T2 (de) | Verfahren zur Zeichentrennung | |
| AT515595A2 (de) | Verfahren zur optischen Erkennung von Zeichen | |
| DE69324977T2 (de) | Bitmap-bildsegmentierung unter anwendung eines ladungsmodells fuer pixels | |
| EP2064672A2 (de) | Verfahren und vorrichtung zur bildverarbeitung | |
| WO2002078322A1 (de) | Verfahren zur komprimierung und dekomprimierung von bilddaten | |
| DE69421369T2 (de) | Automatische Schwellwertbestimmung für numerische Abtaster | |
| CH714891B1 (de) | Bildbearbeitung unter Verwendung von neuronalen Netzwerken. | |
| DE69315990T2 (de) | Mustererkennung durch Erzeugung und Benutzung zonenweiser Merkmale und Anti-Merkmale | |
| DE69531412T2 (de) | Bildkodierung beruhend auf Bildbereichen und deren segmentierten Randlinien | |
| DE102021101468A1 (de) | Verfahren zur Erzeugung valider Entfernungsdaten für eine Lichtlaufzeitkamera | |
| DE202021102338U1 (de) | Steuergerät zum Erzeugen von Trainingsdaten zum Trainieren eines Algorithmus des maschinellen Lernens | |
| DE112016007447T5 (de) | Verfahren zum Vergleichen einer ersten Zeichnung mit einer zweiten Zeichnung durch Vergleichen ihrer Zeichnungselemente | |
| DE60030528T2 (de) | Verfahren und Vorrichtung zur Farbquantelung | |
| DE69937871T2 (de) | Verfahren und Vorrichtung zur Bildsegmentierung | |
| DE69903852T2 (de) | Verfahren zum vergleich von aus bildpunkten bestehenden gespeicherten bildern, die äquipotentielen mindestens einer integrierten schaltung darstellen | |
| EP3718075B1 (de) | Verfahren zur herstellung eines personen porträts für ein ausweisdokument |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| NV | New agent |
Representative=s name: EUROMAIER AG, CH |
|
| PCOW | Change of address of patent owner(s) |
Free format text: NEW ADDRESS: HAUPTSTRASSE 134, 4450 SISSACH (CH) |