DE112017008146T5 - Verfahren und vorrichtung zum detektieren und zum erkennen von graphischen zeichendarstellungen in bilddaten unter verwendung symmetrisch angeordneter leerer flächen - Google Patents

Verfahren und vorrichtung zum detektieren und zum erkennen von graphischen zeichendarstellungen in bilddaten unter verwendung symmetrisch angeordneter leerer flächen Download PDF

Info

Publication number
DE112017008146T5
DE112017008146T5 DE112017008146.7T DE112017008146T DE112017008146T5 DE 112017008146 T5 DE112017008146 T5 DE 112017008146T5 DE 112017008146 T DE112017008146 T DE 112017008146T DE 112017008146 T5 DE112017008146 T5 DE 112017008146T5
Authority
DE
Germany
Prior art keywords
image data
blank
symmetrically arranged
areas
container
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.)
Pending
Application number
DE112017008146.7T
Other languages
English (en)
Inventor
Mingxi Zhao
Yan Zhang
Kevin J. O´Connell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Symbol Technologies LLC
Original Assignee
Symbol Technologies LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Symbol Technologies LLC filed Critical Symbol Technologies LLC
Publication of DE112017008146T5 publication Critical patent/DE112017008146T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/424Postal images, e.g. labels or addresses on parcels or postal envelopes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/63Scene text, e.g. street names
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)
  • Character Discrimination (AREA)

Abstract

Verfahren, Systeme und Vorrichtungen zum Detektieren und zum Erkennen von grafischen Zeichendarstellungen in Bilddaten unter Verwendung symmetrisch angeordneter leerer Flächen werden hierin offenbart. Ein Beispiel für ein offenbartes Verfahren umfasst das Detektieren von leeren Bereichen in Bilddaten, das Identifizieren eines symmetrisch angeordneten Paares der leeren Flächen unter Verwendung des Prozessors und das Zuweisen einer Fläche der Bilddaten zwischen dem symmetrisch angeordneten Paar der leeren Flächen als Kandidatenbereich für eine Bildverarbeitungsfunktion.

Description

  • GEBIET DER OFFENBARUNG
  • Diese Offenbarung bezieht sich im Allgemeinen auf die Bildverarbeitung und insbesondere auf Verfahren und Vorrichtungen zum Detektieren und Erkennen von grafischen Zeichendarstellungen in Bilddaten unter Verwendung symmetrisch angeordneter leerer Flächen.
  • HINTERGRUND
  • Einige Bildverarbeitungstechniken beinhalten das Analysieren von Bilddaten, die für eine Umgebung repräsentativ sind, um ein oder mehrere in der Umgebung befindliche Gegenstände zu finden und/oder zu erkennen. Um einen Gegenstand in der Umgebung zu finden und/oder zu erkennen, werden die erfassten Bilddaten mit Referenzbilddaten verglichen, von denen bekannt ist, dass sie mit dem Gegenstand korrespondieren. Wenn die erfassten Bilddaten den Referenzbilddaten im Wesentlichen ähnlich sind, wird festgestellt, dass sich der Gegenstand in der Umgebung befindet.
  • Beispielhafte Gegenstände, die in Bilddaten gefunden und/oder erkannt werden können, umfassen Personen, Objekte, Strukturen und grafische Darstellungen von Zeichen. Wie hierin verwendet, ist ein Zeichen ein Symbol, das eine Komponente einer Sammlung, wie z.B. eine Sprache, darstellt. Die beispielhaften Zeichen umfassen Buchstaben, Zahlen, Markierungen (z.B. ein Ausrufezeichen, ein Und-Zeichen, ein Fragezeichen, ein Schrägstrich usw.) und Symbole. Eine Glyphe ist eine grafische Darstellung eines Zeichens, wenn das Zeichen angezeigt oder wiedergegeben wird. Anders ausgedrückt: Eine Glyphe ist eine grafische Zeichendarstellung. Eine Schriftart ist eine Sammlung von Glyphen. Jedes Zeichen entspricht nicht notwendigerweise einer bestimmten Glyphe, da es keine Eins-zu-Eins-Beziehung zwischen den beiden gibt.
  • Die optische Zeichenerkennung (OCR) ist eine Beispieltechnik zur Konvertierung grafischer Zeichendarstellungen, wie z.B. Glyphen, die in Bilddaten enthalten sind, in einen maschinenlesbaren Codepunkt, wie z.B. einen ASCII-Codepunkt. Im Allgemeinen beinhaltet OCR die Suche in Bilddaten nach Mustern und/oder Merkmalen, die mit einer gespeicherten grafischen Zeichendarstellung übereinstimmen. Nachdem solche Muster und/oder Merkmale in den Bilddaten gefunden wurden, werden die entsprechenden Codepunkte identifiziert (z. B. über eine Nachschlagfunktion in einer Datenstruktur, wie einer Tabelle). Die OCR stellt somit eine Ausgabe bereit, die maschinenlesbare Codepunkte enthält, die den in den Bilddaten grafisch dargestellten Zeichen entsprechen. Die maschinenlesbare Form der in den Bilddaten gefundenen Informationen ermöglicht es einer Maschine, die Informationen z.B. zu suchen, zu bearbeiten und/oder anderweitig zu nutzen.
  • Figurenliste
    • 1 zeigt eine beispielhafte Umgebung einschließlich einer beispielhaften Umgebung, in der Lehren dieser Offenbarung implementiert werden können.
    • 2 zeigt eine beispielhafte Anordnung der Bilderfassungsvorrichtung, des Tiefensensors und eines der Container von 1.
    • 3 ist eine Ansicht eines der Container von 1 aus der Perspektive der Bilderfassungsvorrichtung und des Tiefensensors von 2.
    • 4 ist ein Blockdiagramm, das eine beispielhafte Implementierung des Ladeverwalters aus 1 darstellt.
    • Die 5A und 5B veranschaulichen eine unsachgemäße Detektion von grafischen Zeichendarstellungen, die mit den Containern der 1 assoziiert sind.
    • 6 ist ein Blockdiagramm, das eine beispielhafte Implementierung des ID-Extraktors von 4 darstellt.
    • 7 ist ein Beispielbild, das mit der beispielhaften Bilderfassungsvorrichtung der 1 und/oder 2 aufgenommen wurde.
    • 8 zeigt beispielhafte Ergebnisse der Operationen, die vom beispielhaften Kantendetektor und dem Leerpixel-Gruppierer von 6 durchgeführt werden.
    • 9A-9C zeigen Beispieloperationen, die vom beispielhaften Leerpixel-Gruppierer von 6 durchgeführt werden.
    • 10 veranschaulicht beispielhafte Ergebnisse von Operationen, die vom beispielhaften Paarfinder von 6 durchgeführt werden.
    • 11 zeigt beispielhafte Ergebnisse der Operationen, die mit dem beispielhaften Paarfilter von 6 durchgeführt werden.
    • 12 veranschaulicht beispielhafte Ergebnisse der Operationen, die der beispielhafte Kandidatenbereich-Bezeichner von 6 durchführt.
    • 13 ist ein Flussdiagramm, das eine beispielhafte Operation darstellt, die zur Implementierung des beispielhaften Ladeverwalters der 1 und/oder 4 ausgeführt werden kann.
    • 14 ist ein Flussdiagramm, das beispielhafte Operationen darstellt, die zur Implementierung des beispielhaften ID-Extraktors der 4 und/oder 6 ausgeführt werden können.
    • 15 ist ein Blockschaltbild einer beispielhaften Logikschaltung zur Implementierung der beispielhaften Operationen von 13 zur Implementierung des beispielhaften Container-Ladeverwalters der 1 und/oder 4 und/oder zur Implementierung der beispielhaften Operationen von 14 zur Implementierung des beispielhaften ID-Extraktors der 4 und/oder 6.
  • DETAILLIERTE BESCHREIBUNG
  • Wie oben beschrieben, hat ein OCR-Modul die Aufgabe, grafische Zeichendarstellungen (GCRs), wie z.B. Glyphen, in Bilddaten in maschinenlesbare Codepunkte, wie z.B. ASCII-Codes, zu konvertieren. In einigen Fällen verarbeitet das OCR-Modul die Bilddaten vor, um einen oder mehrere Kandidaten zu identifizieren. Wie hierin verwendet, ist ein „Kandidatenbereich“ ein Bereich der Bilddaten, der wahrscheinlich eine GCR enthält. Ein Kandidatenbereich kann alternativ als ein Bereich von Interesse bezeichnet werden. Nach der Identifizierung von Kandidatenbereichen in den Bilddaten führt das OCR-Modul einen oder mehrere Erkennungsalgorithmen auf den Bilddaten der Kandidatenbereiche aus, um darin enthaltene GCRs zu erkennen.
  • Daher hängt die Leistung (z.B. Genauigkeit, Effizienz usw.) des OCR-Moduls in hohem Maße von der schnellen und korrekten Identifizierung der Kandidatenbereiche in den Bilddaten ab. Wenn das OCR-Modul beispielsweise einen oder mehrere Erkennungsalgorithmen auf Bereichen der Bilddaten ausführt, die eigentlich keine GCRs enthalten, werden Rechenressourcen verschwendet. Wenn die Bereiche der Bilddaten, die tatsächlich GCRs enthalten, während der Vorverarbeitung nicht als Kandidatenbereiche identifiziert werden, werden zumindest einige der entsprechenden Zeichen nicht erkannt und daher nicht in die entsprechenden Codepunkte konvertiert. Wenn die Bereiche der Bilddaten, die GCRs enthalten, nur teilweise als Kandidatenbereiche identifiziert werden, werden einige der entsprechenden Zeichen möglicherweise falsch erkannt und daher in einen inkorrekten Codepunkt konvertiert. Darüber hinaus können die Erkennungsalgorithmen umso schneller beginnen, je schneller die Kandidatenbereiche identifiziert werden.
  • Es ist schwierig, Kandidatenbereiche in den Bilddaten zu finden. Beispielsweise wird die Fähigkeit des OCR-Moduls, Kandidatenbereiche in den Bilddaten zu finden, durch eine schlechte Bildqualität beeinträchtigt, die auf die Bedingungen in der Umgebung und/oder die Fähigkeiten der Bilderfassungsvorrichtungen zurückzuführen ist. Darüber hinaus können Herausforderungen durch ungünstige Umstände im Zusammenhang mit der zu erkennenden GCRs entstehen. Einige Bildverarbeitungstechniken basieren beispielsweise auf dem Vorhandensein von Abständen zwischen verschiedenen Intensitäten und/oder klaren Randbedingungen, die mit den zu erkennenden Bilddaten verbunden sind. Im Zusammenhang mit OCR besteht eine solche Technik darin, einen maximal stabilen Extremalbereich (MSER) als Hinweis auf eine individuelle (d.h. separate) GCR zu identifizieren, so dass die individuelle GCR segmentiert oder von benachbarten Aspekten der Bilddaten (z.B. anderen GCRs) getrennt werden kann. Eine MSER ist eine solche, bei der die Intensitätsschwankung zwischen den Pixeln unter einem Schwellenwert liegt (d.h. stabil ist). Wenn die Grenzen, die eine GCR umgeben, eine ähnliche Intensität wie die GCR selbst aufweisen, neigt der MSER-Algorithmus zum Versagen. Infolgedessen kann zumindest ein Teil der GCR in der Nähe der Grenze unerkannt bleiben. Ein Beispielszenario, bei dem dunkle Flächen in der Nähe von GCRs in Bilddaten bekannte OCR-Systeme zum Versagen bringen, wird im Folgenden in Verbindung mit den 5A und 5B ausführlich beschrieben.
  • Die hierin offenbarten beispielhaften Verfahren und Vorrichtungen erkennen solche Herausforderungen und bieten eine genaue und effiziente Detektion von Kandidatenbereichen in Bilddaten. Wie unten im Detail beschrieben, identifizieren die hierin offenbarten Beispiele einen Kandidatenbereich in den Bilddaten, der wahrscheinlich mindestens ein Ziel z.B. eines Erkennungsalgorithmus (z.B. OCR) enthält. In einigen Beispielen ist das Ziel eine Gruppe von GCRs von Interesse, wie z.B. ein alphanumerischer Multi-Glyphen-Identifizierer. Hierin offenbarte Beispiele erkennen, dass sich das Ziel in der Regel zwischen zwei symmetrisch angeordneten leeren Flächen in den Bilddaten befindet. Anders ausgedrückt: Die hierin offenbarten Beispiele zeigen, dass sich die Zielgruppe der GCRs normalerweise zwischen zwei Flächen befindet, die keinen GCR enthalten.
  • Wie unten näher beschrieben, werden in den offenbarten Beispielen leere Flächen in den Bilddaten erkannt. Darüber hinaus wird anhand der hierin offenbarten Beispiele festgestellt, ob zwei der detektierten leeren Flächen ein symmetrisches Paar bilden. Wenn ein symmetrisches Paar leerer Flächen in den Bilddaten detektiert wird, wird anhand der hierin offenbarten Beispiele festgestellt, dass die Zielgruppe der GCRs wahrscheinlich zwischen den beiden symmetrisch angeordneten leeren Flächen liegt. Die hierin offenbarten Beispiele bestimmen die Fläche zwischen dem symmetrisch angeordneten Paar von leeren Flächen als ein Kandidatenbereich für zum Beispiel einen Zeichenerkennungsalgorithmus. In einigen Ausführungsformen erzeugen die hierin offenbarten Beispiele einen Begrenzungsrahmen (z.B. durch Zeichnen einer Form, wie z.B. eines Rechtecks) um die Kandidatenbereiche, um den Kandidatenbereich vom Rest der Bilddaten zu isolieren. Die hierin offenbarten Beispiele liefern die Bilddaten des Kandidatenbereichs an ein Erkennungsmodul, z.B. ein OCR-Modul, so dass GCRs, die sich in dem Kandidatenbereich befinden, erkannt und einem Codepunkt zugeordnet werden können.
  • Insbesondere durch Erkennen und Verwenden der symmetrisch angeordneten leeren Flächen zur Identifizierung eines Kandidatenbereichs der Bilddaten vermeiden die hierin offenbarten Beispiele Fallstricke und Einschränkungen bekannter Systeme. Durch die Bestimmung des Kandidatenbereichs auf der Grundlage symmetrisch angeordneter leerer Flächen anstelle des oben beschriebenen MSER-Ansatzes vermeiden die hierin offenbarten Beispiele die Erkennungsfehler, die mit GCRs in der Nähe von Grenzen verbunden sind, die eine ähnliches Erscheinung (z.B. Intensität) wie die GCRs haben. Darüber hinaus konzentrieren sich die hierin offenbarten Beispiele auf die Zeichenerkennungsoperationen auf dem Kandidatenbereich, der wahrscheinlich die angestrebten GCRs einschließt, anstatt Fenster auf der Suche nach GCRs über die Bilddaten zu schieben, was ein langsames und rechenintensives Verfahren ist. Anders ausgedrückt, die hierin offenbarten Beispiele verbessern die Effizienz und Genauigkeit einer Maschine, die die Aufgabe hat, Zeichenerkennungsoperationen durchzuführen.
  • 1 illustriert eine Beispielumgebung, in der die hierin offenbarten Verfahren, Systeme und Vorrichtungen implementiert werden können, um einen Kandidatenbereich in den Bilddaten zu erkennen. Das Beispiel von 1 ist repräsentativ für ein Ladedock 100 mit einem ersten, zweiten und dritten Container 102a-c. Beispielhafte Containertypen umfassen Lieferwagenanhänger, Paketwagen, Flugzeug-Ladeeinheiten und Eisenbahnwagen. In dem illustrierten Beispiel von 1 enthält jeder der Container 102a-c eine eindeutige Containerkennung, die sich auf einer Außenfläche befindet. Im Beispiel von 1 ist die Containerkennung eine alphanumerische Zeichenfolge. Zum Beispiel enthält der erste Container 102a die Containerkennung „JHG 61777 LO“, der zweite Container 102b die Containerkennung „GHI 52387 BV“ und der dritte Container 102c die Containerkennung „ORD 52468 OP“. Wie unten im Detail beschrieben, verbessern die hierin offenbarten Beispiele die an der Laderampe 100 eingesetzten Systeme, indem sie eine genauere und effizientere Detektion und Erkennung der Containerkennungen in Bilddaten, die für die Container 102a-c repräsentativ sind, ermöglichen.
  • Im Beispiel von 1 hat ein Belader 104 die Aufgabe, Pakete, von denen eines mit der Referenznummer 106 dargestellt ist, in die Container 102a-c zu laden. Während der Belader 104 von 1 eine Person ist, umfassen alternative Beispiele eine oder mehrere Maschinen, die als Belader der Pakete in die Container 102a-c programmiert sind. In vielen Fällen ist der Belader 104 mit großen Volumina von Paketen und strengen Zeitvorgaben konfrontiert. Fortschritte in der Kommunikationstechnologie, wie z.B. der Kauf und die Bestellung über das Internet, haben die Zahl der Verbraucher und Unternehmen erhöht, die sich auf die genaue und rechtzeitige Lieferung von Waren und Materialien verlassen. Damit haben sich auch die Anforderungen an diejenigen, die mit der Bereitstellung solcher Dienstleistungen beauftragt sind, erhöht. Zusätzlich zu größeren Volumina an zu liefernden Paketen haben sich die Lieferzeiten verkürzt, um der Nachfrage gerecht zu werden, da die Transport- und Logistikbranche wächst und der Wettbewerb sich verschärft. Darüber hinaus arbeiten viele Einrichtungen mit Garantien für die genaue und rechtzeitige Zustellung von Paketen, wodurch die Bedeutung einer genauen, pünktlichen und effizienten Leistung noch größer wird.
  • Beispielhafte Probleme, die beim Verladen von Paketen auftreten, umfassen z.B. eine zu geringe Raumausnutzung in einem Container und das Einbringen von Paketen in einen falschen Container. Nicht ausreichend genutzter Raum im Container kann zu Einnahmeausfällen und/oder Effizienzverlusten führen. Ein falsch verladenes Paket kommt möglicherweise nicht rechtzeitig am richtigen Bestimmungsort an, und es können zusätzliche Kosten in Verbindung mit einer besonderen Handhabung anfallen. Darüber hinaus nimmt das falsch beladene Paket wertvollen Platz im falschen Container ein, der ansonsten weitere korrekt beladene Pakete hätte transportieren können.
  • Um diese und andere Herausforderungen zu bewältigen, haben sich Transport- und Logistikeinheiten nach Maschinen umgesehen, die den Betrieb der Laderampen verbessern. Im Beispiel der Laderampe 100 von 1 werden beispielsweise ein mobiles Computergerät 108, eine Verarbeitungsplattform 110, Bilderfassungsvorrichtungen 112 und Tiefensensoren 114 eingesetzt, um das Verladen der Pakete auf die Container 102a-c zu verbessern. Das mobile Computergerät 108 ist so konfiguriert, dass es den Belader 104 bei der Aufgabe, Pakete in die Container 102a-c zu laden, unterstützt, indem es Anweisungen bezüglich des zu beladenden Containers gibt und/oder dem Belader 104 eine Rückmeldung über die aktuelle Auslastung der Räume in den Containern 102a-c gibt. Das beispielhafte mobile Computergerät 108 aus 1 ist ein tragbares Gerät, das am Belader 104 befestigt oder anderweitig von diesem getragen werden kann. Das mobile Computergerät 108 kann z.B. an einem Unterarm des Beladers 104 (z.B. über einen oder mehrere Gurte), an einem Kopf des Laders 104 (z.B. als Heads-Up-Display (HUD)-Gerät) oder an einem Kleidungsstück, das vom Belader 104 getragen wird (z.B. über einen Gürtelclip), befestigt werden. Alternativ kann das mobile Computergerät 108 während des Verladens von Paketen an einer Hand des Beladers 104 getragen werden. Das beispielhafte mobile Computergerät 108 umfasst eine Datenerfassungsvorrichtung, die in der Lage ist, Identifizierungsinformationen z.B. aus den auf das Paket 106 gedruckten oder aufgeklebten Indizien 116 zu gewinnen. Zusätzlich enthält das mobile Computergerät 108 eine Antenne zum Empfang von drahtlosen Übertragungen, eine Logikschaltung (z.B. die Verarbeitungsplattform 1000 von 10), die Informationen verarbeiten kann, und eine Benutzerschnittstelle, die z.B. eine Anweisung an den Belader 104 anzeigen kann. Zusätzlich oder alternativ dazu kann das beispielhafte mobile Computergerät 108 mit einer oder mehreren externen Ausgangskomponenten kommunizieren, die in der Lage sind, z.B. Anweisungen an den Belader 104 anzuzeigen.
  • Das mobile Computergerät 108 kommuniziert mit der Verarbeitungsplattform 110, um das ordnungsgemäße und effiziente Verladen von Paketen durch den Belader 104 zu erleichtern. Im illustrierten Beispiel von 1 implementiert die Verarbeitungsplattform 110 einen Ladeverwalter 118, der gemäß den Lehren dieser Offenlegung konstruiert wurde. Wie unten im Zusammenhang mit 4 ausführlich beschrieben, übermittelt der Ladeverwalter 118 von 1 die Containerzuweisungsinformationen für das Paket 106 an das mobile Computergerät 108, so dass der Belader 104 schnell und bequem über den zugewiesenen der Container 102a-c für das Paket 106 informiert wird. Im Beispiel von 1 erhält der Ladeverwalter 118 die Containerzuweisungen für Pakete von einer Datenquelle 120 in Kommunikation mit der Verarbeitungsplattform 110. Zusätzlich, wie unten im Zusammenhang mit 4 ausführlich beschrieben, verwendet der Ladeverwalter 118 die von den Tiefensensoren 114 bereitgestellten Tiefeninformationen, um die Raumnutzungsinformationen für die Container 102a-c zu berechnen. Der Ladeverwalter 118 kommuniziert die Raumnutzungsinformationen an das mobile Computergerät 108, so dass der Belader 104 bei Bedarf die aktuelle Ausnutzung des Containerraums verbessern kann.
  • Um diese und andere Funktionen ausführen zu können, benötigt der Ladeverwalter 118 insbesondere die Kenntnis der Containerkennungen auf den Containern 102a-c, die sich derzeit an der Laderampe 100 befinden. Um diese Kenntnis zu erlangen, empfängt und analysiert der Ladeverwalter 118 die von den Bilderfassungsvorrichtungen 112 bereitgestellten Bilddaten, um die Containerkennungen zu detektieren und zu erkennen. Wie unten im Zusammenhang mit 6 ausführlich beschrieben, enthält das Beispiel des Ladeverwalters 118 einen ID-Extraktor, der gemäß den Lehren dieser Offenbarung konstruiert ist, um die Containerkennungen in den von den Bilderfassungsvorrichtungen 112 bereitgestellten Bilddaten genau und effizient zu detektieren und zu erkennen. Insbesondere bietet der hierin offenbarte beispielhafte ID-Extraktor eine genauere und effizientere Umwandlung von GCRs in maschinenlesbare Codepunkte und damit eine genauere und effizientere Kenntnis der Containerkennungen. Durch die Bereitstellung solcher Verbesserungen verbessert der hierin offenbarte beispielhafte ID-Extraktor die Genauigkeit und Effizienz der auf der Verarbeitungsplattform ausgeführten Computeranwendungen.
  • In dem illustrierten Beispiel von 1 wird jede der Bilderfassungsvorrichtungen 112 auf einen Teil des jeweiligen Containers gerichtet, der die für diesen Container eindeutige Containerkennung enthält. Jeder der beispielhaften Container 102a-c von 1 enthält mindestens eine Instanz der jeweiligen Containerkennung an einem oberen, hinteren Teil des Containers. In alternativen Beispielen kann eine Bilderfassungsvorrichtung mit der Bildgebung von mehr als einem Container beauftragt werden. Außerdem wird jeder der Tiefensensoren 114 in eine Öffnung von einem der Container 10a-c gerichtet. Die Tiefensensoren 114 erzeugen Tiefenwerte für Punkte in einem Koordinatensystem. Die Tiefenwerte stellen einen Abstand zwischen dem Tiefensensor 114 und einer nächstgelegenen Oberfläche innerhalb des Containers 102a-c dar. Eine Vielzahl dieser Abstände kann verwendet werden, um eine Befüllung des entsprechenden Containers abzuschätzen. Ein beispielhaftes System zur Abschätzung der Befüllung eines Containers ist in der am 18. November 2015 eingereichten US-Patentanmeldung Nr. 14/944,860 enthalten, die hiermit durch Verweis in diese Anmeldung aufgenommen wird.
  • 2 zeigt eine beispielhafte Position einer der Bilderfassungsvorrichtungen 112 und eines der Tiefensensoren 114 relativ zu einem entsprechenden der Container 102a. Wie in 2 dargestellt, sind die Bilderfassungsvorrichtung 112 und der Tiefensensor 114 auf einen hinteren Teil 200 des Containers 102a gerichtet. In dem abgebildeten Beispiel enthält der hintere Teil 200 des Containers 102a eine Tür, die Zugang zu einem Innenraum des Containers 102a bietet. Das Sichtfeld der Bilderfassungsvorrichtung 112 ist derart, dass die von der Bilderfassungsvorrichtung 112 erzeugten Bilddaten mindestens einen Teil (z.B. einen oberen, hinteren Teil) des Containers 102a umfassen, der die Containerkennung enthält. Das Sichtfeld des Tiefensensors 114 ist derart, dass die vom Tiefensensor 114 erzeugten Tiefendaten den Abständen zwischen dem Tiefensensor 114 und den Oberflächen im Innenraum des Containers 102a entsprechen.
  • 3 zeigt eine beispielhafte Ansicht des Containers 102a aus der Perspektive der Bilderfassungsvorrichtung 112 und des Tiefensensors 114 wie in 2 angeordnet. Wie in 3 dargestellt, erfasst das Bilderfassungsvorrichtung 112 den hinteren Teil des Containers 102a, der die Containerkennung enthält. Außerdem hat der Tiefensensor 114 (und die Bilderfassungsvorrichtung 112) einen Blick in eine Öffnung 300, die der Tür entspricht. Das Belader 104 lädt das Packet 106 durch die Öffnung 300 in den Container 102a. Wie unten im Detail beschrieben, erkennt und nutzt der beispielhafte Ladeverwalter 118 über einen ID-Extraktor, der gemäß den Lehren dieser Offenbarung konstruiert wurde, die ersten und zweiten symmetrisch angeordneten leeren Flächen 302 und 304 auf dem Container, um einen Kandidatenbereich für die angestrebte Containerkennung zu identifizieren.
  • 4 ist ein Blockdiagramm, das eine Beispielimplementierung des Ladeverwalters 118 aus 1 in Kommunikation mit dem mobilen Computergerät 108, den Bilderfassungsvorrichtungen 112, den Tiefensensoren 114 und der Datenquelle 120 darstellt. Der beispielhafte Ladeverwalter 118 von 4 enthält einen Bildempfänger 400, der konfiguriert ist, um Bilddaten von den Bilderfassungsvorrichtungen 112 und einen Tiefenwertempfänger 402 zu empfangen, der so konfiguriert ist, dass er Bilddaten von den Tiefensensoren 114 empfängt. Im Beispiel von 4 sind der Bildempfänger 400 und der Tiefenwertempfänger 402 jeweils so konfiguriert, dass sie Bilddaten von den Bilderfassungsvorrichtungen 112 bzw. den Tiefensensoren 114 anfordern oder anderweitig erhalten. Bilddaten werden vom Bildempfänger 400 und/oder vom Tiefenwertempfänger 402 als Antwort auf z.B. eine Ankunft eines Containers in der Laderampe 100, eine Anfrage bezüglich der Raumausnutzung in einem der Container 102a-c, eine Anfrage bezüglich einer Containerzuweisung für das Paket 106 und/oder gemäß einem Zeitplan erhalten.
  • Der Bildempfänger 400 von 1 liefert die Bilddaten an einen ID-Extraktor 404 des Ladeverwalters 118. Der beispielhafte ID-Extraktor 404 von 4 analysiert die Bilddaten, um die Containerkennung in den Bilddaten zu detektieren und zu erkennen. Die vom beispielhaften ID-Extraktor 404 von 4 durchgeführte Detektion und Erkennung umfasst das Auffinden von grafischen Zeichendarstellungen (GCRs) der Containerkennung und die Umwandlung der GCRs in maschinenlesbare Codepunkte. Die Detektion der GCRs der Containerkennung ist jedoch eine schwierige Aufgabe, insbesondere wenn die Containerkennung in der Nähe einer Oberkante 305 des Containers liegt. Wie in 3 gezeigt, befinden sich die oberen Elemente der GCRs (d.h. die oberen Buchstaben und Zahlen) in der Nähe einer Oberkante 305 des Containers. Die Nähe der GCRs zur Oberkante 305 wird in 5A weiter veranschaulicht, die ein Bild eines Teils des Containers 102a von 1 ist. Wie in 5A zu sehen ist, erscheint die Oberkante 305 des Containers 102a als dunkle Linie über die oberen Teile der GCRs. Insbesondere erscheinen die GCRs auch als dunkle Elemente in den Bilddaten. Daher hat die dunkle Linie, die der Oberkante 305 des Containers entspricht, in den Bilddaten eine ähnliche Intensität wie die GCRs. Außerdem ist der Abstand zwischen den GCRs und der Oberkante des Containers 102a, falls vorhanden, gering.
  • Wie oben erläutert, führen die fehlende Unterscheidung der Intensitäten zwischen den GCRs und anderen in den Bilddaten dargestellten Elementen (z. B. dem oberen Rand des Containers) sowie der geringe, vielleicht nicht unterscheidbare Abstand zwischen den GCRs und den Elementen zu Fehlern bei der Detektion und Segmentierung der GCRs in den Bilddaten. Das heißt, dass diese Aspekte der Containerkennungen die Leistung traditioneller Techniken zum Auffinden und Isolieren von Kandidaten-GCRs, wie der oben erwähnten MSER-Technik, verringern. Zum Beispiel illustriert 5B einen Versuch, die GCRs der in 5A gezeigten Containerkennung zu erkennen. In 5B entsprechen die Markierungen, von denen eine mit der Referenznummer 500 gekennzeichnet ist, der Ausgabe eines MSER-Algorithmus, der die Aufgabe hat, Kandidaten-GCRs zu identifizieren. Im Idealfall entsprechen die Markierungen 500 den Formen der GCRs. Wie in 5B zu sehen ist, umfassen die Markierungen 500 jedoch nicht die oberen Teile der GCRs. Das heißt, der MSER-Algorithmus konnte die oberen Teile der GCRs nicht erkennen, und daher wird jeder nachfolgende Erkennungsprozess die GCRs nicht erkennen (und somit auch nicht konvertieren). Außerdem enthält die Ausgabe des MSER-Algorithmus mehrere Bereiche, die keinen GCR enthalten, was zu einer verschwenderischen Ausführung der Erkennungsberechnungen führt.
  • Eine Beispielimplementierung des ID-Extraktors 404, die die oben genannten Probleme der 5A und 5B vermeidet und die Detektion und Erkennung der GCRs verbessert, wird im Zusammenhang mit 6 unten ausführlich beschrieben. Die Ausgabe des beispielhaften ID-Extraktors 404 ist ein oder mehrere Codepunkte, die den GCRs der Containerkennung entsprechen. Das heißt, der beispielhafte ID-Extraktor 404 liefert eine maschinenlesbare Version der Containerkennung, so dass der Ladeverwalter 118 Kenntnis darüber erhält, welcher Container in der Laderampe 100 vorhanden ist.
  • Im Beispiel von 4 liefert der beispielhafte ID-Extraktor 404 von 4 die maschinenlesbare Version der Containerkennung an die Datenquelle 120. Die beispielhafte Datenquelle 120 enthält Informationen darüber, welcher der Container 102a-c bestimmte Pakete erhalten sollte (z.B. gemäß einem Ziel des Containers, das mit einem Ziel des Pakets übereinstimmt). In dem illustrierten Beispiel führt die Datenquelle 120 eine Liste der verfügbaren Container, die sich aktuell an der Laderampe 100 befinden. Darüber hinaus enthält die von der Datenquelle 120 geführte Liste Informationen über den entsprechenden Container (z.B. Bestimmungsort, Abmessungen usw.).
  • Im abgebildeten Beispiel erhält der Container-Zuweiser 406 vom mobilen Computergerät 108 Identifizierungsinformationen (z. B. eine universelle Kennung, eine Lagerhaltungseinheit (SKU), einen universellen Produktcode (UPC), eine Adresse, eine physische Größe, ein Gewicht, eine Identifizierung von Gefahrstoffen oder besondere Handhabungshinweise), die mit dem Paket 106 verbunden sind. Zum Beispiel verwendet der Belader 104 eine Datenerfassungsvorrichtung des mobilen Computergeräts 108, um die Indizien 116 abzubilden oder zu scannen, die dem Container-Zuweiser 406 des Ladeverwalters 118 übermittelt werden. Alternativ dazu verwendet der Belader 104 eine Datenerfassungsvorrichtung einer Arbeitsstation, um die Indizien 116 abzubilden oder zu scannen, und die Arbeitsstation übermittelt die erfassten Daten an den Container-Zuweiser 406.
  • In dem abgebildeten Beispiel fragt der Container-Zuweiser 406 die Datenquelle 120 mit den Identifikationsinformationen ab, die dem Paket 106 zugeordnet sind, um zu bestimmen, welcher der Container 102a-c das Paket 106 erhalten soll. Wie oben beschrieben, teilt der ID-Extraktor 404 der Datenquelle 120 mit, welche Container sich in der Laderampe 100 befinden und somit für die Aufnahme des Pakets 106 zur Verfügung stehen. Im Beispiel von 4 sendet der Container-Zuweiser 406 eine Nachricht an das mobile Computergerät 108 mit der Anweisung, das Paket 106 auf den ausgewählten oder zugewiesenen der Container 102a-c zu laden. In einigen Beispielen beinhaltet die Anweisung das Anzeigen der Containerkennung, die dem ausgewählten der Container 102a-c entspricht, auf dem mobilen Computergerät 108. Da die Auswahl des Containers für das Paket 106 die Containerkennung beinhaltet, verbessert die genaue und effiziente Detektion und Erkennung der Containerkennung in den Bilddaten, wie sie im beispielhaften ID-Extraktor 404 vorgesehen ist, die Leistung des Container-Zuweisers 406 und damit die Übermittlung von Anweisungen an den Belader 104 über das mobile Computergerät 108.
  • Rückverweisend auf den ID-Extraktor 404 werden die maschinenlesbaren Codepunkte, die der Containerkennung entsprechen, zusätzlich einem Dimensionsbeschaffer 408 des Ladeverwalters 118 zur Verfügung gestellt. Unter Verwendung der vom ID-Extraktor gelieferten Identität des Containers erhält der Dimensionsbeschaffer 408 von 4 eine oder mehrere Dimensionen eines Innenraums des identifizierten Containers. Dazu fragt der Dimensionsbeschaffer 408 die Datenquelle 120 mit den der Containerkennung entsprechenden Codepunkten ab. In dem illustrierten Beispiel enthält die Datenquelle 120 die Dimensionen der verschiedenen Containertypen und liefert diese als Antwort auf den Empfang einer Containerkennung.
  • Die mit dem Dimensionsbeschaffer 408 erhaltenen Dimensionen werden einem Befüllungsschätzer 410 zur Verfügung gestellt. Zusätzlich liefert der Tiefenwertempfänger 402 die Tiefeninformation an den Befüllungsschätzer 410. Unter Verwendung der erhaltenen Dimensionen und der Tiefeninformationen erzeugt der Befüllungsschätzer 410 eine Echtzeit-Schätzung der Raumausnutzung im Container. In dem abgebildeten Beispiel verwendet der Befüllungsschätzer 410 Techniken, die in der US-Patentanmeldung Nr. 14/944,860 offenbart sind, um die Echtzeit-Schätzung zu generieren. In dem illustrierten Beispiel übermittelt der Befüllungsschätzer 410 die Nutzungsinformationen an das mobile Computergerät 108, das diese dem Belader 104 anzeigt. Da die Dimensionen des Containers auf der Grundlage der Containerkennung ermittelt werden, verbessert die genaue und effiziente Detektion und Erkennung der Containerkennung in den Bilddaten, wie sie vom beispielhaften ID-Extraktor 404 bereitgestellt wird, die Leistung des Befüllungsschätzers 410 und damit die Übermittlung der Nutzungsinformationen an den Belader 104 über das mobile Computergerät 108.
  • 6 ist ein Blockdiagramm, das eine Beispielimplementierung des ID-Extraktors 404 aus 4 darstellt. Um eine Stelle in den Bilddaten zu erkennen, die wahrscheinlich GCRs enthält, die der Containerkennung entsprechen, nutzt der beispielhafte ID-Extraktor 404 von 6 die Anordnung und Position der Containerkennung auf dem Container und die Eigenschaften der die Containerkennung umgebenden Flächen. Insbesondere erkennt der beispielhafte ID-Extraktor 404 die Kandidatenbereiche einschließlich der Ziel-GCRs, indem er symmetrisch angeordnete leere Flächen in den Bilddaten findet und lokalisiert. Die Containerkennung befindet sich zwischen symmetrisch angeordneten leeren Flächen oder Oberflächen auf der Containerkennung. Rückblickend auf 3 ist die erste leere Fläche 302 neben einem führenden GCR der Containerkennung und die zweite leere Fläche 304 neben einem nachlaufenden GCR der Containerkennung. Anders ausgedrückt, die erste leere Fläche 302 befindet sich auf einer ersten Seite der Containerkennung und die zweite leere Fläche 304 auf einer zweiten, entgegengesetzten Seite der Containerkennung. Der beispielhafte ID-Extraktor 404 von 6 nutzt den Vorteil, dass sich der Mittelpunkt der Containerkennung in der Mitte des Abstands zwischen dem ersten und dem zweiten leeren Flächen 302 und 304 befindet. Insbesondere bezeichnet der beispielhafte ID-Extraktor 404 von 6 die Bilddaten zwischen den leeren Flächen 302 und 304 als einen Kandidatenbereich 306 für die GCRs der Containerkennung. Die Kandidatenbereiche 306 werden dann analysiert, um die darin befindlichen GCRs zu erkennen.
  • Um die symmetrisch angeordneten leeren Flächen zu erkennen und zu identifizieren, enthält der beispielhafte ID-Extraktor 404 von 6 einen Kantendetektor 600, einen Leerpixel-Gruppierer 602, einen Paarfinder 604, einen Paarfilter 606 und einen Kandidaten für die Kandidatenbereich-Bezeichner 608. Der beispielhafte ID-Extraktor 404 von 6 enthält einen Erkenner 610 zur Ausführung einer oder mehrerer Zeichenerkennungsoperationen auf dem ermittelten Kandidatenbereich. Alternativ kann der beispielhafte ID-Extraktor 404 die Bilddaten des ermittelten Kandidatenbereichs einem anderen Gerät zur Durchführung der Zeichenerkennungsoperationen zur Verfügung stellen. In dem abgebildeten Beispiel empfängt der Kantendetektor 600 Bilddaten vom Bildempfänger 400 der 4. Ein Beispielbild 700 mit den vom Kantendetektor 600 empfangenen Bilddaten ist in 7 dargestellt. Das Beispiel von 7 zeigt einen Container 702 in einem Dockbereich. Der Container 702 enthält eine Containerkennung, die sich in der Nähe einer Oberkante 704 befindet. Im abgebildeten Beispiel von 7 wird ein Vorhang 706 gezeigt, der eine Öffnung abdeckt, durch die der Container 702 beladen wird. Um zu veranschaulichen, welcher Teil des Bildes 700 durch den ID-Extraktor 404 identifiziert werden soll, wurde dem Bild 700 ein Feld 708 hinzugefügt, der die zu identifizierende Containerkennung umgibt. Das heißt, der beispielhafte ID-Extraktor 404 ist so konfiguriert, dass er den durch das Feld 708 umrissenen Flächen als Kandidatenbereich identifiziert.
  • Der beispielhafte Kantendetektor 600 aus 6 identifiziert Punkte in den Bilddaten, die eine scharfe oder abrupte Änderung einer Eigenschaft, wie z.B. einer Helligkeit, aufweisen. Anders ausgedrückt, der Kantendetektor 600 identifiziert Unstetigkeitspunkte in den Bilddaten. In dem abgebildeten Beispiel führt der Kantendetektor 600 einen Canny-Algorithmus auf den empfangenen Bilddaten aus, um die Kanten zu identifizieren. Es kann jedoch jede geeignete Technik zur Identifizierung der Kanten des Bildes verwendet werden. Ein Beispiel für die Ergebnisse der vom Kantendetektor 600 durchgeführten Operationen ist in 8 dargestellt. In dem abgebildeten Beispiel werden die vom beispielhaften Kantendetektor 600 detektierten Kanten in durchgezogenen, hellen Linien dargestellt.
  • Der beispielhafte Leerpixel-Gruppierer 602 aus 6 gruppiert horizontale Linien von leeren Pixeln gemäß Kriterien, die durch den Leerpixel-Gruppierer 602 definiert sind. In dem abgebildeten Beispiel sind leere Pixel diejenigen, die vom beispielhaften Kantendetektor 600 nicht als Kanten identifiziert werden. Das heißt, die leeren Pixel sind Pixel, die eine abrupte Änderung einer Eigenschaft (z.B. Helligkeit) relativ zu ihren Nachbarpixeln aufweisen. In 8 werden die leeren Pixel als weißer Raum dargestellt.
  • 9A-9C veranschaulichen den Prozess, der durch den beispielhaften Pixel-Gruppierer 602 implementiert wird. Die Punkte von 9A stellen eine Vielzahl von leeren Pixeln in den Bilddaten gemäß den Ergebnissen des Kantendetektors 600 dar. Das heißt, die Punkte von 9A sind von Pixeln umgeben, die als Kanten identifiziert wurden. Wie in 9B dargestellt, verbindet der Leerpixel-Gruppierer 602 fortlaufend benachbarte leere Pixel mit einem selben X-Wert in einem Koordinatensystem zu horizontalen (d.h. entlang der X-Achse) Linien. Im Beispiel von 9B verbindet der Leerpixel-Gruppierer 602 horizontal ausgerichtete der leeren Pixel zu fünf entsprechenden Zeilen. Die Linien sind in 9B durch eine Linienabbildung miteinander verbunden.
  • Als nächstes gruppiert der beispielhafte Pixel-Gruppierer 602 bestimmte der Linien zusammen in rechteckige Bereiche. In dem abgebildeten Beispiel verwendet der Leerpixel-Gruppierer 602 einen Union-Find-Algorithmus, um benachbarte der horizontalen Linien zusammen zu gruppieren. Insbesondere vergleicht der Leerpixel-Gruppierer 602 jeweils zwei der horizontalen Linien, um festzustellen, ob diese beiden horizontalen Linien für bestimmte Eigenschaften ähnliche Werte aufweisen. Der Leerpixel-Gruppierer 602 von 6 bestimmt beispielsweise, ob benachbarte der horizontalen Linien ähnliche Breiten (d.h. Längen entlang der X-Achse) haben. Wenn die beiden horizontalen Linien die Ähnlichkeitskriterien erfüllen, werden diese horizontalen Linien zu einem rechteckigen Bereich zusammengruppiert. Natürlich kann ein rechteckiger Bereich mehr als zwei Linien haben, da der Leerpixel-Gruppierer 602 Vergleiche zwischen den jeder der horizontalen Linien durchführt. In einigen Beispielen definiert der Leerpixel-Gruppierer 602 einen Mindestschwellenwert an horizontalen Linien für eine Gruppierung der Linien, die als Gruppe betrachtet werden sollen. In solchen Fällen werden rechteckige Bereiche, die den Mindestschwellenwert an Linien nicht erfüllen, nicht als eine leere Fläche bezeichnet.
  • Ein beispielhafter rechteckiger Bereich, der sich aus dem Union-Find-Algorithmus ergibt, der vom beispielhaften Pixel-Gruppierer 602 ausgeführt wird, ist in 9C als das Feld 900 dargestellt. Das Feld 900 von 9C ist eine beispielhafte leere Fläche in den Bilddaten, wie er durch den beispielhaften Pixel-Gruppierer 602 von 6 bestimmt wurde. Rückblickend auf 8 sind die leeren Flächen, die durch den beispielhaften Pixel-Gruppierer 602 erzeugt wurden, als Rechtecke mit gestrichelten, gebrochenen Linien dargestellt, von denen eine mit der Referenznummer 800 gekennzeichnet ist. Daher enthält die Abbildung von 8 durchgehende, helle Linienabschnitte, die den vom beispielhaften Kantendetektor 600 aus 6 detektierten Kanten entsprechen, und gestrichelte Rechtecke, die die vom beispielhaften Leerpixel-Gruppierer 602 aus 6 erkannten leeren Flächen umreißen.
  • Der beispielhafte Paarfinder 604 von 6 analysiert den Ausgang des Kantendetektors 600 und des Leerpixel-Gruppierers 602, um symmetrisch angeordnete Paare unter den erkannten leeren Flächen zu finden. In dem abgebildeten Beispiel verwendet der Paarfinder 604 einen Union-Find-Algorithmus, um leere Flächen mit ähnlichen Merkmalen zu finden. In dem illustrierten Beispiel ist der Union-Find-Algorithmus so konfiguriert, dass er diejenigen der leeren Flächen findet, die eine ähnliche (d.h. innerhalb einer Schwellenwert-Toleranz) Breite (d.h. eine Länge entlang der X-Achse der Bilddaten), eine ähnliche Höhe (d.h. eine Länge entlang der Y-Achse der Bilddaten), eine oberste horizontale Linie (d.h. Oberkante) mit einem ähnlichen Y-Koordinatenwert und ähnliche Abstände von einem vertikalen (d.h. entlang der Y-Achse) Zentrum der Bilddaten aufweisen. Daher findet der beispielhafte Paarfinder 604 von 6 leere Flächen von ähnlicher Größe und ähnlicher, aber gegenüberliegender Lage von einem vertikalen Zentrum aus. Anders ausgedrückt, findet der beispielhafte Paarfinder 604 von 6 symmetrisch angeordnete Paare von leeren Flächen. Diejenigen der leeren Flächen, die nicht vom Paarfinder 604 identifiziert werden, werden verworfen. Ein Beispiel zur Veranschaulichung der Ergebnisse der Operationen, die mit dem beispielhaften Paarfinder 604 durchgeführt wurden, ist in 10 dargestellt. Die leeren Flächen, die nach der Ausführung der Operationen durch den Paarfinder 604 übrig bleiben, sind im Beispiel von 10 als gestrichelte Rechtecke dargestellt.
  • Der beispielhafte Paarfilter 606 des ID-Extraktors 404 analysiert die Bilddaten, nachdem der Paarfinder 604 symmetrisch angeordnete Paare leerer Flächen gefunden hat. Der beispielhafte Paarfilter 606 von 6 macht sich die Erkenntnis zunutze, dass sich die Zielcontainerkennung (d.h. der zu identifizierende Bereich, der die GCRs enthält) zwischen symmetrisch angeordneten leeren Flächen befindet und dass die GCRs der Containerkennung Kanten sind, die vom Kantendetektor 600 erkannt werden. Der beispielhafte Paarfilter 606 aus 6 filtert aus den verbleibenden Paaren von leeren Flächen diejenigen heraus, die im Raum zwischen den beiden leeren Flächen keinen Schwellenwert für eine Kreuzkantenzahl erfüllen.
  • Der beispielhafte Paarfilter 606 zeichnet eine horizontale Linie in der Mitte des Raums zwischen jedem Paar von leeren Flächen. Diese horizontale Linie wird hier als Kreuzkantenlinie bezeichnet. Die Kreuzkantenlinie erstreckt sich über den Raum zwischen den Paaren von leeren Flächen und durchquert somit alle im Raum befindlichen Kanten. Der beispielhafte Paarfilter 606 zählt die Anzahl der Kanten, die von der Kreuzkantenlinie durchlaufen werden. Wenn die Anzahl der von der Kreuzkantenlinie durchquerten Kanten die Schwellenwertkantenanzahl (z.B. zehn (10)) erreicht, verwirft der beispielhafte Paarfilter 606 das entsprechende Paar von leeren Flächen nicht. Wenn die Anzahl der von der Kreuzkantenlinie durchquerten Kanten, verwirft der beispielhafte Paarfilter 606 das entsprechende Paar von leeren Flächen nicht. Ein Beispiel zur Veranschaulichung der Ergebnisse der vom Paarfilter 606 durchgeführten Operationen ist in 11 dargestellt. Hier bleibt das in 11 gezeigte Paar von leeren Flächen aufgrund der signifikanten Anzahl von Kanten, die den GCRs der Containerkennung entsprechen, zwischen den beiden leeren Flächen übrig. Insbesondere entspricht das verbleibende Paar von leeren Flächen in 11 den ersten und zweiten leeren Flächen 302 und 304 von 3.
  • Im illustrierten Beispiel von 6 wird der Ausgang des Paarfilters 606 dem beispielhaften Kandidatenbereich-Bezeichner 608 des ID-Extraktors 404 zur Verfügung gestellt. Der beispielhafte Kandidatenbereich-Bezeichner 608 bezeichnet oder markiert den Raum zwischen den beiden leeren Flächen jedes verbleibenden symmetrisch angeordneten Paares als Kandidatenbereich. In dem illustrierten Beispiel passt der Kandidatenbereich 608 in einen Begrenzungsrahmen um den Raum zwischen den jeweiligen leeren Flächen jedes verbleibenden Paares. Ein Beispiel zur Veranschaulichung der Ergebnisse der Operationen, die von dem Kandidatenbereich-Bezeichner 608 durchgeführt wurden, ist in 12 dargestellt. Der durch den beispielhaften Kandidatenbereich-Bezeichner 608 erzeugte Begrenzungsrahmen 1200 wird in 12 als ein durchgehendes Rechteck dargestellt. Der Begrenzungsrahmen wird beispielsweise durch die Koordinaten der Linien des Begrenzungsrahmens oder einen Bereich von Pixeln definiert, die in den Begrenzungsrahmen fallen. Insbesondere entspricht der Raum zwischen dem verbleibenden Paar von leeren Flächen, das in 12 als Kandidatenbereich bezeichnet wird, dem Kandidatenbereich 306 von 3.
  • Im Beispiel von 6 wird die Ausgabe des Kandidatenbereich-Bezeichners 608 dem beispielhaften Erkenner 610 des ID-Extraktors 404 zur Verfügung gestellt. In einigen Beispielen erhält der Erkenner 610 mehr als einen Kandidatenbereich vom Kandidatenbereich-Bezeichner 608. Der beispielhafte Erkenner 610 führt z.B. OCR-Operationen durch, um GCRs, die in dem/den Kandidatenbereich(en) gefunden wurden, zu erkennen und in maschinenlesbare Codepunkte zu konvertieren. Während der beispielhafte ID-Extraktor 404 von 6 den Erkenner 610 enthält, kann der beispielhafte ID-Extraktor 404 zusätzlich oder alternativ die Bilddaten, die dem/den Kandidatenbereich(en) entsprechen, einem anderen Modul oder Gerät zur Verfügung stellen, das mit der Ausführung von Erkennungsoperationen beauftragt ist, die GCRs erkennen und diese in maschinenlesbare Codepunkte konvertieren.
  • 13 ist ein Flussdiagramm, das maschinenlesbare Anweisungen darstellt, die von einer Logikschaltung (z.B. der beispielhaften Plattform 1500 von 15) ausgeführt werden können, um den beispielhaften Ladeverwalter 118 von 1 und/oder 4 zu implementieren. Im Beispiel von 13 erreicht ein Container die Laderampe 100 von 1 (Block 1300). Zum Beispiel kann der erste Container 102a in die Laderampe 100 zurückkehren, wobei der hintere Teil 200 einer der Bilderfassungsvorrichtungen 112 und einem der Tiefensensoren 114 zugewandt ist (wie in 2 dargestellt). Die Ankunft des Containers 102a an der Laderampe 102a ist ein Beispiel für einen Auslöser für die Operationen von 13, da der Ladeverwalter 118 die Operationen von 13 kontinuierlich und/oder als Reaktion auf einen oder mehrere alternative Auslöser durchführen kann.
  • Der beispielhafte Bildempfänger 400 weist die Bilderfassungsvorrichtung 112 an oder löst sie anderweitig aus, um dem Ladeverwalter 118 (Block 1302) Bilddaten zu liefern. Im Beispiel von 13 sind die erhaltenen Bilddaten repräsentativ für einen Teil des Containers 102a, der die Containerkennung enthält. Der beispielhafte ID-Extraktor 404 des Ladeverwalters 118 extrahiert die Containerkennung aus den Bilddaten (Block 1304). Eine Beispielimplementierung des Blocks 1304 wird nachfolgend in Verbindung mit 14 beschrieben. Wie unten im Detail beschrieben, detektiert der ID-Extraktor 404 einen Kandidatenbereich auf dem Container 102a, führt einen Erkennungsalgorithmus auf dem Kandidatenbereich aus, um GCRs im Kandidatenbereich in maschinenlesbare Codepunkte zu konvertieren, und liefert die Codepunkte an die Datenquelle 120.
  • Wie oben beschrieben, ist der Ladeverwalter 118 so konfiguriert, dass er eine dem Paket 106 zugeordnete Kennung z.B. von dem mobilen Computergerät 108 erhält (z.B. über einen Scan der Indizien 116 auf dem Paket 106). Wenn eine solche Kennung empfangen wird (Block 1306), verwendet der beispielhafte Container-Zuweiser 406 die Paketkennung zur Abfrage der Datenquelle 120 (Block 1308). Mit einer Liste der derzeit verfügbaren Container in der Laderampe 100 (wie vom ID-Extraktor 404 bereitgestellt), antwortet die Datenquelle 120 auf die Abfrage mit einer Containerzuweisung für das Paket 106 (z.B. basierend auf dem Ziel des Pakets 106 und/oder des Containers). Im Beispiel von 13 kommuniziert der Container-Zuweiser 406 eine Nachricht, die den zugewiesenen Container identifiziert, an das mobile Rechengerät 108 (Block 1310). So wird dem Belader 104 mitgeteilt, in welchen der Container 102a-c das Paket 106 verladen werden soll.
  • Wie oben beschrieben, werden die maschinenlesbaren Codepunkte, die der Containerkennung entsprechen, wie sie vom ID-Extraktor 404 erhalten werden, zusätzlich dem Dimensionsbeschaffer 408 zur Verfügung gestellt. Im Beispiel von 13 fragt der Dimensionsbeschaffer 408 die Datenquelle 120 unter Verwendung der der Containerkennung entsprechenden Codepunkte ab, um eine oder mehrere Dimensionen des Innenraums des entsprechenden Containers zu bestimmen (Block 1312). Der Dimensionsbeschaffer 408 bestimmt z.B. ein Volumen des leeren Containers. Anders ausgedrückt, der Dimensionsbeschaffer 408 bestimmt eine Kapazität des Containers.
  • Im Beispiel von 13 erhält der Tiefenwertempfänger 402 die Tiefenwerte von einem der Tiefensensoren 114 (Block 1314). Beispielsweise verwendet der Tiefenwertempfänger 402 die der Containerkennung entsprechenden Codepunkte, um einen der auf den entsprechenden Container gerichteten Tiefensensoren 114 auszuwählen. Die vom Tiefensensor 114 zurückgegebenen Tiefenwerte repräsentieren Entfernungen vom Tiefensensor 114 zu verschiedenen Oberflächen im Container. Die Dimensionen des Containers und die Tiefenwerte werden vom Befüllungsschätzer 410 verwendet, um eine aktuelle Füllung des Containers abzuschätzen (Block 1316). In dem abgebildeten Beispiel verwendet der Befüllungsschätzer 410 Techniken, die in der US-Patentanmeldung Nr. 14/944,860 offenbart sind, um die Echtzeit-Schätzung zu generieren.
  • Im abgebildeten Beispiel übermittelt der Befüllungsschätzer 410 die Auslastungsinformationen an das mobile Computergerät 108, das diese dem Belader 104 anzeigt (Block 1318).
  • 14 ist ein Flussdiagramm, das maschinenlesbare Anweisungen darstellt, die von einer Logikschaltung (z.B. der beispielhaften Plattform 1500 von 15) ausgeführt werden können, um den beispielhaften ID-Extraktor 404 von 4 und/oder 6 und/oder den Block 1304 von 13 zu implementieren. Im Beispiel von 14 werden die für einen Container repräsentativen Bilddaten vom beispielhaften ID-Extraktor 404 empfangen, wie oben in Verbindung mit Block 1302 von 13 beschrieben. Das beispielhafte Kantendetektor 600 identifiziert Kanten in den Bilddaten durch die Erkennung von Punkten in den Bilddaten, die einen scharfen Kontrast zu benachbarten Punkten aufweisen (Block 1400). In dem abgebildeten Beispiel bestimmt der Kantendetektor 600 (z.B. über einen Canny-Algorithmus), dass ein Pixel der Bilddaten eine Kante ist, indem er die Helligkeitsniveaus des Pixels oder der Pixelgruppen mit den Helligkeitsniveaus benachbarter Pixel oder Gruppen benachbarter Pixel vergleicht.
  • Der beispielhafte Leerpixel-Gruppierer 602 aus 6 identifiziert leere Flächen in den Bilddaten. Im Beispiel von 14 verwendet der Leerpixel-Gruppierer 602 die vom Kantendetektor 600 durchgeführten Kantendetektionen, um leere Pixel zu identifizieren. Leere Pixel sind insbesondere solche, die vom beispielhaften Kantendetektor 600 nicht als Kanten identifiziert werden. Um die leeren Flächen zu gruppieren/identifizieren, verbindet der beispielhafte Leerpixel-Gruppierer 602 durchgehende leere Pixel mit demselben X-Koordinatenwert zu horizontalen Linien (Block 1402). Außerdem gruppiert der Leerpixel-Gruppierer 602 benachbarte (entlang der Y-Achse) horizontale Linien mit ähnlichen Breiten in rechteckigen Bereiche (Block 1404). Die rechteckigen Bereiche werden als leere Flächen bezeichnet.
  • Der beispielhafte Paarfinder 604 von 6 findet symmetrisch angeordnete Paare unter den detektierten leeren Flächen (Block 1406). Im abgebildeten Beispiel verwendet der Paarfinder 604 einen Union-Find-Algorithmus, um leere Flächen mit ähnlichen Eigenschaften wie z.B. ähnliche Breiten, ähnliche Höhen, oberste horizontale Linien mit einem ähnlichen Y-Koordinatenwert und ähnliche Abstände von einem vertikalen Mittelpunkt der Bilddaten, zu finden.
  • Der beispielhafte Paarfilter 606 des ID-Extraktors 404 filtert alle leeren Flächenpaare aus, die im Raum zwischen den entsprechenden zwei leeren Flächen nicht einen Schwellenwert für eine Kreuzkantenzahl erfüllen. Um ein einzelnes der leeren Flächenpaare zu analysieren, zeichnet der beispielhafte Paarfilter 606 eine Kreuzkantenlinie über den Raum zwischen den jeweiligen leeren Flächen (Block 1408). Das Paarfilter 606 zählt die Anzahl der Kanten entlang der Kreuzkantenlinie als Hinweis darauf, wie viele abrupte Diskontinuitäten, z.B. der Helligkeit, zwischen den leeren Flächen vorhanden sind, was auf ein wahrscheinliches Vorhandensein von GCRs hinweist (Block 1408). Wenn die Anzahl der Kreuzkanten einen Schwellenwert (z.B. zehn (10) Kanten) erreicht (Block 1410), verwirft der Paarfilter 606 das entsprechende leere Flächenpaar (Block 1412). Andernfalls stellt der Paarfilter 606 fest, ob andere leere Flächenpaare nicht vom Paarfilter 606 analysiert wurden (Block 1414). Wenn der Paarfilter 606 nicht alle leeren Flächenpaare analysiert hat, fährt die Steuerung mit Block 1410 fort, und das nächste leere Flächenpaar wird analysiert.
  • Wenn alle leeren Flächenpaare durch den Paarfilter 606 analysiert wurden, bezeichnet der Kandidatenbereich-Bezeichner 608 den Raum oder die Fläche zwischen jedem verbleibenden leeren Flächenpaar als einen Kandidatenbereich (Block 1416). Beispielsweise zeichnet der Kandidatenbereich-Bezeichner 608 die Koordinaten der Pixel auf, die zu dem Raum zwischen den verbleibenden leeren Flächenpaaren im Speicher gehören. Im Beispiel von 14 führt der Erkenner die Zeichenerkennung an der/den Kandidatenbereich(en) aus, um GCRs zu erkennen und diese in maschinenlesbare Codepunkte zu konvertieren (Block 1418).
  • 15 ist ein Blockdiagramm, das eine beispielhafte Logikschaltung darstellt, mit der z.B. die Verarbeitungsplattform 110 von 1 und damit der beispielhafte Ladeverwalter 118 von 1 und/oder 4 und/oder der ID-Extraktor 404 von 4 und/oder 6 implementiert werden kann. Die beispielhafte Logikschaltung von 15 ist eine Verarbeitungsplattform 1500, die in der Lage ist, Anweisungen auszuführen, um z.B. die beispielhaften Operationen zu implementieren, die durch die Flussdiagramme der dieser Beschreibung beigefügten Zeichnungen dargestellt werden. Wie unten beschrieben, umfassen alternative beispielhafte Logikschaltung Hardware (z.B. ein Gate-Array), die speziell für die Ausführung von Operationen konfiguriert ist, die durch die Flussdiagramme der dieser Beschreibung beigefügten Zeichnungen dargestellt werden.
  • Die beispielhafte Verarbeitungsplattform 1500 von 15 enthält einen Prozessor 1502, wie z.B. einen oder mehrere Mikroprozessoren, Steuerungen und/oder jeden geeigneten Prozessortyp. Die beispielhafte Verarbeitungsplattform 1500 aus 15 enthält Speicher (z.B. flüchtiger Speicher, nichtflüchtiger Speicher) 1504, auf den der Prozessor 1502 (z.B. über einen Speichercontroller) zugreifen kann. Der beispielhafte Prozessor 1502 interagiert mit dem Speicher 1504, um z.B. maschinenlesbare Befehle zu erhalten, die im Speicher 1504 gespeichert sind und z.B. den Operationen entsprechen, die durch die Flussdiagramme dieser Offenbarung dargestellt werden. Zusätzlich oder alternativ können maschinenlesbare Befehle, die den beispielhaften Operationen der Flussdiagramme entsprechen, auf einem oder mehreren Wechselmedien (z.B. einer Compact Disc, einer Digital Versatile Disc, einem austauschbaren Flash-Speicher usw.) gespeichert werden, die mit der Verarbeitungsplattform 1500 gekoppelt werden können, um den Zugriff auf die darauf gespeicherten maschinenlesbaren Befehle zu ermöglichen.
  • Die beispielhafte Verarbeitungsplattform 1500 von 15 enthält eine Netzwerkschnittstelle 1506, um die Kommunikation mit anderen Maschinen z.B. über ein oder mehrere Netzwerke zu ermöglichen. Die beispielhafte Netzwerkschnittstelle 1506 enthält jede geeignete Art von Kommunikationsschnittstelle(n) (z.B. drahtgebundene und/oder drahtlose Schnittstellen), die konfiguriert ist (sind), um gemäß einem beliebigen geeigneten Protokoll (Protokollen) zu arbeiten.
  • Die beispielhafte Verarbeitungsplattform 1500 von 15 enthält Ein-/Ausgabeschnittstellen (I/O) 1508, um den Empfang von Benutzereingaben und die Kommunikation von Ausgabedaten an den Benutzer zu ermöglichen.
  • Während die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen in Verbindung mit Paketverladevorgängen an einer Laderampe beschrieben werden, können die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen in jedem anderen geeigneten Kontext oder Umfeld implementiert werden, wie z.B. in einem Verteilungszentrum, einem Lagerhaus, einer Fabrik, einem Bauernhof, einem Einzelhandelsgeschäft, einem Flughafen, einem Zugverladeort oder einem Verschiffungshafen. Während die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen im Folgenden unter Verwendung von Terminologie im Zusammenhang mit Paketverladevorgängen an einer Laderampe beschrieben werden, sind die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen auf alternative Umgebungen mit anderer Terminologie anwendbar. Während die unten beschriebenen Beispiele beispielsweise die Erkennung einer Containerkennung beinhalten, können die hierin offenbarten Beispiele auf jede geeignete Art der Zeichenerkennung in Verbindung mit jeder geeigneten Umgebung anwendbar sein.
  • Die obige Beschreibung bezieht sich auf Blockdiagramme der beigefügten Zeichnungen. Alternative Implementierungen der durch die Blockdiagramme dargestellten Beispiele umfassen ein oder mehrere zusätzliche oder alternative Elemente, Verfahren und/oder Vorrichtungen. Zusätzlich oder alternativ können ein oder mehrere der Beispielblöcke der Diagramme kombiniert, geteilt, neu angeordnet oder weggelassen werden. Die durch die Blöcke der Diagramme dargestellten Komponenten werden durch Hardware, Software, Firmware und/oder eine beliebige Kombination von Hardware, Software und/oder Firmware implementiert. In einigen Beispielen ist mindestens eine der durch die Blöcke dargestellten Komponenten durch eine Logikschaltung implementiert. Der hierin verwendete Begriff „Logikschaltung“ ist ausdrücklich definiert als eine physikalische Vorrichtung, die mindestens eine Hardware-Komponente enthält, die (z.B. durch Betrieb gemäß einer vorbestimmten Konfiguration und/oder durch Ausführung gespeicherter maschinenlesbarer Befehle) so konfiguriert ist, dass sie eine oder mehrere Maschinen steuert und/oder Operationen einer oder mehrerer Maschinen ausführt. Beispiele für eine Logikschaltung sind ein oder mehrere Prozessoren, ein oder mehrere Koprozessoren, ein oder mehrere Mikroprozessoren, ein oder mehrere Controller, ein oder mehrere digitale Signalprozessoren (DSPs), ein oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs), ein oder mehrere Field Programmable Gate Arrays (FPGAs), eine oder mehrere Mikrocontroller-Einheiten (MCUs), ein oder mehrere Hardware-Beschleuniger, ein oder mehrere Spezial-Computerchips und ein oder mehrere System-on-a-Chip (SoC)-Vorrichtungen. Einige beispielhafte Logikschaltungen, wie ASICs oder FPGAs, sind speziell konfigurierte Hardware zur Durchführung von Operationen (z.B. eine oder mehrere der Operationen, die in den Flussdiagrammen dieser Offenbarung dargestellt sind). Einige beispielhafte Logikschaltungen sind Hardware, die maschinenlesbare Anweisungen zur Durchführung von Operationen ausführt (z.B. eine oder mehrere der Operationen, die durch die Flussdiagramme dieser Offenbarung dargestellt werden). Einige beispielhafte Logikschaltungen umfassen eine Kombination aus speziell konfigurierter Hardware und Hardware, die maschinenlesbare Anweisungen ausführt.
  • Die obige Beschreibung bezieht sich auf die Flussdiagramme der beigefügten Zeichnungen. Die Flussdiagramme sind repräsentativ für die hierin offenbarten beispielhaften Verfahren. In einigen Beispielen implementieren die durch die Flussdiagramme dargestellten Verfahren die durch die Blockdiagramme dargestellte Vorrichtung. Alternative Implementierungen der hierin offenbarten beispielhaften Verfahren können zusätzliche oder alternative Operationen beinhalten. Darüber hinaus können Operationen alternativer Implementierungen der hierin offenbarten beispielhaften Verfahren kombiniert, geteilt, neu angeordnet oder weggelassen werden. In einigen Beispielen werden die durch die Flussdiagramme dargestellten Operationen durch maschinenlesbare Anweisungen (z.B. Software und/oder Firmware) implementiert, die auf einem Medium (z.B. einem zugreifbaren maschinenlesbaren Medium) zur Ausführung durch eine oder mehrere Logikschaltungen (z.B. Prozessor(en)) gespeichert sind. In einigen Beispielen werden die in den Flussdiagrammen dargestellten Operationen durch eine oder mehrere Konfigurationen einer oder mehrerer speziell ausgelegter Logikschaltungen (z.B. ASIC(s)) implementiert. In einigen Beispielen werden die Operationen der Flussdiagramme durch eine Kombination von speziell ausgelegter/ausgelegten Logikschaltung(en) und maschinenlesbaren Befehlen, die auf einem Medium (z.B. einem zugreifbaren maschinenlesbaren Medium) zur Ausführung durch Logikschaltung(en) gespeichert sind, implementiert.
  • Die hier verwendeten Begriffe „zugreifbares maschinenlesbares Medium“, „nicht flüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ werden ausdrücklich als Speichermedium (z.B. eine Platte eines Festplattenlaufwerks, eine Digital Versatile Disc, eine Compact Disc, ein Flash-Speicher, ein Nur-Lese-Speicher (ROM), ein Speicher mit wahlfreiem Zugriff (RAM) usw.) definiert, auf dem maschinenlesbare Befehle (z.B. Programmcode in Form von z.B. Software und/oder Firmware) gespeichert werden können. Ferner ist, wie hier verwendet, jeder der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht flüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ ausdrücklich definiert, um die Verbreitung von Signalen auszuschließen. Das heißt, wie in jedem Anspruch dieses Patents verwendet, kann keiner der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht flüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ so gelesen werden, dass er durch ein sich ausbreitendes Signal implementiert wird.
  • Die hier verwendeten Begriffe “„zugreifbares maschinenlesbares Medium“, „nicht flüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ sind ausdrücklich definiert als ein Speichermedium, auf dem maschinenlesbare Befehle für eine beliebige geeignete Zeitdauer (z.B. dauerhaft, für einen längeren Zeitraum (z.B. während der Ausführung eines mit den maschinenlesbaren Befehlen verbundenen Programms) und/oder für eine kurze Zeitdauer (z.B. während der Zwischenspeicherung der maschinenlesbaren Befehle und/oder während eines Pufferprozesses) gespeichert werden)).
  • Obwohl bestimmte beispielhafte Vorrichtungen, Verfahren und Produkte hierin offenbart wurden, ist der Umfang dieses Patents nicht darauf beschränkt. Im Gegenteil, dieses Patent erstreckt sich auf alle Vorrichtungen, Verfahren und Produkte, die in angemessener Weise in den Umfang der Ansprüche dieses Patents fallen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 14944860 [0017, 0028, 0045]

Claims (20)

  1. Verfahren zum Identifizieren eines Kandidatenbereichs in Bilddaten, wobei das Verfahren umfasst: Detektieren von leeren Flächen in den Bilddaten unter Verwendung eines Prozessors; Identifizieren eines symmetrisch angeordneten Paares der leeren Flächen unter Verwendung des Prozessors; und Bezeichnen einer Fläche der Bilddaten zwischen dem symmetrisch angeordneten Paar der leeren Flächen als ein Kandidatenbereich für eine Bildverarbeitungsfunktion.
  2. Verfahren nach Anspruch 1, wobei das Detektieren der leeren Flächen in den Bilddaten umfasst: Erkennen von Kanten in den Bilddaten; und Bezeichnen von Teilen der Bilddaten, die Kanten sind, als leer.
  3. Verfahren nach Anspruch 1, wobei das Identifizieren des symmetrisch angeordneten Paares der leeren Flächen umfasst: Vergleichen einer ersten Dimension einer ersten der leeren Flächen mit einer zweiten Dimension einer zweiten der leeren Flächen; Vergleichen eines ersten Abstands der ersten leeren Fläche von einer Mittelachse der Bilddaten mit einem zweiten Abstand der zweiten leeren Fläche von der Mittelachse; und Identifizieren der ersten und zweiten der leeren Flächen als das symmetrisch angeordnete Paar, wenn: die erste Dimension im Wesentlichen ähnlich zur zweiten Dimension ist; und der erste Abstand ist im Wesentlichen ähnlich zum zweiten Abstand ist.
  4. Verfahren nach Anspruch 1, ferner umfassend: Zählen einer Anzahl von Kanten in einem Raum zwischen den leeren Flächen des symmetrisch angeordneten Paares; Vergleichen der Anzahl der Kanten mit einem Schwellenwert; und Verwerfen des symmetrisch angeordneten Paares, wenn die Anzahl der Kanten den Schwellenwert nicht erreicht.
  5. Verfahren nach Anspruch 1, ferner umfassend das Anpassen eines Begrenzungsrahmens um den Kandidatenbereich herum.
  6. Verfahren nach Anspruch 1, wobei das Erfassen der leeren Flächen in den Bilddaten umfasst: Gruppieren kontinuierlicher leerer Pixel in horizontale Linien; und Gruppieren von horizontalen Linien, die eine ähnliche Eigenschaft haben.
  7. Verfahren nach Anspruch 1, wobei die Bildverarbeitungsfunktion eine Zeichenerkennungsoperation ist.
  8. Vorrichtung zum Identifizieren eines Kandidatenbereichs in Bilddaten, wobei die Vorrichtung umfasst: einen Detektor zum Bestimmen, welche Teile der Bilddaten leere Flächen sind; einen Finder zum Identifizieren eines symmetrisch angeordneten Paares der leeren Flächen; und einen Bezeichner zum Bezeichnen einer Fläche der Bilddaten zwischen dem symmetrisch angeordneten Paar der leeren Flächen als einen Kandidatenbereich für eine Bildverarbeitungsfunktion, wobei mindestens einer des Detektors, des Finders oder des Bezeichners über eine Logikschaltung implementiert ist.
  9. Vorrichtung nach Anspruch 8, wobei der Detektor bestimmt, welche Teile der Bilddaten leere Flächen sind, durch: Erkennen von Kanten in den Bilddaten; und Bezeichnen von Teilen der Bilddaten, die Kanten sind, als leer.
  10. Vorrichtung nach Anspruch 8, wobei der Finder das symmetrisch angeordnete Paar der leeren Flächen identifiziert durch: Vergleichen einer ersten Dimension einer ersten der leeren Flächen mit einer zweiten Dimension einer zweiten der leeren Flächen; Vergleichen eines ersten Abstands der ersten leeren Fläche von einer Mittelachse der Bilddaten mit einem zweiten Abstand der zweiten leeren Fläche von der Mittelachse; und Identifizieren der ersten und zweiten der leeren Flächen als das symmetrisch angeordnete Paar, wenn: die erste Dimension im Wesentlichen ähnlich zur zweiten Dimension ist; und der erste Abstand ist im Wesentlichen ähnlich zum zweiten Abstand ist.
  11. Vorrichtung nach Anspruch 8, ferner umfassend einen Filter zum: Zählen einer Anzahl von Kanten in einem Raum zwischen den leeren Flächen des symmetrisch angeordneten Paares; Vergleichen der Anzahl der Kanten mit einem Schwellenwert; und Verwerfen des symmetrisch angeordneten Paares, wenn die Anzahl der Kanten den Schwellenwert nicht erreicht.
  12. Vorrichtung nach Anspruch 8, wobei der Bezeichner einen Begrenzungsrahmen um den Kandidatenbereich herum anpasst.
  13. Vorrichtung nach Anspruch 8, wobei der Detektor bestimmt, welche Teile der Bilddaten leere Flächen sind, durch: Gruppieren kontinuierlicher leerer Pixel in horizontale Linien; und Gruppieren von horizontalen Linien, die eine ähnliche Eigenschaft haben.
  14. Vorrichtung nach Anspruch 8, wobei die Bildverarbeitungsfunktion eine Zeichenerkennungsoperation ist.
  15. Maschinenlesbare Speichervorrichtung umfassend Befehle, die bei ihrer Ausführung eine Maschine zumindest veranlassen zum: Detektieren von leeren Flächen in den Bilddaten; Identifizieren eines symmetrisch angeordneten Paares der leeren Flächen; und Bezeichnen einer Fläche der Bilddaten zwischen dem symmetrisch angeordneten Paar der leeren Flächen als ein Kandidatenbereich für eine Bildverarbeitungsfunktion.
  16. Maschinenlesbare Speichervorrichtung nach Anspruch 15, wobei die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen zum Detektieren der leeren Flächen in den Bilddaten, durch: Erkennen von Kanten in den Bilddaten; und Bezeichnen von Teilen der Bilddaten, die Kanten sind, als leer.
  17. Maschinenlesbare Speichervorrichtung nach Anspruch 15, wobei die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, das symmetrisch angeordnete Paar der leeren Flächen zu identifizieren, durch: Vergleichen einer ersten Dimension einer ersten der leeren Flächen mit einer zweiten Dimension einer zweiten der leeren Flächen; Vergleichen eines ersten Abstands der ersten leeren Fläche von einer Mittelachse der Bilddaten mit einem zweiten Abstand der zweiten leeren Fläche von der Mittelachse; und Identifizieren der ersten und zweiten der leeren Flächen als das symmetrisch angeordnete Paar, wenn: die erste Dimension im Wesentlichen ähnlich zur zweiten Dimension ist; und der erste Abstand ist im Wesentlichen ähnlich zum zweiten Abstand ist.
  18. Maschinenlesbare Speichervorrichtung nach Anspruch 15, wobei die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen zum: Zählen einer Anzahl von Kanten in einem Raum zwischen den leeren Flächen des symmetrisch angeordneten Paares; Vergleichen der Anzahl der Kanten mit einem Schwellenwert; und Verwerfen des symmetrisch angeordneten Paares, wenn die Anzahl der Kanten den Schwellenwert nicht erreicht.
  19. Maschinenlesbare Speichervorrichtung nach Anspruch 15, wobei die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, einen Begrenzungsrahmen um den Kandidatenbereich herum anzupassen.
  20. Maschinenlesbare Speichervorrichtung nach Anspruch 15, wobei die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, die leeren Flächen in den Bilddaten zu erkennen, durch: Gruppieren kontinuierlicher leerer Pixel in horizontale Linien; und Gruppieren von horizontalen Linien, die eine ähnliche Eigenschaft haben.
DE112017008146.7T 2017-11-14 2017-11-14 Verfahren und vorrichtung zum detektieren und zum erkennen von graphischen zeichendarstellungen in bilddaten unter verwendung symmetrisch angeordneter leerer flächen Pending DE112017008146T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/110794 WO2019095092A1 (en) 2017-11-14 2017-11-14 Methods and apparatus for detecting and recognizing graphical character representations in image data using symmetrically-located blank areas

Publications (1)

Publication Number Publication Date
DE112017008146T5 true DE112017008146T5 (de) 2020-09-10

Family

ID=66539229

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017008146.7T Pending DE112017008146T5 (de) 2017-11-14 2017-11-14 Verfahren und vorrichtung zum detektieren und zum erkennen von graphischen zeichendarstellungen in bilddaten unter verwendung symmetrisch angeordneter leerer flächen

Country Status (4)

Country Link
US (1) US11074472B2 (de)
CN (1) CN111386533B (de)
DE (1) DE112017008146T5 (de)
WO (1) WO2019095092A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022054497A1 (ja) * 2020-09-08 2022-03-17 パナソニックIpマネジメント株式会社 充填率計測方法、情報処理装置およびプログラム
US11475259B2 (en) 2021-03-18 2022-10-18 Zebra Technologies Corporation System and method for automatically classifying printable images

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6437702B1 (en) * 2000-04-14 2002-08-20 Qualcomm, Inc. Cargo sensing system and method
US8047432B2 (en) * 2002-06-11 2011-11-01 Intelligent Technologies International, Inc. Package tracking techniques
US20040066500A1 (en) * 2002-10-02 2004-04-08 Gokturk Salih Burak Occupancy detection and measurement system and method
JP4086691B2 (ja) * 2003-03-20 2008-05-14 Necモバイリング株式会社 車輌積載管理システム及び方法
EP1727070A4 (de) * 2004-03-04 2008-03-19 Sharp Kk Verfahren und einrichtung zur zweidimensionalen coderegionsextraktion, elektronische einrichtung, programm zur zweidimensionalen coderegionsextraktion und das programm enthaltendes aufzeichnungsmedium
US7421112B2 (en) * 2004-03-12 2008-09-02 General Electric Company Cargo sensing system
US7325737B2 (en) * 2005-11-30 2008-02-05 Symbol Technologies, Inc. Methods and apparatus for identifying candidate barcode fields
US7940955B2 (en) * 2006-07-26 2011-05-10 Delphi Technologies, Inc. Vision-based method of determining cargo status by boundary detection
US7933733B2 (en) * 2008-10-23 2011-04-26 Whirlpool Corporation Attribute sensing processes
US8594422B2 (en) * 2010-03-11 2013-11-26 Microsoft Corporation Page layout determination of an image undergoing optical character recognition
FI20115821A0 (fi) * 2011-08-24 2011-08-24 Syslore Oy Laite ja menetelmä kuljetusobjektissa olevien kiinnostusalueiden havaitsemiseen
US20140036072A1 (en) * 2012-06-20 2014-02-06 Honeywell International Inc. Cargo sensing
US9514522B2 (en) * 2012-08-24 2016-12-06 Microsoft Technology Licensing, Llc Depth data processing and compression
KR101437431B1 (ko) * 2012-12-28 2014-09-05 전자부품연구원 Seh 알고리즘을 이용한 차량 인식 방법 및 장치
CN105303189B (zh) * 2014-07-29 2019-08-20 阿里巴巴集团控股有限公司 一种用于检测预定区域中特定标识图像的方法及装置
US20160238374A1 (en) * 2015-02-18 2016-08-18 Fedex Corporate Services, Inc. Systems, apparatus, and methods for quantifying space within a container using a removable scanning sensor node
US9968037B2 (en) 2015-04-06 2018-05-15 Michael Kisting Short chain hydrocarbon combustor and carbon dioxide generator
CN106156711B (zh) * 2015-04-21 2020-06-30 华中科技大学 文本行的定位方法及装置
US9940730B2 (en) * 2015-11-18 2018-04-10 Symbol Technologies, Llc Methods and systems for automatic fullness estimation of containers
US10713610B2 (en) * 2015-12-22 2020-07-14 Symbol Technologies, Llc Methods and systems for occlusion detection and data correction for container-fullness estimation
US9524430B1 (en) * 2016-02-03 2016-12-20 Stradvision Korea, Inc. Method for detecting texts included in an image and apparatus using the same
US10587858B2 (en) * 2016-03-14 2020-03-10 Symbol Technologies, Llc Device and method of dimensioning using digital images and depth data
JP6607122B2 (ja) * 2016-03-30 2019-11-20 ブラザー工業株式会社 画像解析装置
CN106845475A (zh) * 2016-12-15 2017-06-13 西安电子科技大学 基于连通域的自然场景文字检测方法
US11367092B2 (en) * 2017-05-01 2022-06-21 Symbol Technologies, Llc Method and apparatus for extracting and processing price text from an image set

Also Published As

Publication number Publication date
CN111386533A (zh) 2020-07-07
CN111386533B (zh) 2023-09-05
US11074472B2 (en) 2021-07-27
WO2019095092A1 (en) 2019-05-23
US20200272843A1 (en) 2020-08-27

Similar Documents

Publication Publication Date Title
DE112019002547B4 (de) System und verfahren zum bestimmen eines standortes zur platzierung eines pakets
DE102018006765B4 (de) Verfahren und system(e) für das management von frachtfahrzeugen
DE60014959T2 (de) Vorrichtung zur lagebestimmung von etiketten, unter verwendung mehrerer auflösungen
DE112018002314T5 (de) Verfahren und vorrichtung zur erkennung eines objektstatus
DE102009036474B4 (de) Bilddaten-Kompressionsverfahren, Mustermodell-Positionierungsverfahren bei Bildverarbeitung, Bildverarbeitungsvorrichtung, Bildverarbeitungsprogramm und computerlesbares Aufzeichnungsmedium
EP2767925B1 (de) Verfahren zur Erkennung von Objekten in einem Lager und/oder zur räumlichen Orientierung in einem Lager
DE112017004142T5 (de) Verfahren, systeme und vorrichtung zum segmentieren und dimensionieren von objekten
EP2555160B1 (de) Erzeugung eines in interessante und uninteressante Bereiche vorsegmentierten Bildes
DE112020005377B4 (de) Systeme und verfahren zur automatischen kamerainstallationsführung
EP2439487A1 (de) Volumenmessvorrichtung für bewegte Objekte
DE112019006132T5 (de) Verfahren, system und vorrichtung zur hilfsetikett-erkennung und -zuordnung
EP3651091A1 (de) Lagerverwaltungssystem mit positionsermittlung von lagergütern und zugeordneten lagerbereichen
DE112019000119T5 (de) Forminformation Erzeugungsvorrichtung, Steuervorrichtung, Beladen/Entladen Vorrichtung, Logistiksystem, Programm und Steuerverfahren
EP3696135B1 (de) Gabelstapler und system mit gabelstapler zur identifikation einer ware
EP3214590A1 (de) Verfahren zur erstellung einer beschreibung eines gepäckstücks und gepäckbeschreibungssystem
DE102017116854A1 (de) System und Verfahren zum Konfigurieren eines Kennungslesegeräts unter Verwendung einer Mobilvorrichtung
EP3071340B1 (de) Verfahren und vorrichtung zum sortieren von objekten
DE102015207903A1 (de) Vorrichtung und Verfahren zum Erfassen eines Verkehrszeichens vom Balkentyp in einem Verkehrszeichen-Erkennungssystem
DE102018006764A1 (de) Verfahren und system(e) für das management von frachtfahrzeugen
DE102020206387A1 (de) Verfahren und computersystem zur verarbeitung vonkandidatenkanten
DE102015122116A1 (de) System und Verfahren zur Ermittlung von Clutter in einem aufgenommenen Bild
DE102016100134B4 (de) Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen
DE112017008146T5 (de) Verfahren und vorrichtung zum detektieren und zum erkennen von graphischen zeichendarstellungen in bilddaten unter verwendung symmetrisch angeordneter leerer flächen
EP3009984A1 (de) Detektionssystem für optische Codes
DE102020213566A1 (de) Verfahren und Computersystem zur Objekterkennung oder Objektregistrierung basierend auf einer Bildklassifizierung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009340000

Ipc: G06V0030148000