DE10137093A1 - Verfahren zum Erkennen eines Codes und Codeleser - Google Patents
Verfahren zum Erkennen eines Codes und CodeleserInfo
- Publication number
- DE10137093A1 DE10137093A1 DE2001137093 DE10137093A DE10137093A1 DE 10137093 A1 DE10137093 A1 DE 10137093A1 DE 2001137093 DE2001137093 DE 2001137093 DE 10137093 A DE10137093 A DE 10137093A DE 10137093 A1 DE10137093 A1 DE 10137093A1
- Authority
- DE
- Germany
- Prior art keywords
- code
- neural network
- image
- identifying
- locating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
- G06K7/1482—Methods for optical code recognition the method including quality enhancement steps using fuzzy logic or natural solvers, such as neural networks, genetic algorithms and simulated annealing
Abstract
Die Erfindung betrifft ein Verfahren zum Erkennen eines Codes, bei dem der Code innerhalb einer Bildumgebung lokalisiert und/oder identifiziert wird. Dieser Schritt wird mittels eines neuronalen Netzwerkes durchgeführt. Die Erfindung betrifft ferner einen entsprechenden Codeleser.
Description
- Die Erfindung betrifft ein Verfahren zum Erkennen eines Codes, bei dem der Code innerhalb einer Bildumgebung lokalisiert und/ oder identifiziert wird. Die Erfindung betrifft ferner einen entsprechenden Codeleser, der eine Einrichtung zum Lokalisieren und/oder Identifizieren eines Codes innerhalb einer Bildumgebung aufweist.
- Codes, die eine visuelle Information enthalten, sind als eindimensionale Codes, insbesondere sogenannte Barcodes, und als zweidimensionale Codes, sogenannte Matrixcodes, bekannt. Zu den letztgenannten zählen beispielsweise die Codearten Maxicode, Datamatrix, QR, PDF 417 und MicroPDF 417. Durch Standardisierungsvereinigungen, beispielsweise der Automatic Identification Manufacturers, werden die unterschiedlichen Codearten spezifiziert, und es werden jeweils zugeordnete Referenz- Decodieralgorithmen empfohlen.
- Zum Einlesen eines derartigen Codes sind im wesentlichen die Schritte des Lokalisierens des Codes, des Identifizierens der Codeart und des nachfolgenden Decodierens des Codes erforderlich. Die verbreiteten Referenz-Decodieralgorithmen verwenden für das Auffinden der betreffenden Codeart innerhalb der Bildumgebung zunächst einen für die Codeart angepaßten Suchalgorithmus, bevor die eigentliche Decodierung des gefundenen Codes erfolgt.
- Jede Codeart besitzt ein charakteristisches Referenzmuster (sogenanntes "Finder Pattern"), das die Lagebestimmung und Klassifizierung des die eigentliche Codeinformation enthaltenden Codes ermöglicht. Bei dem Referenzmuster kann es sich beispielsweise um ein L-Muster (Datamatrix) oder konzentrische Kreise (Maxicode) handeln.
- In manchen Fällen problematisch ist die vergleichsweise langwierige Rechenzeit für das Lokalisieren des Codes und das Identifizieren der Codeart. Sobald der Code aufgefunden und klassifiziert worden ist, kann die eigentliche Decodierung relativ schnell erfolgen. Der Grund für dieses Mißverhältnis liegt darin, daß oft eine große Anzahl von Bildpixeln (Bildpunktelementen) verarbeitet werden muß, die lediglich eine vergleichsweise geringe Anzahl von Codepixeln enthält.
- Eine Aufgabe der Erfindung besteht deshalb darin, die für das Lokalisieren und/oder Identifizieren des Codes benötigte Auswertezeit zu verkürzen.
- Diese Aufgabe wird für ein Verfahren der eingangs genannten Art dadurch gelöst, daß der Schritt des Lokalisierens und/ oder der Schritt des Identifizierens des Codes mittels eines neuronalen Netzwerkes durchgeführt wird.
- Die Aufgabe wird für einen Codeleser mit einer Einrichtung zum Lokalisieren und/oder Identifizieren eines Codes dadurch gelöst, daß diese Einrichtung ein neuronales Netzwerk aufweist.
- Bei der Erfindung wird also für den - bislang vergleichsweise zeitaufwendigen - Schritt der Lagebestimmung und/ oder den Schritt der Klassifizierung des Codes ein neuronales Netzwerk eingesetzt. Diesem neuronalen Netzwerk wird als Eingangswerte ein Bilddatensatz zugeführt, der die optische Information über die Bildumgebung und den darin angeordneten Code enthält. Als Ausgangswerte gibt das neuronale Netzwerk eine Information über die Lage und/oder die Art des Codes ab. Diese Information kann dann als Grundlage für die eigentliche Decodierung des Codes gemäß einem der empfohlenen Referenz-Decodieralgorithmen verwendet werden.
- Unter der Lage des Codes ist die Position des Codes, insbesondere eine Ortskoordinate zu verstehen, wobei die ermittelte Lage zusätzlich eine Information über die Ausrichtung bzw. Winkelstellung des Codes enthalten kann, wie nachfolgend noch erläutert wird.
- Bei einem neuronalen Netzwerk handelt es sich um eine Datenverarbeitungsstruktur, die die Struktur und Funktion von Nervennetzen lebender Organismen künstlich nachvollzieht, insbesondere indem die Eingangsinformation über gewichtete Knotenpunkte abgearbeitet wird. Gegenüber dem sukzessiven Abarbeiten der einzelnen Arbeitsschritte eines herkömmlichen Suchalgorithmus zeichnet sich ein neuronales Netzwerk insbesondere durch Lernfähigkeit und Generalisierungsfähigkeit aus. Die Eingangsdaten werden parallel abgearbeitet. Die Implementierung eines neuronalen Netzwerkes ist inzwischen allgemein durch handelsübliche Software möglich.
- Ein wesentlicher Vorteil der Erfindung besteht darin, daß ein vergleichsweise schnelles Lokalisieren und Identifizieren eines Codes innerhalb einer betrachteten Bildumgebung möglich ist. Dieser Vorteil beruht insbesondere auf dem parallelen Abarbeiten der Bilddaten. Der Zeitgewinn macht sich besonders deutlich, wenn nach mehreren verschiedenen Codearten gesucht werden soll, da sich aufgrund des Einsatzes des neuronalen Netzwerkes die Suchzeiten für die verschiedenen Codearten nicht aufsummieren.
- Ein weiterer Vorteil der Erfindung besteht darin, daß das neuronale Netzwerk mit einfachen Mitteln konfiguriert werden kann. Vor allem das Einlernen des neuronalen Netzwerkes vor der eigentlichen Betriebsphase des Verfahrens bzw. des Codelesers kann mit geringem, einmaligem Trainingsaufwand erfolgen, so daß keine Umsetzung eines oder mehrerer Suchalgorithmen in lauffähigen Programmcode erforderlich ist.
- Außerdem können das erfindungsgemäße Verfahren und der entsprechende Codeleser leicht an neue Umgebungsbedingungen oder an neue Codearten angepaßt werden, da hierfür lediglich das Einlernen des neuronalen Netzwerkes entsprechend erweitert werden muß, beispielsweise durch Verwendung zusätzlicher Trainingsbilder.
- Bei einer bevorzugten Ausführungsform der Erfindung liefert das neuronale Netzwerk als Ausgangsgröße einen Aktivitätswert. Dieser Aktivitätswert stellt ein Maß für die Übereinstimmung der zugeführten Bilddaten mit den eingelernten Datensätzen dar, und er ermöglicht somit eine Entscheidung darüber, ob die betrachtete Bildumgebung einen Code enthält, wo dieser Code angeordnet ist bzw. um welche Codeart es sich handelt.
- Vorzugsweise ist der Aktivitätswert auf den Wert Eins normiert.
- Weiterhin ist es bevorzugt, wenn die anhand eines Bilddatensatzes für verschiedene Codearten ermittelten Aktivitätswerte miteinander und/oder mit Referenzwerten verglichen werden, und wenn die Identifizierung der Art des Codes in Abhängigkeit von dem Ergebnis dieses Vergleichs erfolgt. Anhand der Aktivitätswerte kann also eine Zugehörigkeitsbewertung durchgeführt werden. Dies geschieht bevorzugt innerhalb einer Vergleichseinrichtung, der als Eingangswerte die Aktivitätswerte zugeführt werden. Die Vergleichseinrichtung kann das Vergleichsergebnis, also die identifizierte Codeart, an eine Decodiereinrichtung weiterleiten, die anhand des zugeordneten Decodieralgorithmus die Decodierung vornimmt.
- Es ist möglich, daß die betrachtete Bildumgebung in mehrere Teilbilder unterteilt wird, um das Lokalisieren und/oder Identifizieren des Codes mittels des neuronalen Netzwerks teilbilderweise durchzuführen. Hierbei handelt es sich vorzugsweise um keine physische, sondern eine virtuelle Unterteilung des Bilddatensatzes, wobei die entsprechenden Daten dem neuronalen Netzwerk teilbilderweise zugeführt werden.
- Bei einer derartigen Unterteilung kann für jedes Teilbild ein Aktivitätswert ermittelt werden, um auf diese Weise eine Information über die Lage des Codes und/oder die in einem Teilbild enthaltene Codeart zu gewinnen.
- Insbesondere ist es möglich, die für die verschiedenen Teilbilder ermittelten Aktivitätswerte miteinander und/oder mit Referenzwerten zu vergleichen, und in Abhängigkeit von dem Ergebnis dieses Vergleichs dasjenige Teilbild zu identifizieren, innerhalb dessen der Code sich - zumindest zu dem größten erkennbaren Anteil - befindet.
- Mit anderen Worten kann als Ergebnis eines derartigen Vergleichs ein auf die Unterteilung in Teilbilder bezogener Koordinatenwert erzeugt werden, oder es wird sogar ein Pixelwert für den Mittelpunkt des Codes geliefert. Auch der erläuterte Vergleich von Teilbildern kann innerhalb einer oder der bereits genannten Vergleichseinrichtung erfolgen.
- Das neuronale Netzwerk wird besonders effizient eingesetzt, wenn es so konfiguriert ist, daß die für verschiedene Teilbilder ermittelten Aktivitätswerte eine Aussage sowohl über die Art des in der Bildumgebung enthaltenen Codes als auch über die Lage dieses Codes erlauben. Vorzugsweise wird erst eine Entscheidung über die Codeart getroffen, und danach wird der betreffende Code lokalisiert, oder diese beiden Entscheidungen verlaufen parallel.
- Alternativ zu der Unterteilung der Bildumgebung in Teilbilder kann der Aktivitätswert für die gesamte Bildumgebung ermittelt werden. In diesem Fall enthält der Aktivitätswert eine Information über einen Bereich innerhalb der Bildumgebung, in dem sich der gesuchte Code - entsprechend der ermittelten Aktivität des neuronalen Netzwerkes - mit besonders hoher Wahrscheinlichkeit befindet. Dieser durch den Aktivitätswert gekennzeichnete Bereich wird als "region of interest" bezeichnet. Zur Kennzeichnung dieses besonderen Bereichs kann der Aktivitätswert eine Information über die Position sowie die Größe der "region of interest" innerhalb der Bildumgebung enthalten.
- Sofern auf diese Weise ein Aktivitätswert für die gesamte Bildumgebung ermittelt wird, ist es möglich, daß ein einziger Aktivitätswert vom neuronalen Netzwerk ausgegeben wird. Es kann auch vorgesehen sein, daß für jede eingelernte Codeart ein Aktivitätswert ermittelt wird, und zwar jeweils ein einziger Aktivitätswert für die gesamte Bildumgebung. Bei dieser alternativen Ausführungsform erfolgt nämlich keine Unterteilung der Bildumgebung in mehrere Teilbilder, und dementsprechend werden grundsätzlich nicht mehrere der Aktivitätswerte - teilbilderweise - ermittelt.
- Bei der erläuterten alternativen Ausführungsform können die für unterschiedliche Codearten ermittelten Aktivitätswerte miteinander verglichen werden. Im übrigen kann die weitere Verarbeitung der ermittelten Bilddaten genauso erfolgen, wie im Zusammenhang mit der Unterteilung der Bildumgebung in Teilbilder beschrieben. Insbesondere kann für die ermittelte "region of interest" eine Decodierung des Codes durchgeführt werden.
- Für alle der vorgenannten Ausführungsformen ist es von Vorteil, wenn das neuronale Netzwerk - zusätzlich zu dem oder den Aktivitätswerten - auf Grundlage entsprechender Einlernvorgänge einen Rotationswert bestimmt und ausgibt. Dieser Rotationswert kann die Rotationslage des lokalisierten und/oder identifizierten Codes wiedergeben und somit die nachfolgende Decodierung des Codes noch weiter erleichtern und beschleunigen. Alternativ hierzu kann die Rotationslage jedoch auch durch den zugeordneten Referenz-Decodieralgorithmus ermittelt und berücksichtigt werden.
- Das bereits erwähnte Einlernen einer Codeart in das neuronale Netzwerk erfolgt vor dem Lokalisieren und/oder Identifizieren von Codes, und zwar vorzugsweise als einmalige Konfiguration. Die Codeart muß also nicht vor jeder Betriebsphase des Verfahrens bzw. des Codelesers neu eingelernt werden. Bevorzugt werden mehrere verschiedene Codearten dem neuronalen Netzwerk eingelernt, die in der nachfolgenden Betriebsphase parallel gesucht und gegebenenfalls identifiziert werden.
- Das Einlernen einer Codeart erfolgt vorzugsweise auf Grundlage von mehreren, beispielsweise fünf bis zehn Trainingsbildern, wobei die darin enthaltene Bildinformation dem neuronalen Netzwerk in Form eines Bilddatensatzes zugeführt wird. Dies erfolgt insbesondere mittels des auch in der späteren Betriebsphase verwendeten Systems, also beispielsweise mittels desselben optoelektronischen Sensors, der die betrachteten Bilder in eine elektronische Bildinformation umwandelt.
- Die Trainingsbilder bestehen aus Abbildungen unterschiedlicher Bildumgebungen, die jeweils einen Code der einzulernenden Codearten enthalten. Den für eine Codeart herangezogenen Trainingsbildern ist das Referenzmuster (Finder Pattern) der betreffenden Codeart gemeinsam, so daß das neuronale Netzwerk als Ergebnis der Einlernphase dieses Referenzmuster innerhalb unterschiedlicher, auch neuer Bildumgebungen zu erkennen vermag.
- Wichtig für das Einlernen ist, daß die Trainingsbilder nach Trainingsklassen unterschieden werden, die jeweils einer Codeart zugeordnet sind. Auch eine Trainingsklasse "kein Code" mit Abbildungen unterschiedlicher Bildumgebungen ohne darin enthaltenen Code ist möglich.
- Darüber hinaus können zusätzliche Unterklassen innerhalb dieser Trainingsklassen vorgesehen sein. Beispielsweise kann innerhalb einer Trainingsklasse nach der Rotationslage der jeweils abgebildeten Codes unterschieden werden, um die zusätzliche Ausgabe des bereits erwähnten Rotationswerts zu ermöglichen.
- Schließlich ist es bevorzugt, wenn lediglich der Schritt des Lokalisierens und/oder der Schritt des Identifizierens des Codes mittels des neuronalen Netzwerks durchgeführt wird, nicht jedoch das eigentliche Decodieren des Codes. Letzteres erfolgt vorzugsweise auf Grundlage eines für die ermittelte Codeart vorgegebenen Decodieralgorithmus.
- Weitere Ausführungsformen der Erfindung sind in den Unteransprüchen genannt.
- Die Erfindung wird nachfolgend anhand der Zeichnungen beispielhaft erläutert; in diesen zeigen:
- Fig. 1 ein Blockschema des Erkennens und Decodierens eines Codes in der Betriebsphase eines Codelesers, und
- Fig. 2 einen zweidimensionalen Code innerhalb einer Bildumgebung, die in mehrere Teilbilder unterteilt ist.
- Die Erfindung kann wie folgt verwirklicht werden:
Fig. 2 zeigt vor einer Bildumgebung 11 einen zweidimensionalen Code 13 von der Art Datamatrix. - Der Code 13 und die Bildumgebung 11 werden mittels eines optoelektronischen Sensors 15, insbesondere einer CCD-Kamera oder eines Scanners, erfaßt und in eine analoge Bildinformation umgewandelt (Fig. 1). Diese Bildinformation wird danach zu einem digitalen Bilddatensatz 17 digitalisiert.
- Während die Bildinformation zunächst bildpunktweise vorliegt, wird der Bilddatensatz 17 im weiteren Verlauf des Codeerkennungsverfahrens teilbilderweise gehandhabt und behandelt, entsprechend einer in Fig. 2 illustrierten Unterteilung der Bildumgebung 11 in eine Matrix von fünf mal fünf Teilbildern 19.
- Der Bilddatensatz 17 wird - optional - einer Bildvorverarbeitungseinrichtung 21 zugeführt, in der eine Bildrestaurierung und Bildverbesserung, insbesondere eine Kontrasterhöhung stattfindet. Der derartig vorverarbeitete Bilddatensatz 23 wird in angepaßter Form, insbesondere mit der erläuterten Unterteilung entsprechend der verschiedenen Teilbilder 19, an die Eingänge eines neuronalen Netzwerkes 25 weitergeleitet. Hierbei handelt es sich um eine Recheneinheit, die aufgrund ihrer Verschaltung und der Art der parallelen Datenverarbeitung als neuronales Netzwerk konfiguriert ist.
- Das neuronale Netzwerk 25 bestimmt für jedes Teilbild 19 bzw. für den entsprechenden Teil des vorverarbeiteten Bilddatensatzes 23 einen auf den Wert Eins normierten Aktivitätswert. Dieser Aktivitätswert bringt zum Ausdruck, in wie weit der betreffende Teil des Bilddatensatzes 23 mit Trainingsdatensätzen übereinstimmt, die jeweils für eine bestimmte Codeart dem neuronalen Netzwerk 25 eingelernt worden sind. Dieses Einlernen erfolgte in einer einmaligen Einlernphase, die vor der in Fig. 1 dargestellten Betriebsphase des Codelesers stattfand.
- Derartige Aktivitätswerte werden für alle eingelernten Codearten bestimmt, und zwar jeweils für alle Teilbilder 19. In dem in Fig. 2 gezeigten Beispiel werden für die Teilbilder (1, 1) und (2, 2) für die Codeart Datamatrix Aktivitätswerte von 0 bzw. 0,7, und für die Codeart Maxicode Aktivitätswerte von 0 bzw. 0 ermittelt.
- Sämtliche ermittelten Aktivitätswerte werden, gemeinsam mit der zugeordneten Ortsinformation, als Ausgangswerte 27 von dem neuronalen Netzwerk 25 an eine Vergleichseinrichtung 29 weitergeleitet.
- Innerhalb der Vergleichseinrichtung 29 werden die Aktivitätswerte miteinander und/oder mit Referenzwerten verglichen. Insbesondere wird diejenige Codeart ermittelt, für die der höchste Aktivitätswert vorliegt, und für diese Codeart werden alle Teilbilder 19 ausgewählt, für die der Aktivitätswert der betreffenden Codeart größer Null ist. Alternativ hierzu kann vorgesehen sein, daß nur solche Aktivitätswerte ausgewählt werden, die einen vorbestimmten Referenzwert überschreiten. Außerdem kann als zusätzliche Bedingung vorgesehen sein, daß nur benachbarte Teilbilder 19 ausgewählt werden.
- Nach dieser Auswertung und Auswahl von Aktivitätswerten übermittelt die Vergleichseinrichtung 29 die festgestellte Codeart und die Ortsinformation der ausgewählten, also für diese Codeart aktiven Teilbilder 19 an eine Decodiereinrichtung 33. In dieser wird der Code decodiert, das heißt die Bildinformation der bereits lokalisierten Teilbilder 19 wird hinsichtlich der identifizierten Codeart ausgewertet. Hierbei kommt im wesentlichen ein Referenz-Decodieralgorithmus oder ein hierauf basierender Algorithmus zur Anwendung. Die Decodiereinrichtung 33 liefert als Ausgangssignal 35 die in dem Code 13 verschlüsselte Information. Bezugszeichenliste 11 Bildumgebung
13 Code
15 optoelektronischer Sensor
17 Bilddatensatz
19 Teilbild
21 Bildvorverarbeitungseinrichtung
23 vorverarbeiteter Bilddatensatz
25 neuronales Netzwerk
27 Ausgangswerte
29 Vergleichseinrichtung
31 Codeart- und Ortsinformation
33 Decodiereinrichtung
35 Ausgangssignal
Claims (21)
1. Verfahren zum Erkennen eines Codes (13),
bei dem der Code innerhalb einer Bildumgebung (11) lokalisiert
und/oder identifiziert wird,
dadurch gekennzeichnet,
daß der Schritt des Lokalisierens und/oder der Schritt des
Identifizierens des Codes (13) mittels eines neuronalen Netzwerkes (25)
durchgeführt wird.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet,
daß für den Schritt des Lokalisierens und/ oder den Schritt des
Identifizierens des Codes (13) durch das neuronale Netzwerk (25)
wenigstens ein insbesondere normierter Aktivitätswert (27) ermittelt
wird.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet,
daß mehrere Aktivitätswerte (27) miteinander und/oder mit einem
Referenzwert verglichen werden, und
daß in Abhängigkeit von dem Ergebnis dieses Vergleichs die Art des
innerhalb der Bildumgebung (11) angeordneten Codes identifiziert
wird.
4. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß für den Schritt des Lokalisierens und/oder den Schritt des
Identifizierens des Codes (13) die Bildumgebung (11) in mehrere
Teilbilder (19) unterteilt wird.
5. Verfahren nach Anspruch 4,
dadurch gekennzeichnet,
daß Aktivitätswerte (27), die von dem neuronalen Netzwerk (25) für
die Teilbilder (19) ermittelt werden, miteinander und/oder mit einem
Referenzwert verglichen werden.
6. Verfahren nach Anspruch 5,
dadurch gekennzeichnet,
daß in Abhängigkeit von dem Ergebnis des Vergleichs wenigstens
dasjenige Teilbild (19) bestimmt wird, innerhalb dessen sich der
Code oder ein Teil des Codes (13) befindet.
7. Verfahren nach einem der Ansprüche 2 und 3,
dadurch gekennzeichnet,
daß für die gesamte Bildumgebung - insgesamt oder je Codeart - ein
einziger Aktivitätswert ermittelt wird,
wobei der Aktivitätswert vorzugsweise einen besonderen Bereich der
Bildumgebung (region of interest) kennzeichnet.
8. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß das neuronale Netzwerk (25) zusätzlich einen Rotationswert
bestimmt, der der Rotationslage des Codes (13) innerhalb der
Bildumgebung (11) entspricht.
9. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß vor dem Schritt des Lokalisierens und/oder dem Schritt des
Identifizierens des Codes (13) wenigstens eine, vorzugsweise
mehrere Codearten dem neuronalen Netzwerk (25) eingelernt werden.
10. Verfahren nach Anspruch 9,
dadurch gekennzeichnet,
daß für den Schritt des Einlernens der wenigstens einen Codeart
Bilddatensätze von Code-Beispielen, die der Codeart entsprechen
und die innerhalb unterschiedlicher Bildumgebungen abgebildet
sind, dem neuronalen Netzwerk (25) zugeführt werden.
11. Verfahren nach einem der Ansprüche 9 und 10,
dadurch gekennzeichnet,
daß für den Schritt des Einlernens der wenigstens einen Codeart
zusätzlich unterschieden wird nach der Rotationslage des Codes.
12. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß vor dem Schritt des Lokalisierens und/ oder dem Schritt des
Identifizierens des Codes (13) die den Code (13) aufweisende
Bildumgebung (11) mittels eines optoelektronischen Sensors (15) in
einen dem neuronalen Netzwerk (25) zuzuführenden Bilddatensatz
(17) umgewandelt wird.
13. Verfahren nach einem der vorangehenden Ansprüche,
dadurch gekennzeichnet,
daß vor dem Schritt des Lokalisierens und/oder dem Schritt des
Indentifizierens des Codes (13) ein der Bildumgebung (11)
entsprechender Bilddatensatz (17) dem neuronalen Netzwerk (25) zugeführt
wird.
14. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß nach dem Schritt des Lokalisierens und/oder dem Schritt des
Identifizierens des Codes (13) der Code decodiert wird.
15. Verfahren nach Anspruch 14,
dadurch gekennzeichnet,
daß nur der Schritt des Lokalisierens und/oder der Schritt des
Identifizierens des Codes (13), nicht jedoch der Schritt des
Decodierens mittels des neuronalen Netzwerkes (25) durchgeführt wird.
16. Verfahren nach einem der Ansprüche 14 und 15,
dadurch gekennzeichnet,
daß der Schritt des Decodierens des Codes (13) anhand eines
Decodier-Algorithmus erfolgt.
17. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß es sich bei dem Code (13) um einen eindimensionalen Code,
insbesondere einen Barcode handelt, oder um einen
zweidimensionalen Code, insbesondere der Art Maxicode, Datamatrix, QR, PDF
417, MicroPDF 417.
18. Codeleser zum Erkennen und Decodieren eines Codes (13),
der eine Einrichtung (25) zum Lokalisieren und/oder Identifizieren
eines Codes innerhalb einer Bildumgebung (11) aufweist, und der
insbesondere zur Durchführung des Verfahrens nach einem der
vorhergehenden Ansprüche ausgebildet ist,
dadurch gekennzeichnet,
daß die Einrichtung zum Lokalisieren und/oder Identifizieren des
Codes ein neuronales Netzwerk (25) aufweist.
19. Codeleser nach Anspruch 18,
dadurch gekennzeichnet,
daß ein optoelektronischer Sensor (15) vorgesehen ist, durch den die
Bildumgebung (11) in einen dem neuronalen Netzwerk (25)
zuführbaren Bilddatensatz (17, 23) umwandelbar ist.
20. Codeleser nach einem der Ansprüche 18 und 19,
dadurch gekennzeichnet,
daß eine Vergleichseinrichtung (29) zum Vergleichen der
Ausgangswerte (27) des neuronalen Netzwerks (25) miteinander und/oder mit
Referenzwerten vorgesehen ist.
21. Codeleser nach einem der Ansprüche 18 bis 20,
dadurch gekennzeichnet,
daß eine Decodiereinrichtung (33) zum Decodieren des lokalisierten
und/oder identifizierten Codes (13) anhand eines Decodier-
Algorithmus vorgesehen ist.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001137093 DE10137093A1 (de) | 2001-07-30 | 2001-07-30 | Verfahren zum Erkennen eines Codes und Codeleser |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001137093 DE10137093A1 (de) | 2001-07-30 | 2001-07-30 | Verfahren zum Erkennen eines Codes und Codeleser |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10137093A1 true DE10137093A1 (de) | 2003-02-13 |
Family
ID=7693595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2001137093 Withdrawn DE10137093A1 (de) | 2001-07-30 | 2001-07-30 | Verfahren zum Erkennen eines Codes und Codeleser |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10137093A1 (de) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011128089A1 (de) | 2010-04-14 | 2011-10-20 | Ioss Intelligente Optische Sensoren & Systeme Gmbh | Verfahren zur konkretisierung eines substrates |
EP3428834A1 (de) * | 2017-07-12 | 2019-01-16 | Sick AG | Optoelektronischer codeleser und verfahren zum lesen von optischen codes |
DE102018109392A1 (de) | 2018-04-19 | 2019-10-24 | Beckhoff Automation Gmbh | Verfahren zum erfassen optischer codes, automatisierungssystem und computerprogrammprodukt zum durchführen des verfahrens |
EP3926519A1 (de) * | 2020-06-18 | 2021-12-22 | Leuze electronic GmbH + Co. KG | Optischer sensor und verfahren zur erfassung von codes |
EP4030337A1 (de) * | 2021-01-18 | 2022-07-20 | Leuze electronic GmbH + Co. KG | Optischer sensor und verfahren zur erfassung von codes |
EP4231195A1 (de) | 2022-02-21 | 2023-08-23 | Sick Ag | Auffinden von codebildbereichen in einem bild eines codetragenden objekts |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088482A (en) * | 1998-10-22 | 2000-07-11 | Symbol Technologies, Inc. | Techniques for reading two dimensional code, including maxicode |
DE19957390A1 (de) * | 1999-11-24 | 2001-06-07 | Andreas Kuntze | Individualisierungssystem für einen Gegenstand |
-
2001
- 2001-07-30 DE DE2001137093 patent/DE10137093A1/de not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088482A (en) * | 1998-10-22 | 2000-07-11 | Symbol Technologies, Inc. | Techniques for reading two dimensional code, including maxicode |
DE19957390A1 (de) * | 1999-11-24 | 2001-06-07 | Andreas Kuntze | Individualisierungssystem für einen Gegenstand |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011128089A1 (de) | 2010-04-14 | 2011-10-20 | Ioss Intelligente Optische Sensoren & Systeme Gmbh | Verfahren zur konkretisierung eines substrates |
DE102010014937A1 (de) | 2010-04-14 | 2011-10-20 | Ioss Intelligente Optische Sensoren & Systeme Gmbh | Verfahren zum Lesen eines Codes auf einem Substrat durch Zusammensetzen von Code-Fragmenten unter Verwendung eines bildgebenden Codelesers |
DE102010014937B4 (de) * | 2010-04-14 | 2013-10-17 | Ioss Intelligente Optische Sensoren & Systeme Gmbh | Verfahren zum Lesen eines Codes auf einem Substrat durch Zusammensetzen von Code-Fragmenten unter Verwendung eines bildgebenden Codelesers |
US8881985B2 (en) | 2010-04-14 | 2014-11-11 | Ioss Intelligente Optische Sensoren & Systeme Gmbh | Method for the concretizing of a substrate |
EP3428834A1 (de) * | 2017-07-12 | 2019-01-16 | Sick AG | Optoelektronischer codeleser und verfahren zum lesen von optischen codes |
US11176454B2 (en) | 2017-07-12 | 2021-11-16 | Sick Ag | Optoelectronic code reader and method for reading optical codes |
DE102018109392A1 (de) | 2018-04-19 | 2019-10-24 | Beckhoff Automation Gmbh | Verfahren zum erfassen optischer codes, automatisierungssystem und computerprogrammprodukt zum durchführen des verfahrens |
US10922510B2 (en) | 2018-04-19 | 2021-02-16 | Beckhoff Automation Gmbh | Method, automation system and computer system for detecting optical codes |
EP3926519A1 (de) * | 2020-06-18 | 2021-12-22 | Leuze electronic GmbH + Co. KG | Optischer sensor und verfahren zur erfassung von codes |
EP4030337A1 (de) * | 2021-01-18 | 2022-07-20 | Leuze electronic GmbH + Co. KG | Optischer sensor und verfahren zur erfassung von codes |
EP4231195A1 (de) | 2022-02-21 | 2023-08-23 | Sick Ag | Auffinden von codebildbereichen in einem bild eines codetragenden objekts |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018109392A1 (de) | Verfahren zum erfassen optischer codes, automatisierungssystem und computerprogrammprodukt zum durchführen des verfahrens | |
EP2417561B1 (de) | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes | |
DE102017220307B4 (de) | Vorrichtung und Verfahren zum Erkennen von Verkehrszeichen | |
EP2034461B1 (de) | Verfahren zur Detektion und/oder Verfolgung von bewegten Objekten in einer Überwachungsszene mit Störern, Vorrichtung sowie Computerprogramm | |
DE19530829C2 (de) | Verfahren zum elektronischen Wiederauffinden von einem Dokument hinzugefügter Information | |
DE102018128531A1 (de) | System und Verfahren zum Analysieren einer durch eine Punktwolke dargestellten dreidimensionalen Umgebung durch tiefes Lernen | |
DE112017007246T5 (de) | Bildanalysevorrichtung, bildanalyseverfahren und bildanalyseprogramm | |
EP0752137B1 (de) | Identifikations- und kontrollsystem für verarbeitungs- und/oder transportgut | |
DE4119091C2 (de) | Verfahren zum Erkennen von Zeichen, insbesondere Schriftzeichen und Einrichtung zur Durchführung des Verfahrens | |
DE102018109276A1 (de) | Bildhintergrundsubtraktion für dynamische beleuchtungsszenarios | |
EP1180258B1 (de) | Mustererkennung mittels prüfung zusätzlicher merkmale nach teilverarbeitung | |
EP3123393B1 (de) | Verfahren zur optischen erkennung von zeichen | |
DE10137093A1 (de) | Verfahren zum Erkennen eines Codes und Codeleser | |
DE4407998C2 (de) | Verfahren und Vorrichtung zur Erkennung eines Musters auf einem Beleg | |
DE102019204602B4 (de) | Verfahren und Vorrichtung zur Maskierung von in einem Bild enthaltenen Objekten | |
DE102019115224A1 (de) | System und verfahren zum auffinden und klassifizieren von linien in einem bild mittels eines schichtsystems | |
BE1029610A1 (de) | Systeme und Verfahren zum Verbessern einer Performanz einer trainierbaren optischen Zeichenerkennung (OCR) | |
DE19822751A1 (de) | System und Verfahren zur Identifizierung und Authentifizierung von Zubehör, Hilfs- und/oder Betriebsstoffen für technische Geräte | |
DE102021206625A1 (de) | Computerimplementiertes Verfahren und System zur Unterstützung einer Installation eines bildgebenden Sensors und Trainingsverfahren | |
DE102007025620A1 (de) | Vorrichtung zur Bestimmung einer Objekt- und/oder Existenzwahrscheinlichtkeit eines Suchobjekts in einem Auslesefenster eines Bildes, Verfahren sowie Computerprogramm | |
EP3119035B1 (de) | Verfahren zum überprüfen von netzwerkeinrichtungen und netzwerk | |
EP0731416B1 (de) | Vorrichtung zur berührungslosen Erkennung | |
DE19507059B9 (de) | Verfahren zur omnidirektionalen Erfassung von OCR-Klarschrift auf Etiketten oder ähnlichen Datenträgern durch zufallsgesteuerte Suche und Dekodierung mit einem neuronalen Netzwerk | |
DE102019109287A1 (de) | System und Verfahren zum Erkennen von potenziellem Betrug seitens des Kassierers | |
DE4136830C2 (de) | Datenverarbeitungseinrichtung und Verfahren zur Mustererkennung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8110 | Request for examination paragraph 44 | ||
8130 | Withdrawal |