DE69322923T2 - Gerät zum Überprüfen eines Containerkodes - Google Patents
Gerät zum Überprüfen eines ContainerkodesInfo
- Publication number
- DE69322923T2 DE69322923T2 DE69322923T DE69322923T DE69322923T2 DE 69322923 T2 DE69322923 T2 DE 69322923T2 DE 69322923 T DE69322923 T DE 69322923T DE 69322923 T DE69322923 T DE 69322923T DE 69322923 T2 DE69322923 T2 DE 69322923T2
- Authority
- DE
- Germany
- Prior art keywords
- container
- characters
- code checking
- checking device
- code
- 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.)
- Expired - Fee Related
Links
Classifications
-
- 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/10—Image acquisition
-
- 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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/754—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries involving a deformation of the sample pattern or of the reference pattern; Elastic matching
-
- 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
- G06V30/19—Recognition using electronic means
- G06V30/192—Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
- G06V30/194—References adjustable by an adaptive method, e.g. learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
Description
- Die vorliegende Erfindung betrifft eine Vorrichtung zum Verifizieren eines Behältercodes und spezieller zum Überprüfen eines Identifikationscodes auf einem Frachtbehälters oder -containers anhand eines Sollcodes.
- Frachtcontainer haben jeweils einen eindeutigen Identifikationscode (ID-Code), der auf die Seiten der Containerfläche gemalt oder auf andere Weise aufgebracht ist. Der ID-Code muß immer dann gelesen und anhand einer Aufzeichnung in einem Computer überprüft werden, wenn ein Container in einem Hafen in einen oder aus einem Containerhof gezogen wird. Dadurch wird sichergestellt, daß die richtige Zugmaschine den oder die richtigen Container durch das Tor eines Frachtterminals zieht. Momentan wird der Code manuell gelesen und überprüft, wenn die Zugmaschine das Tor passiert. Die Zugmaschine muß am Tor angehalten werden, wenn der ID-Code auf dem jeweiligen Container, der von der Zugmaschine gezogen wird, überprüft wird. Die Untersuchung des ID-Codes durch den Menschen ist langsam, und es kann leicht etwas übersehen oder ein Fehler gemacht werden. An jedem Tor muß wenigstens eine Bedienungsperson stehen, was einen erheblichen Personalaufwand nötig macht.
- Das Dokument "Proceeding of the 14th Annual International Computer Software & Applications Confetence, 31. Oktober 1990, Chicago, IL; Seiten 190-195; H. C. Lui et al.; 'Neural Network Application to Container Number Recognition' " beschreibt die Anwendung einer Neuerkennung auf die Erkennung von Behälteridentifikationszahlen, wobei jeder Knoten der Eingangsschicht mit alllen Knoten der nachfolgenden Zwischenschicht verbunden ist.
- Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Behälterzahlen-Erkennungsvorrichtung vorzusehen, welche die heutigen Prüfprozesse automatisiert.
- Eine andere Aufgabe der vorliegenden Erfindung besteht darin, eine Behälterzahlen-Erkennungsvorrichtung vorzusehen, welche die Wirksamkeit der Prüfprozesse verbessert und die Anwesenheit nur einer Bedienungsperson erfordert, um mehrere Tore an dem Hafen zu besetzen.
- Die vorliegende Erfindung sieht hierfür eine Containercode- Prüfvorrichtung gemäß Anspruch 1 vor.
- Für ein besseres Verständnis der Erfindung ist im folgenden ein Ausführungsbeispiel der Erfindung in bezug auf die Zeichung beschrieben. In den Figuren zeigen:
- Fig. 1a und 1b Beispiele für Container-Identifikationscodes, die hervorgehoben wurden, wobei der ID-Code in Fig. 1a eine helle Farbe auf einem dunklen Hintergrund hat, und der ID-Code der Fig. 1b hat eine dunkle Farbe auf einem hellen Hintergrund;
- Fig. 2 ist eine schematische Darstellung einer Ausführungsform der vorliegenden Erfindung;
- Fig. 3 zeigt eine Zugmaschine an einem Tor, das mit einer Ausführungsform der vorliegenden Erfindung ausgerüstet ist;
- Fig. 4 zeigt vertikale und horizontale Abschnitte in einer Pixelanordnung gemäß einer Ausführungsform der vorliegenden Erfindung;
- Fig. 5 zeigt ein rechtes, vertikales Grenzsegment gemäß einer Ausführungsform der vorliegenden Erfindung;
- Fig. 6 ist eine schematische Darstellung einer mehrschichtigen neuronalen Netzstruktur, wie sie in einer Ausführungsform der vorliegenden Erfindung eingesetzt wird;
- Fig. 7(i) zeigt eine neuronale Netzarchitektur auf Windowsbasis zur Verwendung mit einer Ausführungsform der vorliegenden Erfindung;
- Fig. 7(ii) zeigt eine übliche neuronale Netzstruktur;
- Fig. 8 zeigt ein Beispiel eines Match-Problems;
- Fig. 9 zeigt einen Match-Weg, der für das Beispiel der Fig. 8 gefunden wurde; und
- Fig. 10 zeigt die lokalen Kontinuitätsbeschränkungen, die auf eine Ausführungsform der vorliegenden Erfindung anwendbar sind.
- Ein Frachtbehälter- oder Container, wie ein genormter ISO-Container, umfaßt einen starren Metallkastenbehälter. Jeder Container wird von einem eindeutigen ID-Code identifiziert, der eine Kette aus alphanumerischen Zeichen umfaßt, die üblicher Weise auf wenigstens eine Oberfläche des Containers gemalt ist. Auf die Containeroberfläche wird auch andere Information aufgebracht, wie das Bruttogewicht, das Nettogewicht, das Ursprungsland und dergleichen. Der ID-Code liegt somit zwischen anderen Zeichen, die andere Information enthalten. Die Container selbst weisen aufgrund der Umgebung, in der sie verwendet werden, häufig selbst Markierungen, Schmutz oder Einbuchtungen auf. Die Anwesenheit von rostigen Stellen, Konstruktionsträgern, Schmierern und anderen Störungen, kann die Zeichen verzerren. Die Schwankung der Intensität der Zeichen und des Hintergrunds und der damit einhergehende mangelhafte Kontrast stellen somit Probleme für ein zuverlässiges Verfahren und eine Vorrichtung zur Extraktion, Erkennung und Überprüfung von ID-Codezeichen dar. Die Intensität und der Kontrast der Zeichen und des Hintergrunds schwankt abhängig von der Beleuchtung der Containeroberfläche unter verschiedenen Bedingungen, wie bei Tageslicht, zur Nacht und bei bewölktem Himmel. Die Zeichen des ID-Codes können ferner unter einem Winkel an die Erkennungsvorrichtung herangeführt werden, was zu Zeichen führt, die schräg stehen, wie in den Fig. 1a und 1b gezeigt, wobei die Figuren zusätzlich zu dem ID-Code auch andere Zeichen zeigen, die auf jedem Container vorkommen.
- Die in Fig. 2 gezeigte Vorrichtung gemäß der Erfindung umfaßt mehrere Kameras 1, 2 und 3, in diesem Fall 3, und einen Multiplexer 4, der die Signale von den Kameras 1, 2 und 3 über eine BNC-Verbindung 6 zu einem Transputernetz 5 sendet. Der Datenstrom von dem Transputernetz 5 wird über einen AT-Bus 8 mit einem Hostrechner 7 verbunden und von diesem gesteuert. Der Hostrechner 7 kann z. B. einen Mikrocomputer eines AT-PCs 386 sein, der seinerseits über eine serielle RS-232-Verbindung 9 mit einem Tor-Computer 10 verbunden ist, der Containerinformation speichert, die von einem Mainframe-Computer (nicht gezeigt) erhalten wird.
- Wenn eine mit einem Container beladene Zugmaschine sich einem Tor annähert und an dem Tor anhält (wie in Fig. 3 gezeigt) löst die Bedienungsperson dieses Tores den Prüfprozeß auf dem Host-PC 7 aus. Drei Ringleitungs-TV-Kameras 1, 2 und 3 werden dazu verwendet, Bilder des Containers 8 aufzunehmen. Jedes Bild umfaßt eine Matrix aus 720 · 512 Pixeln, wobei jedes Pixel eine von 256 Graustufen annehmen kann. Die Bilder werden über den Multiplexer 4 zu dem Transputernetz 5 gesendet. Das Transputernetz 5 umfaßt einen monochromen Bilddigitalisierer 11 (Fig. 2), der als ein Mastertransputer dient und den Strom der Ausführungsbefehle zu mehreren Arbeitstransputern 12, 13, und 14 (in diesem Fall 3) steuert, und einen Grundtransputer 12, der mit dem Host-PC 7 verbunden ist und die Datenübertragung zwischen dem Host-PC 7 und anderen Transputern ermöglicht. Der Host-PC 7 ist verantwortlich für die Speicherung, Eingabe und Ausgabe von Dateien über eine Tastatur und eine VDU (Video Display Unit; Bildschirmgerät) und für die Kommuni kation mit dem Tor-Mainframe-Computer, der eine Aufzeichnung der Containerinformation speichert, die von einem Mainframe- Computer erhalten wurde, der von dem Host-PC 7 abgefragt werden kann. Der Host-PC 7 zeigt der Bedienungsperson auch die Ergebnisse der Überprüfung an. Wenn eine Zugmaschine mit einem Container 8 oder Containern bei dem Tor ankommt, sendet der Mainframe-Computer des Tors Information über den bei dem Tor erwarteten Container 8, einschließlich des erwarteten ID-Codes 16 des Containers, an den Tor-PC 10.
- Die richtige Kamera 1,2 und 3, die auf die Rückseite des Containers 8 fokussiert werden soll, wird gewählt, und die Kontrasteinstellung des Bilddigitalisierers wird eingestellt, um einen guten Kontrastpegel zwischen den Zeichen auf dem Container 8 und dem Hintergrund zu erhalten. Dann lokalisiert und extrahiert ein Segmentierprozeß einen Umgrenzungskasten für jedes ID-Zeichen des ID-Codes 16 aus dem Containerbild. Der extrahierte Umgrenzungskasten wird auf eine Standardgröße normiert, und eine Zeichen-Pixelabbildung dieser Information wird an einen Netzwerk-Zeichenerkenner gesendet, der das alphanumerische Zeichen berechnet, das am wahrscheinlichsten von der Pixelabbildung des Zeichens dargestellt wird. Ein vorgeschlagener ID-Zeichencode, der die erkannten Zeichen umfaßt, welche aus der Bildinformation abgeleitet wurden, die von dem Container 8 extrahiert wurde, wird mit dem erwarteten ID-Code, der von dem Tor-Rechner 10 vorgesehen wird, zusammengebracht (match), und die beiden Codes werden verglichen. Der Vergleich der beiden ID-Codes erzeugt ein Maß der Zuverlässigkeit, das den Grad der Übereinstimmung der beiden ID-Codes angibt. Die Bedienungsperson kann dann entscheiden, abhängig von dem Zuverlässigkeitsmaß, das bei dem Match-Vergleich zwischen den beiden ID-Codes ermittelt wurde, die Zugmaschine zurückzuhalten oder durchzulassen. Wenn das Zuverlässigkeitsmaß über einer voreingestellten Schwelle liegt, darf die Zugmaschine weiterfahren, wenn nicht, wird die Zugmaschine an dem Tor angehalten.
- Das Nummern-Erkennungssystem für Container kann die gesamte Spanne der Containergrößen verarbeiten. Diese umfaßt Container mit einer Länge von 20 Fuß, 40 Fuß und 45 Fuß (1,6 m, 12,2 m bzw. 13,7 m) sowie Höhen im Bereich von 8 Fuß bis 9,5 Fuß (2,4 m bis 2,9 m). Auch die Längen der Gestelle, auf denen der oder die Container gesetzt wird (werden), kann 20 Fuß, 40 Fuß oder 45 Fuß (6,1 m, 12,3 m bzw. 13,7 m) betragen. Die Anzahl und Position der Kameras ist daher so gewählt, daß die aufgenommenen Containerbilder ausreichend gut sind, um die Zeichen des ID-Codes auflösen zu können.
- Im folgenden ist der Betrieb der Vorrichtung mit weiteren Einzelheiten beschrieben.
- Während des Betriebs am Tage ist der natürliche Beleuchtungspegel der Container 8 am Tor normalerweise ausreichend, und es ist keine externe Beleuchtung notwendig. Bei Betrieb · während des Abends oder der Nacht werden jedoch fluoreszierende Leuchten 17, 18 zum Beleuchten des Containers 8 verwendet. Wie in Fig. 3 gezeigt, ist ein hinteres Licht 17 hinter dem Container 8 angeordnet, das dem Tor 19 gegenüberliegt, um den Kontrast des Bildes des Containers 8 gegen den Hintergrund zu verbessern, und eine frontale Beleuchtungsquelle 18 liegt dem Container 8 gegenüber, um die Beleuchtung der Merkmale auf der Oberfläche des Containers, wie der Zeichen 16 des ID-Codes, zu verbessern. Wenn die Zeichen, die von der Oberfläche des Containers extrahiert werden sollen, gegenüber dem Hintergrund der Containeroberfläche auflösbar sein sollen, hat sich herausgestellt, daß man einen Intensitätskontrast zwischen dem Hintergrund und dem Objekt von wenigstens 15 bis 20% der Gesamtintensität des Bildes benötigt. Die Ringleitungs-Fernsehkameras 1, 2 und 3 haben eine automatische Blendeneinstellfunktion, um kleine Schwankungen der Beleuchtung auszugleichen.
- Bei Empfang eines ID-Sollcodes durch den Tor-Rechner 10 wird die richtige Kamera 1, 2 oder 3 gewählt, die auf die Rückseite des Containers 8 fokussiert wird. Die ausgewählte Kamera 1, 2 oder 3 triggert den Bilddigitalisierer 11, der einen Algorithmus anwendet, um die Einstellung des Kontrasts des Bilddigitalisierers 11 anzupassen, so daß der mittlerer Graupegel für ein vorgegebenes Bildfenster 20, das von dem Sichtfeld der Kamera definiert wird, auf einem optimalen Wert liegt. Der Algorithmus verwendet zum Berechnen des neuen Wertes der Kontrasteinstellung das Newtonsche Verfahren gemäß Gleichung (i):
- i) neuer Kontrast = alter Kontrast + Steigung (Mittelwert - optimaler Mittelwert) Steigung = Δ Kontrast/Δ Mittelwert bei letzter Iteration
- Der Deltaoperator (Δ) gibt die Änderung des Kontrasts bzw. des mittleren Graupegels zwischen der letzten Iteration und der aktuellen an. Der optimale Mittelwert und die Steigung wurden experimentell ermittelt.
- Wenn die Kontrasteinstellung ermittelt ist, nimmt die Kamera 1, 2 oder 3 ein Bild auf, das über den Multiplexer 4 zu dem Bilddigitalisierer 11 gesendet wird, wo das Bild weiter verarbeitet wird. Das Bild besteht aus einer Matrix aus 720 · 512 Pixeln, wobei jedes Pixel einen Quantisierungspegel zwischen 0 und 255 haben kann.
- Um den Ort aller möglichen Zeichen innerhalb des Bildes zu ermitteln und ein eingrenzendes Rechteck oder einen Umgrenzungskasten um jedes potentielle Zeichen einzurichten, wird das aufgenommene Bild von dem Bilddigitalisierer spaltenweise gescannt. Der Graupegel jedes Pixels in jeder Spalte wird quantisiert, und horizontale und vertikale Segmente werden gestützt auf den quantisierten Wert erzeugt. Ein horizontales Segment (siehe Fig. 4) wird als Teil einer Zeile des Bildes in einer Spalte definiert, bei der die benachbarten Pixel (in der horizontalen Richtung) denselben quantisierten Wert haben. Ähnlich ist ein vertikales Segment (siehe Fig. 5) ein Teil einer Spalte, bei der benachbarte Pixel (in der vertikalen Richtung) denselben quantisierten Wert haben. Das Bild wurde nun also in vertikale und horizontale Segmente aufgeteilt, die aus mehreren Pixeln bestehen, die über ihre jeweiligen quantisierten Werte einander zugeordnet werden, und das Bild kann nun segmentweise gescannt werden, wodurch sowohl Zeit als auch Speicherplatz gespart wird.
- Die vertikalen Segmente werden gescannt, und alle Segmente, die an der rechten Grenze eines Zeichens liegen, werden erfaßt. Diese werden als rechte, vertikale Grenzsegmente (siehe Fig. 4) definiert, und jedes dieser Segmente muß zwei Bedingungen erfüllen: Es muß ein entsprechendes vertikales Segment (V2) links von dem vertikalen Segment (V1) geben, von dem wenigstens ein Teil neben dem ersten Segment (V1) liegen muß, und der quantisierte Wert des entsprechenden vertikalen Segments (V2) muß sich von dem des rechten, vertikalen Grenzsegments (V1) unterscheiden.
- Der Schwellwert oder das Ausmaß jedes möglichen Zeichens basiert auf dem Pixel-Graupegel an der Grenze, die von den Grenzsegmenten definiert wird. Wenn die Hintergrundfarbe des Bildes weiß ist, wird der Schwellwert als der niedrigste Graupegel gewählt. Wenn die Hintergrundfarbe des Bildes schwarz ist, wird der Schwellwert als der höchste Graupegel gewählt. Der Schwellwert wird dazu verwendet, zu ermitteln, ob das potentielle Zeichen mit irgendwelchen anderen Komponenten in Verbindung steht, die zu demselben Zeichen gehören könnten. Ein Beispiel verbundener horizontaler Segmente ist in Fig. 4 gezeigt, in der drei verbundene horizontale Komponenten h1 bis h3 dargestellt sind. Durch Begrenzen der Zeichengröße auf eine vorgegebene Höhe reduziert sich die Anzahl der verbundenen Komponenten. Jedes Zeichen ist von einem Grenzkasten umgeben, der das räumliche Ausmaß des Zeichens eingrenzt.
- Dieser Prozeß erzeugt eine Zeichenpixelabbildung, die horizontale und vertikale Segmente umfaßt. Merkmale, die auf dem Seitenverhältnis und dem Histogramm der Zeichenpixelanordnung basieren, können berechnet werden. Wenn der Wert des Merkmals, der von der Zeichenpixelabbildung definiert wird, nicht innerhalb eines annehmbaren Bereichs liegt, der von heuristischen Regeln definiert wird, wird das Merkmal als Rauschen ausgeschieden.
- Die resultierenden Merkmale oder Zeichen, die innerhalb des annehmbaren Bereichs liegen, werden weiter verarbeitet, um spezielle Zeichengruppierungen zu definieren. Dieser Prozeß ermittelt den Ort aller potentiellen Zeichen in dem Bild und findet das einrahmende Rechteck (den Grenzkasten) für jedes mögliche Zeichen. Die Zeichen werden so durch ihre Nähe und Höhe gestützt auf ihre relativen räumlichen Koordinaten zusammengefaßt, um nur die Zeichen zurückzubehalten, die zu dem ID- Code gehören sollten. Die Fig. 1a und 1b zeigen ID-Codezeichen in einer Gruppe, die hervorgehoben wurde. Die anderen Zeichen sind ebenfalls zusammengefaßt, jedoch nicht hervorgehoben.
- Wenn der Ort aller potentiellen Zeichen gefunden und jedes Zeichen mit einem Grenzkasten umgeben ist, werden alle Grenzkästen in horizontale (x) und vertikale (y) Richtungen einsortiert. Dadurch können die Zeichen weiter in Gruppen horizontaler Zeilen sortiert werden. Der ID-Code tritt normalerweise in einer, zwei oder drei horizontalen Zeilen auf. Bei diesem Stadium werden einzelne isolierte Zeichen verworfen.
- Die Polarität der Zeichen in jeder Gruppe wird ermittelt, d. h. ob die Zeichen weiß auf schwarz oder schwarz auf weiß sind. Diese Information wird gestützt auf die Gleichmäßigkeit der Höhe und Breite der Zeichen in den Gruppen ermittelt, wobei angenommen wird, daß es mehr gleichmäßige Zeichen einer als einer anderen Polarität gibt. Diese Information wird unter Verwendung eines Glaubens- oder Gleichmäßigkeitsmaßes ermittelt, wie in dem Journal of Mathematical Analysis and Application 65: Seiten 531-542, Nguyen H. T. (1987), "On random sets and belief functions", offenbart ist.
- Die gruppierten Zeichen werden ausgehend von der obersten Zeile des Bildes ausgewählt. Es werden die Gruppen gewählt, die ein Gleichmäßigkeitsmaß über einem vorgegebenen Pegel haben. Die Anzahl der gewählten Zeichengruppen wird durch die gesamte Anzahl der Zeichen bestimmt, die in dem ID-Sollcode enthalten sind, der von dem Mainframe-Rechner vorgesehen wird, sowie durch das Gleichmäßigkeitsmaß.
- Bei diesem Stadium wurden Gruppen potentieller Zeichen aus dem Bild identifiziert. Diese extrahierten Zeichen können jedoch schief liegen, verschiedene Größen haben und auf verschiedenen Hintergründen stehen. Daher wird ein Normalisierungsschritt ausgeführt, der zuerst die Pixelabbildungen jedes Zeichens in ein weißes Zeichen auf einem schwarzen Hintergrund konvertiert und zweitens die Größe jeder Zeichenpixelabbildung mit Hilfe von Skalierungsfaktoren normiert, die sowohl in der x- als auch in der y-Richtung berechnet werden. Dies führt normalerweise zu einer linearen Kompression, weil die Größe der extrahierten Zeichen größer ist als die Normgröße.
- Die normalisierte Grauskalen-Zeichenpixelabbildung wird an den Eingang eines neuronalen Netzes angelegt. Der quantisierte Graupegel jedes Pixels wird auf einen Wert zwischen 0 und 1 normiert. Der Graupegelwert wird nicht auf 0 oder 1 binärgewandelt, weil die Wahl eines Schwellwertes für die Binärwandlung die Form des Zeichens beeinflussen würde, das von der Pixelabbildung definiert wird. Dies könnte dazu führen, daß Teile eines Zeichens künstlich verbunden oder unterbrochen würden.
- Das neuronale Netz wird dazu verwendet, die Muster zu erkennen, die von den Zeichen in Normgröße definiert werden. Dieses Verfahren wird deshalb eingesetzt, weil es eine gute Toleranz gegenüber Rauschen und Verformungen in den Eingangszeichen hat. Im Besonderen wird ein mehrschichtiges neuronales Feed- Forward-Netzmodell auf Fensterbasis verwendet. Die grundsätzliche Architektur des neuronalen Netzes ist in Fig. 6 gezeigt.
- Das neuronale Netz besteht aus einer Eingangsschicht, einer oder mehreren verborgenen Zwischenschichten und einer Ausgangsschicht. Definierte Bereich oder Fenster der normierten Graupegel-Zeichenpixelabbildung werden als Eingangssignale für das neuronale Netz verwendet. Bei einer Ausführungsform, die in Fig. 7 gezeigt ist, werden zwei Fenster verwendet, die von den oberen linken und unteren rechten Koordinaten von zwei Rechtecken gleicher Größe definiert werden. Zusammen grenzen die beiden Rechtecke die gesamte Zeichenpixelabbildung ein. Die Fenster werden in die Eingangsschicht des neuronalen Netzes eingespeist, und jedes Pixel innerhalb der Grenzen jedes Fensters bildet einen Eingangsknoten der Eingangsschicht.
- Jeder Knoten des Netzes berechnet die folgende Funktion.
- ii) yi = f ( wi,j - θi)
- wobei yi = Ausgangsaktivierungswert des Knotens i
- xj = j-tes Signal, das in Knoten i eingegeben wird
- wi,j = Verbindungsgewicht vom Knoten j zum Knoten i
- θi = Vorspannung
- In der obigen Gleichung ist f(x) eine monoton zunehmende, differenzierbare Funktion, deren Ausgangswert zwischen 0 und 1 begrenzt ist.
- Die Eingangsknoten der Eingangsschicht sind mit bestimmten Knoten der ersten verborgenen Zwischenknoten der ersten verborgenen Zwischenschicht verbunden. Die Eingangsknoten des ersten Fensters sind somit mit einer ersten Gruppe aus bestimmten Zwischenknoten verbunden, und die Eingangsknoten des zweiten Fenster sind mit einer zweiten Gruppe aus bestimmten Zwischenknoten verbunden. Auf diese Art sind die Eingangsknoten, die zu einem Fenster gehören, mit bestimmten verborgenen Zwischenknoten der ersten Schicht vollständig verbunden, jedoch nicht mit verborgenen Zwischenknoten in der ersten Schicht, die zu anderen Fenstern gehören. Die beiden Gruppen dieser Netzarchitektur sind in Fig. 7(i) gezeigt, wobei eine übliche Netzstruktur in Fig. 7(ii) dargestellt ist. Für nachfolgende Schichten nach der Eingangsschicht und der ersten Zwischenschicht sind die Knoten der folgenden Schichten vollständig verbunden.
- Bei einer speziellen Ausführungsform der Erfindung müssen nur die folgenden Zeichen erkannt werden: A bis Z und 0 bis 9, d. h. insgesamt 36 Zeichen, 26 Buchstaben und 10 Ziffern. Die Ausgangsschicht würde daher aus 36 Knoten bestehen, von denen jeder ein bestimmtes Zeichen darstellt.
- Die Verwendung eines neuronalen Netzes dieses Typs, das sich auf Fenster stützt, erlaubt es, die Fenster strategisch in der Zeichenpixelabbildung anzuordnen, um zwischen verwechselbaren Zeichen zu unterscheiden und die Genauigkeit zu verbessern, mit der die Zeichen klassifiziert werden. Auch sind im Vergleich zu dem herkömmlichen vollständig verbundenen Netz, das in Fig. 7(ii) gezeigt ist, weniger Synapsenverbindungen zwischen der Eingangs- und der ersten Zwischenschicht erforderlich, wodurch die Verarbeitungszeit und die Speicheranforde rungen gesenkt werden. Versuchsergebnisse haben gezeigt, daß die Zeit zum Trainieren eines solchen Systems deutlich verringert werden kann, die Erkennungsleistung jedoch etwas verbessert ist.
- Das Netz wird mit der populären s-förmigen Funktion trainiert:
- und das Netz wird mit einer Annäherung an die Trainingsfunktion betrieben:
- In beiden Fällen ist T ein Parameter, der zum Steuern der Nichtlinearität verwendet wird. Beide Funktionen verhalten sich insoweit ähnlich, als sie beide zwischen 0 und 1 begrenzt sind, monoton zunehmend und differenzierbar sind. Wenn T gegen 0 geht, werden beide ferner zu Stufenfunktionen. Wenn T gegen unendlich geht, nähern sich beide einer horizontalen Linie an, die durch F(x) = 0,5 geht. Da die zweite Funktion mehr Iterationen benötigt, um ein ähnliches Niveau der Erkennungsleistung wie die erste Funktion zu erreichen, wird die erste Funktion für das Training verwendet. Nach dem Training ersetzt die zweite Funktion jedoch die erste Funktion ohne irgendeine Verschlechterung der Erkennungsleistung.
- Bei einer bevorzugten Ausführungsform versucht das neuronale Netz nicht, zwischen "0" und "O" oder "I" und "1" zu unterscheiden, weil einige Containerfirmen für beide Zeichen identische Zeichen-Fonts verwenden. Die Paarungs- oder Abgleichprozedur, die im folgenden erläutert ist, kann jedoch sämtliche Mehrdeutigkeiten lösen, die durch dieses Durcheinander entstehen.
- Wie zuvor erläutert, soll das System den ID-Code eines bestimmten Containers überprüfen, wobei dies schließlich durch einen letzten Verarbeitungsschritt erreicht wird, der die Zeichenkette, die von dem neuronalen Netz ausgegeben wird, mit der Zeichenkette des ID-Sollcodes vergleicht, die von dem Mainframe-Computer gesendet wird. Da jedoch weitere Verarbeitungsschritte beteiligt sind, die Fehler einführen können, können die beiden Zeichenketten nicht einfach verglichen werden. Bei dem Segmentierungsschritt können z. B. ID-Codezeichen als Rauschen verworfen werden, was dazu führt, daß ein Zeichen aus der erkannten Zeichenkette weggelassen wird, oder Rauschen, wie Schmierer oder Marken auf der Containeroberfläche, kann als ID-Codezeichen behandelt werden, was dazu führt, daß Zeichen in die erkannte Zeichenkette eingefügt werden. Der Segmentierungsschritt kann eine Zeichengrenze falsch bestimmen und dadurch ein einzelnes Zeichen in zwei teilen. Auch das neuronale Netz kann ein Zeichen falsch erkennen und dabei ein bestimmtes Zeichen durch ein falsches Zeichen ersetzen. Man kann leicht sehen, daß die erkannte Zeichenkette möglicherweise Fehler enthält, weshalb ein Abgleichschritt eingefügt wird, um die beste Übereinstimmung zwischen der erkannten Zeichenkette und der Zeichenkette des ID-Sollcodes zu finden.
- In Fig. 8 stellt die oberste Zeile der Zeichen die ID-Sollkette dar, und die zweite Zeile stellt die Zeichenkette dar, die nach dem Segmentierungsschritt erhalten wurde. Das neuronale Netz gibt einen Trefferbereich aus, wobei jeder Treffer den Grad der Ähnlichkeit zwischen der Eingangspixelabbildung und den 36 Zeichenausgangsklassen des neuronalen Netzes wiedergibt (d. h. den Grad der Erkennung für jede Zeichenklasse). Zeilen 3 und 4 der Fig. 8 zeigen die beste bzw. die zweitbeste Bewertung der Treffer. Für jeden Eintrag in diesen Zeilen bezeichnen die Zeichen den erkannten Code, während die Zahlen in Klammern die entsprechende Bewertung der Treffer angeben. Wie in dem Beispiel gezeigt, macht das neuronale Netz zwei Einsetzfehler, weil die beste Trefferbewertung für den Buch staben "U" in der Zielkette als "O" (als 0,7) angegeben wird, und das Zielzeichen für "2" wird von dem neuronalen Netz als "7" (0,6) angegeben. Bei diesem Beispiel hat auch der Segmentierungsschritt zwei Fehler gemacht, die Hinzufügung des Zeichens "#", vermutlich aufgrund von Rauschen, und das Weglassen des Zeichens "0" aus der Zeichenkette des ID-Sollcodes. Die unten beschriebene Prozedur wurde dafür entworfen, diese Mehrdeutigkeiten sowohl bei der Erkennung als auch bei der Segmentierung zu lösen, indem das Problem der Überprüfung der Zeichenkette des ID-Sollcodes in ein zweidimensionales Weg- Suchproblem umgewandelt wird, wie in Fig. 9 gezeigt, die den für das Beispiel der Fig. 8 gefundenen Abgleichweg (Match- Weg) zeigt, wobei das Ziel ist, den optimalen Abgleichweg zu finden.
- Bei der bevorzugten Ausführungsform wird der optimale Weg mit einer Technik gefunden, die als Dynamic Time Warping (dynami sche Zeitkrümmung) bekannt ist, wie von Itakura F. (1975) in "Minimum prediction residual principle applied to speech recognition", IEEE Transactions on Acoustics, Speech and Signal Processing 23: Seiten 65-72 und von Satoe H. Chiba S. (1978) in "Dynamic programming algorithm optimisation for spoken word recognition", IEEE Transactions on Acoustics Speech and Signal Processing 26: Seiten 43-49 erörtert ist. Bei dieser Ausführungsform werden lokale Kontinuitätsbeschränkungen definiert, wie in Fig. 10 gezeigt, um den Suchbereich zu begrenzen. Die Beschränkungen spezifizieren, daß zum Erreichen eines Punktes (i, j) fünf lokale Wege möglich sind (Wege 1 bis 5). Unter normalen Bedingungen, d. h. ohne das Einfügen oder Löschen von Zeichen an dieser Stelle, sollte Weg 3 genommen werden. Wenn Weg 2 gewählt wird, schlägt der Algorithmus vor, daß das (i-1)-te Zeichen in der erkannten Kette ein Einfügungsfehler ist. Wenn Weg 4 gewählt wird, gibt er ähnlich an, daß zwischen der (i-1)-ten und der i-ten Position ein Zeichen ausgelassen wurde. Der Weg 1 und der Weg 5 werden vorgesehen, um Grenzbedingungen zu verarbeiten. Weg 1 kümmert sich um fremde Zeichen, die vor oder nach einer ID-Zielkette liegen, während Weg 5 für Fälle benötigt wird, in denen die ersten oder letzten paar ID-Zeichen fehlen. Die Wege 1 und 5 werden also nur in der Nähe des Anfangs oder des Endes des Suchgebiets benötigt.
- Wenn die lokalen Kontinuitätsbeschränkungen spezifiziert sind, wird der globale Suchbereich bestimmt. Um den besten Weg zu finden, wird eine kumulative Abgleichtrefferbewertung Di,j maximiert. Diese Trefferbewertung kann wie folgt rekursiv berechnet werden:
- wobei S die Übertragungsfunktion des neuronalen Netzes für das Sollzeichen j ist, p ist der Abzug für einen Einfügungsfehler und q für einen Auslassungsfehler. Die Abzüge werden bei dieser Ausführungsform auf 0,2 eingestellt.
- Der Grundalgorithmus zum Finden des optimalen Abgleichweges ist wie folgt:
- I sei die Anzahl der Zeichen in der erkannten Kette, und J sei die Anzahl der Zeichen in der ID-Sollkette.
- Schritt 1: für j = 1 bis J
- Initialisieren von D0,j auf eine negative große Zahl
- D0,0 = 0,0
- Schritt 2: für i = 1 bis I
- für j = 1 bis J + 1
- Berechnen von Di,j gemäß der Gleichung (v)
- Aufzeichnen des eingeschlagenen lokalen Weges in einer Matrix Wegi,j
- Schritt 3: Beginnend bei j = J + 1
- solange (j ≥ 0)
- Verfolgen der Matrix Wegi,j und Aufzeichnen des passenden Zeichens in der erkannten Kette.
- Am Ende des Schrittes 3 werden die optimal passenden Paare zwischen der Soll- und der erkannten Kette bestimmt. Das Ergebnis könnte direkt an die Bedienungsperson weitergegeben werden. Um das System für die Bedienungsperson benutzerfreundlicher zu machen, ist es jedoch besser, alle Fehlerarten in einem einzelnen Leistungsindex zusammenzuführen. Dies erreicht man durch Definieren eines Vertrauensmaßes, wie im folgenden erläutert ist.
- Das Vertrauensmaß muß die tatsächliche Genauigkeit des gesamten Systems reflektieren können, ohne unerhebliche Fehler zu bestrafen. Einfügungsfehler z. B. sind keine ernsthaften Fehler, obwohl sie soweit wie möglich vermieden werden sollten. Wie bei der Zeichenerkennung muß nicht die höchste Trefferbewertung, die von der Erkennungsvorrichtung erzeugt wird, dem richtigen Zeichen entsprechen, sondern Zeichen mit der zweiten oder dritthöchsten Trefferbewertung können diesem entsprechen. Ferner kann die Differenz zwischen dieser Trefferbewertung und der höchsten Trefferbewertung klein sein. Um solchen Fällen zu begegnen, wird eine Strafe oder ein Abzug eingefügt, der von dem Ausmaß abhängig ist, in dem das Zeichen falsch erkannt wurde.
- Unter Berücksichtigung all dieser Faktoren wird der Leistungsindex oder das Vertrauensmaß wie folgt berechnet:
- wobei N die Anzahl der übereinstimmenden Zeichenpaare ist, die von der dynamischen Zeitkrümmungsprozedur gefunden wurden, score(i) ist die Ähnlichkeitstrefferbewertung des i-ten Zeichens. Wenn es irgendwelche Auslassungsfehler gibt, ist N kleiner als J. Wenn das Zeichen i richtig erkannt wurde, ist score(i) die beste Trefferbewertung und gleich der besten Trefferbewertung, und der Beitrag dieses Zeichen zur Summe beträgt 1. Man kann erkennen, daß dann, wenn alle Zeichen richtig aufgeteilt und erkannt werden, die Summe der N Elemente gleich J ist, und somit ist das Vertrauensmaß cm = J/J = 1. Für Einfügungsfehler, die von der dynamischen Zeitkrümmungsprozedur erkannt werden, steht kein Zeichen in der zugehörigen ID-Kette. Diese zusätzlichen Zeichen gehen also in die Berechnung nicht ein.
- Das endgültige Ergebnis des gesamten Prozesses ist somit die cm-Trefferbewertung. Dieser Wert liegt zwischen 0 und 1. Die Bedienungsperson kann somit einen bestimmten Vertrauensmaß- Schwellwert einstellen, so daß die Überprüfung des ID-Codes des Containers als erfolgreich angenommen wird, wenn die cm- Trefferbewertung höher als der Schwellwert ist. Anderenfalls wird die Bedienungsperson benachrichtigt und kann die Sache untersuchen.
- Bei der bevorzugten Ausführungsform wurden die oben beschriebenen Prozesse auf einem Netz mit fünf Transputern realisiert, die in einem PC-AT-Mikrocomputer untergebracht waren. Der Code wurde in der Parallel-C-Version 2.1.1. mit dem 3L-Compiler geschrieben. Die Zeichenextraktions- und Erkennungsverfahren wurden parallel durchgeführt, während die Normierung und die Abgleichprozeduren von dem Mastertransputer durchgeführt wurden. Um den Zeichenaufteilungsprozesses parallel zu realisieren, wird das gesamte Bild in fünf gleiche vertikale Streifen aufgeteilt. Jedem Prozessor wird ein Bildstreifen zugeordnet. Vier der vertikalen Streifen überlappen sich in der x-Richtung um eine Größe, die gleich der maximalen zulässigen Breite eines Zeichens minus 1 ist. Dadurch wird sichergestellt, daß jedes Zeichen von einem Transputer vollständig extrahiert wird. Der Mastertransputer verteilt die Bildstreifen auf den Grundrechner und die drei Arbeitsrechner. Wenn alle Prozessoren fertig sind und die potentiellen Grenzkästen zurückgesendet haben, fährt der Masterrechner mit dem Gruppierungsschritt des Zeichenextraktionsprozessors fort. Der Erkennungsprozeß findet parallel statt, indem die Zeichenabbildungen einzeln auf die Arbeitsprozessoren verteilt werden. Der Mastertransputer steuert und koordiniert das Versenden der Pixelabbildungen und den Empfang der Erkennungsergebnisse.
- Bei der Bestimmung der Leistungsfähigkeit des Systems wurden die Zeichenextraktions- und Erkennungsprozesse getrennt bewertet, zusätzlich zur Überprüfung der Genauigkeit des Gesamtsystems. Dies geschah, um die Genauigkeit der einzelnen Prozesse zu prüfen, weil die während der Zeichenextraktion erzeugten Fehler an die Erkennungsphase weitergegeben werden. Der Segmentierungs- und Zeichenextraktionsprozeß wurde mit Bildern, die 191 Zeichen enthielten, unter verschiedenen Beleuchtungsbedingungen überprüft. Die Ergebnisse der Computerextraktion, d. h. die Grenzkästen der Zeichen, wurden mit den Koordinaten der Zeichen verglichen, die manuell extrahiert wurden. Tabelle 1 zeigt, daß die Anzahl der richtig aufgeteilten Zeichen 91,365% aller in dem Bild vorhandenen Zeichen beträgt.
- Eine größere Datenbank mit Bildern aus 441 Zeichen wurde zum Bewerten des Erkennungsprozesses verwendet. Es ergab sich, daß die statistische Verteilung der Zeichen ungleichmäßig war. Die Zeichen "Q" und "V" traten z. B. gar nicht auf, während "U" sehr häufig erscheint. Da die Probengröße ausreichend groß ist, reflektiert diese Statistik jedoch die wahre Wahrscheinlichkeit, mit der jedes einzelne Zeichen während des tatsächlichen Betriebs auftritt. Bei den Erkennungsversuchen wurde die Datenbank in zwei Gruppen aufgeteilt: DS1 zum Trainieren und DS2 zum Prüfen. DS1 besteht aus 221 Bildern und 2.231 alphanumerischen Zeichen, während DS2 2.167 Zeichen in den verbleibenden 220 Bildern umfaßt. Es gibt ungefähr zweimal so viele numerische Zeichen wie alphabetische Zeichen in beiden Gruppen.
- Die geschätzte Prüfzeit für jedes Containerbild beträgt etwa 13,5 Sekunden. Dies umfaßt die Zeit, die ab dem Zeitpunkt, zu dem die Behälterinformation von dem Tor-PC empfangen wird, bis zu dem Punkt verstreicht, bei dem die Erkennungsergebnisse und das Vertrauensmaß an den Tor-PC zurückgeschickt werden. Die Fig. 1(a) und 1(b) zeigen Beispiele für Containercodes, die mit dem oben beschriebenen Verfahren extrahiert wurden. Die extrahierten Zeichen und ihre eingrenzenden Rechtecke sind nach dem Anlegen des Schwellwertes gezeigt.
- Es können Modifikationen vorgenommen werden, um die Robustheit des Zeichenextraktionsprozesses zu verbessern und seine Genauigkeit zu erhöhen, wenn das Containerbild verrauscht ist. Verschiedene Ansätze werden untersucht, um Zeichen mit schlechtem Kontrast, übereinanderliegende Zeichen und teilweise zerstörte Zeichen wiederzugewinnen.
- Die in der obigen Beschreibung, in den folgenden Ansprüchen und/oder in der Zeichnung offenbarten Merkmale können sowohl einzeln als auch in beliebiger Kombination für die Realisierung der Erfindung in ihren verschiedenen Ausgestaltungen von Bedeutung sein.
Claims (21)
1. Behältercode-Prüfvorrichtung mit einer
Bilderfassungsvorrichtung (1, 2, 3) zum Erfassen eines Bildes einer
Oberfläche eines Behälter (8), die einen angezeigten Code
(16) trägt; einer Datenverarbeitungsvorrichtung (5) zum
Bilden einer Pixelanordnung aus dem erfaßten Bild; einer
Abtasteinrichtung zum Abtasten der Pixelanordnung; einer
Erfassungsvorrichtung zum Erfassen potentieller Zeichen;
einer Auswahl- und Gruppiervorrichtung zum Auswählen und
Gruppieren potentieller Zeichen der angezeigten Codes;
und einem neuronalen Netz zum Ermitteln von erkannten
Zeichen, die einen erkannten Code bilden, aus den
Pixelwerten der potentiellen Zeichen, wobei die Pixelanordnung
in mehrere Fenster aufgeteilt wird, das neuronale Netz
mehrere Eingangsknoten aufweist, die eine Eingangsschicht
definieren, und wenigstens einen Ausgangsknoten, der eine
Ausgangsschicht definiert, wobei eine oder mehrere
Zwischenschichten zwischen der Eingangsschicht und der
Ausgangsschicht angeordnet sind und in dem neuronalen Netz
die Eingangsschicht in mehrere diskrete Bereiche
aufgeteilt ist, die jeweils einem Fenster entsprechen; wobei
der Pixelwert jedes Pixels in einem Fenster den Eingang
für einen entsprechenden Eingangsknoten in einem Bereich
der Eingangsschicht darstellt, der dem jeweiligen Fenster
entspricht; jeder Knoten in dem Netz einen Ausgangswert
abhängig von einer vorgegebenen Funktion berechnet; die
Ausgänge der Knoten in jedem Bereich der Eingangsschicht
mit bestimmten Knoten in einer ersten Zwischenschicht
verbunden sind, die nicht mit den Ausgängen der Knoten in
einem anderen Bereich der Eingangsschicht verbunden sind;
die Ausgänge der Knoten in der ersten und nachfolgenden
Zwischenschichten mit den Eingängen der Knoten in der
unmittelbar folgenden Schicht verbunden sind; und die
Ausgangsknoten der letzten Zwischenschicht mit den
Eingängen des oder der Ausgangsknoten der Ausgangsschicht
verbunden sind, wobei die Behältercode-Prüfvorrichtung
folgende weitere Merkmale aufweist: eine
Vergleichsvorrichtung zum Vergleichen eines Sollcodes mit dem
erkannten Code; und eine Verifikationsvorrichtung zum
Verifizieren oder Verwerfen des erkannten Codes abhängig von
dem Ergebnis des Vergleichs zwischen dem Sollcode und dem
erkannten Code.
2. Behältercode-Prüfvorrichtung nach Anspruch 1, bei der
jeder Knoten in dem neuronalen Netz folgende Funktion
berechnet:
wobei yi = Ausgangsaktivierungswert des Knotens i
xj = j-tes Signal, das in den Knoten i
eingegeben wird
wi,j = Verbindungsgewicht vom Knoten j zum Knoten i
θi = Vorspannung
3. Behältercode-Prüfvorrichtung nach Anspruch 1 oder 2, bei
der das neuronale Netz mit folgender Funktion betrieben
wird:
4. Behaltercode-Prufvorrichtung nach einem der Ansprüche 1
bis 3, bei der das neuronale Netz mit folgender Funktion
trainiert wird:
5. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der das neuronale Netz in einem
Transputernetz (5) enthalten ist.
6. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der die Ausgangsschicht des neuronalen
Netzes eine Gruppe Trefferwerte vorsieht, die den Grad
der Erkennung zwischen den Zeichen, die von der
Pixelanordnung definiert werden, und den Klassen der von
dem neuronalen Netz erkennbaren Zeichen angeben.
7. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Umgeben der erfaßten
potentiellen Zeichen mit einem Grenzkasten vorgesehen sind.
8. Behältercode-Prüfvorrichtung nach Anspruch 7, bei der der
Grenzkasten in mehrere Fenster aufgeteilt ist und der
Quantisierungswert der in jedem Fenster enthaltenen Pixel
die Eingangswerte für einen entsprechenden diskreten
Bereich umfaßt, der in der Eingangsschicht des neuronalen
Netzes definiert ist.
9. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Erfassen der potentiellen
Zeichen durch Identifizieren horizontaler Segmente
(h1...n) und vertikaler Segmente (v1...n) vorgesehen
sind, wobei die horizontalen Segmente horizontal
benachbarte Pixel mit im wesentlichen äquivalenten
Quantisierungspegel umfassen und die vertikalen Segmente
ver
tikal benachbarte Pixel mit im wesentlichen äquivalenten
Quantisierungspegel umfassen, sowie durch Identifizieren
horizontaler und vertikaler Segmente (h1...n, v1...n),
die miteinander verbunden sind, um ein potentielles
Zeichen zu definieren.
10. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der die Behälteroberfläche potentielle
Zeichen trägt, die räumlich horizontal nebeneinander
angeordnet sind, wobei die Gruppiervorrichtung solche
horizontal benachbarte Zeichen zusammenfaßt.
11. Behältercode-Prüfvorrichtung nach Anspruch 11, bei der
die Auswahlvorrichtung nur die horizontal
zusammengefaßten potentiellen Zeichen auswählt.
12. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der die Auswahlvorrichtung keine einzelnen
isolierten potentiellen Zeichen auswählt.
13. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Bestimmen der Polarität des
Vordergrunds und des Hintergrunds jedes potentiellen
Zeichens und zum Konvertieren der Polarität in eine
Standardpolarität vorgesehen sind.
14. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Saklieren der potentiellen
Zeichen auf eine Standardgröße vorgesehen sind.
15. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Normieren der
Quantisierungspegel jedes Pixels auf einen Wert zwischen 0 und 1
vorgesehen sind.
16. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der Mittel zum Vergleichen des erkannten
Codes und des Sollcodes vorgesehen sind, die ein
Vertrauensmaß ableiten, das den Grad der Übereinstimmung
zwischen den beiden Codes wiedergibt, und das Vertrauensmaß
mit einem vorgegebenen Schwellwert vergleichen.
17. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, mit Mitteln zum Positionieren des Behälters
(8), der den angezeigten Code (16) trägt, neben einer
Bilderfassungsvorrichtung (1, 2, 3), um das Bild der
Behälteroberfläche aufzunehmen.
18. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der eine künstliche Beleuchtung vorgesehen
ist, um den Behälter zu beleuchten, um den Bildkontrast
zu erhöhen.
19. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der das Bild von wenigstens einer
Ringleitungs-TV-Kamera (1, 2, 3) aufgenommen wird, die mit
einem Bilddigitalisierer (11) verbunden ist.
20. Behältercode-Prüfvorrichtung nach Anspruch 19, bei der
die Bilddigitalisiervorrichtung einen Kontrastparameter
aufweist, der mit dem iterativen Newtonschen Verfahren
ermittelt wird.
21. Behältercode-Prüfvorrichtung nach einem der vorangehenden
Ansprüche, bei der ein Fern-Mainframe-Computer den
Sollcode vorsieht.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB9222322A GB2273191B (en) | 1992-10-23 | 1992-10-23 | A container code verification apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69322923D1 DE69322923D1 (de) | 1999-02-18 |
| DE69322923T2 true DE69322923T2 (de) | 1999-06-24 |
Family
ID=10723966
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69322923T Expired - Fee Related DE69322923T2 (de) | 1992-10-23 | 1993-10-14 | Gerät zum Überprüfen eines Containerkodes |
Country Status (6)
| Country | Link |
|---|---|
| EP (1) | EP0594061B1 (de) |
| JP (1) | JPH0756882A (de) |
| CA (1) | CA2109002C (de) |
| DE (1) | DE69322923T2 (de) |
| GB (1) | GB2273191B (de) |
| WO (1) | WO1994010654A1 (de) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE10224313A1 (de) * | 2002-05-31 | 2003-12-11 | Siemens Ag | Vorrichtung zur Verifizierung von Containernummern beim Ent- und Beladen von Schiffen mit Containerkranen in Containerterminals |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09297813A (ja) * | 1996-04-30 | 1997-11-18 | Mitsubishi Heavy Ind Ltd | コンテナ番号認識装置 |
| JP4746740B2 (ja) * | 2000-12-12 | 2011-08-10 | 株式会社サキコーポレーション | 外観検査方法および外観検査装置 |
| US7089131B2 (en) * | 2002-03-22 | 2006-08-08 | Lear Corporation | Inspection and verification system and method |
| US7231065B2 (en) * | 2004-03-15 | 2007-06-12 | Embarcadero Systems Corporation | Method and apparatus for controlling cameras and performing optical character recognition of container code and chassis code |
| EP1854050A1 (de) * | 2004-09-24 | 2007-11-14 | Tagit PTE Ltd. | Verfahren zur erfassung eines bildes unter verwendung einer vorrichtung und zum erhalten von informationen bezüglich des bildes, wobei das bild eine marke enthält |
| JP4625962B2 (ja) * | 2005-01-24 | 2011-02-02 | 国立大学法人横浜国立大学 | カテゴリカル色知覚システム |
| SG144778A1 (en) | 2007-02-07 | 2008-08-28 | Nsl Engineering Pte Ltd | Method and apparatus for twist lock manipulation |
| EP2196953B1 (de) * | 2008-12-12 | 2020-04-08 | Siemens Aktiengesellschaft | Verfahren, Steuerungsprogramm und System zur Identifikation eines Containers in einer Containerkrananlage |
| JP6552012B2 (ja) * | 2017-03-03 | 2019-07-31 | Necプラットフォームズ株式会社 | コンテナ番号読取り装置、コンテナ番号読取り方法およびコンテナ番号読取りプログラム |
| DE102020213282A1 (de) | 2020-10-21 | 2022-04-14 | Zf Friedrichshafen Ag | Kamerabasierte Inventarisierung von Frachtkontainern |
| JP7426616B1 (ja) * | 2023-01-27 | 2024-02-02 | パナソニックIpマネジメント株式会社 | 進行方向推定装置および進行方向推定方法 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB906166A (en) * | 1960-06-17 | 1962-09-19 | Metal Box Co Ltd | Improvements in or relating to the manufacture of containers |
| CH425296A (de) * | 1963-06-24 | 1966-11-30 | Upjohn Co | Verfahren und Vorrichtung zur Verhütung von Falschetikettierungen |
| GB1425024A (en) * | 1972-05-12 | 1976-02-18 | Hird Brown Ltd | Apparatus for recognition of instruction codes |
| US4835680A (en) * | 1985-03-15 | 1989-05-30 | Xerox Corporation | Adaptive processor array capable of learning variable associations useful in recognizing classes of inputs |
| US4914708A (en) * | 1987-06-19 | 1990-04-03 | Boston University | System for self-organization of stable category recognition codes for analog input patterns |
| US4933872A (en) * | 1988-11-15 | 1990-06-12 | Eastman Kodak Company | Method and system for wavefront reconstruction |
| IT1233215B (it) * | 1989-04-21 | 1992-03-20 | Ist Trentino Di Cultura | Rete elaborativa a nodi, procedimento e macchine per la configurazionedella stessa e relativi impieghi |
| US5204914A (en) * | 1991-08-30 | 1993-04-20 | Eastman Kodak Company | Character recognition method using optimally weighted correlation |
-
1992
- 1992-10-23 GB GB9222322A patent/GB2273191B/en not_active Expired - Fee Related
-
1993
- 1993-10-14 EP EP93116649A patent/EP0594061B1/de not_active Expired - Lifetime
- 1993-10-14 DE DE69322923T patent/DE69322923T2/de not_active Expired - Fee Related
- 1993-10-22 CA CA002109002A patent/CA2109002C/en not_active Expired - Fee Related
- 1993-10-22 WO PCT/US1993/010218 patent/WO1994010654A1/en not_active Ceased
- 1993-10-25 JP JP5287227A patent/JPH0756882A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE10224313A1 (de) * | 2002-05-31 | 2003-12-11 | Siemens Ag | Vorrichtung zur Verifizierung von Containernummern beim Ent- und Beladen von Schiffen mit Containerkranen in Containerterminals |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0594061A2 (de) | 1994-04-27 |
| JPH0756882A (ja) | 1995-03-03 |
| WO1994010654A1 (en) | 1994-05-11 |
| CA2109002A1 (en) | 1994-04-24 |
| EP0594061A3 (de) | 1995-03-15 |
| GB9222322D0 (en) | 1992-12-09 |
| DE69322923D1 (de) | 1999-02-18 |
| EP0594061B1 (de) | 1999-01-07 |
| GB2273191A (en) | 1994-06-08 |
| GB2273191B (en) | 1996-01-03 |
| CA2109002C (en) | 2001-09-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69604481T2 (de) | Verfahren und gerät zum trennen des vordergrunds und hintergrunds in textenthaltenden bildern | |
| DE69226846T2 (de) | Verfahren zur Bestimmung von Wortgrenzen im Text | |
| DE60123378T2 (de) | Digitales Bildverarbeitungsverfahren mit verschiedenen Arbeitsweisen zum Erkennen von Augen | |
| DE60303202T2 (de) | System und verfahren zum identifizieren und extrahieren von zeichenketten aus erfassten bilddaten | |
| DE60215743T2 (de) | Verfahren und Rechnerprogrammprodukt zur Lagebestimmung von Gesichtsmerkmalen | |
| DE69329380T2 (de) | Verfahren zum Segmentieren von Bildern und Klassifizieren von Bildelementen zur Dokumentverarbeitung | |
| DE69937530T2 (de) | Verfahren zum automatischen Klassifizieren von Bildern nach Ereignissen | |
| DE69427567T2 (de) | Verfahren zum Auffinden eines Histogrammbereichs von Interesse für die verbesserte Grauskalenwiedergabe von Röntgenbildern | |
| DE69810581T2 (de) | Merkmalkorrelator für Fingerabdrücke | |
| DE2831582C2 (de) | Verfahren zur Identifizierung einer Person und Vorrichtung zur Durchführung des Verfahrens | |
| DE19521346C2 (de) | Bilduntersuchungs/-Erkennungsverfahren, darin verwendetes Verfahren zur Erzeugung von Referenzdaten und Vorrichtungen dafür | |
| DE3633743C2 (de) | ||
| DE19705757C2 (de) | Verfahren zum Erkennen eines Eingabemusters und zum Erzeugen einer Datenbank sowie Zeichenerkennungssystem | |
| DE102006010607A1 (de) | Wahrscheinlichkeitstheoretischer Verstärkungsbaum-Rahmen zum Lernen von Unterscheidungsmodellen | |
| EP3428834A1 (de) | Optoelektronischer codeleser und verfahren zum lesen von optischen codes | |
| DE69322923T2 (de) | Gerät zum Überprüfen eines Containerkodes | |
| EP1293933A1 (de) | Verfahren zum automatischen Erkennen von rote-Augen-Defekten in fotografischen Bilddaten | |
| DE3937950A1 (de) | Verfahren zum pruefen optischer oberflaechen | |
| DE19956158A1 (de) | Bild-Binärisierungsverfahren auf Bereichsbasis | |
| DE60303138T2 (de) | Vergleichen von mustern | |
| DE102017220752A1 (de) | Bildverarbeitungsvorrichtung, Bildbverarbeitungsverfahren und Bildverarbeitungsprogramm | |
| DE69623564T2 (de) | Gerät zur Extraktion von Fingerabdruckmerkmalen | |
| EP0402868B1 (de) | Verfahren zur Erkennung von vorab lokalisierten, in digitalen Grauwertbildern vorliegenden Zeichen, insbesondere zum Erkennen von in Metalloberflächen eingeschlagenen Zeichen | |
| DE19531392C1 (de) | Verfahren zur Erzeugung einer Graphrepräsentation von Bildvorlagen | |
| DE69130535T2 (de) | Schriftzeichenerkennungsverfahren und -vorrichtung zur lokalisierung und ermittlung vorbestimmter daten eines dokumentes |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8339 | Ceased/non-payment of the annual fee |