DE112021003033T5 - Strichcodeleser mit 3d-kamera(s) - Google Patents

Strichcodeleser mit 3d-kamera(s) Download PDF

Info

Publication number
DE112021003033T5
DE112021003033T5 DE112021003033.7T DE112021003033T DE112021003033T5 DE 112021003033 T5 DE112021003033 T5 DE 112021003033T5 DE 112021003033 T DE112021003033 T DE 112021003033T DE 112021003033 T5 DE112021003033 T5 DE 112021003033T5
Authority
DE
Germany
Prior art keywords
image data
image
imaging device
features
barcode
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
DE112021003033.7T
Other languages
English (en)
Inventor
Yuri Astvatsaturov
Darran Michael Handshaw
Edward Barkan
Mark Drzymala
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.)
Zebra Technologies Corp
Original Assignee
Zebra Technologies Corp
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 Zebra Technologies Corp filed Critical Zebra Technologies Corp
Publication of DE112021003033T5 publication Critical patent/DE112021003033T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/1096Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices the scanner having more than one scanning window, e.g. two substantially orthogonally placed scanning windows for integration into a check-out counter of a super-market
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06159Constructional details the marking being relief type, e.g. three-dimensional bar codes engraved in a support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/17Image acquisition using hand-held instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/166Detection; Localisation; Normalisation using acquisition arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • G08B13/19602Image analysis to detect motion of the intruder, e.g. by frame subtraction
    • G08B13/19613Recognition of a predetermined image pattern or behaviour pattern indicating theft or intrusion
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/02Mechanical actuation
    • G08B13/14Mechanical actuation by lifting or attempted removal of hand-portable articles
    • G08B13/1481Mechanical actuation by lifting or attempted removal of hand-portable articles with optical detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Electromagnetism (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Computation (AREA)
  • Toxicology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Stereoscopic And Panoramic Photography (AREA)
  • Image Input (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Image Processing (AREA)
  • Telephone Function (AREA)
  • Burglar Alarm Systems (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren und Systeme umfassen die Verwendung dreidimensionaler Bildgebungsvorrichtungen zur Erfassung dreidimensionaler Bilder und zur Analyse der resultierenden dreidimensionalen Bilddaten, um die erfassten zweidimensionalen Bilder für scanbezogene Prozesse wie die Identifizierung von Objekten, die Erkennung von Symbolen, das Training von Objekterkennungsmodellen und die Identifizierung unsachgemäßer Scanversuche oder anderer von einem Bediener durchgeführter Aktionen zu verbessern. Bildgebungssysteme wie bi-optische Leser, handgehaltene Scanner und maschinelle Bildverarbeitungssysteme werden beschrieben, die dreidimensionale Bildgebungsvorrichtungen verwenden und dreidimensionale Bilder erfassen und mit erfassten zweidimensionalen Bildern verwenden.

Description

  • HINTERGRUND
  • Symbolleser, wie z. B. handgehaltene Strichcode-Leser und bi-optische Leser, verwenden zweidimensionale Bilder, um Bilder von Objekten für eine Vielzahl von Zwecken zu erfassen. In vielen Lager-, Vertriebs- und Einzelhandelsumgebungen erfassen diese Symbolleser 2D-Bilddaten, die zur Durchführung von Strichcode-Dekodierungsvorgängen verwendet werden. In manchen Fällen ist es jedoch wünschenswert, die 2D-Bilddaten für andere Zwecke zu verwenden. Zum Beispiel kann ein bi-optischer Leser 2D-Bilddaten von seinem 2D-Bildgeber erfassen und diese Bilddaten verwenden, um einen Abseitsplatten-Wiegezustand zu bestimmen. In anderen Fällen kann der bi-optische Leser 2D-Bilddaten verwenden, um die Art des gescannten Produkts zu bestimmen. In wieder anderen Fällen kann der bi-optische Leser 2D-Bilddaten verwenden, um das Auftreten eines Mitarbeiterbetrugsereignisses (Sweethearting) oder eines Verschleierungsereignisses (Spoofing) zu erkennen.
  • Obwohl 2D-Bildgeber und 2D-Bildanalysen bereits für die oben genannten und andere Zwecke eingesetzt wurden, könnte die Erkennungserfolgsrate noch verbessert werden. Darüber hinaus ist eine mögliche Bildanalyse durch die Tatsache eingeschränkt, dass die erfassten Bilddaten zweidimensional sind. Dementsprechend besteht ein ständiger Bedarf an der Weiterentwicklung von bi-optischen Strichcodelesern und anderen Symbollesern, um die Leistung der Leser weiter zu erhöhen und die Leser mit neuen, bisher nicht verfügbaren Funktionen auszustatten.
  • BESCHREIBUNG
  • In einer Ausführungsform ist die vorliegende Erfindung ein Verfahren zum Scannen von Strichcodes unter Verwendung eines Strichcodelesers. Das Verfahren umfasst das Erfassen eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten Sichtfeldes erscheint, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers, die ein erstes Sichtfeld (FOV) aufweist, und das Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren. Das Verfahren umfasst ferner das Erfassen eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten Sichtfeldes erscheint, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites Sichtfeld hat, das sich zumindest teilweise mit dem ersten Sichtfeld überlappt, und das Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren. Das Verfahren umfasst ferner das Identifizieren eines oder mehrerer 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten; und das Verbessern der 2D-Bilddaten, was zu verbesserten 2D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten. Von dort aus umfasst das Verfahren das Verarbeiten der verbesserten 2D-Bilddaten, um mindestens eines auszuführen von: (a) Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) Erkennen eines Objekts in den verbesserten 2D-Bilddaten, (d) Identifizieren einer von einem Bediener des Strichcodelesers durchgeführten Aktion, und (e) Ändern mindestens eines dem Strichcodeleserbetrieb zugeordneten Parameters.
  • In einer Variante dieser Ausführungsform umfassen die 3D-Bilddaten 3D-Punktwolkendaten, und das eine oder die mehreren 3D-Bildmerkmale umfassen ein oder mehrere geometrische Merkmale eines Objekts, das innerhalb des zweiten FOV präsentiert wird. In einer anderen Variante dieses Verfahrens umfassen die 3D-Bilddaten 3D-Punktwolkendaten und das eine oder die mehreren 3D-Bildmerkmale eine Farbe oder eine Farbabstufung, die mit einem innerhalb des zweiten FOV präsentierten Objekt korrespondiert. In einer weiteren Variante der Ausführungsform umfasst das Identifizieren des einen oder der mehreren 3D-Bildmerkmale das Identifizieren des einen oder der mehreren 3D-Bildmerkmale, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung positioniert sind. In einigen Variationen umfasst das Verbessern der 2D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 2D-Bildmerkmale, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind. In einigen Varianten umfasst das Verbessern der 2D-Bilddaten ferner das Filtern des mindestens einen oder der mehreren 2D-Bildmerkmale, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die dem mindestens einen oder den mehreren 2D-Bildmerkmalen zugeordnet sind. In einigen Varianten ist der Strichcodeleser ein stationärer Strichcodeleser, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und vom Bediener bedient wird, und der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung erstreckt sich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners. In einigen Varianten ist der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich, und der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung erstreckt sich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs.
  • In einer anderen Ausführungsform umfasst das eine oder die mehreren 3D-Bildmerkmale mindestens eines von: (i) mindestens einem Teil einer Hand eines Bedieners, und (ii) einem Objekt, das von der Hand des Bedieners erfasst wird.
  • In einer anderen Variante der Ausführungsform umfasst die Verarbeitung der verbesserten 2D-Bilddaten das Identifizieren der von dem Bediener durchgeführten Aktion, und als Reaktion darauf, dass die von dem Bediener durchgeführte Aktion als ein Präsentieren eines Objekts innerhalb eines Produktscanbereichs oder ein Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, das Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  • In einer anderen Variante dieser Ausführungsform umfasst die Verarbeitung der verbesserten 2D-Bilddaten die Identifizierung der von dem Bediener durchgeführten Aktion, und als Reaktion darauf, dass die von dem Bediener durchgeführte Aktion als ein Präsentieren eines Objekts innerhalb eines Produktscanbereichs oder ein Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und das Erkennen eines teilweise verdeckten Strichcodes oder eines vollständig verdeckten Strichcodes auf dem Objekt innerhalb der 2D-Bilddaten und/oder der verbesserten 2D-Bilddaten, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  • In einer anderen Variante dieser Ausführungsform ist der mindestens eine Parameter, der dem Betrieb des Strichcodelesers zugeordnet ist, eine Belichtungszeit des Strichcodelesers, eine Beleuchtungspulsdauer des Strichcodelesers, eine Fokusposition des Strichcodelesers, ein Bildgebungszoomniveau des Strichcodelesers und eine Beleuchtungsquelle des Strichcodelesers. In einem Beispiel ist die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle.
  • In einer anderen Variante dieser Ausführungsform wird als Reaktion auf die Identifizierung des einen oder der mehreren 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten eine Beleuchtungshelligkeit des Strichcodelesers vor der Erfassung des 2D-Bildes der ersten Umgebung eingestellt.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung ein Verfahren zur Verarbeitung von Daten unter Verwendung eines Strichcodelesers. Das Verfahren umfasst das Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers, die ein erstes Sichtfeld (FOV) aufweist, eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten Sichtfeldes erscheint, und das Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren. Das Verfahren umfasst ferner das Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites Sichtfeld hat, das sich zumindest teilweise mit dem ersten Sichtfeld überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten Sichtfeldes erscheint, und das Speichern von 3D-Bilddaten, die m dem 3D-Bild korrespondieren. Das Verfahren umfasst ferner das Identifizieren eines oder mehrerer 2D-Bildmerkmale innerhalb der ersten Umgebung aus den 2D-Bilddaten; und das Verbessern der 3D-Bilddaten, was zu verbesserten 3D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 2D-Bildmerkmale mit mindestens einem oder mehreren 3D-Bildmerkmalen in den 3D-Bilddaten. Von dort aus umfasst das Verfahren die Verarbeitung der verbesserten 3D-Bilddaten, um mindestens eines auszuführen von: (a) Trainieren eines Objekterkennungsmodells mit den verbesserten 3D-Bilddaten, (b) Erkennen eines Objekts in den verbesserten 3D-Bilddaten, (c) Identifizieren einer von einem Benutzer des Strichcodelesers ausgeführten Aktion und (d) Ändern mindestens eines der 3D-Bildgebungsvorrichtung zugeordneten Parameters.
  • In einer Variante dieser Ausführungsform umfassen die 2D-Bilddaten eines von monochromen Bilddaten, Graustufenbilddaten und polychromen Bilddaten, und das eine oder die mehreren 2D-Bildmerkmale umfassen mindestens einen Strichcode und ein oder mehrere geometrische Merkmale eines Objekts, das innerhalb des ersten FOV präsentiert wird.
  • In einer anderen Variante dieser Ausführungsform enthalten die einen oder mehreren 2D-Bildmerkmale den Strichcode, und die Verbesserung der 3D-Bilddaten umfasst die Abbildung einer Position des Strichcodes von den 2D-Bilddaten auf die 3D-Bilddaten. In einer anderen Variante dieser Ausführungsform umfassen die 2D-Bilddaten polychrome Bilddaten, das eine oder die mehreren 2D-Bildmerkmale umfassen das eine oder die mehreren geometrischen Merkmale des innerhalb des ersten FOV präsentierten Objekts, und das Verbessern der 3D-Bilddaten umfasst das Abbilden mindestens eines Teils der polychromen Bilddaten auf die 3D-Bilddaten, basierend zumindest teilweise auf dem einen oder den mehreren geometrischen Merkmalen des innerhalb des ersten FOV präsentierten Objekts. In einer anderen Variante dieser Ausführungsform umfasst das Verbessern der 3D-Bilddaten ferner das Filtern des mindestens einen oder der mehreren 3D-Bildmerkmale, so dass die Verarbeitung der verbesserten 3D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die dem mindestens einen oder den mehreren 3D-Bildmerkmalen zugeordnet sind. In einer anderen Variante dieser Ausführungsform umfasst das Verbessern der 3D-Bilddaten ferner das Filtern des mindestens einen oder der mehreren 3D-Bildmerkmale, so dass die Verarbeitung der verbesserten 3D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die dem mindestens einen oder den mehreren 3D-Bildmerkmalen zugeordnet sind. In einer anderen Variante dieser Ausführungsform umfasst das Verbessern der 3D-Bilddaten ferner das Filtern der 3D-Bilddaten auf der Grundlage eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung.
  • In einer anderen Variante dieser Ausführungsform ist der Strichcodeleser ein stationärer Strichcodeleser, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und vom Bediener bedient werden kann, und der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung erstreckt sich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners. In einer anderen Variante dieser Ausführungsform ist der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich, und der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung erstreckt sich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs.
  • In einer anderen Variante dieser Ausführungsform umfasst das eine oder die mehreren 2D-Bildmerkmale mindestens eines von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem Objekt, das von der Hand des Bedieners gegriffen wird.
  • In einer anderen Variante dieser Ausführungsform umfasst die Verarbeitung der verbesserten 3D-Bilddaten die Identifizierung der vom Bediener durchgeführten Aktion, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als ein Präsentieren eines Objekts innerhalb eines Produktscanbereichs oder ein Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass kein Strichcode in den 2D-Bilddaten erkannt wird, das Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  • In einer anderen Variante dieser Ausführungsform umfasst das Identifizieren des einen oder der mehreren 2D-Bildmerkmale das Identifizieren von Umgebungsmerkmalen auf dem 2D-Bild, wobei die Umgebungsmerkmale Merkmale in dem Bild außerhalb eines Objekts sind, das innerhalb des ersten FOV präsentiert wird; das Umwandeln der Umgebungsmerkmale in Maskierungsmerkmale, die so konfiguriert sind, dass sie die identifizierten Umgebungsmerkmale in dem 2D-Bild abdecken; und das Identifizieren der Maskierungsmerkmale als das eine oder die mehreren 2D-Bildmerkmale.
  • In einer anderen Variante dieser Ausführungsform umfasst das Identifizieren eines oder mehrerer 2D-Bildmerkmale: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; Dekodieren des Strichcodes zum Erzeugen von Strichcode-Nutzdaten und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und Bestimmen des einen oder der mehreren 2D-Bildmerkmale aus der Objektidentifikation.
  • In einer anderen Variante dieser Ausführungsform umfasst die Verarbeitung der verbesserten 3D-Bilddaten zum Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten: das Identifizieren eines Strichcodes in den 2D-Bilddaten, das Bestimmen eines Zeitrahmens für ein Strichcode-Erkennungsereignis und das Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten, die mit dem Zeitrahmen für das Strichcode-Erkennungsereignis korrespondieren; oder das Identifizieren eines Strichcodes in den 2D-Bilddaten, das Identifizieren des Objekts in den verbesserten 3D-Bilddaten, die mit dem Strichcode in den 2D-Bilddaten korrespondieren, und beim Identifizieren eines anderen Objekts in dem 3D-Bild, das nicht mit dem Strichcode korrespondiert, das Entfernen der anderen Objekte aus den verbesserten 3D-Bilddaten vor dem Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten.
  • In einer anderen Variante dieser Ausführungsform umfasst der mindestens eine Parameter, der der 3D-Bildgebungsvorrichtung zugeordnet ist, eine projizierte Beleuchtungsstärke der 3D-Bildgebungsvorrichtung, eine projizierte Beleuchtungsrichtung der 3D-Bildgebungsvorrichtung oder eine Beleuchtungsquelle für die 3D-Bildgebungsvorrichtung.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung ein Verfahren zur Identifizierung eines ordnungsgemäßen Scannens eines Objekts oder eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers. Das Verfahren umfasst das Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und das Speichern von 2D-Bilddaten entsprechend dem 2D-Bild. Das Verfahren umfasst ferner das Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites Sichtfeld hat, das sich zumindest teilweise mit dem ersten Sichtfeld überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten Sichtfeldes erscheint und das Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren. Das Verfahren umfasst ferner die Bestimmung einer ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten und die Bestimmung einer zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten. Von dort aus umfasst das Verfahren den Vergleich der ersten Objektidentifikation mit der zweiten Objektidentifikation und die Bestimmung (a) des ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) des nicht ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen und die erste Objektidentifikation aus den Strichcode-Nutzdaten zu bestimmen.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten: Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten: Bereitstellen der 3D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  • In einer Variante dieser Ausführungsform umfasst das Verfahren vor der Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten ferner: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten.
  • In einer Variante dieser Ausführungsform umfasst das Verfahren vor der Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten: die Bestimmung eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten; und die Bestimmung der zweiten Objektidentifikation aus dem einen oder den mehreren Farbmerkmalen.
  • In einer Variante dieser Ausführungsform umfassen die ein oder mehreren Farbmerkmale eine Farbe des Objekts.
  • In einer Variante dieser Ausführungsform umfassen die ein oder mehreren Farbmerkmale einen Farbgradienten des Objekts.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten: die Bestimmung eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten; und die Bestimmung der zweiten Objektidentifikation aus dem einen oder den mehreren geometrischen Merkmalen.
  • In einer Variante dieser Ausführungsform umfasst die Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen und das Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
  • In einer Variante dieser Ausführungsform enthalten die 3D-Bilddaten eine Punktwolke, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert aufweist, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und die Bestimmung des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten basiert auf einer ersten Teilmenge der 3D-Bilddaten und nicht auf einer zweiten Teilmenge der 3D-Bilddaten, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
  • In einer Variante dieser Ausführungsform umfasst das Verfahren als Reaktion auf das Bestimmen (a) des ordnungsgemäßen Scannens des Objekts ferner die Verarbeitung eines Transaktionsprotokolls, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf das Bestimmen (b) des nicht ordnungsgemäßen Scannens des Objekts umfasst das Verfahren ferner mindestens eines von: (i) Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
  • In einer anderen Ausführungsform ist ein Verfahren zum Identifizieren eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers angegeben, wobei das Verfahren umfasst Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die mit dem Strichcodeleser verbunden ist und ein zweites Sichtfeld hat, das sich zumindest teilweise mit dem ersten Sichtfeld überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten Sichtfeldes erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Identifizieren eines scanbaren Objekts unter Verwendung der 3D-Bilddaten; und bei einem Fehlschlagen einer Bestimmung einer Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten, Bestimmen eines nicht ordnungsgemäßen Scannens des Objekts und Erzeugen eines Warnsignals.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung ein Verfahren zum Betreiben eines Strichcodelesers. Das Verfahren umfasst das Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und das Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; das Durchführen einer Gesichtserkennung auf den 3D-Bilddaten und das Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten; und als Reaktion auf das Identifizieren des Vorhandenseins der Gesichtsdaten, das Einstellen mindestens eines Betriebsparameters einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers.
  • In einer Variante dieser Ausführungsform handelt es sich bei dem Strichcodeleser um einen Präsentationsstrichcodeleser, und die Einstellung des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung umfasst eine Verringerung einer Intensität einer Beleuchtungsbaugruppe und/oder einer Zielbaugruppe.
  • In einer Variante dieser Ausführungsform ist der Strichcodeleser ein Präsentationsstrichcodeleser, und die Einstellung des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung umfasst ein Verhindern einer Aktivierung mindestens eines Teils der 2D-Bildgebungsvorrichtung, bis eine nachfolgende Durchführung der Gesichtserkennung an nachfolgenden 3D-Bilddaten, die einem nachfolgenden 3D-Bild zugeordnet sind, ein weiteres Vorhandensein von Gesichtsdaten in den nachfolgenden 3D-Bilddaten nicht identifiziert.
  • In einer Variante dieser Ausführungsform umfasst das Verfahren ferner die Erfassung eines 2D-Bildes eines Objekts unter Verwendung des 2D-Bildgebungslesers, der gemäß dem mindestens einen Betriebsparameter eingestellt wird, und die Dekodierung eines Strichcodes in dem 2D-Bild, um das Objekt zu identifizieren.
  • In einer Variante dieser Ausführungsform umfasst das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung, und wobei das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten umfasst.
  • In einer Variante dieser Ausführungsform umfassen die Betriebsparameter ein zweites FOV des 2D-Bildgebungslesers.
  • In einer Variante dieser Ausführungsform umfassen die Betriebsparameter einen Fokusabstand des 2D-Bildgebungslesers.
  • In einer Variante dieser Ausführungsform ist der mindestens eine Betriebsparameter des 2D-Bildgebungslesers eine Belichtungszeit, eine Beleuchtungspulsdauer oder ein Bildgebungszoomniveau.
  • In einer anderen Ausführungsform ist ein Verfahren zum Betreiben eines Strichcodelesers angegeben, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Durchführen einer Gesichtserkennung an den 2D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 2D-Bilddaten; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; und als Reaktion auf das Identifizieren eines oder mehrerer 3D-Bildmerkmale, die den Gesichtsdaten in 2D-Bilddaten zugeordnet sind, Durchführen mindestens eines von: (a) Bestimmen eines Abstands der Gesichtsdaten von dem Strichcodeleser und selektives Deaktivieren/Aktivieren des Scannens des Strichcodelesers auf der Grundlage des Abstands, (b) Bestimmen anthropometrischer Daten für die Gesichtsdaten und Bestimmen, ob die Gesichtsdaten von einer Person stammen oder nicht, und (c) Einstellen mindestens eines Betriebsparameters der 2D-Bildgebungsvorrichtung in dem Strichcodeleser.
  • In einer Variante dieser Ausführungsform ist der mindestens eine Betriebsparameter der 2D-Bildgebungsvorrichtung eine Belichtungszeit, eine Beleuchtungspulsdauer, eine Fokusposition oder ein Bildzoomniveau.
  • In einer Variante dieser Ausführungsform umfasst das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung, und das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung umfasst das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung ein Verfahren zum Betrieb einer Verkaufspunkt-Scanstation mit einem Strichcodeleser. Das Verfahren umfasst: Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die der Verkaufspunkt-Scanstation zugeordnet ist und ein erstes FOV aufweist, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren. Das Verfahren umfasst ferner das Durchführen einer Gesichtserkennung anhand der 3D-Bilddaten und das Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten; und das Durchführen einer Gesichtsidentifikation anhand der Gesichtsdaten und das Authentifizieren der Gesichtsidentifikation; und als Reaktion auf das Authentifizieren der Gesichtsidentifikation mindestens eines von (a) einem Erfassen eines zweidimensionalen (2D) Bildes eines Objekts unter Verwendung einer 2D-Bildgebungsvorrichtung innerhalb des Strichcodelesers und einem Dekodieren eines Strichcodes in dem 2D-Bild, um das Objekt zu identifizieren, und (b) einem Erfüllen einer Freigabebedingung, um entweder eine Dekodierung eines Strichcodes zu verhindern, der in dem Bild des 2D-Bildes erfasst wurde, oder um zu verhindern, dass ein nachfolgend gescannter Artikel zu einem Transaktionsprotokoll von gescannten Artikeln hinzugefügt wird.
  • In einer Variante dieser Ausführungsform umfasst die Authentifizierung der Gesichtsidentifizierung einen Vergleich der Gesichtsidentifizierung mit einer autorisierten Benutzerdatenbank. In einer Variante dieser Ausführungsform umfasst die Authentifizierung der Gesichtsidentifizierung ein Bestimmen, dass sich die Gesichtsdaten an einer akzeptablen Position innerhalb des ersten FOV der 3D-Bildgebungsvorrichtung befinden. In einer Variante dieser Ausführungsform umfasst das Verfahren vor der Durchführung der Gesichtserkennung anhand der 3D-Bilddaten und dem Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten: Identifizieren von Umgebungsmerkmalen in den 3D-Bilddaten, wobei die Umgebungsmerkmale Merkmale in dem 3D-Bild außerhalb des Objekts sind; und Entfernen von Umgebungsmerkmalen aus den 3D-Bilddaten.
  • In einer anderen Ausführungsform umfasst ein maschinelles Bildverarbeitungsverfahren das Erfassen eines 2D-Bildes eines Objekts unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung, das Identifizieren eines Strichcodes des Objekts in dem 2D-Bild und das Bestimmen eines oder mehrerer dreidimensionaler (3D) Objektmerkmale des Objekts anhand des Strichcodes in dem 2D-Bild. Das Verfahren umfasst ferner das Erfassen eines 3D-Bildes einer Umgebung unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung des Bildverarbeitungssystems und das Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren. Das Verfahren umfasst das Untersuchen der 3D-Bilddaten auf das Vorhandensein des einen oder der mehreren 3D-Objektmerkmale, das Bereitstellen eines digitalen Fehlererkennungssignals für einen Benutzer des maschinellen Bildverarbeitungssystems als Reaktion auf die Bestimmung, dass mindestens eines der einen oder mehreren 3D-Objektmerkmale in den 3D-Bilddaten nicht vorhanden ist, und das Ändern mindestens eines dem maschinellen Bildverarbeitungssystem zugeordneten Parameters als Reaktion auf die Bestimmung, dass mindestens eines der einen oder mehreren 3D-Objektmerkmale in den 3D-Bilddaten vorhanden ist.
  • In einigen Varianten dieses Verfahrens umfasst das Bestimmen der ein oder mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode im 2D-Bild: Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen, und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und Bestimmen der ein oder mehreren 3D-Objektmerkmale des Objekts aus der Objektidentifikation. In einigen Varianten dieses Verfahrens umfasst das Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild: Bestimmen einer Ausrichtung des Objekts aus einer Position des Strichcodes in dem 2D-Bild; und Bestimmen des einen oder der mehreren 3D-Objektmerkmale aus der Ausrichtung des Objekts als eine Teilmenge der verfügbaren 3D-Objektmerkmale innerhalb des ersten FOV.
  • In einigen Varianten dieses Verfahrens ist das eine oder die mehreren 3D-Objektmerkmale mindestens eines von einem Abmessungsmerkmal und einem Formmerkmal.
  • In einer anderen Variante dieser Ausführungsform umfasst die Änderung mindestens eines dem maschinellen Bildverarbeitungssystem zugeordneten Parameters die Änderung der Belichtungszeit einer 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, der Beleuchtungspulsdauer einer Beleuchtungsbaugruppe des maschinellen Bildverarbeitungssystems, der Fokusposition der 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, des Zoomniveaus der 2D-Bildgebungsvorrichtung, der Beleuchtungshelligkeit, der Beleuchtungswellenlänge oder der Beleuchtungsquelle des maschinellen Bildverarbeitungssystems. In einigen Ausführungsformen ist die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle. In einigen Ausführungsformen umfasst die Änderung der Beleuchtungsquelle die Änderung von einer Beleuchtungsquelle, die mit einer ersten Wellenlänge emittiert, zu einer Beleuchtungsquelle, die mit einer zweiten Wellenlänge emittiert, die sich von der ersten Wellenlänge unterscheidet.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung eine Scanstation. Die Scanstation umfasst eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie: ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst; einen Strichcode in dem 2D-Bild identifiziert; und das Objekt aus Strichcode-Nutzdaten identifiziert. Die Scanstation umfasst ferner eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie: ein 3D-Bild des Objekts in einem FOV der 3D-Bildgebungsvorrichtung erfasst; und 3D-Bilddaten aus dem 3D-Bild erzeugt. Die Scanstation enthält ferner einen Prozessor und einen Speicher, der Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen: ein oder mehrere 3D-Objektmerkmale aus den 3D-Bilddaten zu identifizieren; das eine oder die mehreren 3D-Objektmerkmale anhand einer Identität des Objekts auszuwerten; und als Reaktion auf die Auswertung des einen oder der mehreren 3D-Objektmerkmale anhand der Identität des Objekts einen Betriebsparameter der Scanstation einzustellen.
  • In einer Variante dieser Ausführungsform umfassen die 3D-Bilddaten 3D-Punktwolkendaten und das eine oder die mehreren 3D-Objektmerkmale umfassen mindestens eines von: geometrischen Merkmalen des Objekts, einer Farbe des Objekts, einer Farbabstufung des Objekts. In einer anderen Variante dieser Ausführungsform umfassen die 3D-Bilddaten 3D-Punktwolkendaten, und das eine oder die mehreren 3D-Objektmerkmale umfassen eine Position des Objekts im FOV der 3D-Bildgebungsvorrichtung. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen: zu bestimmen, ob die Position des Objekts im FOV oder in der 3D-Bildgebungsvorrichtung in einem akzeptablen Bereich für die Erfassung des 2D-Bildes des Objekts unter Verwendung der 2D-Bildgebungsvorrichtung liegt; und als Reaktion darauf, dass die Position des Objekts im FOV der 3D-Bildgebungsvorrichtung nicht in dem akzeptablen Bereich liegt, Verzichten auf die Erfassung eines nachfolgenden 2D-Bildes durch die 2D-Bildgebungsvorrichtung, bis eine Freigabebedingung erfüllt ist.
  • In einer anderen Variante dieser Ausführungsform umfasst der Betriebsparameter mindestens eines von einer Beleuchtungsintensität einer Beleuchtungsvorrichtung in der 2D-Bildgebungsvorrichtung, einem FOV der 2D-Bildgebungsvorrichtung und einer Brennweite der 2D-Bildgebungsvorrichtung. In einer anderen Variante dieser Ausführungsform ist die Scanstation ein bi-optischer Scanner mit einem Turmabschnitt und einem Plattenabschnitt. In einigen Varianten befindet sich die 3D-Bildgebungsvorrichtung im Turmabschnitt oder im Plattenabschnitt und die 2D-Bildgebungsvorrichtung im anderen Teil des Turmabschnitts oder des Plattenabschnitts. In einigen Varianten befinden sich sowohl die 3D-Bildgebungsvorrichtung als auch die 2D-Bildgebungsvorrichtung in einem des Turmabschnitts und dem Plattenabschnitts.
  • In einigen Varianten enthält die Scanstation ferner eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul das Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist und im Speicher ferner Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: aus den 3D-Bilddaten eine Position des Objekts relativ zur Wiegeplatte zu bestimmen; und als Reaktion darauf, dass sich die Position des Objekts relativ zur Wiegeplatte in einer Wiegeplatten-Fehlposition befindet, den Betrieb des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand zu ändern, bis eine Freigabebedingung erfüllt ist. In einigen Varianten erlaubt der erste Zustand des Wiegemoduls die Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts, und wobei der zweite Zustand des Wiegemoduls die Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts verhindert. In einigen Varianten umfasst die Fehlposition der Wiegeplatte eine Überhangposition, in der mindestens ein Teil des Objekts über die Wiegeplatte hinausragt. In einigen Varianten umfasst die Fehlposition der Wiegeplatte eine hängende Position, in der das Objekt zumindest teilweise über der Wiegeplatte hängt.
  • In einigen Varianten dieser Ausführungsform umfasst die Scanstation ferner eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul ein Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist, wobei der Speicher ferner Befehle gespeichert hat, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um aus den 3D-Bilddaten zu erkennen, dass eine Hand eines Bedieners in Kontakt mit dem Objekt ist; und als Reaktion auf die Erkennung, dass die Hand des Bedieners in Kontakt mit dem Objekt ist, den Betrieb des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand zu ändern, bis eine Freigabebedingung erfüllt ist.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung eine Scanstation. Die Scanstation umfasst eine 2D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld der 2D-Bildgebungsvorrichtung erfasst und 2D-Bilddaten aus dem 2D-Bild erzeugt; und eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem Sichtfeld der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt. Die Scanstation umfasst ferner einen Prozessor und einen Speicher, der Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die 3D-Bilddaten mit den 2D-Bilddaten zu vergleichen und einen Authentifizierungsprozess für das Objekt durchzuführen.
  • In einer Variante dieser Ausführungsform speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen: eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen; eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und (a) ein ordnungsgemäßes Scannen des Objekts zu bestimmen, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) ein nicht ordnungsgemäßes Scannen des Objekts zu bestimmen, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt. In einer anderen Variante dieser Ausführungsform speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, indem: ein Strichcode für das Objekt in den 2D-Bilddaten identifiziert wird; und der Strichcode dekodiert wird, um Strichcode-Nutzdaten zu erzeugen und die erste Objektidentifikation aus den Strichcode-Nutzdaten zu bestimmen. In einer anderen Variante dieser Ausführungsform speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, indem: die 2D-Bilddaten einem trainierten Objekterkennungsmodell bereitgestellt werden; und unter Verwendung des trainierten Objekterkennungsmodells die erste Objektidentifikation des Objekts erzeugt wird.
  • In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, indem: die 3D-Bilddaten einem trainierten Objekterkennungsmodell bereitgestellt werden; und unter Verwendung des trainierten Objekterkennungsmodells die zweite Objektidentifikation des Objekts erzeugt wird. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, vor der Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten: die 3D-Bilddaten mit den 2D-Bilddaten zu vergleichen; und Umgebungsmerkmale außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten zu entfernen. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, vor der Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten: die 3D-Bilddaten mit den 2D-Bilddaten zu vergleichen; und Umgebungsmerkmale außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten zu entfernen. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, indem: ein oder mehrere Farbmerkmale des Objekts aus den 3D-Bilddaten bestimmt werden; und die zweite Objektidentifikation aus dem einen oder den mehreren Farbmerkmalen bestimmt wird. In einigen Varianten umfassen das eine oder die mehreren Farbmerkmale eine Farbe des Objekts. In einigen Varianten umfassen das eine oder die mehreren Farbmerkmale einen Farbgradienten des Objekts. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, indem er: ein oder mehrere geometrische Merkmale des Objekts aus den 3D-Bilddaten bestimmt; und die zweite Objektidentifikation aus dem einen oder den mehreren geometrischen Merkmalen bestimmt.
  • In einigen Varianten umfasst die Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen und die erste Objektidentifikation aus den Strichcode-Nutzdaten zu bestimmen.
  • In einigen Varianten enthalten die 3D-Bilddaten eine Punktwolke, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert hat, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und die Bestimmung des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten basiert auf einer ersten Teilmenge der 3D-Bilddaten und basiert nicht auf einer zweiten Teilmenge der 3D-Bilddaten, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
  • In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, als Reaktion auf die Bestimmung (a) des ordnungsgemäßen Scannens des Objekts den Prozessor zu veranlassen, ein Transaktionsprotokoll zu verarbeiten, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf die Bestimmung (b) des nicht ordnungsgemäßen Scannens des Objekts mindestens eines auszuführen von: (i) Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
  • In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, aus den 3D-Bilddaten eine Scanrichtung des Objekts relativ zu der 2D-Bildgebungsvorrichtung zu bestimmen; und als Reaktion darauf, dass die Scanrichtung eine nicht ordnungsgemäße Scanrichtung ist, die Erfassung des 2D-Bildes durch die 2D-Bildgebungsvorrichtung zu verhindern, bis eine Freigabebedingung erfüllt ist.
  • In einigen Varianten handelt es sich bei dem Objekt um ein Erzeugnis, und im Speicher sind ferner Anweisungen gespeichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen: als erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen; als zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und einen Typ des Erzeugnisses zu bestimmen.
  • In einigen Varianten handelt es sich bei dem Objekt um ein Erzeugnis, und im Speicher sind ferner Befehle gespeichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen: als erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen; als zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und eine Auflistung möglicher Typen des Erzeugnisses zu bestimmen; und die Auflistung einem Benutzer der Scanstation zur Auswahl zu präsentieren.
  • In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen: als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Vorhandensein eines teilweise dekodierbaren Strichcodes zu bestimmen und eine Auflistung potenzieller Objektübereinstimmungen aus dem teilweise dekodierbaren Strichcode zu bestimmen; als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und zu bestimmen, ob eine oder mehrere aus der Auflistung potenzieller Objektübereinstimmungen mit der Form oder Abmessung korrespondieren, die in der zweiten Objektidentifikation aus den 3D-Bilddaten angegeben ist.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung eine Scanstation. Die Scanstation umfasst eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst und einen Strichcode in dem 2D-Bild identifiziert, um das Objekt aus Strichcode-Nutzdaten zu identifizieren. Die Scanstation umfasst ferner eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem Sichtfeld (FOV) der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt. Die Scanstation enthält ferner einen Prozessor und einen Speicher, der Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen: das 3D-Bild des Objekts zu erfassen und die 3D-Bilddaten zu erzeugen; ein oder mehrere 3D-Objektmerkmale des Objekts aus den 3D-Bilddaten zu identifizieren; und entweder (a) ein Objekterkennungsmodell mit den 3D-Bilddaten zu trainieren oder (b) eine Objekterkennung unter Verwendung der 3D-Bilddaten durchzuführen.
  • In einer anderen Ausführungsform ist die vorliegende Erfindung ein System. Das System umfasst eine zweidimensionale (2D) Bildgebungsvorrichtung mit einem ersten Sichtfeld (FOV) und konfiguriert, um ein 2D-Bild einer ersten Umgebung zu erfassen, die innerhalb des ersten FOV erscheint, wobei das 2D-Bild als 2D-Bilddaten gespeichert wird, die dem 2D-Bild entsprechen. Das System umfasst ferner eine dreidimensionale (3D) Bildgebungsvorrichtung mit einem zweiten Sichtfeld (FOV), das sich zumindest teilweise mit dem ersten Sichtfeld (FOV) überlappt, wobei die 3D-Bildgebungsvorrichtung so konfiguriert ist, dass sie ein 3D-Bild einer zweiten Umgebung erfasst, die innerhalb des zweiten Sichtfeldes (FOV) erscheint, wobei das 3D-Bild als 3D-Bilddaten gespeichert wird, die mit dem 3D-Bild korrespondieren. Das System umfasst ferner einen Prozessor und einen Speicher, der Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: ein oder mehrere 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten zu identifizieren; die 2D-Bilddaten zu verbessern, was zu verbesserten 2D-Bilddaten führt, indem das eine oder die mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten korreliert werden; und die verbesserten 2D-Bilddaten zu verarbeiten, um mindestens eines auszuführen von: (a) Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) Erkennen eines Objekts in den verbesserten 2D-Bilddaten, und (d) Identifizieren einer von einem Bediener des Strichcodelesers durchgeführte Aktion.
  • In einer Variante dieser Ausführungsform umfassen die 3D-Bilddaten 3D-Punktwolkendaten, und das eine oder die mehreren 3D-Bildmerkmale umfassen ein oder mehrere geometrische Merkmale eines Objekts, das innerhalb des zweiten FOV dargestellt wird. In einer anderen Variante dieser Ausführungsform umfassen die 3D-Bilddaten 3D-Punktwolkendaten, und das eine oder die mehreren 3D-Bildmerkmale umfassen eine Farbe oder eine Farbabstufung, die mit einem Objekt korrespondiert, das innerhalb des zweiten FOV dargestellt wird. In einer anderen Variante dieser Ausführungsform speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, das eine oder die mehreren 3D-Bildmerkmale zu identifizieren, indem er das eine oder die mehreren 3D-Bildmerkmale identifiziert, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung entfernt sind. In einigen Varianten speichert der Speicher ferner Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die 2D-Bilddaten durch Filtern der mindestens einen oder mehreren 2D-Bildmerkmale zu verbessern, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind. In einigen Varianten speichert der Speicher außerdem Anweisungen, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die 2D-Bilddaten durch Filtern des mindestens einen oder der mehreren 2D-Bildmerkmale so zu verbessern, dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die dem mindestens einen oder den mehreren 2D-Bildmerkmalen zugeordnet sind. In einigen Varianten umfasst das System ferner einen stationären Strichcodeleser, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient wird, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt. In einigen Varianten umfasst das System ferner einen bi-optischen Strichcodeleser mit einem Produktscanbereich, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
  • In einer anderen Variante dieser Ausführungsform umfasst das eine oder die mehreren 3D-Bildmerkmale mindestens eines von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem Objekt, das von der Hand des Bedieners erfasst wird.
  • In einer anderen Variante dieser Ausführungsform speichert der Speicher ferner Befehle, die, wenn sie ausgeführt werden, den Prozessor veranlassen: die verbesserten 2D-Bilddaten zu verarbeiten, indem die von der Bedienperson durchgeführte Aktion identifiziert wird; und als Reaktion darauf, dass die von der Bedienperson durchgeführte Aktion als ein Präsentieren eines Objekts innerhalb eines Produktscanbereichs oder ein Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass innerhalb der 2D-Bilddaten und/oder der verbesserten 2D-Bilddaten kein Strichcode erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  • Figurenliste
  • Die beigefügten Figuren, in denen gleiche Bezugszeichen identische oder funktional ähnliche Elemente in den einzelnen Ansichten bezeichnen, sind zusammen mit der nachfolgenden detaillierten Beschreibung in die Offenbarung inkorporiert und bilden einen Bestandteil der Offenbarung und dienen dazu, hierin beschriebene Ausführungsformen von Konzepten, die die beanspruchte Erfindung umfassen, weiter zu veranschaulichen und verschiedene Prinzipien und Vorteile dieser Ausführungsformen zu erklären.
    • 1 ist eine perspektivische Ansicht eines beispielhaften Bildgebungssystems, das in einem beispielhaften Verkaufspunkt (POS - Point-of-Sale) -System implementiert ist, mit einem bi-optischen (auch als „bi-optisch“ bezeichneten) Symbolleser mit einer zweidimensionalen (2D) Bildgebungsvorrichtung und einer dreidimensionalen (3D) Bildgebungsvorrichtung.
    • 2 ist eine perspektivische Ansicht eines weiteren Beispiels eines Bildgebungssystems, das in einem Beispiel-POS-System implementiert ist und einen bi-optischen Symbolleser mit einer 2D-Bildgebungsvorrichtung und einer 3D-Bildgebungsvorrichtung aufweist.
    • 3 ist eine perspektivische Ansicht eines anderen Beispiels eines Bildgebungssystems, das in einem Beispiel-POS-System implementiert ist und einen bi-optischen Symbolleser mit einer 2D-Bildgebungsvorrichtung und einer 3D-Bildgebungsvorrichtung aufweist.
    • 4A und 4B sind eine perspektivische Ansicht bzw. eine Querschnittsansicht eines anderen Beispiels eines Bildgebungssystems, das in einem Beispiel-POS-System implementiert ist, mit einem bi-optischen Symbolleser, der eine interne 3D-Bildgebungsvorrichtung und ein Sichtfeld dieser 3D-Bildgebungsvorrichtung zeigt.
    • 5 ist eine perspektivische Ansicht eines anderen Beispiels eines Bildgebungssystems, das in einem Beispiel-POS-System implementiert ist, mit einem bi-optischen Symbolleser, der eine zugehörige 2D-Bildgebungsvorrichtung in einem Lesergehäuse und eine zugehörige 3D-Bildgebungsvorrichtung außerhalb des Lesergehäuses aufweist.
    • 6 ist eine perspektivische Ansicht eines weiteren Beispiels mit einem handgehaltenen Symbollesers mit einer 2D-Bildgebungsvorrichtung und einer 3D-Bildgebungsvorrichtung.
    • 7 zeigt ein Blockdiagramm einer beispielhaften Logikschaltung einer Scanstation und eines entfernten Servers zur Implementierung von hierin beschriebenen Beispielverfahren und/oder -vorgängen, einschließlich derjenigen der Bildgebungssysteme der 1-6.
    • 8 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zum Scannen von Strichcodes unter Verwendung erfasster 2D- und 3D-Bilder.
    • 9A zeigt ein 2D-Bild, das von einem 2D-Bildgebungsleser in einem ersten Sichtfeld erfasst wurde.
    • 9B zeigt einen Ausschnitt eines 3D-Bildes, das von einem 3D-Bildgebungsleser in einem zweiten Sichtfeld erfasst wurde.
    • 9C zeigt ein verbessertes 2D-Bild, das durch Extraktion von Bildmerkmalen aus dem 3D-Bild erzeugt wurde.
    • 10 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Verarbeitung von Daten unter Verwendung erfasster 2D- und 3D-Bilder.
    • 11A zeigt ein 3D-Bild, das von einem 3D-Bildgebungsleser in einem ersten Sichtfeld erfasst wurde.
    • 11B zeigt einen Teil eines 2D-Bildes, das von einem 2D-Bildgebungsleser in einem zweiten Sichtfeld aufgenommen erfasst.
    • 11C zeigt ein verbessertes 3D-Bild, das durch Extraktion von Bildmerkmalen aus dem 2D-Bild erzeugt wurde.
    • 12 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Identifizierung eines ordnungsgemäßen Scannens und eines nicht ordnungsgemäßen Scannens unter Verwendung erfasster 2D- und 3D-Bilder.
    • 13 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Durchführung von Gesichtserkennung unter Verwendung erfasster 3D-Bilder.
    • 14A zeigt ein 3D-Bild, das von einer 3D-Bildgebungsvorrichtung in einem Sichtfeld erfasst wurde und ein Gesicht in einem ersten Abstand von der 3D-Bildgebungsvorrichtung in einer Scanstation zeigt.
    • 14B zeigt ein 3D-Bild, das von der 3D-Bildgebungsvorrichtung des Sichtfelds erfasst wurde und ein Gesicht in einem zweiten Abstand von der 3D-Bildgebungsvorrichtung in einer Scanstation zeigt.
    • 15 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Durchführung von Gesichtserkennung unter Verwendung erfasster 2D-Bilder.
    • 16 ist ein Flussdiagramm eines Beispielprozesses, wie er von der Logikschaltung von 7 implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Durchführung von Gesichtserkennung unter Verwendung von erfassten 3D-Bildern.
    • 17 ist ein Flussdiagramm eines anderen Beispielprozesses, wie er durch eine Logikschaltung von 18 in einem maschinellen Bildverarbeitungssystem implementiert werden kann, um hierin beschriebene Beispielverfahren und/oder -vorgänge zu implementieren, einschließlich Techniken zur Durchführung von Gesichtserkennung unter Verwendung erfasster 3D-Bilder.
    • 18 zeigt ein Blockdiagramm eines beispielhaften Bildverarbeitungssystems für die Implementierung von hierin beschriebenen Beispielverfahren und/oder-vorgängen, einschließlich der Bildverarbeitungsanalyse unter Verwendung von erfassten 2D- und 3D-Bildern.
  • Fachleute werden erkennen, dass Elemente in den Figuren der Einfachheit und Klarheit halber dargestellt sind und nicht notwendigerweise maßstabsgetreu gezeichnet wurden. Zum Beispiel können die Abmessungen einiger der Elemente in den Figuren relativ zu anderen Elementen übertrieben sein, um das Verständnis von Ausführungsformen der vorliegenden Erfindung zu verbessern.
  • Die Vorrichtungs- und Verfahrenskomponenten wurden, wo es angemessen ist, durch herkömmliche Symbole in den Zeichnungen dargestellt, die nur jene spezifischen Details zeigen, die zum Verständnis der Ausführungsformen der vorliegenden Erfindung relevant sind, um somit die Offenbarung nicht mit Einzelheiten zu verdecken, die für die Fachleute auf dem Gebiet, die auf die vorliegende Beschreibung zurückgreifen, ohne weiteres ersichtlich sind.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 zeigt eine perspektivische Ansicht eines beispielhaften Bildverarbeitungssystems, das in der Lage ist, Vorgänge der hier beschriebenen Beispielverfahren zu implementieren, wie sie in den Flussdiagrammen der Zeichnungen, die dieser Beschreibung beigefügt sind, dargestellt werden können. Im dargestellten Beispiel hat ein Bildverarbeitungssystem 100 die Form eines Verkaufspunkt (Point-of-Sale - POS) -Systems mit einer Arbeitsstation 102 mit einer Theke 104, einem bi-optischen (auch als „bi-optisch“ bezeichneten) Symbolleser 106 (das in den hier beschriebenen Systemen und Verfahren zur Diebstahlerkennung und -verhinderung, Gesichtserkennung, Objekterkennung und Authentifizierung verwendet werden kann) und einer ersten Kamera 107 und einer zweiten Kamera 109, die jeweils zumindest teilweise in einem Gehäuse des Symbollesers 106 angeordnet sind, der hier auch als Strichcodeleser bezeichnet wird. In den hier beschriebenen Beispielen wird der Symbolleser 106 als Strichcodeleser bezeichnet.
  • In den hier dargestellten Beispielen können die Kameras 107 und 109 (sowie andere in anderen Beispielen beschriebene Kameras, einschließlich derjenigen in den 2 bis 4) als Bilderfassungsbaugruppen bezeichnet werden und als Farbkamera, monochromatische Kamera oder andere Kamera implementiert werden, die so konfiguriert ist, dass sie Bilder eines Objekts erhält. Im dargestellten Beispiel befindet sich die Kamera 107 in einem sich vertikal erstreckenden, oberen Gehäuse 114 (auch als oberer Teil oder Turmabschnitt bezeichnet) des Strichcodelesers 106, und die Kamera 109 befindet sich in einem sich horizontal erstreckenden, unteren Gehäuse 112 (auch als unterer Teil oder Plattenabschnitt bezeichnet). Das obere Gehäuse 114 ist durch ein horizontal verlaufendes Sichtfeld für die Kamera 107 gekennzeichnet. Das untere Gehäuse 112 ist durch ein vertikal verlaufendes Sichtfeld für die Kamera 109 gekennzeichnet. In einigen Beispielen können das obere Gehäuse 114 und das untere Gehäuse 112 jeweils zwei oder mehr Sichtfelder haben, beispielsweise wenn die jeweiligen Kameras so konfiguriert sind (z. B. durch Winkelreflektoren), dass sie unterschiedliche Sichtfelder haben, die sich von unterschiedlichen Pixelbereichen des Kamerasensors aus erstrecken.
  • In einigen Beispielen enthält das untere Gehäuse 112 eine Wiegeplatte 111 als Teil einer Wiegeplattenbaugruppe, die im Allgemeinen die Wiegeplatte 111 und eine Waage umfasst, die so konfiguriert ist, dass sie das Gewicht eines Objekts misst, das auf eine Beispielfläche des oberen Teils 116 oder einen Teil davon gelegt wird. Die Oberfläche dieses oberen Teils 116 erstreckt sich in einer ersten Querebene und ist im Allgemeinen oder im Wesentlichen parallel zu einer Beispiel-Oberfläche 124 der Arbeitsstation 102, die die Wiegeplatte 111 zumindest teilweise umgibt.
  • Die Wiegeplatte 111 kann Teil einer Abseitsplatten-Erkennungsbaugruppe 126 sein, die eine Beispiel-Lichtemissionsbaugruppe 128 und eine Beispiel-Lichterkennungsbaugruppe 130 umfasst. In einem Beispiel wird eine Lichtquelle (aus Gründen der Übersichtlichkeit nicht dargestellt) der Lichtemissionsbaugruppe 128 so gesteuert, dass sie einen oder mehrere Lichtimpulse aussendet, und ein Lichtsensor (aus Gründen der Übersichtlichkeit nicht dargestellt) der Lichterfassungsbaugruppe 130 fängt Licht ein, und die Erfassungsbaugruppe 126 kann Lichterfassungsinformationen verarbeiten, um zu erkennen, wenn ein Teil eines Artikels, Objekts usw. nicht auf einem Rand der Wiegeplatte 111 aufliegt oder sich über diese hinaus erstreckt, was als ein Zustand gilt, in dem die Wiegeplatte nicht aufliegt. Der Einfachheit halber werden hier nur eine einzige Lichtemissionsbaugruppe 128 und eine einzige Lichterkennungsbaugruppe 130 beschrieben. Es sei jedoch verstanden, dass die Abseitsplatten-Erfassungsbaugruppe 126 auch eine beliebige Anzahl und/oder Art(en) von Lichtemissionsbaugruppen umfassen kann und dass eine beliebige Anzahl und/oder Art(en) von Lichterfassungsbaugruppen implementiert werden können, um eine Abseitsplatten-Wiegebedingung zu erkennen. Andere Beispiel-Symbolleser mit Abseitsplatten-Erkennung werden unter Bezugnahme auf die 5-7 diskutiert.
  • In dem in 1 dargestellten Beispiel ist eine der Kameras 107, 109 eine 2D-Kamera und die andere der Kameras eine 3D-Kamera. Das heißt, in verschiedenen Ausführungsformen kann das obere Gehäuse 114 eine 2D-Kamera oder eine 3D-Kamera enthalten, während das untere Gehäuse 112 eine 3D-Kamera oder eine 2D-Kamera enthalten kann.
  • Während die Kameras 107 und 109 in einer Beispielkonfiguration gezeigt werden, die sich jeweils in einem anderen Gehäuseteil befinden, können die vorliegenden Bildgebungssysteme eine beliebige Anzahl von Bildgebern enthalten, die in einer beliebigen Anzahl von verschiedenen Vorrichtungen untergebracht sind. 2 zeigt beispielsweise ein Bildgebungssystem 100' mit ähnlichen Merkmalen (und ähnlichen Bezugsnummern) wie das Bildgebungssystem 100 von 1, bei dem jedoch eine Kamerabaugruppe 207 sowohl eine 2D-Kamera 207A als auch eine 3D-Kamera 207B enthält, die sich jeweils in einem oberen Gehäuse 114 befinden, ohne eine separate Kamera im unteren Gehäuse 112. 3 zeigt ein anderes Bildgebungssystem 100" mit ähnlichen Merkmalen (und gleichen Bezugsziffern) wie das Bildgebungssystem 100 von 1, jedoch mit einer Kamerabaugruppe 307, die eine 2D-Kamera 307A und eine 3D-Kamera 307B umfasst, jeweils mit einem unteren Gehäuse 114, ohne eine separate Kamera im oberen Gehäuse 114.
  • Während die 1 bis 3 beispielhafte bi-optische Strichcodeleser 106 als Bildgeber zeigen (jede Figur zeigt eine andere Kamerakonfiguration), kann der Bildgeber in anderen Beispielen eine handgehaltene Vorrichtung sein, wie z. B. ein handgehaltener Strichcodeleser, oder ein feststehender Bildgeber, wie z. B. ein Strichcodeleser, der in einer Basis befestigt ist und in einem so genannten „Präsentationsmodus“ betrieben wird. Ein Beispiel ist in 6 dargestellt, auf das weiter unten eingegangen wird.
  • Zurück zu 1 kann das untere Gehäuse 112 als Plattenteller oder erster Gehäuseabschnitt bezeichnet werden, und das obere Gehäuse 114 kann als Turm, erhöht oder zweiter Gehäuseabschnitt bezeichnet werden. Das untere Gehäuse 112 umfasst einen oberen Abschnitt 116 mit einem ersten optisch durchlässigen Fenster 118, das darin entlang einer im Allgemeinen horizontalen Ebene in Bezug auf die Gesamtkonfiguration und Platzierung des Strichcodelesers 106 angeordnet ist. Das Fenster 118 fällt im Beispiel von 1 mit einem Sichtfeld der Kamera 109 und im Beispiel von 3 mit einem Sichtfeld der Kamerabaugruppe 307 zusammen. In einigen Beispielen umfasst der obere Teil 116 eine abnehmbare oder nicht abnehmbare Platte (z. B. eine Wiegeplatte). Das obere Gehäuse 114 enthält ein zweites optisch durchlässiges Fenster 120, das dort entlang einer im Allgemeinen vertikalen Ebene angeordnet ist und mit einem oder mehreren Sichtfeldern der Kamera 107 übereinstimmt.
  • In dem in 1 dargestellten Beispiel sowie in den 2-4 erfasst der Strichcodeleser 106 Bilder eines Objekts, insbesondere eines Produkts 122, wie z. B. einer Kiste, das von einem Benutzer 108, z. B. einem Kunden oder Verkäufer, gescannt wird. In einigen Ausführungsformen erfasst der Strichcodeleser 106 diese Bilder des Produkts 122 durch eines der ersten und zweiten optisch durchlässigen Fenster 118, 120. Die Bilderfassung kann beispielsweise durch Positionierung des Produkts 122 innerhalb des Sichtfelds FOV des/der digitalen Bildsensors/en im Strichcodeleser 106 erfolgen. Der Strichcodeleser 106 erfasst Bilder durch diese Fenster 118, 120, so dass ein dem Produkt 122 zugeordneter Strichcode 124 durch mindestens eines der ersten und zweiten optisch durchlässigen Fenster 118, 120 digital gelesen wird. In einigen Beispielen kann auch eine Grafik 126 auf dem Produkt durch Bilder, die durch diese Fenster 118, 120 erfasst wurden, digital analysiert werden.
  • In den Beispielkonfigurationen von 1 werden 2D-Bilder des Produkts 122 von der Kamera 107 über ein Sichtfeld (FOV) der Kamera 107 erfasst, wobei jedes 2D-Bild die Umgebung innerhalb dieses FOV abbildet. Das heißt, in einem Beispiel ist die Kamera 107 eine 2D-Kamera, die 2D-Bilder erfasst und 2D-Bilddaten erzeugt, die beispielsweise verarbeitet werden können, um zu überprüfen, ob das gescannte Produkt 122 mit dem Strichcode 124 übereinstimmt, und/oder Bilddaten können zum Auffüllen einer Datenbank verwendet werden.
  • In den Beispielkonfigurationen von 1 werden 3D-Bilder des Produkts 122 von der Kamera 109 über das Sichtfeld der Kamera 109 erfasst, wobei jedes 2D-Bild die Umgebung innerhalb dieses Sichtfelds darstellt. Das heißt, in einem Beispiel ist die Kamera 109 eine 3D-Kamera, die 3D-Bilder erfasst und 3D-Bilddaten erzeugt, die beispielsweise verarbeitet werden können, um zu überprüfen, ob das gescannte Produkt 122 mit dem Strichcode 124 übereinstimmt, und/oder Bilddaten können verwendet werden, um eine Datenbank zu füllen. In anderen Beispielen kann es sich bei der Kamera 107 um eine 3D-Kamera und bei der Kamera 109 um eine 2D-Kamera handeln. Während in 2 die Kamera 207 eine 2D-Kamera 207A und eine 3D-Kamera 207B innerhalb des oberen Gehäuses 114 umfasst, umfasst in 3 die Kamera 307 eine 2D-Kamera 307A und eine 3D-Kamera 307B innerhalb eines unteren Gehäuses 112.
  • Zur Durchführung von Vorgängen der hierin beschriebenen Beispiel-Objekterkennungstechniken, einschließlich derjenigen in den 8-16, können Bilder, die von 2D-Kameras und 3D-Kameras in den hierin beschriebenen Beispielen erfasst wurden, zur Identifizierung eines Objekts (z. B. des Produkts 122) verwendet werden, z. B. durch die Bestimmung erster Objektidentifikationsdaten unter Verwendung von Bildern, die von dem Objekt erfasst wurden, und die Bestimmung zweiter Objektidentifikationsdaten unter Verwendung eines Symbols auf dem Objekt (z. B. des Strichcodes 124) und den Vergleich der beiden Identifikationsdaten. In einigen Beispielen werden die von der (den) 2D-Kamera(s) und der (den) 3D-Kamera(s) erfassten Bilder zur Identifizierung von 2D-Bildmerkmalen und/oder 3D-Bildmerkmalen verwendet, um Parameter zu steuern, die dem Betrieb eines Symbollesers zugeordnet sind. In einigen Beispielen werden die von der/den 2D-Kamera(s) und der/den 3D-Kamera(s) erfassten Bilder verwendet, um Gesichtsdaten zur Steuerung von Parametern, die dem Betrieb eines Symbollesers zugeordnet sind, oder zur Authentifizierung des Betriebs eines Symbollesers zu identifizieren. Durch die Erfassung und Verarbeitung von 2D-Bilddaten und 3D-Bilddaten sind Symbolleser in verschiedenen Beispielen in der Lage, verbesserte 2D- oder 3D-Bilddaten zu verarbeiten, um ein Objekterkennungsmodell mit den verbesserten 3D-Bilddaten zu trainieren, ein Objekt innerhalb der verbesserten Bilddaten zu erkennen, eine von einem Benutzer des Symbollesers durchgeführte Aktion zu identifizieren und/oder mindestens einen dem Symbolleser zugeordneten Parameter zu ändern, unabhängig davon, ob dieser Parameter mit der 3D-Bildgebungsvorrichtung, der 2D-Bildgebungsvorrichtung oder einem anderen dem Symbolleser zugeordneten System assoziiert ist.
  • In dem in 1 dargestellten Beispiel umfasst das Bildgebungssystem 100 einen entfernten Server 130, der über eine drahtgebundene oder drahtlose Kommunikationsverbindung mit dem Strichcodeleser 106 verbunden ist. In einigen Beispielen ist der entfernte Server 130 kommunikativ mit einer Vielzahl von Bildgebungssystemen 100 verbunden, die beispielsweise im Kassenbereich einer Einrichtung positioniert sind. In einigen Beispielen ist der entfernte Server 130 als Bestandsverwaltungsserver implementiert, der Objektidentifikationsdaten erzeugt und vergleicht. In einigen Beispielen ist der entfernte Server 130 für einen Verwalter zugänglich, um den Betrieb und das fehlerhafte Scannen von Produkten durch das Bildgebungssystem 100 zu überwachen.
  • 4A zeigt eine weitere perspektivische Ansicht eines beispielhaften Bildgebungssystems 140 mit einem Symbolleser 142 und einer 3D-Bildgebungsvorrichtung 144, in diesem Beispiel innerhalb eines Turmabschnitts 146 des Symbollesers 142. Ein Plattentellerabschnitt 148 ist ebenfalls dargestellt. Es wird ein sich horizontal erstreckender FOV 150 für die 3D-Bildgebungsvorrichtung 144 gezeigt. Die 3D-Bildgebungsvorrichtung 144 ist, wie auch die anderen 3D-Bildgebungsvorrichtungen in anderen Beispielen, in der Lage, 3D-Bilder einer Umgebung innerhalb des FOV 150 zu erfassen und die Position eines oder mehrerer Objekte in diesem Sichtfeld zu bestimmen. Die dargestellten Beispielebenen 152, 154 und 156 repräsentieren jeweils einen anderen Abstand von der 3D-Bildgebungsvorrichtung 144. So können Objekte und Objektabstände in 3D-Bildern identifiziert und in 3D-Bilddaten gespeichert werden, die von der 3D-Bildgebungsvorrichtung 144 erzeugt werden. Insbesondere kann, wie hier weiter ausgeführt, der Objekttyp (z. B. ein zu scannendes Produkt, eine Bedienerhand oder ein menschliches Gesicht) aus den 3D-Bilddaten identifiziert und die Position dieses Objekts bestimmt werden, um den Betrieb des Symbollesers 142 zu steuern. In einigen Beispielen kann der Symbolleser 142 beispielsweise so gesteuert werden, dass er nur dann ein 2D-Bild für das Lesen von Strichcodes erfasst, wenn ein Objekt eines bestimmten Typs identifiziert wurde oder wenn ein Objekt eines bestimmten Typs als innerhalb eines Abstands zum Symbolleser 142 befindlich identifiziert wurde, beispielsweise zwischen der 3D-Bildgebungsvorrichtung 144 und dem durch Ebene 154 festgelegten Abstand. Objekte, die weiter entfernt sind als die Ebene 154 (z. B. Objekte auf der Ebene 156), können beispielsweise ignoriert und nicht gescannt werden. Ebenso können Objekte, die näher als die Ebene 152 liegen, ignoriert oder mit einer anderen Beleuchtungseinheit oder durch Einstellen einer Fokussierungsebene einer 2D-Bildgebungsvorrichtung gescannt werden. In einigen Beispielen kann der Abstand von Objekten in einer Umgebung dazu verwendet werden, bestimmte Objekte aus den 3D-Bilddaten herauszufiltern, um die Scangenauigkeit zu erhöhen oder um Trainingsbilder für ein Objekterkennungsmodell zu erzeugen. Andere Beispiele werden beschrieben.
  • 4B ist eine Querschnittsansicht des Bildgebungssystems 140, die der Symbolleser 142 mit einer Abseitsplatten-Erkennungsbaugruppe 158 zeigt, die zwei Abseitsplatten-Erkennungsbaugruppen repräsentieren kann, eine an jeder äußeren Längskante des Bildgebungssystems 140. Um eine Abseitsplatten-Erkennung zu ermöglichen, kann eine Lichtemissionsbaugruppe 160 vorgesehen werden, die mit einer Steuerung 162 des Symbollesers 140 gekoppelt ist, wobei die Steuerung 162 so konfiguriert werden kann, dass sie die Abseitsplatten-Erkennungsbaugruppe 158 in verschiedenen Modi betreibt. In einer ersten Betriebsart kann die Steuerung 162 beispielsweise eine Anweisung an die Lichtemissionsbaugruppe 160 senden, kontinuierlich einen kollimierten Lichtstrahl 164 zu emittieren, der jedes Mal, wenn eine der Lichtstreuungsbarrieren 166 nicht beleuchtet ist, einen Hinweis auf ein „Abseitsplatten“-Ereignis liefern würde. In einer zweiten Betriebsart kann die Steuerung 162 auch betriebsmäßig mit der Wiegeplatte 168 gekoppelt sein und eine Anweisung an die Lichtemissionsbaugruppe 160 senden, keinen kollimierten Lichtstrahl 164 zu emittieren, bis die Steuerung 162 ein Objekt auf der Wiegeplatte 168 erkennt und sich das gemessene Gewicht des Objekts eingependelt hat. Sobald sich das gemessene Gewicht eingependelt hat (nach einer positiven Verweilzeit), kann die Steuerung 162 eine Anweisung an die Lichtemissionsbaugruppe 160 senden, einen kollimierten Lichtstrahl 164 zu emittieren, damit ein Benutzer feststellen kann, ob ein Ereignis außerhalb der Wiegeplatte vorliegt, und die Emission des kollimierten Lichtstrahls 164 zu beenden, sobald die Steuerung 162 die Entfernung des Objekts von der Wiegeplatte 168 festgestellt hat. Diese Betriebsart spart Energie und verhindert, dass die Lichtstreuungsbarriere 166 jedes Mal aufleuchtet und wieder erlischt, wenn ein nicht wiegender Gegenstand über die Wiegeplatte 168 geführt wird, um vom Symbolleser 140 gescannt zu werden. In einer dritten Betriebsart ist die Steuerung 162 wiederum mit der Wiegeplatte 168 gekoppelt. In dieser Betriebsart kann die Steuerung 162 jedoch eine Anweisung an die Lichtemissionsbaugruppe 160 senden, den kollimierten Lichtstrahl 164 aufblinken zu lassen, sobald die Steuerung 162 ein auf die Wiegeplatte 168 platziertes Objekt erkennt, um den Benutzer darauf aufmerksam zu machen, dass die Lichtstreuungsbarriere 166 überprüft werden sollte. Die Steuerung 162 kann auch einen Benachrichtigungston oder eine Warnung erzeugen, um den Benutzer daran zu erinnern, die Lichtstreuungsbarriere 166 zu überprüfen. Sobald sich das gemessene Gewicht des Objekts eingependelt hat (nach einer positiven Verweilzeit), sendet die Steuerung 162 eine Anweisung an die Lichtemissionsbaugruppe 160, das Blinken des kollimierten Lichtstrahls 164 zu beenden und den kollimierten Lichtstrahl 164 kontinuierlich zu emittieren.
  • In einigen Beispielen wird der kollimierte Lichtstrahl 164 von einer Lichtquelle 170 emittiert. Die Lichtemissionsbaugruppe 160 kann auch eine Öffnung 172 enthalten, die in einer Wand oder einem Vorsprung eines Gehäuses oder durch eine andere Wand oder Struktur, die Teil der Wiegeplatte 168 ist, gebildet werden könnte und vor der Lichtquelle 170 positioniert ist, um den kollimierten Lichtstrahl 164 in einen schmalen Strahl entlang einer Seitenkante der Wiegeplatte 168 zu fokussieren. Eine Linse 174 kann auch vor der Öffnung 172 angeordnet werden, um die Intensität des kollimierten Lichtstrahls 164 zu erhöhen.
  • Wie gezeigt, hat die 3D-Bildgebungsvorrichtung 144 das FOV 150, das sich entlang der Wiegeplatte 168 erstreckt und die Lichtstreuungsbarriere 166 einschließt und mit der Wiegeplatte 162 in Verbindung steht. In diesem Beispiel ist die Steuerung 162 so konfiguriert, dass sie 3D-Bilder von der 3D-Kamera 144 und 2D-Bilder von einer 2D-Kamera 176 im Turmabschnitt 146 und/oder einer 2D-Kamera 178 im Plattenabschnitt 148 empfängt. In einigen Ausführungsformen mag nur eine der 2D-Kameras vorhanden sein. Die Steuerung 162 kann so konfiguriert sein, dass sie Bilder von den Kameras 144 und 176/178 empfängt und auf der Grundlage der empfangenen Bilder verschiedene hierin beschriebene Vorgänge durchführt, wie z. B. die Einstellung eines oder mehrerer Betriebsparameter des Symbollesers 140. Die Steuerung 162 kann außerdem anhand von 3D-Bildern, die von der Kamera 144 erfasst wurden, oder anhand von 2D-Bildern, die von der Kamera 176 erfasst wurden, feststellen, ob die Lichtstreuungsbarriere 166 beleuchtet oder unbeleuchtet zu sein scheint. Wenn die Steuerung 162 feststellt, dass die Lichtstreuungsbarriere 166 beleuchtet zu sein scheint, erlaubt die Steuerung 162, dass das gemessene Gewicht eines Objekts auf der Wiegeplatte 168 von einem Hostsystem aufgezeichnet wird, das operativ mit der Steuerung 162 verbunden ist. Wenn die Steuerung 162 feststellt, dass die Lichtstreuungsbarriere 166 nicht zu leuchten scheint, verhindert die Steuerung 162, dass das gemessene Gewicht des Objekts vom Hostsystem aufgezeichnet wird, und/oder kann den Benutzer darauf hinweisen, dass ein Abseitsplatten-Ereignis vorliegt.
  • 5 zeigt eine alternative Implementierung des Bildgebungssystems 140 der 4A und 4B, die mit 140' bezeichnet ist und für die gleiche Elemente gleiche Bezugsnummern verwendet werden. Im Gegensatz zum Bildgebungssystem 140, bei dem die 3D-Bildgebungsvorrichtung 144 innerhalb des Symbollesers 142 angeordnet war, ist die 3D-Bildgebungsvorrichtung 144' im Bildgebungssystem 140' immer noch mit dem Symbolleser 142 verbunden, befindet sich jedoch außerhalb desselben und ist über Kopf mit einem vertikalen, sich nach unten erstreckenden FOV 150' angeordnet. In dem gezeigten Beispiel befindet sich die 3D-Bildgebungsbaugruppe 144' in einem Überkopfkamerasystem, das in einem Schwanenhalspfosten 180 untergebracht ist, der sich von der Rückseite des Symbollesergehäuses aus erstreckt. Das Überkopfkamerasystem mit der 3D-Bildgebungsbaugrupe 144' kann jedoch überall oberhalb des Symbollesergehäuses 142 angebracht werden. Das Überkopfkamerasystem könnte sich beispielsweise in einer Decke über dem Symbollesers 142 befinden und auf den Symbolleser 142 hinunterblicken, so wie Sicherheitskameras, die bei einigen Kassensystemen verwendet werden. In einigen Beispielen kann ein einzelnes Überkopfkamerasystem mit einer oder mehreren 3D-Bildgebungsvorrichtungen auf ein oder mehrere Bildgebungssysteme herabblicken.
  • 6 zeigt ein weiteres Beispiel eines Bildgebungssystems, mit dem die hier beschriebenen Beispielverfahren durchgeführt werden können, wie sie in den Flussdiagrammen der Zeichnungen, die dieser Beschreibung beigefügt sind, dargestellt sein können. In dem dargestellten Beispiel umfasst ein Bildgebungssystem 200 einen Symbolleser in Form eines handgehaltenen oder Präsentations-Strichcodelesers 202, das bei der Objektabbildung und anderen hier beschriebenen Verfahren verwendet werden kann. Im gezeigten Beispiel kann der Strichcodeleser 202 einen handgehaltenen Leser 204 und eine stationäre Halterung 206 umfassen, die an einer Arbeitsplatzoberfläche 208 befestigt ist. Im gezeigten Beispiel ruht der handgehaltene Leser 204 in der stationären Halterung, um einen Freihand-Scanmodus, auch Präsentationsmodus genannt, zum Scannen von Objekten einzurichten. Der handgehaltene Leser 204 arbeitet daher als Bildgebungsleser mit einem Scanfenster 210 im Gehäuse des handgehaltenen Lesers 204, hinter dem sich eine Kamerabaugruppe 212 und optional eine Beleuchtungsbaugruppe 211 befindet (die eine oder mehrere verschiedene Beleuchtungsquellen darstellen kann, z. B. eine direkte Beleuchtungsquelle und eine diffuse Beleuchtungsquelle zur Erfassung von 2D- und/oder 3D-Bildern). Im Freihand-Scanmodus definiert der handgehaltene Leser 204 ein FOV 214 mit einer zentralen Achse 215. Gemäß den hier beschriebenen Techniken nimmt der handgehaltene Leser 204 Bilder eines Objekts zur Identifizierung und Abbildung innerhalb des FOV 214 auf. In einigen Beispielen kann ein Auslöser 216 verwendet werden, um einen Freihand-Scanmodus zu initiieren. In einigen Beispielen wird das Freihand-Scannen durch Einsetzen des Lesers 204 in die Halterung 206 ausgelöst.
  • Im dargestellten Beispiel umfasst die Kamerabaugruppe 212 eine 2D-Kamera 212A zur Erfassung von 2D-Bildern eines Objekts im FOV 314 und zur Erzeugung von 2D-Bilddaten. Die Kamerabaugruppe 212 umfasst ferner eine 3D-Kamera 212B zum Erfassen von 3D-Bildern eines Objekts im FOV 314 und zum Erzeugen von 3D-Bilddaten. Während das FOV 314 für jede der Kameras 212A und 212B gelten kann, kann in anderen Beispielen jede der Kameras 212A und 212B ein anderes FOV haben, entweder teilweise überlappend oder nicht überlappend. In einigen Beispielen kann das FOV 314 einen ersten Abschnitt umfassen, der der 2D-Kamera 212A entspricht, und einen zweiten Abschnitt, der der 3D-Kamera 212B entspricht.
  • 7 zeigt ein Beispielsystem, in dem Ausführungsformen der vorliegenden Erfindung implementiert werden können. Im vorliegenden Beispiel wird die Umgebung in Form einer Einrichtung mit einer oder mehreren Scanstellen 300 bereitgestellt, die einem Bildgebungssystem entsprechen, wie den Bildgebungssystemen 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 und 6, wo verschiedene Objekte gescannt werden können, um einen Kauf eines Objekts abzuschließen, um ein unzulässiges Objekt zu erkennen, um einen unzulässigen Kaufversuch aufzuheben, und für andere Zwecke.
  • In einem Beispiel ist der Scanstandort 300 eine Verkaufsstelle und umfasst eine Scanstation 302 mit einem Symbolleser 304, wie z. B. einem bi-optisches Strichcodeleser wie der Strichcodeleser 106 in den 1-5 und der handgehaltene Strichcodeleser 202 in 6. Der Symbolleser 304 kann einen Scanner, wie z. B. einen Strichcodescanner, und jede zusätzliche Art von Symbolleser, wie z. B. ein RFID-Etikett-Lesegerät, umfassen. Im Beispiel von 1 wird der Symbolleser 304 der Einfachheit halber auch als ein Leser 304 bezeichnet, obwohl jede Art von Symbolleser eingeschlossen sein soll.
  • In einem anderen Beispiel ist der Scanstandort ein Bildverarbeitungsort und die Scanstation 302 ist ein Bildverarbeitungssystem mit einer 2D-Bildgebungsvorrichtung und einer 3D-Bildgebungsvorrichtung, das so konfiguriert ist, dass es Prozesse durchführt, wie sie unter Bezugnahme auf 11 und an anderer Stelle hier beschrieben sind.
  • Der Leser 304 umfasst eine Bildgebungsvorrichtung 306 (z. B. eine Bildgebungsbaugruppe in Form einer Kamerabaugruppe 306 oder einer anderen Fotodetektionsvorrichtung) und einen oder mehrere Sensoren 308. Die Kamerabaugruppe 306 umfasst eine 2D-Kamera 310 und eine 3D-Kamera 312 zum Erfassen entsprechender Bilder und zum Erzeugen entsprechender Bilddaten gemäß den hier beschriebenen Techniken. Wie in verschiedenen Beispielen hierin erörtert, sind die 2D-Kamera 310 und die 3D-Kamera 312 mit dem Symbolleser 304 verbunden und können sich in einem Gehäuse desselben oder außerhalb eines Gehäuses befinden, aber mit dem Symbolleser 304 über eine drahtgebundene oder drahtlose Kommunikationsverbindung verbunden sein. In einigen Beispielen kann der Leser 304 ein Strichcode-Bildscanner sein, der in der Lage ist, einen 1D-Strichcode, QR-Code, 3D-Strichcode oder ein anderes Symbol als Zeichen 314 zu scannen sowie Bilder eines Objekts 316 selbst zu erfassen. Im gezeigten Beispiel umfasst die Scanstation 304 Sensoren 308, die einen RFID-Transponder zur Erfassung von Zeichendaten in Form eines elektromagnetischen Signals umfassen können, das von dem Zeichen 314 erfasst wird, wenn es sich bei dem Zeichen 314 um ein RFID-Etikett und nicht um ein visuelles Zeichen wie einen Strichcode handelt.
  • Der Leser 304 umfasst außerdem einen Bildprozessor 318 und einen Zeichendekodierer 320. In einigen Beispielen ist der Bildprozessor 318 ein 2D-Bilddatenprozessor und ein 3D-Bilddatenprozessor, der in der Lage ist, Farbbilddaten, Punktwolkenbilddaten und dergleichen eines Objekts zu verarbeiten.
  • Der Bildprozessor 318 kann so konfiguriert sein, dass er die erfassten Bilder des Objekts 316 analysiert und eine vorläufige Bildverarbeitung durchführt, z. B. bevor 2D- und 3D-Bilder und Bilddaten über ein Netzwerk 324 an einen entfernten Server 350 gesendet werden. Der Leser 304 umfasst eine Netzwerkschnittstelle 326, die eine beliebige geeignete Art von Kommunikationsschnittstelle(n) darstellt (z. B. drahtgebundene und/oder drahtlose Schnittstellen), die so konfiguriert ist, dass sie gemäß einem oder mehreren geeigneten Protokollen für die Kommunikation über das Netzwerk 324 arbeitet.
  • Im Beispiel eines bi-optischen Strichcodelesers umfasst der Symbolleser 304 eine Abseitsplatten-Erkennungsbaugruppe 321, die eine Lichtemissionsbaugruppe und eine Lichterkennungsbaugruppe umfassen kann, die sich von der Kamerabaugruppe 306 unterscheidet.
  • Im gezeigten Beispiel umfasst der Leser 304 eine Verarbeitungsplattform 323 mit einem Prozessor 328, wie z. B. einem oder mehreren Mikroprozessoren, Steuerungen und/oder jedem geeigneten Prozessortyp. Die Verarbeitungsplattform 323 umfasst ferner einen Speicher 330 (z. B. einen flüchtigen Speicher, einen nichtflüchtigen Speicher), auf den der Prozessor 328 zugreifen kann (z. B. über eine Speichersteuerung). Der Beispielprozessor 328 interagiert mit dem Speicher 330, um beispielsweise maschinenlesbare Anweisungen zu erhalten, die in dem Speicher 330 gespeichert sind und beispielsweise den Operationen entsprechen, die durch die Flussdiagramme dieser Offenbarung dargestellt werden, einschließlich derjenigen der 8, 10, 12, 13, 15 und 16. Zusätzlich oder alternativ können maschinenlesbare Anweisungen, die den hier beschriebenen Beispielvorgängen entsprechen, auf einem oder mehreren Wechseldatenträgern (z. B. einer Compact Disc, einer Digital Versatile Disc, einem entfernbaren Flash-Speicher usw.) gespeichert sein, die mit dem Leser 304 verbunden sein können, um Zugriff auf die darauf gespeicherten maschinenlesbaren Anweisungen zu ermöglichen.
  • Der Prozess 328 kann ein programmierbarer Prozessor, eine programmierbare Steuerung, eine Grafikverarbeitungseinheit (GPU), ein digitaler Signalprozessor (DSP) usw. sein. Alternativ kann ein anwendungsspezifischer integrierter Schaltkreis (ASIC), ein programmierbarer Logikbaustein (PLD), ein feldprogrammierbares Gate-Array (FPGA), ein feldprogrammierbarer Logikbaustein (FPLD), eine Logikschaltung usw. strukturiert oder konfiguriert sein, um den Prozessor 328 zu implementieren. Der Beispielspeicher 330 umfasst eine beliebige Anzahl oder Art(en) von nicht transitorischen, computerlesbaren Speichermedien oder Platten, wie z. B. ein Festplattenlaufwerk (HDD), ein optisches Speicherlaufwerk, ein Solid-State-Speichergerät, ein Solid-State-Laufwerk (SSD), ein Festwertspeicher (ROM), ein Speicher mit wahlfreiem Zugriff (RAM), eine Compact Disc (CD), ein Compact-Disc-Nur-Lese-Speicher (CD-ROM), eine Digital Versatile Disk (DVD), eine Blu-ray-Disk, ein Cache, ein Flash-Speicher oder jedes andere Speichergerät oder jede andere Speicherplatte, in dem/der Informationen für eine beliebige Dauer gespeichert werden können (z. B. dauerhaft, für einen längeren Zeitraum, für eine kurze Zeit, zur vorübergehenden Zwischenspeicherung, zum Zwischenspeichern von Informationen usw.).
  • Der Leser 304 von 7 umfasst auch Eingabe-/Ausgabeschnittstellen (E/A-Schnittstellen) 332, um den Empfang von Benutzereingaben und die Übermittlung von Ausgabedaten an den Benutzer zu ermöglichen, eine Eingabevorrichtung 334 zum Empfang von Eingaben des Benutzers und eine Anzeigevorrichtung 336 zur Anzeige von Daten, Warnungen und anderen Hinweisen für einen Benutzer. Im dargestellten Beispiel sind die E/A-Schnittstellen 332 zusammen mit der Netzwerkschnittstelle 326 Teil der Verarbeitungsplattform 323. Obwohl in 7 die E/A-Schnittstellen 332 als ein einziger Block dargestellt sind, können die E/A-Schnittstellen 332 eine Reihe verschiedener Arten von E/A-Schaltungen oder -Komponenten umfassen, die es dem Prozessor 328 ermöglichen, mit peripheren E/A-Vorrichtungen zu kommunizieren. Zu den Beispielschnittstellen 332 gehören eine Ethernet-Schnittstelle, ein universeller serieller Bus (USB), eine Bluetooth®-Schnittstelle, eine NFC (Near Field Communication) -Schnittstelle und/oder eine PCI-Express-Schnittstelle. Bei den peripheren E/A-Vorrichtungen kann es sich um jede beliebige Art von E/A-Vorrichtung handeln, z. B. eine Tastatur, eine Anzeige (Flüssigkristallanzeige (LCD), Kathodenstrahlröhre (CRT), Leuchtdiode (LED), organische Leuchtdiode (OLED), IPS-Display, Touchscreen usw.), ein Navigationsgerät (eine Maus, ein Trackball, ein kapazitives Touchpad, ein Joystick usw.), einen Lautsprecher, ein Mikrofon, einen Drucker, eine Taste, eine Kommunikationsschnittstelle, eine Antenne usw.
  • In einigen Beispielen ist der Bildprozessor 318 so konfiguriert, dass er die in einem 2D-Bild erfassten Zeichen 314 identifiziert, z. B. durch Kantenerkennung und/oder Mustererkennung, und der Zeichendekodierer 320 dekodiert die Zeichen und erzeugt Objektidentifikationsdaten, die den Zeichen 314 entsprechen.
  • In einigen Beispielen ist der Bildprozessor 318 außerdem so konfiguriert, dass er Bilder des Objekts 316 erfasst und andere Objektidentifikationsdaten auf der Grundlage von Merkmalen in den 2D-Bilddaten, den 3D-Bilddaten oder einer Kombination davon bestimmt.
  • In einigen Beispielen identifiziert der Bildprozessor 318 beispielsweise Bildmerkmale des Objekts 316, die in 2D-Bilddaten erfasst wurden. Zu den Bildmerkmalen gehören beispielsweise die periphere Form des Objekts, die ungefähre Größe des Objekts, die Größe des Verpackungsteils des Objekts, die Größe eines Produkts innerhalb einer Verpackung (z. B. im Falle von verpacktem Fleisch oder Gemüse), ein relativer Größenunterschied zwischen der Größe des Produkts und der Größe der Verpackung, eine Farbe des Objekts, der Verpackung und/oder der Ware, Bilder auf dem Objekt, Text auf dem Objekt, die Kassenspur und die ID des Geschäfts, in dem der Artikel gescannt wurde, die Form des Produkts, das Gewicht des Produkts, die Sorte des Produkts, insbesondere bei Obst, und die Frische des Produkts.
  • Die vom Bildprozessor 318 identifizierten Bildmerkmale können in Bildmerkmale, die aus den von der 2D-Kamera 310 erfassten 2D-Bilddaten abgeleitet sind, und in Bildmerkmale, die aus den von der 3D-Kamera 312 erfassten 3D-Bilddaten abgeleitet sind, kategorisiert werden. Der Bildprozessor 318 kann diese Bildmerkmale innerhalb der Bildscandaten an den entfernten Server 350 senden.
  • In einigen Beispielen ist der Bildprozessor 318 so konfiguriert, dass er ein oder mehrere 3D-Bildmerkmale in den erfassten 3D-Bilddaten identifiziert und ein oder mehrere 2D-Bildmerkmale in den erfassten 2D-Bilddaten identifiziert. Die 3D-Bilddaten können Punktwolkendaten sein, und die 3D-Bildmerkmale können Farbdaten für Objekte, Farbverlaufsdaten für Objekte, Formdaten für Objekte, Abmessungsdaten für Objekte, Abstandsdaten für Objekte relativ zu anderen Objekten oder relativ zum Symbolleser oder relativ zur 3D-Kamera oder andere 3D-Merkmale umfassen. Bei den 2D-Bildmerkmalen kann es sich um Formdaten für Objekte, Abmessungsdaten für Objekte, Grafiken auf Objekten, Etiketten auf Objekten, Text auf Objekten oder andere 2D-Merkmale handeln.
  • Während in einigen Beispielen die 2D- und 3D-Bildmerkmale im Bildprozessor 318 identifiziert werden, werden in anderen Beispielen die Bestimmung der 2D-Bildmerkmale und die Bestimmung der 3D-Bildmerkmale in einer Bildmerkmalverwaltung 338 mit gespeicherten 2D-Bildmerkmalen 340 und gespeicherten 3D-Bildmerkmalen 342 durchgeführt.
  • Unabhängig davon, ob die 2D-Bildmerkmale und/oder 3D-Bildmerkmale im Bildprozessor 318 oder in der Bildmerkmalverwaltung 338 bestimmt werden, ist der Leser 304 in verschiedenen Beispielen so konfiguriert, dass er die Dekodierung der in 2D-Bilddaten erfassten Zeichen 314 unter Verwendung erfasster 3D-Bilddaten verbessert. In verschiedenen Beispielen ist der Leser 304 so konfiguriert, dass es die 2D-Bilddaten und/oder die 2D-Bilddatenanalyse mit 3D-Bilddaten verbessert. In verschiedenen Beispielen ist der Leser 304 so konfiguriert, dass er 3D-Bilddaten und/oder die Analyse von 3D-Bilddaten mit 2D-Bilddaten verbessert. In verschiedenen Beispielen ist der Leser 304 so konfiguriert, dass er die Diebstahlserkennung und -verhinderung, die Gesichtserkennung, die Objekterkennung und/oder die Authentifizierungsprozesse unter Verwendung sowohl der 2D-Bilddaten als auch der 3D-Bilddaten verbessert. In verschiedenen Beispielen ist der Leser 304 so konfiguriert, dass es diese Prozesse (d.h. Diebstahlserkennung und -verhinderung, Gesichtserkennung, Objekterkennung und/oder Authentifizierung) nur unter Verwendung der vom Leser 304 erfassten 3D-Bilddaten durchführt. Um diese und andere Prozesse gemäß den hier beschriebenen Techniken durchzuführen, kann die Bildmerkmalverwaltung 338 so konfiguriert sein, dass sie die in den 8-16 beschriebenen Prozesse durchführt, die weiter unten beschrieben werden. Darüber hinaus können in einigen Beispielen einer oder mehrere dieser Prozesse auf dem entfernten Server 350 durchgeführt werden, der eine Bildmerkmalverwaltung 351 enthalten kann, der so konfiguriert ist, dass er einen oder mehrere der hier beschriebenen Prozesse, wie die in den 8-16 beschriebenen, durchführt.
  • In einem Beispiel ist der entfernte Server 350 ein Bildverarbeitungs- und Objektidentifikationsserver, der so konfiguriert ist, dass er 2D-Bilder (2D-Bilddaten) und 3D-Bilder (3D-Bilddaten) (und optional andere Bildscandaten, wie dekodierte Zeichendaten, physische Merkmale usw.) von der Scanstation 302 zu empfangen und eine Objektidentifizierung durchzuführen, wie z. B. die Objektidentifizierung und die nicht ordnungsgemäße Objekterkennung sowie andere hierin beschriebene Techniken, einschließlich zumindest einiger der unter Bezugnahme auf die 8-16 beschriebenen Verfahren.
  • Der entfernte Server 350 kann Software für Unternehmensdienste implementieren, die beispielsweise RESTful (Representational State Transfer) -API-Dienste, Warteschlangendienste für Nachrichten und Ereignisdienste umfassen, die von verschiedenen Plattformen oder Spezifikationen bereitgestellt werden können, z. B. die J2EE-Spezifikation, die von der Oracle WebLogic Server-Plattform, der JBoss-Plattform oder der IBM WebSphere-Plattform usw. implementiert wird. Andere Technologien oder Plattformen, wie Ruby on Rails, Microsoft .NET oder ähnliche, können ebenfalls verwendet werden.
  • Der entfernte Server 350 enthält eine Beispiel-Logikschaltung in Form einer Verarbeitungsplattform 352, die beispielsweise in der Lage ist, Operationen der hier beschriebenen Beispielverfahren zu implementieren. Die Verarbeitungsplattform 352 umfasst einen Prozessor 354, wie z. B. einen oder mehrere Mikroprozessoren, Steuerungen und/oder jeden geeigneten Prozessortyp. Die Beispiel-Verarbeitungsplattform 352 enthält einen Speicher (z. B. flüchtiger Speicher, nichtflüchtiger Speicher) 356, auf den der Prozessor 354 zugreifen kann (z. B. über eine Speichersteuerung). Der Beispielprozessor 354 interagiert mit dem Speicher 356, um beispielsweise maschinenlesbare Anweisungen zu erhalten, die in dem Speicher 356 gespeichert sind und beispielsweise den in den Flussdiagrammen dieser Offenbarung dargestellten Operationen entsprechen. Zusätzlich oder alternativ können maschinenlesbare Anweisungen, die den hier beschriebenen Beispielvorgängen entsprechen, auf einem oder mehreren Wechselmedien (z. B. einer Compact Disc, einer Digital Versatile Disc, einem austauschbaren Flash-Speicher usw.) gespeichert sein, die mit der Verarbeitungsplattform 352 verbunden werden können, um Zugriff auf die darauf gespeicherten maschinenlesbaren Anweisungen zu ermöglichen.
  • Die beispielhafte Verarbeitungsplattform 352 umfasst auch eine Netzwerkschnittstelle 358, um die Kommunikation mit anderen Maschinen, z. B. über ein oder mehrere Netzwerke, einschließlich der Scanstation 302, zu ermöglichen. Die beispielhafte Netzwerkschnittstelle 358 umfasst jede geeignete Art von Kommunikationsschnittstelle(n) (z. B. drahtgebundene und/oder drahtlose Schnittstellen), die so konfiguriert ist, dass sie gemäß jedem geeigneten Protokoll arbeitet, ebenso wie die Netzwerkschnittstelle 326. Die beispielhafte Verarbeitungsplattform 352 umfasst auch Eingabe-/Ausgabeschnittstellen (E/A-Schnittstellen) 360, um den Empfang von Benutzereingaben und die Übermittlung von Ausgabedaten an den Benutzer in ähnlicher Weise wie bei der E/A-Schnittstelle 332 zu ermöglichen.
  • In einigen Beispielen kann der entfernte Server 350 ein Klassifizierungsserver sein oder einen solchen enthalten. So enthält der entfernte Server 350 im dargestellten Beispiel ein neuronales Netzwerk-Rahmenwerk 362, das so konfiguriert ist, dass es ein trainiertes neuronales Netzwerk 364 entwickelt und dieses trainierte neuronale Netzwerk verwendet, um vom Symbolleser 304 erfasste 2D- und 3D-Bilder zu empfangen, Objekte in den empfangenen Bildern zu identifizieren und diese Objekte zu klassifizieren. Das neuronale Netzwerk-Rahmenwerk 362 kann zum Beispiel als faltendes neuronales Netzwerk konfiguriert sein, das einen mehrschichtigen Klassifikator verwendet, um identifizierte Bildmerkmale zu bewerten und Klassifikatoren für das trainierte neuronale Netzwerk 364 zu erzeugen.
  • Das trainierte neuronale Netzwerk 364 kann so trainiert werden, dass es Objekte in empfangenen 2D- und/oder 3D-Bilddaten nach Objekttyp, Scanoberfläche des Objekts, ob es sich bei dem Objekt um einen Bildschirm handelt, wie z. B. ein Display eines mobilen Geräts, Reflexionsvermögen des Objekts und/oder Art des Zeichens auf dem Objekt klassifiziert. Beispielsweise kann das trainierte neuronale Netzwerk 364 mit 2D-Bildern, mit 3D-Bilddaten verbesserten 2D-Bilddaten, 3D-Bilddaten, und/oder mit 2D-Bilddaten verbesserten 3D-Bilddaten trainiert werden.
  • Auf diese Weise, durch das Rahmenwerk 362 und das trainierte neuronale Netzwerk 364, setzen die vorliegenden Techniken in verschiedenen Beispielen ein oder mehrere trainierte Vorhersagemodelle ein, um empfangene 2D- und/oder 3D-Bilder eines Objekts (mit oder ohne Zeichen) zu bewerten und diese Bilder zu klassifizieren, um eine Objekt- und Objektklassifizierung zu bestimmen, um kontextbezogene Konfigurationseinstellungen zu identifizieren, die beim Betrieb der Scanstation 302 oder anderer Bildgebungsvorrichtungen verwendet werden.
  • Ausgehend von den ermittelten Klassifizierungen verwenden die vorliegenden Verfahren in verschiedenen Beispielen die Klassifizierung eines Objekts, um Anpassungen für die Konfigurationseinstellungen des Bildgebungsscanners zu bestimmen. Das heißt, ein Vorhersagemodell wird mit Hilfe des neuronalen Netzwerks k362 trainiert, und als solches wird dieses Vorhersagemodell hier als „neuronales Netzwerk“ oder „trainiertes neuronales Netzwerk“ bezeichnet. Das neuronale Netzwerk kann auf verschiedene Weise konfiguriert werden. In einigen Beispielen kann es sich bei dem neuronalen Netzwerk um ein tiefenneuronales Netzwerk und/oder ein faltendes neuronales Netzwerk (CNN) handeln. In einigen Beispielen kann das neuronale Netzwerk ein verteiltes und skalierbares neuronales Netzwerk sein. Das neuronale Netzwerk kann auf verschiedene Weise angepasst werden, einschließlich der Bereitstellung einer spezifischen obersten Schicht, wie z. B. einer logistischen Regressionsschicht, ohne darauf beschränkt zu sein. Ein faltendes neuronales Netzwerk kann als ein neuronales Netzwerk betrachtet werden, das Sätze von Knoten mit verbundenen Parametern enthält. Ein tiefenneuronales faltendes Netzwerk kann als eine gestapelte Struktur mit einer Vielzahl von Schichten betrachtet werden. In den vorliegenden Beispielen wird das neuronale Netzwerk mit mehreren Schichten beschrieben, d. h. mit mehreren gestapelten Schichten, es kann jedoch jede geeignete Konfiguration eines neuronalen Netzwerks verwendet werden.
  • CNNs sind zum Beispiel ein maschinelles Lernmodell, das insbesondere für die Bilderkennung und -klassifizierung verwendet wird. In den beispielhaften Ausführungsformen hierin können CNNs beispielsweise auf 2D- oder 3D-Bildern arbeiten, wobei solche Bilder beispielsweise als eine Matrix von Pixelwerten innerhalb der Bildscandaten dargestellt werden. Wie beschrieben, kann das neuronale Netzwerk (z. B. die CNNs) verwendet werden, um eine oder mehrere Klassifizierungen für ein gegebenes Bild zu bestimmen, indem das Bild durch eine Reihe von Rechenschichten geleitet wird. Durch Training und Nutzung dieser verschiedenen Schichten kann das CNN-Modell eine Wahrscheinlichkeit bestimmen, dass ein Bild (oder ein oder mehrere Objekte innerhalb eines Bildes) oder physische Bildmerkmale zu einer bestimmten Klasse gehören. Trainierte CNN-Modelle können zur Wiederherstellung und Verwendung aufbewahrt und durch weiteres Training verfeinert werden. Die trainierten Modelle können auf einem beliebigen flüchtigen oder nichtflüchtigen Speichermedium wie RAM, Flash-Speicher, Festplatte oder einem ähnlichen, auf Cloud-Servern gehosteten Speicher abgelegt werden.
  • In 8 ist ein Flussdiagramm eines Beispielprozesses 400 für das Lesen von Symbolen unter Verwendung von erfassten 2D-Bildern und erfassten 3D-Bildern dargestellt, wie er von der Scanstation 302 von 7 und einem der Bildgebungssysteme 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 bzw. 6 durchgeführt werden kann. In einem Block 402 erfasst ein Symbolleser eines Bildgebungssystems ein oder mehrere 2D-Bilder durch eine 2D-Bildgebungsvorrichtung des Symbollesers. Insbesondere werden 2D-Bilder über eine erste Umgebung innerhalb eines FOV erfasst, wobei diese erste Umgebung von einem sich horizontal erstreckenden FOV eines oberen Abschnitt eines bi-optischen Lesers, von einem sich vertikal erstreckenden FOV eines unteren Abschnitt eines bi-optischen Lesers, von einem FOV eines handgehaltenen Symbollesers oder einem anderen Beispiel stammen kann. In Block 404 nimmt eine 3D-Bildgebungsvorrichtung des Symbollesers ein oder mehrere 3D-Bilder einer anderen Umgebung eines zweiten FOV auf, das mit der 3D-Bildgebungsvorrichtung korrespondiert. Das FOV der 3D-Bildgebungsvorrichtung kann von einem oberen oder unteren Abschnitt des bi-optischen Lesers oder von einer extern positionierten 3D-Bildgebungsvorrichtung, die einem Symbolleser zugeordnet ist, erfolgen, beispielsweise von einem FOV, das sich von oben nach unten erstreckt, oder von einer Seitenansicht, die auf den Symbolleser zeigt. Das FOV kann das einer 3D-Bildgebungsvorrichtung in einem handgehaltenen Symbolleser sein. In jedem Fall haben in einigen Beispielen die 2D-Bildgebungsvorrichtung und die 3D-Bildgebungsvorrichtung unterschiedliche FOVs, die sich teilweise überschneiden. In einigen Beispielen sind die FOVs der 2D-Bildgebungsvorrichtung und der 3D-Bildgebungsvorrichtung identisch.
  • In einigen Beispielen können mehrere 2D-Bildgebungsvorrichtungen/-baugruppen zur Erfassung von 2D-Bildern verwendet werden, wie z. B. 2D-Bildgebungsvorrichtungen in jedem oberen und unteren Abschnitt eines Symbollesers.
  • In einem Block 406 analysiert das Bildgebungssystem 3D-Bilddaten und identifiziert 3D-Bildmerkmale innerhalb der Umgebung, die im FOV der 3D-Bildgebungsvorrichtung erfasst wurden. Bei den 3D-Bilddaten kann es sich beispielsweise um 3D-Punktwolkendaten handeln, und bei den 3D-Bildmerkmalen kann es sich um ein oder mehrere geometrische Merkmale eines im FOV dargestellten Objekts und/oder um eine Farbe oder eine Farbabstufung handeln, die einem Objekt im FOV entspricht. In einigen Beispielen umfasst das Identifizieren von 3D-Bildmerkmalen das Identifizieren des einen oder der mehreren 3D-Bildmerkmale, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung positioniert sind. Im Bildgebungssystem 140 von 4A kann die 3D-Bildgebungsvorrichtung 144 beispielsweise so konfiguriert sein, dass sie ein oder mehrere Objekte erkennt, die in einem 3D-Bild des FOV 150 erfasst wurden, den Abstand des einen oder der mehreren Objekte bestimmt und feststellt, ob sich relevante Objekte jenseits eines bestimmten maximalen Abstands, wie der Abstandsebene 156, befinden. Im Beispiel eines bi-optischen Strichcodelesers mit einem Produktscanbereich kann sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Grenze des Produktscanbereichs, z. B. der Abstandsebene 156, erstrecken. In einigen Beispielen umfassen die 3D-Bildmerkmale mindestens eines von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) ein Objekt, das von der Hand des Bedieners gegriffen wird.
  • Im Beispiel eines stationären Strichcodelesers, der so konfiguriert ist, dass er innerhalb eines Arbeitsplatzes positioniert und vom Bediener bedient werden kann, wie z. B. ein handgehaltener Strichcodeleser wie der in 6, kann sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand des Arbeitsplatzes in der Nähe des Bedieners erstrecken.
  • In einem Block 408, nachdem die 3D-Bilddaten analysiert und 3D-Bildmerkmale identifiziert wurden, verbessert das Bildgebungssystem die 2D-Bilddaten, indem es die identifizierten 3D-Bildmerkmale mit 2D-Bildmerkmalen korreliert, die aus 2D-Bilddaten der 2D-Bilder identifiziert wurden, die in der Umgebung des FOV der 2D-Bildgebungsvorrichtung erfasst wurden. Die Verbesserung der 2D-Bilddaten kann beispielsweise das Filtern eines oder mehrerer 2D-Bildmerkmale umfassen, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die dem mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind. In einigen Beispielen umfasst das Verbessern der 2D-Bilddaten außerdem das Filtern des einen oder der mehreren 2D-Bildmerkmale, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die dem mindestens einen oder den mehreren 2D-Bildmerkmalen zugeordnet sind. Auf diese Weise können 3D-Bildmerkmale verwendet werden, um die Verarbeitung von 2D-Bildern zu verbessern, indem die Verarbeitung von 2D-Bildmerkmalen entfernt wird, die für die Verarbeitung nicht wertvoll sind und/oder 2D-Bildmerkmale identifiziert werden, die für die Verarbeitung wertvoll sind.
  • Zur Veranschaulichung eines Beispiels zeigt 9A ein 2D-Bild einer ersten Umgebung eines FOV, das von einer 2D-Bildgebungsbaugruppe eines Bildgebungssystems erfasst wurde, in diesem Beispiel vom oberen Abschnitt des Bildgebungssystems. Das 2D-Bild enthält einen Strichcode 450, der einem Ziel 452 zugeordnet ist. Das 2D-Bild enthält mehr als das Ziel 452 und den Strichcode 450. Das 2D-Bild enthält einen Mitarbeiter 454 und Hintergrundobjekte (z. B. einen Stuhl 456 und eine Person 458).
  • Um die Analyse des 2D-Bildes im Beispiel von 9A zu verbessern, verwendet der Block 406 3D-Bilddaten eines 3D-Bildes, das über ein FOV für eine 3D-Bildgebungsvorrichtung erfasst wurde. Zum Beispiel können 3D-Bildmerkmale, die mit den Objekten 452-458 korrespondieren, bestimmt werden, wie z. B. der Abstand jedes der Objekte von einem Symbolleser. Das FOV des 3D-Bildes kann von einem oberen oder unteren Abschnitt eines bi-optischen Lesers oder von einer externen, zugehörigen Position, z. B. von oben, aus erfolgen. Im Block 406 kann zum Beispiel der Abstand zwischen dem Ziel 452, dem Angestellten 454, dem Stuhl 456 und der Person 458 bestimmt werden. Ferner kann im Block 406 bestimmt werden, welche der Objekte sich innerhalb eines zulässigen Scanabstands für ein Symbolleser befinden und welche nicht, so dass letztere entfernt werden können. Zur Veranschaulichung zeigt 9B einen Beispielausschnitt eines 3D-Bildes, in dem der Stuhl 456 und die Person 458 als außerhalb eines zulässigen Scanabstands liegend identifiziert werden, was die 3D-Bildgebungsvorrichtung aus 3D-Punktwolkendaten und der Bestimmung von 3D-Bildmerkmalen einschließlich geometrischer Figuren, die die Form des Objekts und den Abstand des Objekts identifizieren, ermitteln kann. In einigen Beispielen kann es sich bei den 3D-Bildmerkmalen um Farben oder Farbabstufungen handeln, die zur Identifizierung verschiedener Objekte im 3D-Bild verwendet werden. In einigen Beispielen umfassen die 3D-Bildmerkmale mindestens einen Teil einer Hand eines Bedieners und ein Objekt, das von der Hand des Bedieners gegriffen wird. In einigen Beispielen können die identifizierten 3D-Bildmerkmale an ein trainiertes neuronales Netzwerk mit einem oder mehreren trainierten Objekterkennungsmodellen zur Objektidentifikation gesendet werden. Die Objekterkennungsmodelle können so trainiert werden, dass sie verschiedene Objekte innerhalb oder außerhalb des zulässigen Scanabstands erkennen.
  • Mit den aus den 3D-Bildmerkmalen ermittelten Abstandsdaten kann das 2D-Bild von 9A im Block 408 in ein verbessertes 2D-Bild wie in 9C umgewandelt werden, indem beispielsweise aus den 2D-Bildern Objekte entfernt werden, deren Abstände außerhalb eines zulässigen Scanabstands liegen, der hier auch als ein vorbestimmter Abstandsbereich eines Produktscanbereichs bezeichnet wird. Ein vorbestimmter Abstandsbereich von der 3D-Bildgebungsvorrichtung kann sich beispielsweise von der 3D-Bildgebungsvorrichtung zu einer distalen Begrenzung des Produktscanbereichs oder zu einem Rand einer Arbeitsstation in der Nähe des Bedieners oder zu einem Diffusor einer Abseitsplatten-Erkennungsbaugruppe erstrecken.
  • Bei dem verbesserten 2D-Bild in 9C wurden beispielsweise der Stuhl 456 und die Person 458 entfernt. In einigen Beispielen vergleicht der Block 408 identifizierte 2D-Bildmerkmale, die aus 2D-Bildern ermittelt wurden, und identifizierte 3D-Bildmerkmale, die aus 3D-Bildern ermittelt wurden, um Objekte für die Analyse zu identifizieren.
  • Der Block 408 kann 2D-Bilddaten so verbessern, dass bestimmte Bilddaten (z. B. ein oder mehrere Objekte) von der weiteren Verarbeitung in Block 410 ausgeschlossen werden oder dass die Bildverarbeitung auf bestimmte Bilddaten beschränkt wird.
  • Die Erzeugung verbesserter 2D-Bilddaten kann verschiedene Verarbeitungsvorteile mit sich bringen, darunter, wie in Block 410 gezeigt, die Dekodierung von in den verbesserten 2D-Bilddaten erfassten Strichcodes (z. B. eine schnellere und genauere Dekodierung des Strichcodes 450), das Trainieren von Objekterkennungsmodellen wie dem trainierten neuronalen Netzwerk 364 unter Verwendung der verbesserten 2D-Bilddaten, die Durchführung einer Objekterkennung unter Verwendung der verbesserten 2D-Bilddaten, die Identifizierung einer von einem Bediener durchgeführten Aktion unter Verwendung der verbesserten 2D-Bilddaten oder die Änderung eines oder mehrerer Parameter im Zusammenhang mit dem Betrieb des Strichcodelesers.
  • Zum Beispiel kann im Block 410 die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert werden. Mit den verbesserten 2D-Bilddaten kann der Block 410 als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, eine Warnung erzeugen, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren. Wenn die 2D-Bildgebungsvorrichtung im Beispiel von 9A feststellt, dass das Ziel 452 in den 2D-Bilddaten vorhanden ist und sich innerhalb eines zulässigen Scanabstands (z. B. eines Produkt-Scanbereichs) befindet, wie anhand von 3D-Bildmerkmalen bestimmt, dass aber der Strichcode 450 nicht vorhanden, teilweise verdeckt oder nicht sichtbar oder vollständig verdeckt oder nicht sichtbar und somit nicht vollständig dekodierbar ist, kann der Block 410 einen Bediener als jemanden identifizieren, der versucht, einen Produkt-Scan durchzuführen, und der Block 410 kann ein Warnsignal oder einen anderen Hinweis erzeugen, der geeignet ist, ein potenzielles Diebstahlsereignis zu signalisieren.
  • In einigen Beispielen kann der Block 410 als Reaktion auf die Analyse der 2D-Bilddaten unter Verwendung der 3D-Bildmerkmale einen oder mehrere Parameter einstellen, die dem Betrieb des Symbollesers zugeordnet sind. Zu den Beispielmerkmalen gehören eine Belichtungszeit des Symbollesers, eine Beleuchtungspulsdauer des Symbollesers, eine Fokusposition des Symbollesers, eine Bildvergrößerungsstufe des Symbollesers und eine Beleuchtungsquelle des Symbollesers. Wenn beispielsweise die Position des Ziels 452 nicht anhand von 2D-Bilddaten ermittelt werden kann, kann der Abstand anhand von 3D-Bildmerkmalen bestimmt werden. Abhängig von diesem Abstand kann der Block 410 von einer direkten Beleuchtungsquelle, die für das Lesen von Strichcodes verwendet wird, auf eine diffuse Beleuchtungsquelle umschalten, die für das Lesen von Symbolen der direkten Teilemarkierung (DPM - Direct Part Marking) verwendet wird. In einigen Beispielen kann der Block 410 die Helligkeit einer Beleuchtungsbaugruppe einstellen, bevor weitere 2D-Bilder erfasst werden. Wenn sich beispielsweise Ziele in der Nähe der 3D-Bilderfassungsbaugruppe befinden, kann eine geringere Beleuchtungshelligkeit verwendet werden. Oder wenn Objekte, wie z. B. Gesichtsdaten, in 3D-Bildern identifiziert werden, kann die Beleuchtungshelligkeit reduziert oder die Beleuchtungseinheit ausgeschaltet werden.
  • Ein oder mehrere Aspekte des Verarbeitungsvorgangs von Block 410 können z. B. an der Scanstation 302 oder am Server 350 durchgeführt werden.
  • In 10 ist ein Flussdiagramm eines Beispielprozesses 500 für das Lesen von Symbolen unter Verwendung von erfassten 2D-Bildern und erfassten 3D-Bildern dargestellt, wie er von der Scanstation 302 von 7 und einem der Bildgebungssysteme 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 bzw. 6 durchgeführt werden kann. In einem Block 502, ähnlich wie in Block 402, erfasst ein Symbolleser eines Bildgebungssystems ein oder mehrere 2D-Bilder durch eine 2D-Bildgebungsvorrichtung des Symbollesers. Insbesondere werden 2D-Bilder über eine erste Umgebung innerhalb eines FOV erfasst. In einem Block 504, der dem Block 404 ähnelt, erfasst eine dem Symbolleser zugeordnete 3D-Bildgebungsvorrichtung ein oder mehrere 3D-Bilder einer anderen Umgebung eines zweiten FOV, das mit der 3D-Bildgebungsvorrichtung korrespondiert.
  • In Block 506 analysiert das Bildgebungssystem 2D-Bilddaten und identifiziert 2D-Bildmerkmale in der Umgebung, die im Sichtfeld der 3D-Bildgebungsvorrichtung erfasst wurden. Bei den 2D-Bilddaten kann es sich zum Beispiel um monochrome Bilddaten, Graustufenbilddaten und polychrome Bilddaten handeln. Bei den 2D-Bildmerkmalen kann es sich um einen Strichcode und ein oder mehrere geometrische Merkmale eines Objekts handeln, das sich im FOV der 2D-Bildgebungsvorrichtung befindet. In einigen Beispielen umfassen die 2D-Bildmerkmale mindestens eines von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem Objekt, das von der Hand des Bedieners gegriffen wird, wie z. B. im Beispiel von 9A der Bediener 454 und eine Hand des Bedieners, die das Ziel 452 hält. In einigen Beispielen umfasst die Identifizierung von 2D-Bildmerkmalen die Identifizierung von Umgebungsmerkmalen auf dem 2D-Bild, wobei diese Umgebungsmerkmale Merkmale im Bild sind, die sich außerhalb eines Objekts befinden, das im ersten FOV dargestellt ist, wie im Beispiel von 9A der Stuhl 456 und die Person 458. Der Block 506 kann diese Umgebungsmerkmale in Maskierungsmerkmale umwandeln, die so konfiguriert sind, dass sie die identifizierten Umgebungsmerkmale in dem 2D-Bild abdecken, und diese Maskierungsmerkmale dann als ein oder mehrere 2D-Bildmerkmale identifizieren. In einigen Beispielen identifiziert der Block 506 2D-Bildmerkmale, indem er einen Strichcode für das Objekt in den 2D-Bilddaten identifiziert und den Strichcode dekodiert, um Strichcode-Nutzdaten zu erzeugen. Von dort aus kann der Block 506 die Objektidentifikation aus den Strichcode-Nutzdaten bestimmen und aus der Objektidentifikation ein oder mehrere 2D-Bildmerkmale, wie die Form und/oder die Abmessungen des Objekts, bestimmen.
  • In Block 508, nachdem die 2D-Bilddaten analysiert und 3D-Bildmerkmale identifiziert wurden, verbessert das Bildgebungssystem die 3D-Bilddaten, indem es die identifizierten 2D-Bildmerkmale mit 3D-Bildmerkmalen korreliert, die aus 3D-Bilddaten des/der 3D-Bildes/3D-Bilder identifiziert wurden, die in der Umgebung des FOV der 3D-Bildgebungsvorrichtung erfasst wurden. Das Verbessern der 3D-Bilddaten kann zum Beispiel das Abbilden einer Position des Strichcodes von den 2D-Bilddaten auf die 3D-Bilddaten beinhalten. In einem anderen Beispiel kann das Verbessern der 3D-Bilddaten das Abbilden von mindestens einem Teil der polychromen Bilddaten auf die 3D-Bilddaten beinhalten, die zumindest teilweise auf einem oder mehreren geometrischen Merkmalen des Objekts basieren, das innerhalb des FOV der 2D-Bildgebungsvorrichtung dargestellt wird. In einigen Beispielen kann das Verbessern der 3D-Bilddaten das Filtern eines oder mehrerer 3D-Bildmerkmale beinhalten, so dass die Verarbeitung der verbesserten 3D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die dem mindestens einen oder den mehreren 3D-Bildmerkmalen zugeordnet sind. In einigen Beispielen kann das Verbessern der 3D-Bilddaten das Filtern von einem oder mehreren 3D-Bildmerkmalen beinhalten, so dass die Verarbeitung der verbesserten 3D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die dem mindestens einen oder den mehreren 3D-Bildmerkmalen zugeordnet sind. So können beispielsweise Form- und Abmessungsdaten aus einem dekodierten Strichcode in den 2D-Bilddaten bestimmt und zur Identifizierung eines Objekts in den 3D-Bilddaten verwendet werden, das dieser Form und Abmessung entspricht. In einigen Beispielen umfasst das Verbessern der 3D-Bilddaten das Filtern der 3D-Bilddaten auf der Grundlage eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung. Bei einigen handgehaltenen Strichcodelesern erstreckt sich der vorgegebene Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer Kante des Arbeitsplatzes in der Nähe des Bedieners. Bei einigen bi-optischen Lesern erstreckt sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs. Auf diese Weise können 2D-Bildmerkmale verwendet werden, um die Verarbeitung von 3D-Bildern zu verbessern, indem die Verarbeitung von 3D-Bildmerkmalen entfernt wird, die für die Verarbeitung nicht wertvoll sind, und/oder 3D-Bildmerkmale identifiziert werden, die für die Verarbeitung wertvoll sind.
  • 11A zeigt ein beispielhaftes 3D-Bild, in dem ein Ziel 550 in einem zulässigen Scanabstand und ein Bediener 552, der das Ziel 550 in seiner Hand 554 hält, identifiziert werden. Ein Stuhl 556 und eine Person 558 sind ebenfalls auf dem 3D-Bild zu erkennen. 11B zeigt eine Filtermaske, die aus den 2D-Bildmerkmalen entwickelt wurde, die dem Stuhl 556 und der Person 558 entsprechen. 11C zeigt verbesserte 3D-Bilddaten, bei denen die 2D-Bildmerkmale von 11B als Umgebungsmerkmale bestimmt wurden, die in Maskierungsmerkmale umgewandelt wurden, und die entsprechenden 3D-Bilddaten, die diesen Merkmalen entsprechen, wurden entfernt, um das verbesserte 3D-Bild von 11C zu erzeugen.
  • Als Ergebnis können verschiedene Verarbeitungen von Vorteil sein, einschließlich, wie in Block 510 gezeigt, das Trainieren von Objekterkennungsmodellen, wie die des trainierten neuronalen Netzwerks 364, unter Verwendung von verbesserten 3D-Bilddaten, das Durchführen einer Objekterkennung unter Verwendung von verbesserten 3D-Bilddaten, das Identifizieren einer von einem Bediener durchgeführten Aktion oder das Einstellen von mindestens einem Parameter, der der 3D-Bildgebungsvorrichtung zugeordnet ist. Beispielsweise kann der Block 510 die verbesserten 3D-Bilddaten analysieren und die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifizieren. Als Reaktion darauf, dass in den 2D-Bilddaten kein Strichcode erkannt wurde, kann der Prozess 510 eine Warnung erzeugen, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren. Ein oder mehrere Aspekte des Verarbeitungsvorgangs von Block 510 können zum Beispiel an der Scanstation 302 oder am Server 350 durchgeführt werden.
  • In einigen Beispielen kann der Block 510 die verbesserten 3D-Bilddaten bereitstellen, um ein Objekterkennungsmodell eines neuronalen Netzwerks zu trainieren. Zum Beispiel kann der Block 506 einen Strichcode in 2D-Bilddaten identifizieren und einen Zeitrahmen für ein Strichcode-Erkennungsereignis bestimmen. Der Block 508 kann verbesserte 3D-Bilder als ein 3D-Bild erzeugen, das entsprechend diesem Zeitrahmen für ein Strichcode-Erkennungsereignis erfasst wurde, und der Block 510 kann dieses 3D-Bild zum Trainieren eines Objekterkennungsmodells bereitstellen. In diesem Beispiel werden zum Trainieren eines Objekterkennungsmodells nur 3D-Bilddaten verwendet, die einem Symbol-Dekodierungsereignis entsprechen. Darüber hinaus kann das 3D-Bild, das zum Trainieren des Objekterkennungsmodells verwendet wird, weiter verbessert werden, indem Objekte entfernt werden, um ein verbessertes 3D-Bild zu erzeugen (z. B. 11C), das zum Trainieren verwendet wird.
  • In einigen Beispielen stellt der Block 510 außerdem einen oder mehrere Betriebsparameter des Symbollesers ein, z. B. einen oder mehrere Betriebsparameter der 3D-Bildgebungsvorrichtung, wie die projizierte Beleuchtungsstärke der 3D-Bildgebungsvorrichtung, die projizierte Beleuchtungsrichtung der 3D-Bildgebungsvorrichtung und die Beleuchtungsquelle für die 3D-Bildgebungsvorrichtung.
  • Ein oder mehrere Aspekte des Verarbeitungsvorgangs von Block 510 können z. B. an der Scanstation 302 oder am Server 350 durchgeführt werden.
  • In 12 ist ein Flussdiagramm eines Beispielprozesses 600 für das Lesen von Symbolen unter Verwendung von erfassten 2D-Bildern und erfassten 3D-Bildern dargestellt, wie er von der Scanstation 302 von 7 und einem der Bildgebungssysteme 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 bzw. 6 durchgeführt werden kann. In einem Block 602, ähnlich wie in Block 402, erfasst ein Symbolleser eines Bildgebungssystems ein oder mehrere 2D-Bilder durch eine 2D-Bildgebungsvorrichtung des Symbollesers. Insbesondere werden 2D-Bilder über eine erste Umgebung innerhalb eines FOV erfasst. In einem Block 604, der dem Block 404 ähnelt, nimmt eine 3D-Bildgebungsvorrichtung des Symbollesers ein oder mehrere 3D-Bilder einer anderen Umgebung eines zweiten FOV auf, das mit der 3D-Bildgebungsvorrichtung korrespondiert.
  • In einem Block 606 bestimmt das Bildgebungssystem erste Objektidentifikationsdaten unter Verwendung der erfassten 2D-Bilddaten und zweite Objektidentifikationsdaten unter Verwendung der erfassten 3D-Bilddaten. In einigen Beispielen werden sowohl die ersten Objektidentifikationsdaten als auch die zweiten Objektidentifikationsdaten an einer Scanstation ermittelt, z. B. am Symbolleser 304. In einigen Beispielen werden eine oder beide dieser Objektidentifikationsdaten auf einem entfernten Server, z. B. dem Server 350, ermittelt. Beispielsweise können die ersten Objektidentifizierungsdaten an einem Symbolleser ermittelt werden, und die zweiten Objektidentifikationsdaten können unter Verwendung eines trainierten neuronalen Netzwerks ermittelt werden, das an diesem Symbol gespeichert ist oder ferngesteuert auf dem Server 350 gespeichert ist.
  • Im dargestellten Beispiel vergleicht das Bildgebungssystem in Block 608 die erste Objektidentifikation mit der zweiten Objektidentifikation und stellt fest, dass ein ordnungsgemäßes Scannen des Objekts stattgefunden hat, wenn es eine Übereinstimmung gibt, oder stellt fest, dass ein nicht ordnungsgemäßes Scannen stattgefunden hat, wenn es keine Übereinstimmung gibt. In einigen Beispielen kann der Block 608 als Reaktion auf die Feststellung des ordnungsgemäßen Scannens des Objekts ferner beinhalten, dass das Bildgebungssystem (z. B. ein Verkaufspunkt (POS), ein Symbolleser und/oder ein entfernter Server) ein Transaktionsprotokoll verarbeitet, um die dem Objekt zugeordneten Daten zu erfassen. In einigen Beispielen kann das Bildgebungssystem als Reaktion auf die Feststellung des nicht ordnungsgemäßen Scannens des Objekts eine Warnung erzeugen, die geeignet ist, ein potenzielles Diebstahlsereignis zu signalisieren, und/oder ein Transaktionsprotokoll so verarbeiten, dass die dem Objekt zugeordneten Daten nicht enthalten sind.
  • Der Block 606 kann auf verschiedene Weise implementiert werden. In einem Beispiel umfasst das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten und das Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen, und das Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten. In einem Beispiel umfasst das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell, wie das trainierte neuronale Netzwerk 364, und das Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells. In einem Beispiel umfasst die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten die Bereitstellung der 3D-Bilddaten an ein trainiertes Objekterkennungsmodell und die Erzeugung der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  • In einem anderen Beispiel des Blocks 606 vergleicht das Bildgebungssystem vor der Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten die 3D-Bilddaten mit den 2D-Bilddaten und entfernt Umgebungsmerkmale außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten. In einem anderen Beispiel vergleicht das Bildgebungssystem vor der Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten die 3D-Bilddaten mit den 2D-Bilddaten und entfernt Umgebungsmerkmale außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
  • In einem weiteren Beispiel des Blocks 606 beinhaltet die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten die Bestimmung eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten und daraus die Bestimmung der zweiten Objektidentifikation aus dem einen oder den mehreren Farbmerkmalen. Diese Farbmerkmale können die Farbe und/oder den Farbgradienten eines Objekts umfassen. Eine solche Funktionalität kann verwendet werden, um verschiedene Produkte zu identifizieren, zum Beispiel durch Untersuchung der Farbe und/oder des Farbgradienten der erfassten 3D-Bilddaten dieses Produkts.
  • In einem weiteren Beispiel des Blocks 606 beinhaltet die Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten die Bestimmung eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten und die Bestimmung der zweiten Objektidentifikation aus dem einen oder den mehreren geometrischen Merkmalen.
  • In einem anderen Beispiel umfasst das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten und das Dekodieren des Strichcodes, um Strichcode-Nutzdaten zu erzeugen, und das Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten. Wenn die 3D-Bilddaten eine Punktwolke mit einer Vielzahl von Datenpunkten enthalten, kann jeder Datenpunkt mit einem Abstandswert, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, aus einem oder mehreren geometrischen Merkmalen des Objekts bestimmt werden. Zum Beispiel kann der Block 606 bestimmen, dass ein oder mehrere geometrische Merkmale des Objekts aus den 3D-Bilddaten auf einer ersten Teilmenge der 3D-Bilddaten und nicht auf einer zweiten Teilmenge der 3D-Bilddaten basieren. Die erste Teilmenge der 3D-Bilddaten kann einer ersten Teilmenge der Datenpunkte zugeordnet sein, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorgegebenen Bereichs liegt, und die zweite Teilmenge der 3D-Bilddaten kann einer zweiten Teilmenge der Datenpunkte zugeordnet sein, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorgegebenen Bereichs liegt.
  • Auf diese Weise können in einigen Beispielen 3D-Bildmerkmale zusammen mit 2D-Bildmerkmalen verwendet werden, um ein Objekt zu identifizieren, das gescannt werden soll, und um festzustellen, ob der Versuch, das Objekt zu scannen, innerhalb eines zulässigen Scanabstands liegt. Im Beispiel von 9A kann der Strichcode 450 (als erste Objektidentifikationsdaten) in einem 2D-Bild identifiziert werden, und die Position des Ziels 452, das dem Strichcode 450 zugeordnet ist, kann aus 3D-Bilddaten identifiziert werden, zusammen mit dem Abstand zwischen dem Ziel 452 und dem Symbolleser (als zweite Objektidentifikationsdaten). Wenn dieser Abstand kürzer als ein zulässiger Scanabstand ist, z. B. kürzer als der Abstand der Ebene 152 im Beispiel von 4A oder länger als die Abstandsebene 156 (der Bereich des FOV zwischen den Ebenen 152 und 156, der in diesem Beispiel einen zulässigen Scanabstand definiert), dann kann der Block 608, der die ersten und zweiten Objektidentifikationsdaten vergleicht, feststellen, dass ein unzulässiger Scanversuch unternommen wurde, und dadurch die Dekodierung des Strichcodes 450 blockieren und/oder die Aufnahme des Ziels 452 und des Strichcodes 450 in ein der Scanstation zugeordnetes Transaktionsprotokoll blockieren.
  • In einem anderen Beispiel kann der Block 604 ein scanbares Objekt anhand der 3D-Bilddaten identifizieren, und wenn der Block 606 eine Objektidentifikation des Objekts anhand der 2D-Bilddaten nicht feststellen kann, kann der Block 608 ein nicht ordnungsgemäßes Scannen des Objekts feststellen und ein Warnsignal erzeugen. Beispielsweise kann im Block 602 ein 2D-Bild erfasst werden, aber in diesem 2D-Bild ist möglicherweise kein Strichcode oder nur ein Teil des Strichcodes sichtbar, z. B. wenn ein Bediener den Strichcode ganz oder teilweise verdeckt. Nach der Erkennung des Vorhandenseins eines Objekts, das über einen zulässigen Scanabstand im FOV der 3D-Bildgebungsvorrichtung gescannt wird, wie in Block 604 bestimmt, versucht der Block 606, das gescannte Objekt in den 2D-Bilddaten und in den 3D-Bilddaten zu identifizieren, d. h. durch Bestimmung einer ersten bzw. zweiten Objektidentifikation. Bei der zweiten Objektidentifikation kann es sich um die physische Form, den Abstand oder die Produktklassifikation (z. B. anhand eines trainierten Objekterkennungsmodells) handeln. Wenn jedoch keine erste Objektidentifikation ermittelt werden kann (z. B. wenn kein Strichcode ordnungsgemäß aus dem 2D-Bild dekodiert werden kann), stellt der Block 608 ein nicht ordnungsgemäßes Scannen fest und erzeugt ein Warnsignal.
  • 13 ist ein Flussdiagramm eines Beispielprozesses 700 für das Lesen von Symbolen unter Verwendung von erfassten 3D-Bildern, wie er von der Scanstation 302 von 7 und einem der Bildgebungssysteme 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 bzw. 6 durchgeführt werden kann. Beispielsweise kann das Verfahren 700 von einem Symbolleser mit einer 3D-Bildgebungsvorchtung mit oder ohne zusätzliche 2D-Bildgebungsvorrichtung durchgeführt werden. In Block 702 erfasst ein Symbolleser eines Bildgebungssystems ein oder mehrere 3D-Bilder durch eine 3D-Bildgebungsvorrichtung, die dem Symbolleser zugeordnet ist. Insbesondere werden 3D-Bilder über eine Umgebung innerhalb eines FOV der 3D-Bildgebungsvorrichtung erfasst. In Block 704 führt das Bildgebungssystem eine Gesichtserkennung an den 3D-Bilddaten durch, um das Vorhandensein von Gesichtsdaten in der Umgebung zu identifizieren. Die Gesichtserkennung kann beispielsweise durch die Untersuchung von Punktwolkendaten und die Identifizierung geometrischer Merkmale und deren Vergleich mit einem trainierten Objektidentifikationsmodell, mit einem in einer Scanstation oder auf einem entfernten Server gespeicherten 3D-Anthropometriedatenmodell oder mit anderen Modellen zur Identifizierung von Gesichtsmerkmalen erfolgen. Durch die Verwendung von Modellen mit dreidimensionalen Daten kann eine genauere Gesichtserkennung durchgeführt werden.
  • Als Reaktion auf die Identifizierung des Vorhandenseins der Gesichtsdaten stellt das Bildgebungssystem in einem Block 706 einen oder mehrere Betriebsparameter der Bildgebungsvorrichtung auf der Grundlage des Vorhandenseins dieser Gesichtsdaten ein. In einigen Beispielen stellt der Block 706 einen oder mehrere Betriebsparameter einer 2D-Bildgebungsvorrichtung innerhalb des Bildgebungssystems ein. In einem Beispiel passt der Block 706 die Betriebsparameter einer 2D-Bildgebungsvorrichtung eines handgehaltenen Strichcodelesers an, indem er die Intensität von mindestens einer Beleuchtungsbaugruppe und einer Zielbaugruppe, die auch in einem Symbolleser enthalten sein kann, reduziert. In einem anderen Beispiel eines handgehaltenen Strichcodelesers kann der Block 706 die Betriebsparameter der 2D-Bildgebungsvorrichtung einstellen, indem er die Aktivierung zumindest eines Teils der 2D-Bildgebungsvorrichtung verhindert, bis eine nachfolgende Durchführung der Gesichtserkennung an nachfolgenden 3D-Bilddaten, die einem nachfolgenden 3D-Bild zugeordnet sind, ein weiteres Vorhandensein von Gesichtsdaten in den nachfolgenden 3D-Bilddaten nicht identifizieren kann.
  • In einigen Beispielen kann der Prozess 700 außerdem einen Block 708 umfassen, in dem ein 2D-Bild eines Objekts mit einer 2D-Bildgebungsvorrichtung erfasst wird, deren Betriebsparameter im Block 706 eingestellt wurden. Das Bildgebungssystem kann dann einen Strichcode in dem erfassten 2D-Bild dekodieren, um ein Objekt zu identifizieren.
  • In einigen Beispielen identifiziert der Block 704 das Vorhandensein der Gesichtsdaten in den 3D-Bilddaten, indem er eine Position der Gesichtsdaten in einem FOV der 3D-Bildgebungsvorrichtung bestimmt, und der Block 706 stellt die Betriebsparameter der 2D-Bildgebungsvorrichtung ein, indem er die Betriebsparameter basierend auf der Position der Gesichtsdaten einstellt. In einigen Beispielen ist der in Block 706 eingestellte Betriebsparameter ein FOV der 2D-Bildgebungsvorrichtung. Beispielsweise kann das FOV der zweiten Bildgebungsvorrichtung so eingestellt werden, dass Orte ausgeschlossen werden, an denen sich die Gesichtsdaten in der Umgebung des FOV befinden würden. In einigen Beispielen ist der in Block 706 eingestellte Betriebsparameter ein Fokusabstand der 2D-Bildgebungsvorrichtung, beispielsweise um einzustellen, wo die 2D-Bildgebungsvorrichtung bei der Erfassung von 2D-Bildern eines Objekts und/oder bei der Identifizierung eines Strichcodes in einem Objekt fokussiert. In einigen Beispielen ist der Betriebsparameter eine Belichtungszeit, eine Beleuchtungspulsdauer, eine Fokusposition oder ein Zoomniveau der 2D-Bildgebungsvorrichtung.
  • 14A zeigt ein beispielhaftes 3D-Bild einer ersten Umgebung eines FOV der 3D-Bildgebungsvorrichtung. 14B zeigt ein 3D-Beispiel für eine zweite Umgebung. In der ersten Umgebung von 14A wird ein Gesicht 750 in einem ersten Abstand neben einer Platte 752 eines Symbollesers erkannt, während in der zweiten Umgebung von 14B ein Gesicht 754 in einem zweiten Abstand weit von der Platte 752 erkannt wird. Basierend auf der Identifizierung der Gesichtsdaten im Block 704 für das 3D-Bild, das die Umgebung in 14A erfasst, kann der Block 706, der ein Gesicht identifiziert, wie z. B. das Gesicht eines Kindes, das auf der Höhe des bi-optischen Lesers steht, einen Betriebsparameter einer 2D-Bildgebungsvorrichtung einstellen, um die Person vor der Beleuchtung durch das Licht einer Beleuchtungsbaugruppe zu schützen. Zum Beispiel kann der Block 706 als Reaktion auf die Umgebung von 14B den Symbolleser daran hindern, einen Strichcode-Scanversuch durchzuführen. Der Block 706 kann eine Belichtungszeit, eine Beleuchtungspulsdauer oder ein Bildzoomniveau einer 2D-Bildgebungsvorrichtung einstellen, um die Person zu schützen, bevor er die Steuerung an den Block 708 zur Erfassung eines 2D-Bildes weitergibt.
  • Ein ähnlicher Prozess kann mit 2D-Bilddaten und Gesichtserkennung durchgeführt werden. 15 ist ein Flussdiagramm, das einen Beispielprozess 780 zeigt. In Block 782 werden 2D-Bilder von einer 2D-Bildgebungsbaugruppe erfasst, und in Block 784 wird eine Gesichtserkennung an den 2D-Bildern durchgeführt. Beispielsweise kann ein Bildverarbeitungsprozessor so konfiguriert sein, dass er ein in einer Scanstation gespeichertes anthropometrisches 2D-Datenmodell verwendet, um festzustellen, ob Kantendaten oder andere Kontraste, die in dem 2D-Bild identifiziert wurden, mit Gesichtsdaten korrespondieren. In einem Block 786 werden 3D-Bilddaten erfasst, und ein Block 788 vergleicht die 2D-Bilddaten und die 3D-Bilddaten, um 3D-Bildmerkmale zu identifizieren, mit den Gesichtsdaten in den 2D-Bilddaten zugeordnet sind. Wenn 3D-Merkmale identifiziert werden, führt ein Block 790 eine oder mehrere verschiedene Funktionen aus, insbesondere die Bestimmung eines Abstands der Gesichtsdaten vom Strichcodeleser und die selektive Deaktivierung/Aktivierung des Scannens des Strichcodelesers auf der Grundlage des Abstands, die Bestimmung anthropometrischer Daten für die Gesichtsdaten und die Bestimmung, ob die Gesichtsdaten von einer Person stammen oder nicht, und die Einstellung mindestens eines Betriebsparameters der 2D-Bildgebungsvorrichtung im Strichcodeleser. Wie beim Verfahren 700 gehören zu den Betriebsparametern beispielsweise eine Belichtungszeit, eine Beleuchtungspulsdauer, ein Fokusabstand oder ein Zoomniveau für die Bildgebung.
  • 16 ist ein Flussdiagramm eines Beispielprozesses 800, der von einer Scanstation, z. B. an einer Verkaufsstelle, durchgeführt werden kann, wobei diese Scanstation eine ihr zugeordnete 3D-Bildgebungsvorrichtung hat, wie sie von der Scanstation 302 von 7 und jedem der Bildgebungssysteme 100, 100', 100", 140, 140" und 200 der 1, 2, 3, 4A, 4B, 5 bzw. 6 durchgeführt werden kann. Beispielsweise kann der Prozess 800 von einem Symbolleser implementiert werden, der einer 3D-Bildgebungsvorrichtung zugeordnet ist, mit oder ohne eine zusätzliche 2D-Bildgebungsvorrichtung. In einem Block 802, ähnlich wie in Block 702, erfasst ein Symbolleser eines Bildgebungssystems ein oder mehrere 3D-Bilder durch eine 3D-Bildgebungsvorrichtung des Symbollesers. Insbesondere werden 3D-Bilder über eine Umgebung innerhalb eines FOV der 3D-Bildgebungsvorrichtung erfasst. In Block 804 führt das Bildgebungssystem ähnlich wie in Block 704 eine Gesichtserkennung an den 3D-Bilddaten durch und identifiziert das Vorhandensein von Gesichtsdaten in der Umgebung.
  • In Block 806 führt das Bildgebungssystem eine Gesichtsidentifizierung anhand der Gesichtsdaten aus Block 704 durch. Insbesondere wird in Block 806 versucht, die Gesichtsidentifizierung zu authentifizieren. Als Reaktion auf die Authentifizierung der Gesichtsidentifikation kann die 2D-Bildgebungsvorrichtung in einem Block 808 verwendet werden, um 2D-Bilder von Objekten in einer Umgebung eines FOV der 2D-Bildgebungsvorrichtung zu erfassen. In einem Beispiel wird die Authentifizierung der Gesichtsidentifikation durch den Vergleich der Gesichtsidentifikation mit einer autorisierten Benutzerdatenbank erreicht. In einem Beispiel wird die Authentifizierung der Gesichtsidentifikation dadurch erreicht, dass festgestellt wird, dass sich die Gesichtsdaten in einem akzeptablen Abstand von der 3D-Bildgebungsvorrichtung befinden. Zum Beispiel können die Gesichtsdaten 750 in 14A zu einer Nicht-Authentifizierung führen, die die Erfassung von 2D-Bildern mit einer 2D-Bildgebungsvorrichtung verhindert, während die Gesichtsdaten 754 zu einer Authentifizierung führen können. In einigen Beispielen kann der Block 806 vor der Durchführung der Gesichtserkennung an den 3D-Bilddaten Umgebungsmerkmale in den 3D-Bilddaten identifizieren, wobei die Umgebungsmerkmale Merkmale im 3D-Bild außerhalb des Objekts sind, und der Prozess 800 kann Umgebungsmerkmale aus den 3D-Bilddaten entfernen.
  • Der Block 808 kann so konfiguriert sein, dass er als Reaktion auf die Authentifizierung von Gesichtsdaten eine Reihe von Operationen durchführt. Nach der Erfassung von 2D-Bildern kann der Block 808 2D-Bilder mit einer 2D-Bildgebungsvorrichtung der Scanstation erfassen. Das heißt, in einigen Beispielen ist der Block 808 so konfiguriert, dass er 2D-Bilder und das Scannen von Objekten als Reaktion auf die Authentifizierung von Gesichtsdaten ermöglicht. In einigen Beispielen kann der Block 808 so konfiguriert sein, dass er eine nachfolgende 2D-Bilderfassung verhindert. So kann der Block 808 beispielsweise die Gesichtsdaten authentifizieren und eine Freigabebedingung erfüllen, die die Dekodierung eines im 2D-Bild erfassten Strichcodes verhindert. Oder der Block 808 kann die Erfassung eines 2D-Bildes und die Dekodierung eines Strichcodes zulassen, aber er kann verhindern, dass ein anschließend gescannter Artikel einem Transaktionsprotokoll der gescannten Artikel am Verkaufspunkt hinzugefügt wird. Wenn beispielsweise Gesichtsdaten darauf hinweisen, dass ein nicht autorisierter Benutzer, z. B. ein Minderjähriger, versucht, ein Bild zu scannen, kann der Block 808 die Erfassung eines 2D-Bildes verhindern oder die Erfassung eines 2D-Bildes zulassen, aber die Dekodierung eines Strichcodes im Bild verhindern. In einigen Beispielen kann die Authentifizierung agnostisch sein und jede Dekodierung eines Strichcodes in einem 2D-Bild verhindern. In einigen Beispielen kann die Authentifizierung eine solche Dekodierung nur für bestimmte Arten von Objekten verhindern, wie z. B. Alkohol oder andere für das Alter ungeeignete Artikel. In solchen Beispielen kann der Block 808 die Erfassung eines 2D-Bildes, die Identifizierung und Dekodierung eines Strichcodes ermöglichen und dann in Abhängigkeit von dem durch diese Dekodierung identifizierten Objekt bestimmen, ob die Freigabebedingung erfüllt ist, so dass der dekodierte Strichcode nicht zu einem Transaktionsprotokoll an der Scanstation des Verkaufspunktes hinzugefügt wird, wodurch verhindert wird, dass der Minderjährige das Scannen und den Kauf des Objekts beeinträchtigt.
  • Während die Beispielprozesse in den 15 und 16 im Zusammenhang mit einem Symbolleser und einer Scanstation beschrieben werden, können die beschriebenen Prozesse in jedem bildbasierten Authentifizierungssystem oder Betrugserkennungssystem implementiert werden, wie z. B. in einer automatischen Verkaufsstelle (Kiosk) für den Kauf von ausgegebenen Artikeln, einer automatischen Kassenstation oder einem Kassierer, oder einem anderen System.
  • In verschiedenen Beispielen können die Techniken der vorliegenden Erfindung in anderen Scananwendungen implementiert werden, z. B. in Bildverarbeitungsanwendungen. In 17 ist ein Flussdiagramm eines beispielhaften Prozesses 900 für einen Objektscanner dargestellt, wie er z.B. von einem maschinellen Bildverarbeitungssystem unter Verwendung erfasster 2D-Bilder und erfasster 3D-Bilder durchgeführt werden kann, wie es von einem maschinellen Bildverarbeitungssystem wie der als maschinelles Bildverarbeitungssystem implementierten Scanstation 302 durchgeführt werden kann. 18 zeigt eine Beispiel-Logikschaltung, die in einem Beispiel für ein Bildverarbeitungssystem 1000 implementiert ist. Im dargestellten Beispiel enthält das Bildverarbeitungssystem 1000 eine 2D-Farbbildsensoranordnung 1002, die im Allgemeinen so konfiguriert ist, dass sie 2D-Bilddaten innerhalb eines FOV einer 2D-Bildgebungsvorrichtung erfasst. Insbesondere kann die Farbbildsensoranordnung 1002 mit einer Farbfilteranordnung 1004 verbunden sein, die Farbfilter enthält, die jeweils den einzelnen Bildsensoren der Farbbildsensoranordnung 1002 zugeordnet sind. Beispielsweise kann ein erster Bildsensor der Farbbildsensoranordnung 1002 einem Grünfilter und ein zweiter Bildsensor des Farbbildsensoranordnung 1002 einem Rotfilter zugeordnet sein. Das Muster der Farbfilter, die die Farbfilteranordnung 1004 bilden, kann ein Bayer-Muster sein. Wie dargestellt, umfasst das Bildverarbeitungssystem 1000 auch eine Beleuchtungsbaugruppe 1014, die so konfiguriert ist, dass sie ein Beleuchtungslicht erzeugt, das auf das Bildgebungs-FOV des 2D-Farbbildsensorarrays 1004 gerichtet ist. Die Beleuchtungsbaugruppe 1014 kann zum Beispiel eine oder mehrere Leuchtdioden (LEDs) oder andere Arten von Lichtquellen enthalten. In einigen Ausführungsformen ist die Beleuchtungsbaugruppe 1014 so konfiguriert, dass sie weißes Licht emittiert (z. B. Licht, das Wellenlängen über das gesamte sichtbare Spektrum umfasst). Die Beleuchtungsbaugruppe 1014 kann mehrere Beleuchtungsquellen enthalten, z. B. eine direkte Beleuchtungsquelle und eine diffuse Beleuchtungsquelle. In einigen Beispielen umfasst die Beleuchtungsbaugruppe 1014 Beleuchtungsquellen, die mit unterschiedlichen Wellenlängen emittieren, wie z. B. eine Rotlicht-Beleuchtungsquelle, eine Grünlicht-Beleuchtungsquelle, eine Blaulicht-Beleuchtungsquelle und/oder eine Weißlicht-Beleuchtungsquelle. In verschiedenen Beispielen ist die 2D-Farbbildsensoranordnung 1002 in der Lage, den gesamten Bereich der Lichtreflexionen zu erfassen. Das Bildverarbeitungssystem 1000 umfasst eine 3D-Bildgebungsvorrichtung 1005 zur Erfassung von 3D-Bildern einer Umgebung in einem Sichtfeld (FOV) der 3D-Bildgebungsvorrichtung.
  • Darüber hinaus umfasst das Bildverarbeitungssystem 1000 einen oder mehrere Bildprozessoren 1006, die in der Lage sind, Befehle auszuführen, um beispielsweise Vorgänge der hier beschriebenen Beispielverfahren zu implementieren, wie sie in den Flussdiagrammen der Zeichnungen, die dieser Beschreibung beigefügt sind, dargestellt sein können. Bei den Bildprozessoren 1006 kann es sich um einen oder mehrere Mikroprozessoren, Steuerungen und/oder jede andere geeignete Art von Prozessor handeln. Das beispielhafte Bildverarbeitungssystem 1000 umfasst einen Speicher (z. B. einen flüchtigen Speicher, einen nichtflüchtigen Speicher) 1008, auf den die Bildprozessoren 1006 zugreifen können (z. B. über eine Speichersteuerung). Das beispielhafte Bildverarbeitungssystem 1000 umfasst auch einen Dekodierer 1010 und ein Bildverarbeitungsmodul 1012, die so konfiguriert sind, dass sie 2D- und 3D-Bilddaten analysieren, einschließlich Bilddaten, die von den Bildprozessoren 1006 verarbeitet wurden. Der Beispieldekodierer 1010 ist so konfiguriert, dass er feststellt, ob die 2D-Bilddaten von der 2D-Farbbildsensoranordnung 1002 einen Strichcode darstellen, und wenn ja, den Strichcode dekodiert, um die kodierten Informationen zu bestimmen. Das beispielhafte Bildverarbeitungsmodul 1012 ist so konfiguriert, dass es Objekterkennungstechniken an den 2D-Bilddaten und/oder 3D-Bilddaten durchführt, um Zielmerkmale zu identifizieren. Beispielsweise kann das Bildverarbeitungsmodul 1012 so konfiguriert sein, dass es Zielmerkmale wie Risse an einem Objekt und/oder eine unvollständige Lötverbindung für einen Stift eines Mikrochips erkennt, die aus 2D-Bilddaten oder 3D-Bilddaten oder beiden ermittelt werden. In einigen Beispielen kann das Bildverarbeitungsmodul 1012 so konfiguriert sein, dass es Merkmale unter Verwendung von 2D-Bilddaten, die mit 3D-Bilddaten verbessert werden, oder von 3D-Bilddaten, die mit 2D-Bilddaten verbessert werden, erkennt.
  • Das beispielhafte Bildverarbeitungssystem 1000 umfasst auch eine Netzwerkschnittstelle 1016, um die Kommunikation mit anderen Maschinen, z. B. über ein oder mehrere Netzwerke, zu ermöglichen, sowie Eingabe-/Ausgabeschnittstellen 1018, um den Empfang von Benutzereingaben und die Übermittlung von Ausgabedaten an den Benutzer zu ermöglichen. Bei den Ausgabedaten kann es sich beispielsweise um die vom Dekodierer 1010 ermittelten kodierten Informationen und/oder um eine Anzeige der vom Bildverarbeitungsmodul 1012 erkannten Merkmale handeln.
  • Zurück zu 17 erfasst in Block 902 eine 2D-Bildgebungsvorrichtung eines maschinellen Bildverarbeitungssystems (z. B. die 2D-Farbbildsensoranordnung 1002) ein 2D-Bild eines Objekts über ein FOV. Das maschinelle Bildverarbeitungssystem identifiziert einen Strichcode des Objekts im 2D-Bild und bestimmt ein oder mehrere 3D-Objektmerkmale des Objekts aus dem Strichcode. Zum Beispiel kann der Block 902 den Strichcode dekodieren, ein zugehöriges Objekt identifizieren und 3D-Merkmale des Objekts bestimmen, wie z. B. geometrische Merkmale, wie die Form, Oberflächen und/oder Abmessungen des Objekts. In Block 904 nimmt eine 3D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems (z. B. die 3D-Bildgebungsvorrichtung 1005) 3D-Bilder einer Umgebung über ein FOV auf und speichert die 3D-Bilddaten, die mit dem/den 3D-Bild/3D-Bildern korrespondieren. In Block 906 werden die 3D-Bilddaten vom maschinellen Bildverarbeitungssystem (z. B. vom Bildverarbeitungsmodul 1012) untersucht, um das Vorhandensein von einem oder mehreren 3D-Objektmerkmalen, wie den oben beschriebenen, zu erkennen. Als Reaktion auf die Feststellung des Vorhandenseins eines oder mehrerer 3D-Objektmerkmale liefert ein Block 908 ein digitales Fehlererkennungssignal an einen Benutzer des maschinellen Bildverarbeitungssystems. Im gezeigten Beispiel wird ein digitales Fehlererkennungssignal an einen Benutzer ausgegeben, wenn der Block 908 feststellt, dass die in Block 902 ermittelten 3D-Objektmerkmale in den 3D-Bilddaten aus Block 906 nicht vorhanden sind. In einem Beispiel wird die Bestimmung von 3D-Objektmerkmalen aus dem Strichcode in dem 2D-Bild durchgeführt, indem der Strichcode dekodiert wird, um Strichcode-Nutzdaten zu erzeugen, und die Objektidentifikation aus den Strichcode-Nutzdaten bestimmt wird und aus der Objektidentifikation das eine oder die mehreren 3D-Objektmerkmale des Objekts bestimmt werden. In einem anderen Beispiel wird die Bestimmung der 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild durchgeführt, indem eine Ausrichtung des Objekts aus einer Position des Strichcodes in dem 2D-Bild bestimmt wird und aus der Ausrichtung des Objekts das eine oder die mehreren 3D-Objektmerkmale als eine Teilmenge der verfügbaren 3D-Objektmerkmale bestimmt werden. In einigen Beispielen umfassen die 3D-Objektmerkmale mindestens eines von einem Abmessungsmerkmal und einem Formmerkmal.
  • Wird in Block 908 kein Fehler festgestellt, kann in Block 910, wenn festgestellt wird, dass die in Block 902 ermittelten 3D-Objektmerkmale in den 3D-Bilddaten aus Block 906 vorhanden sind, der Block 910 bestimmen, ob eine Änderung an mindestens einem dem maschinellen Bildverarbeitungssystem zugeordneten Parameter vorzunehmen ist. Auf diese Weise kann der Block 910 Farbdaten von einer 2D-Farbbildsensoranordnung verwenden, um eine Farbprüfung durchzuführen, anhand derer der Block 910 bestimmt, ob eine Beleuchtungsquelle geändert werden sollte, um ein vom Bildverarbeitungssystem geprüftes Objekt besser zu beleuchten. Der Block 910 kann 2D-Bilddaten und 3D-Bilddaten auswerten, um Eigenschaften wie die Ausrichtung, die Beleuchtung und die Position eines Objekts zu bestimmen und dann die Beleuchtungsquelle, die Beleuchtungsrichtung und die Wellenlänge der Beleuchtungsquelle (z. B. unter Verwendung von Beleuchtungsquellen mit unterschiedlichen Wellenlängen) einzustellen. Zum Beispiel bestimmt der Block 910 optimale Beleuchtungsbedingungen, wie Beleuchtungsfarbe, Intensität, und / oder Richtungswerte für ein „goldenes einheitliches“ Bildverarbeitungsscannen und ändert Parameter auf diese optimalen Beleuchtungsbedingungen. Auf diese Weise können Farbdaten, wie z. B. das Vorhandensein der Farbe Rot, die aus 2D-Bilddaten ermittelt wurden, zur Einstellung der Beleuchtungsbedingungen für die Durchführung von Bildverarbeitungsscans mit der 2D-Bildgebungsvorrichtung oder der 3D-Bildgebungsvorrichtung verwendet werden. In anderen Beispielen können die Farbdaten aus 3D-Bilddaten bestimmt werden, die von der 3D-Bildgebungsvorrichtung erfasst wurden. Das Verfahren 900 ermöglicht es einem maschinellen Bildverarbeitungssystem, Daten von einer 2D-Bildgebungsvorrichtung und einem 3D-Bildgebungsvorrichtung zu erfassen, die resultierenden 2D-Bilddaten und 3D-Bilddaten zu vergleichen und Änderungen in den Betriebsparametern des maschinellen Bildverarbeitungssystems zu bestimmen, um das maschinelle Bildverarbeitungssystem schnell und spontan so einzustellen, dass Bilder unter verbesserten Bedingungen erfasst werden, wodurch die Genauigkeit und der Scan-Durchsatz dieser Systeme erhöht werden.
  • Die obige Beschreibung bezieht sich auf ein Blockdiagramm in den beigefügten Zeichnungen. Alternative Ausführungsformen des im Blockdiagramm dargestellten Beispiels umfassen ein oder mehrere zusätzliche oder alternative Elemente, Verfahren und/oder Vorrichtungen. Zusätzlich oder alternativ können einer oder mehrere der Beispielblöcke des Diagramms kombiniert, geteilt, neu angeordnet oder weggelassen werden. Die durch die Blöcke des Diagramms dargestellten Komponenten werden durch Hardware, Software, Firmware und/oder eine beliebige Kombination von Hardware, Software und/oder Firmware implementiert. In einigen Beispielen wird mindestens eine der durch die Blöcke dargestellten Komponenten durch eine Logikschaltung implementiert. Wie hierin verwendet, ist der Begriff „Logikschaltung“ ausdrücklich als eine physische Vorrichtung definiert, die mindestens eine Hardwarekomponente enthält, die so konfiguriert ist (z. B. durch Betrieb gemäß einer vorbestimmten Konfiguration und/oder durch Ausführung gespeicherter maschinenlesbarer Anweisungen), dass sie eine oder mehrere Maschinen steuert und/oder Operationen einer oder mehrerer Maschinen durchführt. Beispiele für Logikschaltungen sind ein oder mehrere Prozessoren, ein oder mehrere Ko-Prozessoren, ein oder mehrere Mikroprozessoren, eine oder mehrere Steuerungen, ein oder mehrere digitale Signalprozessoren (DSPs), eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs), ein oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), ein oder mehrere Mikrocontroller-Einheiten (MCUs), ein oder mehrere Hardware-Beschleuniger, ein oder mehrere Spezial-Computerchips und ein oder mehrere System-on-Chip-Bauteile (SoC). Einige Beispiel-Logikschaltungen, wie ASICs oder FPGAs, sind speziell konfigurierte Hardware zur Durchführung von Operationen (z. B. eine oder mehrere der hierin beschriebenen und in den Flussdiagrammen dieser Offenbarung dargestellten Operationen, falls solche vorhanden sind). Einige Beispiel-Logikschaltungen sind Hardware, die maschinenlesbare Befehle ausführt, um Operationen durchzuführen (z. B. eine oder mehrere der hierin beschriebenen und durch die Flussdiagramme dieser Offenbarung dargestellten Operationen, falls solche vorhanden sind). Einige Beispiel-Logikschaltungen umfassen eine Kombination aus speziell konfigurierter Hardware und Hardware, die maschinenlesbare Befehle ausführt. Die obige Beschreibung bezieht sich auf verschiedene hierin beschriebene Vorgänge und Flussdiagramme, die zur Veranschaulichung des Ablaufs dieser Vorgänge angehängt werden können. Alle derartigen Flussdiagramme sind repräsentativ für die hier offenbarten Beispielverfahren. In einigen Beispielen implementieren die durch die Flussdiagramme dargestellten Verfahren die durch die Blockdiagramme dargestellten Vorrichtungen. Alternative Implementierungen der hier offenbarten Beispielverfahren können zusätzliche oder alternative Vorgänge umfassen. Darüber hinaus können Vorgänge alternativer Implementierungen der hier offenbarten Verfahren kombiniert, aufgeteilt, neu angeordnet oder weggelassen werden. In einigen Beispielen werden die hier beschriebenen Vorgänge durch maschinenlesbare Anweisungen (z. B. Software und/oder Firmware) implementiert, die auf einem Medium (z. B. einem greifbaren maschinenlesbaren Medium) zur Ausführung durch eine oder mehrere Logikschaltungen (z. B. Prozessor(en)) gespeichert sind. In einigen Beispielen werden die hier beschriebenen Operationen durch eine oder mehrere Konfigurationen einer oder mehrerer speziell entwickelter Logikschaltungen (z. B. ASIC(s)) implementiert. In einigen Beispielen werden die hier beschriebenen Operationen durch eine Kombination aus speziell entwickelten Logikschaltungen und maschinenlesbaren Anweisungen, die auf einem Medium (z. B. einem zugreifbaren maschinenlesbaren Medium) zur Ausführung durch eine oder mehrere Logikschaltungen gespeichert sind, implementiert.
  • Wie hierin verwendet, ist jeder der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht-transitorisches maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ ausdrücklich definiert als ein Speichermedium (z. B. eine Platte eines Festplattenlaufwerks, eine Digital Versatile Disc, eine Compact Disc, ein Flash-Speicher, ein Festwertspeicher, ein Speicher mit wahlfreiem Zugriff usw.), auf dem maschinenlesbare Anweisungen (z. B. Programmcode in Form von z. B. Software und/oder Firmware) 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 Anweisungen verbundenen Programms) und/oder für einen kurzen Zeitraum (z. B. während der Zwischenspeicherung der maschinenlesbaren Anweisungen und/oder während eines Pufferungsprozesses)) gespeichert werden. Darüber hinaus sind die Begriffe „zugreifbares, maschinenlesbares Medium“, „nicht-transitorisches, maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ hier ausdrücklich so definiert, dass sie sich ausbreitende Signale ausschließen. Das heißt, dass keiner der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht-transitorisches maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“, wie sie in den Ansprüchen dieses Patents verwendet werden, so gelesen werden kann, als dass er durch ein sich ausbreitendes Signal implementiert ist.
  • In der vorstehenden Beschreibung wurden spezifische Ausführungsformen beschrieben. Ein Durchschnittsfachmann erkennt jedoch, dass verschiedene Modifikationen und Änderungen vorgenommen werden können, ohne den Schutzumfang der Erfindung, wie sie in den untenstehenden Ansprüchen definiert ist, abzuweichen. Dementsprechend sind die Beschreibung und die Figuren vielmehr in einem illustrativen als in einem einschränkenden Sinne zu betrachten, und alle derartigen Modifikationen sollen im Umfang der vorliegenden Lehren eingeschlossen sein. Darüber hinaus sollten die beschriebenen Ausführungsformen/Beispiele/Implementierungen nicht als sich gegenseitig ausschließend interpretiert werden, sondern als potenziell kombinierbar, wenn solche Kombinationen in irgendeiner Weise permissiv sind. Mit anderen Worten kann jedes Merkmal, das in einer der vorgenannten Ausführungsformen/Beispiele/Implementierungen offenbart wird, in jeder der anderen vorgenannten Ausführungsformen/Beispiele/Implementierungen enthalten sein.
  • Die Nutzen, Vorteile, Lösungen für Probleme und alle Elemente, die zum Auftreten oder einer Verstärkung eines Nutzens, eines Vorteils, oder einer Lösung führen können, sind nicht als kritische, erforderliche oder wesentliche Merkmale oder Elemente in einigen oder sämtlichen Ansprüchen zu verstehen. Die Erfindung ist lediglich durch die angehängten Ansprüche definiert, einschließlich jeglicher Änderungen, die während der Anhängigkeit dieser Anmeldung vorgenommen wurden und aller Äquivalente der erteilten Ansprüche.
  • Darüber hinaus können in diesem Dokument relationale Begriffe wie erster und zweiter, oberer und unterer und dergleichen lediglich verwendet sein, um eine Entität oder Aktion von einer anderen Entität oder Aktion zu unterscheiden, ohne notwendigerweise eine tatsächliche derartige Beziehung oder Reihenfolge zwischen solchen Entitäten oder Aktionen zu erfordern oder zu implizieren. Die Ausdrücke „umfasst“, „umfassend“, „hat“, „haben“, „aufweist“, „aufweisend“, „enthält“, „enthaltend“ oder jede andere Variation davon sollen eine nicht-ausschließliche Einbeziehung abdecken, derart, dass ein Prozess, Verfahren, Produkt oder Vorrichtung, das eine Liste von Elementen umfasst, hat, aufweist, enthält, nicht nur diese Elemente aufweist, sondern auch andere Elemente aufweisen kann, die nicht ausdrücklich aufgelistet sind oder einem solchen Prozess, Verfahren, Produkt oder Vorrichtung inhärent sind. Ein Element, dem „umfasst ... ein“, „hat ... ein“, „aufweist ... ein“ oder „enthält ...ein“ vorausgeht, schließt ohne weitere Einschränkungen die Existenz zusätzlicher identischer Elemente in dem Prozess, dem Verfahren, dem Produkt oder der Vorrichtung, die das Element umfasst, hat, aufweist oder enthält, nicht aus. Die Begriffe „ein“ und „eine“ sind als eine oder mehrere definiert, sofern es hierin nicht ausdrücklich anders angegeben wird. Die Begriffe „im Wesentlichen“, „im Allgemeinen“, „ungefähr“, „etwa“ oder jede andere Version davon sind so definiert, dass sie von einem Fachmann auf diesem Gebiet nahekommend verstanden werden, und in einer nicht-einschränkenden Ausführungsform ist der Ausdruck definiert als innerhalb von 10%, in einer weiteren Ausführungsform als innerhalb von 5%, in einer weiteren Ausführungsform als innerhalb von 1% und in einer weiteren Ausführungsform als innerhalb von 0,5%. Der Ausdruck „gekoppelt“, wie er hierin verwendet wird, ist als verbunden definiert, jedoch nicht notwendigerweise direkt und nicht notwendigerweise mechanisch. Eine Vorrichtung oder eine Struktur, die auf eine bestimmte Art „konfiguriert“ ist, ist zumindest auch so konfiguriert, kann aber auch auf Arten konfiguriert sein, die nicht aufgeführt sind.
  • Die Zusammenfassung der Offenbarung wird bereitgestellt, um es dem Leser zu ermöglichen, schnell das Wesen der technischen Offenbarung zu ermitteln. Sie wird mit dem Verständnis bereitgestellt, dass sie nicht zur Auslegung oder Einschränkung des Umfangs oder der Bedeutung der Ansprüche verwendet wird. Ferner kann der vorangehenden detaillierten Beschreibung entnommen werden, dass verschiedene Merkmale in verschiedenen Ausführungsformen zum Zwecke der Verschlankung der Offenbarung zusammengefasst sind. Diese Art der Offenbarung ist nicht so auszulegen, dass sie die Absicht widerspiegelt, dass die beanspruchten Ausführungsformen mehr Merkmale erfordern, als ausdrücklich in jedem Anspruch angegeben sind. Vielmehr ist es so, wie die folgenden Ansprüche zeigen, dass der erfinderische Gegenstand in weniger als allen Merkmalen einer einzigen offenbarten Ausführungsform liegt. Somit werden die folgenden Ansprüche hiermit in die detaillierte Beschreibung inkorporiert, wobei jeder Anspruch für sich als ein separat beanspruchter Gegenstand steht.
  • Beispiele:
    1. 1. Verfahren zum Scannen von Strichcodes unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren;
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Identifizieren eines oder mehrerer 3D-Bildmerkmale innerhalb der zweiten Umgebung anhand der 3D-Bilddaten;
      • Verbessern der 2D-Bilddaten, was zu verbesserten 2D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten; und
      • Verarbeiten der verbesserten 2D-Bilddaten, um mindestens eines auszuführen von: (a) Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) Erkennen eines Objekts in den verbesserten 2D-Bilddaten, (d) Identifizieren einer von einem Bediener des Strichcodelesers durchgeführten Aktion, und (e) Ändern mindestens eines dem Strichcodeleserbetrieb zugeordneten Parameters.
    2. 2. Verfahren nach Beispiel 1, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale ein oder mehrere geometrische Merkmale eines innerhalb des zweiten FOV präsentierten Objekts umfassen.
    3. 3. Verfahren nach Beispiel 1, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale eine Farbe oder eine Farbabstufung umfassen, die mit einem Objekt korrespondieren, das innerhalb des zweiten FOV präsentiert wird.
    4. 4. Verfahren nach Beispiel 1, wobei das Identifizieren des einen oder der mehreren 3D-Bildmerkmale das Identifizieren des einen oder der mehreren 3D-Bildmerkmale einschließt, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung entfernt sind.
    5. 5. Verfahren nach Beispiel 4, wobei das Verbessern der 2D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 2D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
    6. 6. Verfahren nach Beispiel 4, wobei das Verbessern der 2D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 2D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
    7. 7. Verfahren nach Beispiel 4, wobei der Strichcodeleser ein stationärer Strichcodeleser ist, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient wird, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
    8. 8. Verfahren nach Beispiel 4, wobei der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich ist, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
    9. 9. Verfahren nach Beispiel 1, wobei das eine oder die mehreren 3D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem von der Hand des Bedieners gegriffenen Objekt.
    10. 10. Verfahren nach Beispiel 1, wobei die Verarbeitung der verbesserten 2D-Bilddaten die Identifizierung der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
    11. 11. Verfahren nach Beispiel 1, wobei die Verarbeitung der verbesserten 2D-Bilddaten die Identifizierung der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ein teilweise verdeckter Strichcode oder ein vollständig verdeckter Strichcode auf dem Objekt innerhalb der 2D-Bilddaten und/oder der verbesserten 2D-Bilddaten erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
    12. 12. Verfahren nach Beispiel 1, wobei der mindestens eine Parameter, der dem Strichcodeleserbetrieb zugeordnet ist, eine Belichtungszeit des Strichcodelesers, eine Beleuchtungspulsdauer des Strichcodelesers, eine Fokusposition des Strichcodelesers, ein Bildgebungszoomniveau des Strichcodelesers und eine Beleuchtungsquelle des Strichcodelesers ist.
    13. 13. Verfahren nach Beispiel 12, wobei die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle ist.
    14. 14. Verfahren nach Beispiel 1, wobei als Reaktion auf die Identifizierung des einen oder der mehreren 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten eine Beleuchtungshelligkeit des Strichcodelesers vor der Erfassung des 2D-Bildes der ersten Umgebung eingestellt wird.
    15. 15. Verfahren zur Verarbeitung von Daten unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren;
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Identifizierung eines oder mehrerer 2D-Bildmerkmale innerhalb der ersten Umgebung anhand der 2D-Bilddaten;
      • Verbessern der 3D-Bilddaten, was zu verbesserten 3D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 2D-Bildmerkmale mit mindestens einem oder mehreren 3D-Bildmerkmalen in den 3D-Bilddaten; und
      • Verarbeiten der verbesserten 3D-Bilddaten, um (a) ein Objekterkennungsmodell mit den verbesserten 3D-Bilddaten zu trainieren, (b) ein Objekt in den verbesserten 3D-Bilddaten zu erkennen, (c) eine von einem Benutzer des Strichcodelesers durchgeführte Aktion zu identifizieren, und (d) mindestens einen der 3D-Bildgebungsvorrichtung zugeordneten Parameter zu ändern.
    16. 16. Verfahren nach Beispiel 15, wobei die 2D-Bilddaten eines von monochromen Bilddaten, Graustufenbilddaten und polychromen Bilddaten umfassen, und wobei das eine oder die mehreren 2D-Bildmerkmale mindestens einen Strichcode und ein oder mehrere geometrische Merkmale eines innerhalb des ersten FOV präsentierten Objekts umfassen.
    17. 17. Verfahren nach Beispiel 16, wobei das eine oder die mehreren 2D-Bildmerkmale den Strichcode enthalten, und wobei das Verbessern der 3D-Bilddaten das Abbilden einer Position des Strichcodes von den 2D-Bilddaten auf die 3D-Bilddaten umfasst.
    18. 18. Verfahren nach Beispiel 16, wobei die 2D-Bilddaten polychrome Bilddaten umfassen, wobei das eine oder die mehreren 2D-Bildmerkmale das eine oder die mehreren geometrischen Merkmale des innerhalb des ersten FOV präsentierten Objekts enthalten, und wobei das Verbessern der 3D-Bilddaten das Abbilden mindestens eines Teils der polychromen Bilddaten auf die 3D-Bilddaten umfasst, basierend zumindest teilweise auf dem einen oder den mehreren geometrischen Merkmalen des Objekts, das innerhalb des ersten FOV präsentiert wird.
    19. 19. Verfahren nach Beispiel 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 3D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 3D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 3D-Bildmerkmalen zugeordnet sind.
    20. 20. Verfahren nach Beispiel 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 3D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 3D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 3D-Bildmerkmalen zugeordnet sind.
    21. 21. Verfahren nach Beispiel 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der 3D-Bilddaten auf der Grundlage eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung umfasst.
    22. 22. Verfahren nach Beispiel 21, wobei der Strichcodeleser ein stationärer Strichcodeleser ist, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient wird, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
    23. 23. Verfahren nach Beispiel 21, wobei der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich ist, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
    24. 24. Verfahren nach Beispiel 15, wobei das eine oder die mehreren 2D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem von der Hand des Bedieners gegriffenen Objekt.
    25. 25. Verfahren nach Beispiel 15, wobei die Verarbeitung der verbesserten 3D-Bilddaten das Identifizieren der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als ein Präsentieren eines Objekts innerhalb eines Produktscanbereichs und ein Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass kein Strichcode innerhalb der 2D-Bilddaten erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
    26. 26. Verfahren nach Beispiel 15, wobei das Identifizieren des einen oder der mehreren 2D-Bildmerkmale umfasst:
      • Identifizieren von Umgebungsmerkmalen auf dem 2D-Bild, wobei die Umgebungsmerkmale Merkmale in dem Bild außerhalb eines Objekts sind, das innerhalb des ersten FOV präsentiert wird;
      • Umwandeln der Umgebungsmerkmale in Maskierungsmerkmale, die so konfiguriert sind, dass sie die identifizierten Umgebungsmerkmale in dem 2D-Bild abdecken; und
      • Identifizieren der Maskierungsmerkmale als das eine oder die mehreren 2D-Bildmerkmale.
    27. 27. Verfahren nach Beispiel 15, wobei das Identifizieren eines oder mehrerer 2D-Bildmerkmale umfasst:
      • Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten;
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und
      • Bestimmen der ein oder mehreren 2D-Bildmerkmale anhand der Objektidentifikation.
    28. 28. Verfahren nach Beispiel 15, wobei die Verarbeitung der verbesserten 3D-Bilddaten zum Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten umfasst:
      • Identifizieren eines Strichcodes in den 2D-Bilddaten, Bestimmen eines Zeitrahmens für ein Strichcode-Erkennungsereignis und Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten, die mit dem Zeitrahmen für das Strichcode-Erkennungsereignis korrespondieren; oder
      • Identifizieren eines Strichcodes in den 2D-Bilddaten, Identifizieren des Objekts in den verbesserten 3D-Bilddaten, das mit dem Strichcode in den 2D-Bilddaten korrespondiert, und bei Identifizierung eines anderen Objekts in dem 3D-Bild, das nicht mit dem Strichcode korrespondiert, Entfernen der anderen Objekte aus den verbesserten 3D-Bilddaten vor dem Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten.
    29. 29. Verfahren nach Beispiel 15, wobei der mindestens eine Parameter, der der 3D-Bildgebungsvorrichtung zugeordnet ist, eine projizierte Beleuchtungsstärke der 3D-Bildgebungsvorrichtung, eine projizierte Beleuchtungsrichtung der 3D-Bildgebungsvorrichtung oder eine Beleuchtungsquelle für die 3D-Bildgebungsvorrichtung umfasst.
    30. 30. Verfahren zum Identifizieren eines ordnungsgemäßen Scannens eines Objekts oder eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren;
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Bestimmen einer ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten;
      • Bestimmen einer zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten; und
      • Vergleichen der ersten Objektidentifikation mit der zweiten Objektidentifikation und Bestimmen (a) des ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) des nicht ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt.
    31. 31. Verfahren nach Beispiel 30, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst:
      • Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
    32. 32. Verfahren nach Beispiel 30, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst:
      • Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell; und
      • Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
    33. 33. Verfahren nach Beispiel 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst:
      • Bereitstellen der 3D-Bilddaten für ein trainiertes Objekterkennungsmodell; und
      • Erzeugen der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
    34. 34. Verfahren nach Beispiel 30, wobei das Verfahren vor dem Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten ferner umfasst:
      • Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und
      • Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten.
    35. 35. Verfahren nach Beispiel 30, wobei das Verfahren vor dem Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst:
      • Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und
      • Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
    36. 36. Verfahren nach Beispiel 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst:
      • Bestimmen eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten; und
      • Bestimmen der zweiten Objektidentifikation aus dem einen oder mehreren Farbmerkmalen.
    37. 37. Verfahren nach Beispiel 36, wobei das eine oder die mehreren Farbmerkmale eine Farbe des Objekts umfassen.
    38. 38. Verfahren nach Beispiel 36, wobei das eine oder die mehreren Farbmerkmale einen Farbgradienten des Objekts umfassen.
    39. 39. Verfahren nach Beispiel 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst:
      • Bestimmen eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten; und
      • Bestimmen der zweiten Objektidentifikation aus einem oder mehreren geometrischen Merkmalen.
    40. 40. Verfahren nach Beispiel 39, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst:
      • Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
    41. 41. Verfahren nach Beispiel 40, wobei die 3D-Bilddaten eine Punktwolke enthalten, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert hat, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und wobei das Bestimmen des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten auf einer ersten Teilmenge der 3D-Bilddaten basiert und nicht auf einer zweiten Teilmenge der 3D-Bilddaten basiert, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
    42. 42. Verfahren nach Beispiel 30, wobei das Verfahren als Reaktion auf das Bestimmen (a) des ordnungsgemäßen Scannens des Objekts ferner die Verarbeitung eines Transaktionsprotokolls umfasst, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf das Bestimmen (b) des nicht ordnungsgemäßen Scannens des Objekts das Verfahren ferner mindestens eines umfasst von: (i) Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
    43. 43. Verfahren zum Identifizieren eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren;
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Identifizieren eines scanbaren Objekts unter Verwendung der 3D-Bilddaten; und
      • beim Fehlschlagen des Bestimmens einer Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten, Bestimmen eines nicht ordnungsgemäßen Scannens des Objekts und Erzeugen eines Warnsignals.
    44. 44. Verfahren zum Betreiben eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Durchführen einer Gesichtserkennung an den 3D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten; und
      • als Reaktion auf die Identifizierung des Vorhandenseins der Gesichtsdaten, Einstellen mindestens eines Betriebsparameters einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers.
    45. 45. Verfahren nach Beispiel 44, wobei der Strichcodeleser ein Präsentationsstrichcodeleser ist, und wobei das Einstellen des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung das Verringern einer Intensität mindestens einer Beleuchtungsbaugruppe und einer Zielbaugruppe umfasst.
    46. 46. Verfahren nach Beispiel 44, wobei der Strichcodeleser ein Präsentationsstrichcodeleser ist, und wobei das Einstellen des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung das Verhindern der Aktivierung von mindestens einem Teil der 2D-Bildgebungsvorrichtung beinhaltet, bis eine nachfolgende Durchführung der Gesichtserkennung an nachfolgenden 3D-Bilddaten, die einem nachfolgenden 3D-Bild zugeordnet sind, ein weiteres Vorhandensein von Gesichtsdaten in den nachfolgenden 3D-Bilddaten nicht identifizieren kann.
    47. 47. Verfahren nach Beispiel 44, wobei das Verfahren ferner das Erfassen eines 2D-Bildes eines Objekts unter Verwendung der 2D-Bildgebungsvorrichtung, die gemäß dem mindestens einen Betriebsparameter eingestellt ist, und das Dekodieren eines Strichcodes in dem 2D-Bild zur Identifizierung des Objekts umfasst.
    48. 48. Verfahren nach Beispiel 44, wobei das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung umfasst, und wobei das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten umfasst.
    49. 49. Verfahren nach Beispiel 44, wobei die Betriebsparameter ein zweites FOV der 2D-Bildgebungsvorrichtung umfassen.
    50. 50. Verfahren nach Beispiel 44, wobei die Betriebsparameter einen Fokusabstand der 2D-Bildgebungsvorrichtung umfassen.
    51. 51. Verfahren nach Beispiel 44, wobei der mindestens eine Betriebsparameter der 2D-Bildgebungsvorrichtung eine Belichtungszeit, eine Beleuchtungspulsdauer oder ein Bildgebungszoomniveau ist.
    52. 52. Verfahren zum Betreiben eines Strichcodelesers, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren;
      • Durchführen einer Gesichtserkennung an den 2D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 2D-Bilddaten;
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; und
      • als Reaktion auf die Identifizierung von einem oder mehreren 3D-Bildmerkmalen, die den Gesichtsdaten in 2D-Bilddaten zugeordnet sind, Durchführen mindestens eines von: (a) Bestimmen eines Abstands der Gesichtsdaten aus dem Strichcodeleser und selektives Deaktivieren/Aktivieren des Scannens des Strichcodelesers auf der Grundlage des Abstands, (b) Bestimmen anthropometrischer Daten für die Gesichtsdaten und Bestimmen, ob die Gesichtsdaten von einer Person stammen oder nicht, und (c) Einstellen mindestens eines Betriebsparameters der 2D-Bildgebungsvorrichtung innerhalb des Strichcodelesers.
    53. 53. Verfahren nach Beispiel 52, wobei der mindestens eine Betriebsparameter der 2D-Bildgebungsvorrichtung eine Belichtungszeit, eine Beleuchtungspulsdauer, eine Fokusposition oder ein Bildgebungszoomniveau ist.
    54. 54. Verfahren nach Beispiel 52, wobei das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung umfasst, und wobei das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten umfasst.
    55. 55. Verfahren zum Betreiben einer Verkaufspunkt-Scanstation mit einem Strichcodeleser, wobei das Verfahren umfasst:
      • Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die der Verkaufspunkt-Scanstation zugeordnet ist und ein erstes FOV hat, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Durchführen einer Gesichtserkennung an den 3D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten;
      • Durchführen einer Gesichtsidentifikation anhand der Gesichtsdaten und Authentifizieren der Gesichtsidentifikation; und
      • als Reaktion auf die Authentifizierung der Gesichtsidentifikation, Ausführen mindestens eines von: (a) Erfassen eines zweidimensionalen (2D) Bildes eines Objekts unter Verwendung einer 2D-Bildgebungsvorrichtung innerhalb des Strichcodelesers und Dekodieren eines Strichcodes in dem 2D-Bild, um das Objekt zu identifizieren, und (b) Erfüllen einer Freigabebedingung, um entweder eine Dekodierung eines in dem Bild des 2D-Bildes erfassten Strichcodes zu verhindern oder um zu verhindern, dass ein anschließend gescannter Artikel zu einem Transaktionsprotokoll gescannter Artikel hinzugefügt wird.
    56. 56. Verfahren nach Beispiel 55, wobei das Authentifizieren der Gesichtsidentifikation das Vergleichen der Gesichtsidentifikation mit einer Datenbank für autorisierte Benutzer umfasst.
    57. 57. Verfahren nach Beispiel 55, wobei das Authentifizieren der Gesichtsidentifikation das Bestimmen umfasst, dass sich die Gesichtsdaten an einer akzeptablen Position innerhalb des ersten FOV der 3D-Bildgebungsvorrichtung befinden.
    58. 58. Verfahren nach Beispiel 55, wobei das Verfahren vor der Durchführung der Gesichtserkennung an den 3D-Bilddaten und der Identifizierung des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten umfasst:
      • Identifizieren von Umgebungsmerkmalen in den 3D-Bilddaten, wobei die Umgebungsmerkmale Merkmale in dem 3D-Bild außerhalb des Objekts sind; und
      • Entfernen von Umgebungsmerkmalen aus den 3D-Bilddaten.
    59. 59. Maschinelles Bildverarbeitungsverfahren, umfassend:
      • Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung, eines 2D-Bildes eines Objekts, Identifizieren eines Strichcodes des Objekts in dem 2D-Bild und Bestimmen eines oder mehrerer dreidimensionaler (3D) Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild;
      • Erfassen eines 3D-Bildes einer Umgebung unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren;
      • Untersuchen der 3D-Bilddaten auf das Vorhandensein von einem oder mehreren 3D-Objektmerkmalen;
      • als Reaktion auf ein Bestimmen, dass mindestens eines des einen oder der mehreren 3D-Objektmerkmale in den 3D-Bilddaten fehlt, Bereitstellen eines digitalen Fehlererkennungssignals für einen Benutzer des Bildverarbeitungssystems; und
      • als Reaktion auf ein Bestimmen, dass mindestens eines des einen oder der mehreren 3D-Objektmerkmale aus den 3D-Bilddaten vorhanden ist, Ändern mindestens eines Parameters, der dem Bildverarbeitungssystem zugeordnet ist.
    60. 60. Maschinelles Bildverarbeitungsverfahren nach Beispiel 59, wobei das Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild umfasst:
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und
      • Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts anhand der Objektidentifikation.
    61. 61. Maschinelles Bildverarbeitungsverfahren nach Beispiel 59, wobei das Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild umfasst:
      • Bestimmen einer Ausrichtung des Objekts aus einer Position des Strichcodes in dem 2D-Bild; und
      • Bestimmen des eine oder der mehreren 3D-Objektmerkmale als Teilmenge von verfügbaren 3D-Objektmerkmale anhand der Ausrichtung des Objekts.
    62. 62. Maschinelles Bildverarbeitungsverfahren nach Beispiel 59, wobei das eine oder die mehreren 3D-Objektmerkmale mindestens eines von einem Abmessungsmerkmal und einem Formmerkmal ist.
    63. 63. Maschinelles Bildverarbeitungsverfahren nach Beispiel 59, wobei das Ändern mindestens eines dem maschinellen Bildverarbeitungssystem zugeordneten Parameters das Ändern einer Belichtungszeit einer 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, einer Beleuchtungspulsdauer einer Beleuchtungsbaugruppe des maschinellen Bildverarbeitungssystems, einer Fokusposition der 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, eines Bildgebungszoomniveaus der 2D-Bildgebungsvorrichtung, einer Beleuchtungshelligkeit, einer Beleuchtungswellenlänge oder einer Beleuchtungsquelle des maschinellen Bildverarbeitungssystems umfasst.
    64. 64. Maschinelles Bildverarbeitungsverfahren nach Beispiel 63, wobei die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle ist.
    65. 65. Maschinelles Bildverarbeitungsverfahren nach Beispiel 63, wobei das Ändern der Beleuchtungsquelle das Ändern von einer Beleuchtungsquelle, die bei einer ersten Wellenlänge emittiert, zu einer Beleuchtungsquelle, die bei einer zweiten Wellenlänge emittiert, die sich von der ersten Wellenlänge unterscheidet, umfasst.
    66. 66. Scanstation, umfassend:
      • eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie:
        • ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst;
        • einen Strichcode in dem 2D-Bild identifiziert; und
        • das Objekt aus Strichcode-Nutzdaten identifiziert;
      • eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie:
        • ein 3D-Bild des Objekts in einem FOV der 3D-Bildgebungsvorrichtung erfasst; und 3D-Bilddaten aus dem 3D-Bild erzeugt; und
      • einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
        • ein oder mehrere 3D-Objektmerkmale aus den 3D-Bilddaten zu identifizieren;
        • das eine oder die mehreren 3D-Objektmerkmale anhand einer Identität des Objekts zu bewerten; und
        • als Reaktion auf das Bewerten des einen oder der mehreren 3D-Objektmerkmale anhand der Identität des Objekts einen Betriebsparameter der Scanstation einzustellen.
    67. 67. Scanstation nach Beispiel 66, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Objektmerkmale mindestens eines umfassen von:
      • geometrischen Merkmalen des Objekts, einer Farbe des Objekts, einer Farbabstufung des Objekts.
    68. 68. Scanstation nach Beispiel 66, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Objektmerkmale eine Position des Objekts im FOV der 3D-Bildgebungsvorrichtung umfassen.
    69. 69. Scanstation nach Beispiel 68, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
      • Zu bestimmen, ob die Position des Objekts im FOV oder in der 3D-Bildgebungsvorrichtung in einem akzeptablen Bereich für die Erfassung des 2D-Bildes des Objekts unter Verwendung der 2D-Bildgebungsvorrichtung liegt; und
      • als Reaktion darauf, dass die Position des Objekts im FOV der 3D-Bildgebungsvorrichtung nicht im akzeptablen Bereich liegt, Verzichten auf ein Erfassen eines nachfolgenden 2D-Bildes durch die 2D-Bildgebungsvorrichtung, bis eine Freigabebedingung erfüllt ist.
    70. 70. Scanstation nach Beispiel 66, wobei der Betriebsparameter mindestens eines von einer Beleuchtungsintensität einer Beleuchtungsvorrichtung in der 2D-Bildgebungsvorrichtung, einem FOV der 2D-Bildgebungsvorrichtung und einem Fokusabstand der 2D-Bildgebungsvorrichtung umfasst.
    71. 71. Scanstation nach Beispiel 66, wobei die Scanstation ein bi-optischer Scanner mit einem Turmabschnitt und einem Plattenabschnitt ist.
    72. 72. Scanstation nach Beispiel 71, wobei sich die 3D-Bildgebungsvorrichtung entweder im Turmabschnitt oder im Plattenabschnitt und die 2D-Bildgebungsvorrichtung im anderen Abschnitt des Turmabschnitts oder des Plattenabschnitts befindet.
    73. 73. Scanstation nach Beispiel 71, wobei sich die 3D-Bildgebungsvorrichtung und die 2D-Bildgebungsvorrichtung beide entweder im Turmabschnitt oder im Plattenabschnitt befinden.
    74. 74. Scanstation nach Beispiel 71, ferner umfassend eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul ein Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist, wobei der Speicher ferner Anweisungen gespeichert hat, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
      • aus den 3D-Bilddaten eine Position des Objekts relativ zur Wiegeplatte zu bestimmen; und
      • als Reaktion darauf, dass sich die Position des Objekts relativ zur Wiegeplatte in einer Wiegeplatten-Fehlposition befindet, den Betrieb des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand zu ändern, bis eine Freigabebedingung erfüllt ist.
    75. 75. Scanstation nach Beispiel 74, wobei der erste Zustand des Wiegemoduls eine Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts ermöglicht, und wobei der zweite Zustand des Wiegemoduls eine Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts verhindert.
    76. 76. Scanstation nach Beispiel 74, wobei die Fehlposition der Wiegeplatte eine Überhangposition umfasst, bei der mindestens ein Teil des Objekts über die Wiegeplatte hinausragt.
    77. 77. Scanstation nach Beispiel 74, wobei die Fehlposition der Wiegeplatte eine hängende Position umfasst, in der das Objekt zumindest teilweise über der Wiegeplatte hängt.
    78. 78. Scanstation nach Beispiel 71, ferner umfassend eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul das Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist, wobei der Speicher ferner Anweisungen gespeichert hat, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
      • aus den 3D-Bilddaten zu erkennen, dass eine Hand eines Bedieners in Kontakt mit dem Objekt ist; und
      • als Reaktion auf ein Bestimmen, dass die Hand des Bedieners in Kontakt mit dem Objekt ist, Ändern eines Betriebs des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand, bis eine Freigabebedingung erfüllt ist.
    79. 79. Scanstation, umfassend:
      • eine 2D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld der 2D-Bildgebungsvorrichtung erfasst und 2D-Bilddaten aus dem 2D-Bild erzeugt;
      • eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem Sichtfeld der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt; und
      • einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
        • die 3D-Bilddaten mit den 2D-Bilddaten zu vergleichen und ein Authentifizierungsverfahren für das Objekt durchzuführen.
    80. 80. Scanstation nach Beispiel 79, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
      • eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen;
      • eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen; und
      • die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und (a) ein ordnungsgemäßes Scannen des Objekts festzustellen, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) ein nicht ordnungsgemäßes Scannen des Objekts festzustellen, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt.
    81. 81. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, durch:
      • Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
    82. 82. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, durch:
      • Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell; und
      • Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
    83. 83. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch:
      • Bereitstellen der 3D-Bilddaten für ein trainiertes Objekterkennungsmodell; und
      • Erzeugen der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
    84. 84. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor vor der Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten veranlassen zum:
      • Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und
      • Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten.
    85. 85. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor vor der Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten veranlassen zum:
      • Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und
      • Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
    86. 86. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch:
      • Bestimmen eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten; und Bestimmen der zweiten Objektidentifikation aus dem einen oder mehreren Farbmerkmalen.
    87. 87. Scanstation nach Beispiel 86, wobei das eine oder die mehreren Farbmerkmale eine Farbe des Objekts umfassen.
    88. 88. Scanstation nach Beispiel 86, wobei das eine oder die mehreren Farbmerkmale einen Farbgradienten des Objekts umfassen.
    89. 89. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch:
      • Bestimmen eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten; und
      • Bestimmen der zweiten Objektidentifikation aus dem einen oder den mehreren geometrischen Merkmalen.
    90. 90. Scanstation nach Beispiel 89, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst:
      • Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und
      • Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
    91. 91. Scanstation nach Beispiel 90, wobei die 3D-Bilddaten eine Punktwolke umfassen, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert hat, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und wobei das Bestimmen des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten auf einer ersten Teilmenge der 3D-Bilddaten basiert und nicht auf einer zweiten Teilmenge der 3D-Bilddaten basiert, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
    92. 92. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, als Reaktion auf das Bestimmen (a) des ordnungsgemäßen Scannens des Objekts, den Prozessor zu veranlassen, ein Transaktionsprotokoll zu verarbeiten, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf das Bestimmen (b) des nicht ordnungsgemäßen Scannens des Objekts mindestens eines auszuführen von: (i) einem Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) einem Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
    93. 93. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um:
      • aus den 3D-Bilddaten eine Scanrichtung des Objekts relativ zu der 2D-Bildgebungsvorrichtung zu bestimmen; und
      • als Reaktion darauf, dass die Scanrichtung eine nicht ordnungsgemäße Scanrichtung ist, die Erfassung des 2D-Bildes durch die 2D-Bildgebungsvorrichtung zu verhindern, bis eine Freigabebedingung erfüllt ist.
    94. 94. Scanstation nach Beispiel 79, wobei das Objekt ein Erzeugnis ist, und wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um:
      • als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen;
      • als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und
      • die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und einen Typ des Produkts zu bestimmen.
    95. 95. Scanstation nach Beispiel 79, wobei das Objekt ein Erzeugnis ist, und wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um:
      • als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen;
      • als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und
      • die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und eine Auflistung potenzieller Typen des Erzeugnisses zu bestimmen; und die Auflistung einem Benutzer der Scanstation zur Auswahl zu präsentieren.
    96. 96. Scanstation nach Beispiel 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um:
      • als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Vorhandensein eines teilweise dekodierbaren Strichcodes zu bestimmen und aus dem teilweise dekodierbaren Strichcode eine Auflistung potenzieller Objektübereinstimmungen zu bestimmen;
      • als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und
      • die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und zu bestimmen, ob eine oder mehrere der Auflistungen potenzieller Objektübereinstimmungen der Form oder Abmessung entsprechen, die in der zweiten Objektidentifikation aus den 3D-Bilddaten angegeben ist.
    97. 97. Scanstation, umfassend:
      • eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst und einen Strichcode in dem 2D-Bild identifiziert, um das Objekt aus Strichcode-Nutzdaten zu identifizieren;
      • eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem FOV der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt; und
      • einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
        • das 3D-Bild des Objekts zu erfassen und die 3D-Bilddaten zu erzeugen;
        • ein oder mehrere 3D-Objektmerkmale des Objekts aus den 3D-Bilddaten zu identifizieren; und
        • eines oder mehrere durchzuführen von: (a) einem Trainieren eines Objekterkennungsmodells mit den 3D-Bilddaten oder (b) einer Objekterkennung unter Verwendung der 3D-Bilddaten.
    98. 98. System, umfassend:
      • eine zweidimensionale (2D) Bildgebungsvorrichtung, die ein erstes Sichtfeld (FOV) hat und so konfiguriert ist, dass sie ein 2D-Bild einer ersten Umgebung erfasst, die innerhalb des ersten FOV erscheint, wobei das 2D-Bild als 2D-Bilddaten gespeichert wird, die mit dem 2D-Bild korrespondieren;
      • eine dreidimensionale (3D) Bildgebungsvorrichtung mit einem zweiten FOV, das sich zumindest teilweise mit dem ersten FOV überlappt, wobei die 3D-Bildgebungsvorrichtung so konfiguriert ist, dass sie ein 3D-Bild einer zweiten Umgebung erfasst, die innerhalb des zweiten FOV erscheint, wobei das 3D-Bild als 3D-Bilddaten gespeichert wird, die mit dem 3D-Bild korrespondieren; und
      • einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
        • ein oder mehrere 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten zu identifizieren;
        • die 2D-Bilddaten zu verbessern, was zu verbesserten 2D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten; und
        • die verbesserten 2D-Bilddaten zu verarbeiten, um mindestens eines auszuführen von:
          1. (a) einem Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) einem Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) einem Erkennen eines Objekts in den verbesserten 2D-Bilddaten und (d) einem Identifizieren einer von einem Bediener des Strichcodelesers durchgeführten Aktion.
    99. 99. System nach Beispiel 98, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale ein oder mehrere geometrische Merkmale eines innerhalb des zweiten FOV präsentierten Objekts umfassen.
    100. 100. System nach Beispiel 98, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale eine Farbe oder eine Farbabstufung umfassen, die mit einem Objekt korrespondiert, das innerhalb des zweiten FOV präsentiert wird.
    101. 101. System nach Beispiel 98, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um das eine oder die mehreren 3D-Bildmerkmale zu identifizieren, indem das eine oder die mehreren 3D-Bildmerkmale identifiziert werden, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung entfernt positioniert sind.
    102. 102. System nach Beispiel 101, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um die 2D-Bilddaten durch Filtern des mindestens einen oder der mehreren 2D-Bildmerkmale zu verbessern, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
    103. 103. System nach Beispiel 101, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um die 2D-Bilddaten durch Filtern der mindestens einen oder mehreren 2D-Bildmerkmale zu verbessern, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
    104. 104. System nach Beispiel 101, ferner umfassend einen stationären Strichcodeleser, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient werden kann, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
    105. 105. System nach Beispiel 101, ferner umfassend einen bi-optischen Strichcodeleser mit einem Produktscanbereich, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
    106. 106. System nach Beispiel 98, wobei das eine oder die mehreren 3D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem Objekt, das von der Hand des Bedieners gegriffen wird.
    107. 107. System nach Beispiel 98, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um:
      • die verbesserten 2D-Bilddaten durch Identifizieren der vom Bediener durchgeführten Aktion zu verarbeiten; und
      als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, eine Warnung zu erzeugen, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.

Claims (107)

  1. Verfahren zum Scannen von Strichcodes unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Identifizieren eines oder mehrerer 3D-Bildmerkmale innerhalb der zweiten Umgebung anhand der 3D-Bilddaten; Verbessern der 2D-Bilddaten, was zu verbesserten 2D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten; und Verarbeiten der verbesserten 2D-Bilddaten, um mindestens eines auszuführen von: (a) Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) Erkennen eines Objekts in den verbesserten 2D-Bilddaten, (d) Identifizieren einer von einem Bediener des Strichcodelesers durchgeführten Aktion, und (e) Ändern mindestens eines dem Strichcodeleserbetrieb zugeordneten Parameters.
  2. Verfahren nach Anspruch 1, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale ein oder mehrere geometrische Merkmale eines innerhalb des zweiten FOV präsentierten Objekts umfassen.
  3. Verfahren nach Anspruch 1, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale eine Farbe oder eine Farbabstufung umfassen, die mit einem Objekt korrespondieren, das innerhalb des zweiten FOV präsentiert wird.
  4. Verfahren nach Anspruch 1, wobei das Identifizieren des einen oder der mehreren 3D-Bildmerkmale das Identifizieren des einen oder der mehreren 3D-Bildmerkmale einschließt, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung entfernt sind.
  5. Verfahren nach Anspruch 4, wobei das Verbessern der 2D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 2D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
  6. Verfahren nach Anspruch 4, wobei das Verbessern der 2D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 2D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
  7. Verfahren nach Anspruch 4, wobei der Strichcodeleser ein stationärer Strichcodeleser ist, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient wird, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
  8. Verfahren nach Anspruch 4, wobei der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich ist, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
  9. Verfahren nach Anspruch 1, wobei das eine oder die mehreren 3D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem von der Hand des Bedieners gegriffenen Objekt.
  10. Verfahren nach Anspruch 1, wobei die Verarbeitung der verbesserten 2D-Bilddaten die Identifizierung der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  11. Verfahren nach Anspruch 1, wobei die Verarbeitung der verbesserten 2D-Bilddaten die Identifizierung der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ein teilweise verdeckter Strichcode oder ein vollständig verdeckter Strichcode auf dem Objekt innerhalb der 2D-Bilddaten und/oder der verbesserten 2D-Bilddaten erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  12. Verfahren nach Anspruch 1, wobei der mindestens eine Parameter, der dem Strichcodeleserbetrieb zugeordnet ist, eine Belichtungszeit des Strichcodelesers, eine Beleuchtungspulsdauer des Strichcodelesers, eine Fokusposition des Strichcodelesers, ein Bildgebungszoomniveau des Strichcodelesers und eine Beleuchtungsquelle des Strichcodelesers ist.
  13. Verfahren nach Anspruch 12, wobei die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle ist.
  14. Verfahren nach Anspruch 1, wobei als Reaktion auf das Identifizieren des einen oder der mehreren 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten eine Beleuchtungshelligkeit des Strichcodelesers vor der Erfassung des 2D-Bildes der ersten Umgebung eingestellt wird.
  15. Verfahren zum Verarbeiten von Daten unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Identifizieren eines oder mehrerer 2D-Bildmerkmale innerhalb der ersten Umgebung anhand der 2D-Bilddaten; Verbessern der 3D-Bilddaten, was zu verbesserten 3D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 2D-Bildmerkmale mit mindestens einem oder mehreren 3D-Bildmerkmalen in den 3D-Bilddaten; und Verarbeiten der verbesserten 3D-Bilddaten, um mindestens eines auszuführen von (a) einem Trainieren eines Objekterkennungsmodells mit den verbesserten 3D-Bilddaten, (b) einem Erkennen eines Objekts in den verbesserten 3D-Bilddaten, (c) einem Identifizieren einer von einem Benutzer des Strichcodelesers durchgeführten Aktion, und (d) einem Ändern mindestens eines der 3D-Bildgebungsvorrichtung zugeordneten Parameters.
  16. Verfahren nach Anspruch 15, wobei die 2D-Bilddaten eines von monochromen Bilddaten, Graustufenbilddaten und polychromen Bilddaten umfassen, und wobei das eine oder die mehreren 2D-Bildmerkmale mindestens einen Strichcode und ein oder mehrere geometrische Merkmale eines innerhalb des ersten FOV präsentierten Objekts umfassen.
  17. Verfahren nach Anspruch 16, wobei das eine oder die mehreren 2D-Bildmerkmale den Strichcode enthalten, und wobei das Verbessern der 3D-Bilddaten das Abbilden einer Position des Strichcodes von den 2D-Bilddaten auf die 3D-Bilddaten umfasst.
  18. Verfahren nach Anspruch 16, wobei die 2D-Bilddaten polychrome Bilddaten umfassen, wobei das eine oder die mehreren 2D-Bildmerkmale das eine oder die mehreren geometrischen Merkmale des innerhalb des ersten FOV präsentierten Objekts enthalten, und wobei das Verbessern der 3D-Bilddaten das Abbilden mindestens eines Teils der polychromen Bilddaten auf die 3D-Bilddaten umfasst, basierend zumindest teilweise auf dem einen oder den mehreren geometrischen Merkmalen des Objekts, das innerhalb des ersten FOV präsentiert wird.
  19. Verfahren nach Anspruch 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 3D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 3D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 3D-Bildmerkmalen zugeordnet sind.
  20. Verfahren nach Anspruch 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der mindestens einen oder mehreren 3D-Bildmerkmale umfasst, so dass die Verarbeitung der verbesserten 3D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 3D-Bildmerkmalen zugeordnet sind.
  21. Verfahren nach Anspruch 16, wobei das Verbessern der 3D-Bilddaten ferner das Filtern der 3D-Bilddaten auf der Grundlage eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung umfasst.
  22. Verfahren nach Anspruch 21, wobei der Strichcodeleser ein stationärer Strichcodeleser ist, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient wird, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
  23. Verfahren nach Anspruch 21, wobei der Strichcodeleser ein bi-optischer Strichcodeleser mit einem Produktscanbereich ist, und wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
  24. Verfahren nach Anspruch 15, wobei das eine oder die mehreren 2D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem von der Hand des Bedieners gegriffenen Objekt.
  25. Verfahren nach Anspruch 15, wobei die Verarbeitung der verbesserten 3D-Bilddaten das Identifizieren der vom Bediener durchgeführten Aktion umfasst, und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass kein Strichcode innerhalb der 2D-Bilddaten erkannt wird, Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
  26. Verfahren nach Anspruch 15, wobei das Identifizieren des einen oder der mehreren 2D-Bildmerkmale umfasst: Identifizieren von Umgebungsmerkmalen auf dem 2D-Bild, wobei die Umgebungsmerkmale Merkmale in dem Bild außerhalb eines Objekts sind, das innerhalb des ersten FOV präsentiert wird; Umwandeln der Umgebungsmerkmale in Maskierungsmerkmale, die so konfiguriert sind, dass sie die identifizierten Umgebungsmerkmale in dem 2D-Bild abdecken; und Identifizieren der Maskierungsmerkmale als das eine oder die mehreren 2D-Bildmerkmale.
  27. Verfahren nach Anspruch 15, wobei das Identifizieren eines oder mehrerer 2D-Bildmerkmale umfasst: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und Bestimmen der ein oder mehreren 2D-Bildmerkmale anhand der Objektidentifikation.
  28. Verfahren nach Anspruch 15, wobei die Verarbeitung der verbesserten 3D-Bilddaten zum Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten umfasst: Identifizieren eines Strichcodes in den 2D-Bilddaten, Bestimmen eines Zeitrahmens für ein Strichcode-Erkennungsereignis und Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten, die mit dem Zeitrahmen für das Strichcode-Erkennungsereignis korrespondieren; oder Identifizieren eines Strichcodes in den 2D-Bilddaten, Identifizieren des Objekts in den verbesserten 3D-Bilddaten, das mit dem Strichcode in den 2D-Bilddaten korrespondiert, und bei Identifizierung eines anderen Objekts in dem 3D-Bild, das nicht mit dem Strichcode korrespondiert, Entfernen der anderen Objekte aus den verbesserten 3D-Bilddaten vor dem Trainieren des Objekterkennungsmodells mit den verbesserten 3D-Bilddaten.
  29. Verfahren nach Anspruch 15, wobei der mindestens eine Parameter, der der 3D-Bildgebungsvorrichtung zugeordnet ist, eine projizierte Beleuchtungsstärke der 3D-Bildgebungsvorrichtung, eine projizierte Beleuchtungsrichtung der 3D-Bildgebungsvorrichtung oder eine Beleuchtungsquelle für die 3D-Bildgebungsvorrichtung umfasst.
  30. Verfahren zum Identifizieren eines ordnungsgemäßen Scannens eines Objekts oder eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Bestimmen einer ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten; Bestimmen einer zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten; und Vergleichen der ersten Objektidentifikation mit der zweiten Objektidentifikation und Bestimmen (a) des ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) des nicht ordnungsgemäßen Scannens des Objekts, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt.
  31. Verfahren nach Anspruch 30, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
  32. Verfahren nach Anspruch 30, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst: Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  33. Verfahren nach Anspruch 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst: Bereitstellen der 3D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  34. Verfahren nach Anspruch 30, wobei das Verfahren vor dem Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten ferner umfasst: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten.
  35. Verfahren nach Anspruch 30, wobei das Verfahren vor dem Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
  36. Verfahren nach Anspruch 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst: Bestimmen eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten; und Bestimmen der zweiten Objektidentifikation aus dem einen oder mehreren Farbmerkmalen.
  37. Verfahren nach Anspruch 36, wobei das eine oder die mehreren Farbmerkmale eine Farbe des Objekts umfassen.
  38. Verfahren nach Anspruch 36, wobei das eine oder die mehreren Farbmerkmale einen Farbgradienten des Objekts umfassen.
  39. Verfahren nach Anspruch 30, wobei das Bestimmen der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten umfasst: Bestimmen eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten; und Bestimmen der zweiten Objektidentifikation aus einem oder mehreren geometrischen Merkmalen.
  40. Verfahren nach Anspruch 39, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
  41. Verfahren nach Anspruch 40, wobei die 3D-Bilddaten eine Punktwolke enthalten, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert hat, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und wobei das Bestimmen des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten auf einer ersten Teilmenge der 3D-Bilddaten basiert und nicht auf einer zweiten Teilmenge der 3D-Bilddaten basiert, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
  42. Verfahren nach Anspruch 30, wobei das Verfahren als Reaktion auf das Bestimmen (a) des ordnungsgemäßen Scannens des Objekts ferner die Verarbeitung eines Transaktionsprotokolls umfasst, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf das Bestimmen (b) des nicht ordnungsgemäßen Scannens des Objekts das Verfahren ferner mindestens eines umfasst von: (i) Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
  43. Verfahren zum Identifizieren eines nicht ordnungsgemäßen Scannens des Objekts unter Verwendung eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die dem Strichcodeleser zugeordnet ist und ein zweites FOV hat, das sich zumindest teilweise mit dem ersten FOV überlappt, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des zweiten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Identifizieren eines scanbaren Objekts unter Verwendung der 3D-Bilddaten; und beim Fehlschlagen des Bestimmens einer Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten, Bestimmen eines nicht ordnungsgemäßen Scannens des Objekts und Erzeugen eines Warnsignals.
  44. Verfahren zum Betreiben eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Durchführen einer Gesichtserkennung an den 3D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten; und als Reaktion auf das Identifizieren des Vorhandenseins der Gesichtsdaten, Einstellen mindestens eines Betriebsparameters einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers.
  45. Verfahren nach Anspruch 44, wobei der Strichcodeleser ein Präsentationsstrichcodeleser ist, und wobei das Einstellen des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung das Verringern einer Intensität mindestens einer Beleuchtungsbaugruppe und einer Zielbaugruppe umfasst.
  46. Verfahren nach Anspruch 44, wobei der Strichcodeleser ein Präsentationsstrichcodeleser ist, und wobei das Einstellen des mindestens einen Betriebsparameters der 2D-Bildgebungsvorrichtung das Verhindern der Aktivierung von mindestens einem Teil der 2D-Bildgebungsvorrichtung beinhaltet, bis eine nachfolgende Durchführung der Gesichtserkennung an nachfolgenden 3D-Bilddaten, die einem nachfolgenden 3D-Bild zugeordnet sind, ein weiteres Vorhandensein von Gesichtsdaten in den nachfolgenden 3D-Bilddaten nicht identifizieren kann.
  47. Verfahren nach Anspruch 44, wobei das Verfahren ferner das Erfassen eines 2D-Bildes eines Objekts unter Verwendung der 2D-Bildgebungsvorrichtung, die gemäß dem mindestens einen Betriebsparameter eingestellt ist, und das Dekodieren eines Strichcodes in dem 2D-Bild zur Identifizierung des Objekts umfasst.
  48. Verfahren nach Anspruch 44, wobei das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung umfasst, und wobei das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten umfasst.
  49. Verfahren nach Anspruch 44, wobei die Betriebsparameter ein zweites FOV der 2D-Bildgebungsvorrichtung umfassen.
  50. Verfahren nach Anspruch 44, wobei die Betriebsparameter einen Fokusabstand der 2D-Bildgebungsvorrichtung umfassen.
  51. Verfahren nach Anspruch 44, wobei der mindestens eine Betriebsparameter der 2D-Bildgebungsvorrichtung eine Belichtungszeit, eine Beleuchtungspulsdauer oder ein Bildgebungszoomniveau ist.
  52. Verfahren zum Betreiben eines Strichcodelesers, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten Sichtfeld (FOV), eines 2D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 2D-Bilddaten, die mit dem 2D-Bild korrespondieren; Durchführen einer Gesichtserkennung an den 2D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 2D-Bilddaten; Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung innerhalb des Strichcodelesers und mit einem ersten FOV, eines 3D-Bildes einer zweiten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; und als Reaktion auf das Identifizieren von einem oder mehreren 3D-Bildmerkmalen, die den Gesichtsdaten in 2D-Bilddaten zugeordnet sind, Durchführen mindestens eines von: (a) Bestimmen eines Abstands der Gesichtsdaten von dem Strichcodeleser und selektives Deaktivieren/Aktivieren eines Scannens des Strichcodelesers auf der Grundlage des Abstands, (b) Bestimmen anthropometrischer Daten für die Gesichtsdaten und Bestimmen, ob die Gesichtsdaten von einer Person stammen oder nicht, und (c) Einstellen mindestens eines Betriebsparameters der 2D-Bildgebungsvorrichtung innerhalb des Strichcodelesers.
  53. Verfahren nach Anspruch 52, wobei der mindestens eine Betriebsparameter der 2D-Bildgebungsvorrichtung eine Belichtungszeit, eine Beleuchtungspulsdauer, eine Fokusposition oder ein Bildgebungszoomniveau ist.
  54. Verfahren nach Anspruch 52, wobei das Identifizieren des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten das Bestimmen einer Position der Gesichtsdaten in einem ersten FOV der 3D-Bildgebungsvorrichtung umfasst, und wobei das Einstellen der Betriebsparameter der 2D-Bildgebungsvorrichtung das Einstellen der Betriebsparameter basierend auf der Position der Gesichtsdaten umfasst.
  55. Verfahren zum Betreiben einer Verkaufspunkt-Scanstation mit einem Strichcodeleser, wobei das Verfahren umfasst: Erfassen, unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung, die der Verkaufspunkt-Scanstation zugeordnet ist und ein erstes FOV hat, eines 3D-Bildes einer ersten Umgebung, die innerhalb des ersten FOV erscheint, und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Durchführen einer Gesichtserkennung an den 3D-Bilddaten und Identifizieren eines Vorhandenseins von Gesichtsdaten in den 3D-Bilddaten; Durchführen einer Gesichtsidentifikation anhand der Gesichtsdaten und Authentifizieren der Gesichtsidentifikation; und als Reaktion auf die Authentifizierung der Gesichtsidentifikation, Ausführen mindestens eines von: (a) Erfassen eines zweidimensionalen (2D) Bildes eines Objekts unter Verwendung einer 2D-Bildgebungsvorrichtung innerhalb des Strichcodelesers und Dekodieren eines Strichcodes in dem 2D-Bild, um das Objekt zu identifizieren, und (b) Erfüllen einer Freigabebedingung, um entweder eine Dekodierung eines in dem Bild des 2D-Bildes erfassten Strichcodes zu verhindern oder um zu verhindern, dass ein anschließend gescannter Artikel zu einem Transaktionsprotokoll gescannter Artikel hinzugefügt wird.
  56. Verfahren nach Anspruch 55, wobei das Authentifizieren der Gesichtsidentifikation das Vergleichen der Gesichtsidentifikation mit einer Datenbank für autorisierte Benutzer umfasst.
  57. Verfahren nach Anspruch 55, wobei das Authentifizieren der Gesichtsidentifikation das Bestimmen umfasst, dass sich die Gesichtsdaten an einer akzeptablen Position innerhalb des ersten FOV der 3D-Bildgebungsvorrichtung befinden.
  58. Verfahren nach Anspruch 55, wobei das Verfahren vor der Durchführung der Gesichtserkennung an den 3D-Bilddaten und der Identifizierung des Vorhandenseins der Gesichtsdaten in den 3D-Bilddaten umfasst: Identifizieren von Umgebungsmerkmalen in den 3D-Bilddaten, wobei die Umgebungsmerkmale Merkmale in dem 3D-Bild außerhalb des Objekts sind; und Entfernen von Umgebungsmerkmalen aus den 3D-Bilddaten.
  59. Maschinelles Bildverarbeitungsverfahren, umfassend: Erfassen, unter Verwendung einer zweidimensionalen (2D) Bildgebungsvorrichtung, eines 2D-Bildes eines Objekts, Identifizieren eines Strichcodes des Objekts in dem 2D-Bild und Bestimmen eines oder mehrerer dreidimensionaler (3D) Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild; Erfassen eines 3D-Bildes einer Umgebung unter Verwendung einer dreidimensionalen (3D) Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems und Speichern von 3D-Bilddaten, die mit dem 3D-Bild korrespondieren; Untersuchen der 3D-Bilddaten auf ein Vorhandensein von einem oder mehreren 3D-Objektmerkmalen; als Reaktion auf ein Bestimmen, dass mindestens eines des einen oder der mehreren 3D-Objektmerkmale in den 3D-Bilddaten fehlt, Bereitstellen eines digitalen Fehlererkennungssignals für einen Benutzer des maschinellen Bildverarbeitungssystems; und als Reaktion auf ein Bestimmen, dass mindestens eines des einen oder der mehreren 3D-Objektmerkmale aus den 3D-Bilddaten vorhanden ist, Ändern mindestens eines Parameters, der dem maschinellen Bildverarbeitungssystem zugeordnet ist.
  60. Maschinelles Bildverarbeitungsverfahren nach Anspruch 59, wobei das Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild umfasst: Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der Objektidentifikation aus den Strichcode-Nutzdaten; und Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts anhand der Objektidentifikation.
  61. Maschinelles Bildverarbeitungsverfahren nach Anspruch 59, wobei das Bestimmen des einen oder der mehreren 3D-Objektmerkmale des Objekts aus dem Strichcode in dem 2D-Bild umfasst: Bestimmen einer Ausrichtung des Objekts aus einer Position des Strichcodes in dem 2D-Bild; und Bestimmen des eine oder der mehreren 3D-Objektmerkmale als Teilmenge von verfügbaren 3D-Objektmerkmale anhand der Ausrichtung des Objekts.
  62. Maschinelles Bildverarbeitungsverfahren nach Anspruch 59, wobei das eine oder die mehreren 3D-Objektmerkmale mindestens eines von einem Abmessungsmerkmal und einem Formmerkmal ist.
  63. Maschinelles Bildverarbeitungsverfahren nach Anspruch 59, wobei das Ändern mindestens eines dem maschinellen Bildverarbeitungssystem zugeordneten Parameters das Ändern einer Belichtungszeit einer 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, einer Beleuchtungspulsdauer einer Beleuchtungsbaugruppe des maschinellen Bildverarbeitungssystems, einer Fokusposition der 2D-Bildgebungsvorrichtung des maschinellen Bildverarbeitungssystems, eines Bildgebungszoomniveaus der 2D-Bildgebungsvorrichtung, einer Beleuchtungshelligkeit, einer Beleuchtungswellenlänge oder einer Beleuchtungsquelle des maschinellen Bildverarbeitungssystems umfasst.
  64. Maschinelles Bildverarbeitungsverfahren nach Anspruch 63, wobei die Beleuchtungsquelle eine diffuse Beleuchtungsquelle oder eine direkte Beleuchtungsquelle ist.
  65. Maschinelles Bildverarbeitungsverfahren nach Anspruch 63, wobei das Ändern der Beleuchtungsquelle das Ändern von einer Beleuchtungsquelle, die bei einer ersten Wellenlänge emittiert, zu einer Beleuchtungsquelle, die bei einer zweiten Wellenlänge emittiert, die sich von der ersten Wellenlänge unterscheidet, umfasst.
  66. Scanstation, umfassend: eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie: ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst; einen Strichcode in dem 2D-Bild identifiziert; und das Objekt aus Strichcode-Nutzdaten identifiziert; eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie: ein 3D-Bild des Objekts in einem FOV der 3D-Bildgebungsvorrichtung erfasst; und 3D-Bilddaten aus dem 3D-Bild erzeugt; und einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: ein oder mehrere 3D-Objektmerkmale aus den 3D-Bilddaten zu identifizieren; das eine oder die mehreren 3D-Objektmerkmale anhand einer Identität des Objekts zu bewerten; und als Reaktion auf das Bewerten des einen oder der mehreren 3D-Objektmerkmale anhand der Identität des Objekts einen Betriebsparameter der Scanstation einzustellen.
  67. Scanstation nach Anspruch 66, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Objektmerkmale mindestens eines umfassen von: geometrischen Merkmalen des Objekts, einer Farbe des Objekts, einer Farbabstufung des Objekts.
  68. Scanstation nach Anspruch 66, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Objektmerkmale eine Position des Objekts im FOV der 3D-Bildgebungsvorrichtung umfassen.
  69. Scanstation nach Anspruch 68, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: zu bestimmen, ob die Position des Objekts im FOV oder in der 3D-Bildgebungsvorrichtung in einem akzeptablen Bereich für die Erfassung des 2D-Bildes des Objekts unter Verwendung der 2D-Bildgebungsvorrichtung liegt; und als Reaktion darauf, dass die Position des Objekts im FOV der 3D-Bildgebungsvorrichtung nicht im akzeptablen Bereich liegt, auf ein Erfassen eines nachfolgenden 2D-Bildes durch die 2D-Bildgebungsvorrichtung zu verzichten, bis eine Freigabebedingung erfüllt ist.
  70. Scanstation nach Anspruch 66, wobei der Betriebsparameter mindestens eines von einer Beleuchtungsintensität einer Beleuchtungsvorrichtung in der 2D-Bildgebungsvorrichtung, einem FOV der 2D-Bildgebungsvorrichtung und einem Fokusabstand der 2D-Bildgebungsvorrichtung umfasst.
  71. Scanstation nach Anspruch 66, wobei die Scanstation ein bi-optischer Scanner mit einem Turmabschnitt und einem Plattenabschnitt ist.
  72. Scanstation nach Anspruch 71, wobei sich die 3D-Bildgebungsvorrichtung entweder im Turmabschnitt oder im Plattenabschnitt und die 2D-Bildgebungsvorrichtung im anderen Abschnitt des Turmabschnitts oder des Plattenabschnitts befindet.
  73. Scanstation nach Anspruch 71, wobei sich die 3D-Bildgebungsvorrichtung und die 2D-Bildgebungsvorrichtung beide entweder im Turmabschnitt oder im Plattenabschnitt befinden.
  74. Scanstation nach Anspruch 71, ferner umfassend eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul ein Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist, wobei der Speicher ferner Anweisungen gespeichert hat, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: aus den 3D-Bilddaten eine Position des Objekts relativ zur Wiegeplatte zu bestimmen; und als Reaktion darauf, dass sich die Position des Objekts relativ zur Wiegeplatte in einer Wiegeplatten-Fehlposition befindet, den Betrieb des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand zu ändern, bis eine Freigabebedingung erfüllt ist.
  75. Scanstation nach Anspruch 74, wobei der erste Zustand des Wiegemoduls eine Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts ermöglicht, und wobei der zweite Zustand des Wiegemoduls eine Meldung des Gewichts des auf der Wiegeplatte platzierten Objekts verhindert.
  76. Scanstation nach Anspruch 74, wobei die Fehlposition der Wiegeplatte eine Überhangposition umfasst, bei der mindestens ein Teil des Objekts über die Wiegeplatte hinausragt.
  77. Scanstation nach Anspruch 74, wobei die Fehlposition der Wiegeplatte eine hängende Position umfasst, in der das Objekt zumindest teilweise über der Wiegeplatte hängt.
  78. Scanstation nach Anspruch 71, ferner umfassend eine Wiegeplatte innerhalb des Plattenabschnitts, wobei die Wiegeplatte so konfiguriert ist, dass sie über ein Wiegemodul das Gewicht eines auf der Wiegeplatte platzierten Objekts misst, wobei die Wiegeplatte eine Wiegefläche aufweist, wobei der Speicher ferner Anweisungen gespeichert hat, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: aus den 3D-Bilddaten zu erkennen, dass eine Hand eines Bedieners in Kontakt mit dem Objekt ist; und als Reaktion auf ein Bestimmen, dass die Hand des Bedieners in Kontakt mit dem Objekt ist, einen Betrieb des Wiegemoduls von einem ersten Zustand in einen zweiten Zustand zu ändern, bis eine Freigabebedingung erfüllt ist.
  79. Scanstation, umfassend: eine 2D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld der 2D-Bildgebungsvorrichtung erfasst und 2D-Bilddaten aus dem 2D-Bild erzeugt; eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem Sichtfeld der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt; und einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: die 3D-Bilddaten mit den 2D-Bilddaten zu vergleichen und ein Authentifizierungsverfahren für das Objekt durchzuführen.
  80. Scanstation nach Anspruch 79, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen; eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und (a) ein ordnungsgemäßes Scannen des Objekts festzustellen, wenn die erste Objektidentifikation mit der zweiten Objektidentifikation übereinstimmt, und (b) ein nicht ordnungsgemäßes Scannen des Objekts festzustellen, wenn die erste Objektidentifikation nicht mit der zweiten Objektidentifikation übereinstimmt.
  81. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, durch: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
  82. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten zu bestimmen, durch: Bereitstellen der 2D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der ersten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  83. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch: Bereitstellen der 3D-Bilddaten für ein trainiertes Objekterkennungsmodell; und Erzeugen der zweiten Objektidentifikation des Objekts unter Verwendung des trainierten Objekterkennungsmodells.
  84. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor vor der Bestimmung der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten veranlassen zum: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 2D-Bilddaten auf der Grundlage der 3D-Bilddaten.
  85. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor vor der Bestimmung der zweiten Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten veranlassen zum: Vergleichen der 3D-Bilddaten mit den 2D-Bilddaten; und Entfernen von Umgebungsmerkmalen außerhalb des Objekts aus den 3D-Bilddaten auf der Grundlage der 2D-Bilddaten.
  86. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch: Bestimmen eines oder mehrerer Farbmerkmale des Objekts aus den 3D-Bilddaten; und Bestimmen der zweiten Objektidentifikation aus dem einen oder mehreren Farbmerkmalen.
  87. Scanstation nach Anspruch 86, wobei das eine oder die mehreren Farbmerkmale eine Farbe des Objekts umfassen.
  88. Scanstation nach Anspruch 86, wobei das eine oder die mehreren Farbmerkmale einen Farbgradienten des Objekts umfassen.
  89. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, die zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten zu bestimmen, durch: Bestimmen eines oder mehrerer geometrischer Merkmale des Objekts aus den 3D-Bilddaten; und Bestimmen der zweiten Objektidentifikation aus dem einen oder den mehreren geometrischen Merkmalen.
  90. Scanstation nach Anspruch 89, wobei das Bestimmen der ersten Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten umfasst: Identifizieren eines Strichcodes für das Objekt in den 2D-Bilddaten; und Dekodieren des Strichcodes zur Erzeugung von Strichcode-Nutzdaten und Bestimmen der ersten Objektidentifikation aus den Strichcode-Nutzdaten.
  91. Scanstation nach Anspruch 90, wobei die 3D-Bilddaten eine Punktwolke umfassen, die eine Vielzahl von Datenpunkten umfasst, wobei jeder der Datenpunkte einen Abstandswert hat, der einem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, und wobei das Bestimmen des einen oder der mehreren geometrischen Merkmale des Objekts aus den 3D-Bilddaten auf einer ersten Teilmenge der 3D-Bilddaten basiert und nicht auf einer zweiten Teilmenge der 3D-Bilddaten basiert, wobei die erste Teilmenge der 3D-Bilddaten einer ersten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, innerhalb eines vorbestimmten Bereichs liegt, wobei die zweite Teilmenge der 3D-Bilddaten einer zweiten Teilmenge der Datenpunkte zugeordnet ist, bei denen der jeweilige Abstandswert, der dem Abstand von der 3D-Bildgebungsvorrichtung zugeordnet ist, außerhalb des vorbestimmten Bereichs liegt.
  92. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, als Reaktion auf das Bestimmen (a) des ordnungsgemäßen Scannens des Objekts, den Prozessor zu veranlassen, ein Transaktionsprotokoll zu verarbeiten, um die dem Objekt zugeordneten Daten einzuschließen, und als Reaktion auf das Bestimmen (b) des nicht ordnungsgemäßen Scannens des Objekts mindestens eines auszuführen von: (i) einem Erzeugen einer Warnung, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren, und (ii) einem Verarbeiten des Transaktionsprotokolls, um die dem Objekt zugeordneten Daten nicht einzuschließen.
  93. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: aus den 3D-Bilddaten eine Scanrichtung des Objekts relativ zu der 2D-Bildgebungsvorrichtung zu bestimmen; und als Reaktion darauf, dass die Scanrichtung eine nicht ordnungsgemäße Scanrichtung ist, die Erfassung des 2D-Bildes durch die 2D-Bildgebungsvorrichtung zu verhindern, bis eine Freigabebedingung erfüllt ist.
  94. Scanstation nach Anspruch 79, wobei das Objekt ein Erzeugnis ist, und wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen; als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und einen Typ des Produkts zu bestimmen.
  95. Scanstation nach Anspruch 79, wobei das Objekt ein Erzeugnis ist, und wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten eine oder mehrere Farben des Objekts zu bestimmen; als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und eine Auflistung potenzieller Typen des Erzeugnisses zu bestimmen; und die Auflistung einem Benutzer der Scanstation zur Auswahl zu präsentieren.
  96. Scanstation nach Anspruch 80, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um: als eine erste Objektidentifikation des Objekts unter Verwendung der 2D-Bilddaten das Vorhandensein eines teilweise dekodierbaren Strichcodes zu bestimmen und aus dem teilweise dekodierbaren Strichcode eine Auflistung potenzieller Objektübereinstimmungen zu bestimmen; als eine zweite Objektidentifikation des Objekts unter Verwendung der 3D-Bilddaten eine Form oder Abmessung des Objekts zu bestimmen; und die erste Objektidentifikation mit der zweiten Objektidentifikation zu vergleichen und zu bestimmen, ob eine oder mehrere der Auflistungen potenzieller Objektübereinstimmungen der Form oder Abmessung entsprechen, die in der zweiten Objektidentifikation aus den 3D-Bilddaten angegeben ist.
  97. Scanstation, umfassend: eine zweidimensionale (2D) Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 2D-Bild eines Objekts in einem Sichtfeld (FOV) der 2D-Bildgebungsvorrichtung erfasst und einen Strichcode in dem 2D-Bild identifiziert, um das Objekt aus Strichcode-Nutzdaten zu identifizieren; eine 3D-Bildgebungsvorrichtung, die so konfiguriert ist, dass sie ein 3D-Bild des Objekts in einem FOV der 3D-Bildgebungsvorrichtung erfasst und 3D-Bilddaten aus dem 3D-Bild erzeugt; und einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: das 3D-Bild des Objekts zu erfassen und die 3D-Bilddaten zu erzeugen; ein oder mehrere 3D-Objektmerkmale des Objekts aus den 3D-Bilddaten zu identifizieren; und eines oder mehrere auszuführen von: (a) einem Trainieren eines Objekterkennungsmodells mit den 3D-Bilddaten oder (b) einer Objekterkennung unter Verwendung der 3D-Bilddaten.
  98. System, umfassend: eine zweidimensionale (2D) Bildgebungsvorrichtung, die ein erstes Sichtfeld (FOV) hat und so konfiguriert ist, dass sie ein 2D-Bild einer ersten Umgebung erfasst, die innerhalb des ersten FOV erscheint, wobei das 2D-Bild als 2D-Bilddaten gespeichert wird, die mit dem 2D-Bild korrespondieren; eine dreidimensionale (3D) Bildgebungsvorrichtung mit einem zweiten FOV, das sich zumindest teilweise mit dem ersten FOV überlappt, wobei die 3D-Bildgebungsvorrichtung so konfiguriert ist, dass sie ein 3D-Bild einer zweiten Umgebung erfasst, die innerhalb des zweiten FOV erscheint, wobei das 3D-Bild als 3D-Bilddaten gespeichert wird, die mit dem 3D-Bild korrespondieren; und einen Prozessor und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: ein oder mehrere 3D-Bildmerkmale innerhalb der zweiten Umgebung aus den 3D-Bilddaten zu identifizieren; die 2D-Bilddaten zu verbessern, was zu verbesserten 2D-Bilddaten führt, durch Korrelieren des einen oder der mehreren 3D-Bildmerkmale mit mindestens einem oder mehreren 2D-Bildmerkmalen in den 2D-Bilddaten; und die verbesserten 2D-Bilddaten zu verarbeiten, um mindestens eines auszuführen von: (a) einem Dekodieren eines in den verbesserten 2D-Bilddaten erfassten Strichcodes, (b) einem Trainieren eines Objekterkennungsmodells mit den verbesserten 2D-Bilddaten, (c) einem Erkennen eines Objekts in den verbesserten 2D-Bilddaten und (d) einem Identifizieren einer von einem Bediener des Strichcodelesers durchgeführten Aktion.
  99. System nach Anspruch 98, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale ein oder mehrere geometrische Merkmale eines innerhalb des zweiten FOV präsentierten Objekts umfassen.
  100. System nach Anspruch 98, wobei die 3D-Bilddaten 3D-Punktwolkendaten umfassen und das eine oder die mehreren 3D-Bildmerkmale eine Farbe oder eine Farbabstufung umfassen, die mit einem Objekt korrespondiert, das innerhalb des zweiten FOV präsentiert wird.
  101. System nach Anspruch 98, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um das eine oder die mehreren 3D-Bildmerkmale zu identifizieren, indem das eine oder die mehreren 3D-Bildmerkmale identifiziert werden, die innerhalb eines vorbestimmten Abstandsbereichs von der 3D-Bildgebungsvorrichtung entfernt positioniert sind.
  102. System nach Anspruch 101, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um die 2D-Bilddaten durch Filtern des mindestens einen oder der mehreren 2D-Bildmerkmale zu verbessern, so dass die Verarbeitung der verbesserten 2D-Bilddaten die Verarbeitung von Bilddaten ausschließt, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
  103. System nach Anspruch 101, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor veranlassen, um die 2D-Bilddaten durch Filtern der mindestens einen oder mehreren 2D-Bildmerkmale zu verbessern, so dass die Verarbeitung der verbesserten 2D-Bilddaten auf die Verarbeitung von Bilddaten beschränkt ist, die den mindestens einen oder mehreren 2D-Bildmerkmalen zugeordnet sind.
  104. System nach Anspruch 101, ferner umfassend einen stationären Strichcodeleser, der so konfiguriert ist, dass er innerhalb einer Arbeitsstation positioniert und von dem Bediener bedient werden kann, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einem Rand der Arbeitsstation in der Nähe des Bedieners erstreckt.
  105. System nach Anspruch 101, ferner umfassend einen bi-optischen Strichcodeleser mit einem Produktscanbereich, wobei sich der vorbestimmte Abstandsbereich von der 3D-Bildgebungsvorrichtung bis zu einer distalen Begrenzung des Produktscanbereichs erstreckt.
  106. System nach Anspruch 98, wobei das eine oder die mehreren 3D-Bildmerkmale mindestens eines umfassen von: (i) mindestens einem Teil einer Hand eines Bedieners und (ii) einem Objekt, das von der Hand des Bedieners gegriffen wird.
  107. System nach Anspruch 98, wobei der Speicher ferner Anweisungen speichert, die, wenn sie ausgeführt werden, den Prozessor dazu veranlassen, um: die verbesserten 2D-Bilddaten durch Identifizieren der vom Bediener durchgeführten Aktion zu verarbeiten; und als Reaktion darauf, dass die vom Bediener durchgeführte Aktion als eines von einem Präsentieren eines Objekts innerhalb eines Produktscanbereichs und einem Präsentieren des Objekts in der Nähe des Produktscanbereichs identifiziert wird, und ferner als Reaktion darauf, dass in den 2D-Bilddaten und/oder den verbesserten 2D-Bilddaten kein Strichcode erkannt wird, eine Warnung zu erzeugen, die geeignet ist, ein potenzielles Diebstahlereignis zu signalisieren.
DE112021003033.7T 2020-05-29 2021-05-27 Strichcodeleser mit 3d-kamera(s) Pending DE112021003033T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/888,273 2020-05-29
US16/888,273 US11334739B2 (en) 2020-05-29 2020-05-29 Barcode readers with 3D camera(s)
PCT/US2021/034420 WO2021242959A1 (en) 2020-05-29 2021-05-27 Barcode readers with 3d camera(s)

Publications (1)

Publication Number Publication Date
DE112021003033T5 true DE112021003033T5 (de) 2023-03-16

Family

ID=78706330

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021003033.7T Pending DE112021003033T5 (de) 2020-05-29 2021-05-27 Strichcodeleser mit 3d-kamera(s)

Country Status (11)

Country Link
US (3) US11334739B2 (de)
JP (1) JP2023528391A (de)
KR (1) KR20230017879A (de)
CN (1) CN116134444A (de)
AU (1) AU2021282277B2 (de)
CA (1) CA3180745A1 (de)
DE (1) DE112021003033T5 (de)
ES (2) ES2936433R1 (de)
GB (1) GB2610734A (de)
PL (1) PL444032A1 (de)
WO (1) WO2021242959A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11334739B2 (en) * 2020-05-29 2022-05-17 Zebra Technologies Corporation Barcode readers with 3D camera(s)
US11341698B1 (en) * 2020-12-18 2022-05-24 Tiliter Pty Ltd. Methods and apparatus for simulating images of produce with markings from images of produce and images of markings
JP2022132745A (ja) * 2021-03-01 2022-09-13 東芝テック株式会社 商品登録装置及びプログラム
US20230297990A1 (en) * 2022-03-18 2023-09-21 Toshiba Global Commerce Solutions Holdings Corporation Bi-optic object classification system
US20230316020A1 (en) * 2022-03-31 2023-10-05 Zebra Technologies Corporation Adapters for Handheld Barcode Readers and Assemblies with Vision Cameras
US20240037358A1 (en) * 2022-07-29 2024-02-01 Zebra Technologies Corporation Bi-optic barcode readers and platters for use therewith
US20240046678A1 (en) * 2022-08-02 2024-02-08 Datalogic IP Tech, S.r.l. Direct part marking code reading with multimodal object sensing
JP7335651B1 (ja) 2022-08-05 2023-08-30 株式会社Interior Haraguchi 顔認証決済システムおよび顔認証決済方法
US20240144222A1 (en) * 2022-10-31 2024-05-02 Zebra Technologies Corporation Imaging-based vision analysis and systems and methods associated therewith

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8678287B2 (en) 2008-02-12 2014-03-25 Datalogic ADC, Inc. Two-plane optical code reader for acquisition of multiple views of an object
US8534540B2 (en) * 2011-01-14 2013-09-17 Echostar Technologies L.L.C. 3-D matrix barcode presentation
US9367770B2 (en) * 2011-08-30 2016-06-14 Digimarc Corporation Methods and arrangements for identifying objects
US20140339296A1 (en) * 2013-05-20 2014-11-20 John B. McAdams Barcode, barcode device, system, and method
ITUB20154043A1 (it) 2015-09-30 2017-03-30 Datalogic IP Tech Srl Sistema e metodo di lettura di informazioni codificate
US10041827B2 (en) * 2015-12-21 2018-08-07 Ncr Corporation Image guided scale calibration
US10587858B2 (en) 2016-03-14 2020-03-10 Symbol Technologies, Llc Device and method of dimensioning using digital images and depth data
US9805240B1 (en) 2016-04-18 2017-10-31 Symbol Technologies, Llc Barcode scanning and dimensioning
US10185906B2 (en) * 2016-04-26 2019-01-22 Hand Held Products, Inc. Indicia reading device and methods for decoding decodable indicia employing stereoscopic imaging
US10558844B2 (en) * 2017-12-18 2020-02-11 Datalogic Ip Tech S.R.L. Lightweight 3D vision camera with intelligent segmentation engine for machine vision and auto identification
JP2020035015A (ja) * 2018-08-27 2020-03-05 東芝テック株式会社 チェックアウト装置
US11868842B2 (en) * 2019-09-09 2024-01-09 Zebra Technologies Corporation Point-of-sale scanner signaling to a camera
US11514665B2 (en) * 2020-04-01 2022-11-29 Scandit Ag Mapping optical-code images to an overview image
US11409977B1 (en) * 2020-05-15 2022-08-09 Grabango Co. Universal product labeling for vision-based commerce
US11334739B2 (en) * 2020-05-29 2022-05-17 Zebra Technologies Corporation Barcode readers with 3D camera(s)
JP7504730B2 (ja) * 2020-09-04 2024-06-24 東芝テック株式会社 決済装置
US11809949B2 (en) * 2021-04-30 2023-11-07 Zebra Technologies Corporation Systems and methods to optimize imaging settings and image capture for a machine vision job

Also Published As

Publication number Publication date
PL444032A1 (pl) 2023-08-28
GB2610734A (en) 2023-03-15
ES2967105A2 (es) 2024-04-26
US20210374373A1 (en) 2021-12-02
GB202217959D0 (en) 2023-01-11
US20230222306A1 (en) 2023-07-13
ES2936433A2 (es) 2023-03-16
AU2021282277A1 (en) 2023-01-05
US11334739B2 (en) 2022-05-17
JP2023528391A (ja) 2023-07-04
CA3180745A1 (en) 2021-12-02
WO2021242959A1 (en) 2021-12-02
US11720764B2 (en) 2023-08-08
US20220269876A1 (en) 2022-08-25
CN116134444A (zh) 2023-05-16
KR20230017879A (ko) 2023-02-06
AU2021282277B2 (en) 2024-02-01
ES2936433R1 (es) 2023-07-17

Similar Documents

Publication Publication Date Title
DE112021003033T5 (de) Strichcodeleser mit 3d-kamera(s)
US9495572B2 (en) Identifying one- or two-dimensional bar codes via weighted image data combination
US20110150346A1 (en) Method and Apparatus for Identifying Embossed Characters
DE102020124613A1 (de) Verbesserte auswahl eines objekts von interesse für neuronale netzwerksysteme an verkaufspunken
DE112020005807T5 (de) Verfahren zur optimierung der erkennung unzulässiger produkt-strichcodes
DE112015002368T5 (de) Zielmusterform als abstandssensor für barcodescanner
US20200202091A1 (en) System and method to enhance image input for object recognition system
DE112015003520T5 (de) Erfassen einer Fensterverschlechterung auf einer Barcode scannenden Arbeitsstation
DE112020004895T5 (de) System und verfahren zur situationsadaptiven verbesserung der bilderfassung beim lesen von strichcodes
DE112021003012T5 (de) Selbstkassier-verkaufsstelle
DE102020119430A1 (de) Verkaufspunkt-Scanner mit Signalisierung an eine Kamera
DE102021112659A1 (de) Verwenden von Strichcodes zur Bestimmung der Dimensionen eines Gegenstandes
DE102020117985A1 (de) Ein alternatives verfahren zur interaktion mit einer benutzerschnittstelle unter verwendung von standard-barcodescannern gepaart mit einem augmented reality heads -up-display
DE102020126353A1 (de) Verfahren und systeme zur erkennung von in warenträgern zurückgelassenen artikeln
DE112012004267T5 (de) Verfahren und Vorrichtung zum automatischen Erkennen der Ausrichtung von Freiform-dokumenten mit Strichcodes
DE112017006005T5 (de) System und arbeitsplatz und verfahren zum verhindern von diebstahl eines produkts, das einem elektrooptisch zu lesenden ziel zugeordnet ist
DE102022104360A1 (de) Kameraunterstütztes abseitsplatten-erkennungssystem
DE112015002070T5 (de) Barcode-Bildverarbeitungs-Arbeitsstation mit sequenziell aktivierten Objektsensoren
DE112021003082B4 (de) Verhindern von unbeabsichtigtem nachfolgenden scannen bei symbollesern mit wiegeplatte
DE102015014885A1 (de) System, Vorrichtung und Verfahren unter Verwendung eines Lesegeräts zum Lesen von maschinell lesbaren Symbolen und Schutzschild
DE112019006192T5 (de) Verfahren zur verbesserung der genauigkeit eines trainingsbilddatensatzes eines faltungsneuronalen netzwerks für verlustvermeidungsanwendungen
BE1029780B1 (de) Schätzverfahren für optischen Fluss zur Verbesserung von 1D/2D-Decodierung
DE102021110626A1 (de) Systeme und verfahren zum erkennen von scanvermeidungsereignissen
CN116879292B (zh) 一种光触媒硅藻泥板的质量评估方法及装置
DE112021004038T5 (de) Systeme und verfahren zur optimierung einer leistung eines bildverarbeitungssystems

Legal Events

Date Code Title Description
R012 Request for examination validly filed