DE112019002547T5 - System und verfahren zum bestimmen eines standortes zur platzierung eines pakets - Google Patents

System und verfahren zum bestimmen eines standortes zur platzierung eines pakets Download PDF

Info

Publication number
DE112019002547T5
DE112019002547T5 DE112019002547.3T DE112019002547T DE112019002547T5 DE 112019002547 T5 DE112019002547 T5 DE 112019002547T5 DE 112019002547 T DE112019002547 T DE 112019002547T DE 112019002547 T5 DE112019002547 T5 DE 112019002547T5
Authority
DE
Germany
Prior art keywords
depth data
occlusion
data
parcel
depth
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.)
Granted
Application number
DE112019002547.3T
Other languages
English (en)
Other versions
DE112019002547B4 (de
Inventor
David Korobov
Jay J. Williams
Cuneyt M. Taskiran
Yan Zhang
Sheida Gohari
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 DE112019002547T5 publication Critical patent/DE112019002547T5/de
Application granted granted Critical
Publication of DE112019002547B4 publication Critical patent/DE112019002547B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B7/00Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00
    • G08B7/06Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00 using electric transmission, e.g. involving audible and visible signalling through the use of sound and light sources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20132Image cropping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Auxiliary Devices For And Details Of Packaging Control (AREA)
  • Supply And Installment Of Electrical Components (AREA)

Abstract

Ein Verfahren zum Bestimmen eines Standortes für die Platzierung eines Pakets in einer Bildgebungssteuerung umfasst: Erhalten von Tiefendaten eines Paketraums; Erfassen eines verdeckten Teils der Tiefendaten, die einen Bereich des Paketraums darstellen, der durch eine Okklusion versperrt ist; Abrufen gespeicherter unversperrter Tiefendaten, die den Bereich des Paketraums bei fehlender Okklusion repräsentieren; Ersetzen des verdeckten Teils durch die unversperrten Tiefendaten, um gepatchte Tiefendaten zu erzeugen; Erhalten, basierend auf den gepatchten Tiefendaten, eines Standortes innerhalb des Paketraums zur Platzierung eines Pakets; und Präsentieren eines Hinweises des Standortes.

Description

  • HINTERGRUND
  • Der Transport und die Lagerung von Gegenständen wie Paketen erfordert in der Regel, dass die Pakete manuell durch einen Verlader (auch als Lader bezeichnet), in Container (z.B. Anhänger, Versandbehälter und dergleichen) geladen werden. Bei der Beladung von Containern mit Paketen strebt der Verlader in der Regel eine maximale Ausnutzung des Raumes innerhalb der Container an, um die Anzahl der für die Handhabung der Pakete erforderlichen Container (und die mit jedem Container verbundenen Kosten) zu reduzieren. Die Raumausnutzung wird in der Regel vom Verlader während des Ladevorgangs beurteilt und kann daher je nach Erfahrung des Verladers stark variieren. Versuche, dem Verlader eine automatische Unterstützung bei der Beurteilung der Raumausnutzung und der Auswahl der Paketplatzierungsstandorte zu bieten, können durch die variable Größe und Form der Pakete und der Container sowie durch Schwierigkeiten bei der Gewinnung genauer maschinenverwendbarer Darstellungen des aktuellen Zustands des Containers behindert werden.
  • 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 schematische Darstellung eines Paketplatzierungssystems.
    • 2 ist ein Blockdiagramm bestimmter interner Komponenten einer Rechenvorrichtung im System von 1.
    • 3 ist ein Flussdiagramm eines Verfahrens zur Bestimmung eines Standortes für die Platzierung eines Pakets.
    • 4 stellt eine Ausführungsform eines Verfahrens zur Durchführung von Block 310 des Verfahrens von 3 dar.
    • 5 zeigt die Rauschfilterung, die bei dem Verfahren von 4 angewendet wird.
    • 6 stellt eine Ausführungsform eines Verfahrens zur Durchführung der Blöcke 315 und 320 des Verfahrens von 3 dar.
    • 7 stellt die Ergebnisse der Durchführung des Verfahrens von 6 dar.
    • 8 stellt eine Ausführungsform eines Verfahrens zur Durchführung von Block 335 des Verfahrens von 3 dar.
    • 9 stellt die Ergebnisse der Durchführung des Verfahrens von 8 dar.
  • 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 Dimensionen 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.
  • DETAILLIERTE BESCHREIBUNG
  • Die hier offenbarten Beispiele beziehen sich auf ein Verfahren zur Bestimmung eines Standortes für die Platzierung eines Pakets in einer Bildgebungssteuerung. Das Verfahren umfasst: Erhalten von Tiefendaten eines Paketraums; Erfassen eines verdeckten Teils der Tiefendaten, der einen Bereich des Paketraums repräsentiert, der durch eine Okklusion versperrt ist; Abrufen gespeicherter unversperrter Tiefendaten, die den Bereich des Paketraums bei fehlender Okklusion repräsentieren; Ersetzen des verdeckten Teils durch die unversperrten Tiefendaten, um gepatchte Tiefendaten zu erzeugen; Erhalten, basierend auf den gepatchten Tiefendaten, eines Standortes innerhalb des Paketraums für die Platzierung eines Pakets; und Präsentieren eines Hinweises der Position.
  • Zusätzliche Beispiele, die hierin offenbart werden, sind auf eine Rechenvorrichtung gerichtet, um einen Standort für die Platzierung eines Pakets zu bestimmen, wobei die Rechenvorrichtung umfasst: eine Kommunikationsschnittstelle, die mit einer Datenerfassungsvorrichtung gekoppelt ist; einen Speicher; und eine Bildgebungssteuerung, die mit dem Speicher und der Kommunikationsschnittstelle verbunden ist, wobei die Bildgebungssteuerung konfiguriert ist, um Tiefendaten zu erhalten, die einen Paketraum repräsentieren; einen verdeckten Teil der Tiefendaten zu erfassen, der einen Bereich des Paketraums repräsentiert, der durch eine Okklusion versperrt ist; gespeicherte unversperrte Tiefendaten abzurufen, die den Bereich des Paketraums bei fehlender Okklusion repräsentieren; den verdeckten Teil durch die unversperrten Tiefendaten zu ersetzen, um gepatchte Tiefendaten zu erzeugen; basierend auf den gepatchten Tiefendaten einen Standort innerhalb des Paketraums für die Platzierung eines Pakets zu erhalten; und einen Hinweis auf den Standort zu präsentieren.
  • 1 stellt ein Paketplatzierungssystem 100 gemäß den Lehren dieser Offenbarung dar. Das System 100 umfasst eine Rechenvorrichtung 101 in Kommunikation mit einer Bildgebungsvorrichtung 103 und einer Rückmeldevorrichtung 106 über Kommunikationsverbindungen 107. Das System 100 wird im dargestellten Beispiel in einem Paketraum 110 zum Laden von Paketen eingesetzt. Der Paketraum 110 umfasst einen Container mit Seitenwänden, einer Decke, einem Boden, einer Rückwand und einem Ladeende. Der Paketraum 110 umfasst eine Paketrückwand 112 mit eingeladenen Paketen 114-1, 114-2 usw. (zusammen als eingeladene Pakete 114 und allgemein als eingeladenes Paket 114 bezeichnet), die Rückwand des Containers oder eine Kombination aus den eingeladenen Paketen 114 und der Rückwand, wie von der Bildgebungsvorrichtung 103 sichtbar. Der Paketraum 110 kann ferner eine Vielzahl von gestaffelten oder in einer Warteschlange befindlichen Paketen 116-1, 116-2 usw. (zusammen als Pakete 116 und allgemein als Paket 116 bezeichnet) enthalten. Ein Lader 108 befindet sich im Paketraum 110 und versperrt einen Teil der Paketwand 112. Die Bildgebungsvorrichtung 103 wird daher am Ladeende positioniert, um Bilddaten und Tiefendaten zu erfassen, die den Paketraum 110 repräsentieren. Zum Beispiel kann die Bildgebungsvorrichtung 103 im Container oder an einer Docktür des Containers positioniert werden, die der Paketwand 112 zugewandt ist.
  • Genauer gesagt wird die Bildgebungsvorrichtung 103 zur Erfassung von Bild- und Tiefendaten des Paketraums 110 eingesetzt und kommuniziert zur Nachbearbeitung mit der Rechenvorrichtung 101. Die Vorrichtung 103 umfasst einen Bildsensor 104 (z.B. eine oder mehrere Digitalkameras) und einen Tiefensensor 105 (z.B. einen oder mehrere LIDAR (Light Detection and Ranging)-Sensoren oder eine oder mehrere Tiefenkameras, einschließlich solcher, die strukturierte Lichtmuster, wie Infrarotlicht, und/oder Stereobildsensoren verwenden). Alternativ oder zusätzlich kann die Tiefe auf der Grundlage einer Brennweite der Optik der Bildgebungsvorrichtung 103 bestimmt werden. Im vorliegenden Beispiel ist die Vorrichtung 103 und insbesondere der Tiefensensor 105 so konfiguriert, dass sie Tiefendaten (hier auch als Frame oder Satz von Tiefendaten bezeichnet) einschließlich einer Vielzahl von Tiefenmessungen erfasst, die mit den Paketen 114 oder 116 oder anderen Objekten korrespondieren, wie z.B. dem Lader 108, der die Pakete innerhalb des Paketraums 110 platziert. Jede Messung definiert einen Abstand vom Tiefensensor 105 zu einem Punkt im Paketraum 110. Die Vorrichtung 103, und insbesondere der Bildsensor 104, ist so konfiguriert, dass sie Bilddaten (hier auch als Frame oder Satz von Bilddaten bezeichnet) des Paketraums 110 erfasst. Bei der Vorrichtung 103 kann es sich um eine Tiefenkamera mit einem integrierten Tiefensensor 105 und Bildsensor 104 handeln. In anderen Ausführungsformen können der Bildsensor 104 und der Tiefensensor 105 als unabhängige Sensoren und nicht als eine integrierte Vorrichtung 103 implementiert werden.
  • Bei der Rechenvorrichtung 101 kann es sich um einen Desktop-Computer, einen Laptop-Computer, einen Server, einen Kiosk oder ein anderes geeignetes Gerät handeln. In anderen Beispielen umfasst die Rechenvorrichtung 101 eine mobile Rechenvorrichtung wie ein Tablet, ein Smartphone oder ähnliches. Die Rechenvorrichtung 101 enthält eine spezielle Bildgebungssteuerung, wie z.B. einen Prozessor 120, der speziell dafür ausgelegt ist, die Bildgebungsvorrichtung 103 zu steuern, um Daten (z.B. die oben erwähnten Tiefendaten und/oder Bilddaten) zu erfassen, die erfassten Daten über eine Kommunikationsschnittstelle 124 zu erhalten und die erfassten Daten in einem Archiv 132 in einem Speicher 122 zu speichern. Die Rechenvorrichtung 101 ist ferner so konfiguriert, dass sie verschiedene Nachbearbeitungsvorgänge an den erfassten Daten durchführt, um bestimmte strukturelle Merkmale - wie z.B. den Lader 108 - innerhalb der erfassten Daten zu erkennen. Die Nachbearbeitung der erfassten Daten durch die Rechenvorrichtung 101 wird weiter unten ausführlicher besprochen.
  • Der Prozessor 120 ist mit einem nicht flüchtigen computerlesbaren Speichermedium wie dem oben erwähnten Speicher 122 verbunden, auf dem computerlesbare Befehle zur Ausführung der Steuerung der Vorrichtung 101 zur Datenerfassung sowie die oben erwähnte Nachbearbeitungsfunktionalität gespeichert sind, wie weiter unten näher erläutert wird. Der Speicher 122 enthält eine Kombination aus flüchtigem (z.B. Direktzugriffsspeicher oder RAM) und nichtflüchtigem Speicher (z.B. Nur-Lese-Speicher oder ROM, elektrisch löschbarer programmierbarer Nur-Lese-Speicher oder EEPROM, Flash-Speicher). Der Prozessor 120 und der Speicher 122 umfassen jeweils eine oder mehrere integrierte Schaltungen. In einer Ausführungsform enthält der Prozessor 120 eine oder mehrere zentrale Prozessoreinheiten (CPUs) und/oder Grafikverarbeitungseinheiten (GPUs). In einer Ausführungsform ist eine speziell entworfene integrierte Schaltung, wie z.B. ein Field Programmable Gate Array (FPGA), so ausgelegt, dass sie die hier beschriebenen Funktionen entweder alternativ oder zusätzlich zu der Bildgebungssteuerung/-prozessor 120 und dem Speicher 122 ausführt. Wie Fachleute erkennen werden, enthält das Bildgebungsvorrichtung 103 auch eine oder mehrere Steuerungen oder Prozessoren und/oder FPGAs in Kommunikation mit der Steuerung 120, die speziell zur Steuerung der Datenerfassungsaspekte der Vorrichtung 103 konfiguriert sind. Die Rückmeldevorrichtung 106 enthält ebenfalls eine oder mehrere Steuerungen oder Prozessoren und/oder FPGAs, die mit der Steuerung 120 kommunizieren und speziell konfiguriert sind, um die von der Rechenvorrichtung 101 empfangenen Standortangaben darzustellen (z.B. anzuzeigen). Die Rückmeldevorrichtung 106 kann eine mobile Rechenvorrichtung wie ein Tablet, ein Smartphone oder ein Display wie ein Monitor sein, der peripher zur Rechenvorrichtung 101 ist.
  • Die Rechenvorrichtung 101 enthält auch die oben erwähnte Kommunikationsschnittstelle 124, die mit dem Prozessor 120 verbunden ist. Die Kommunikationsschnittstelle 124 enthält geeignete Hardware (z.B. Sender, Empfänger, Netzschnittstellen-Steuerungen und dergleichen), die es der Rechenvorrichtung 101 ermöglicht, mit anderen Rechenvorrichtungen - insbesondere der Vorrichtung 103 und der Rückmeldeeinrichtung 106 - über die Verbindungen 107 zu kommunizieren. Bei den Verbindungen 107 kann es sich um direkte Verbindungen oder um Verbindungen handeln, die ein oder mehrere Netzwerke durchqueren, darunter sowohl lokale als auch Weitbereichsnetzwerke. Die spezifischen Komponenten der Kommunikationsschnittstelle 124 werden auf der Grundlage der Art des Netzwerks oder anderer Verbindungen ausgewählt, über die die Rechenvorrichtung 101 kommunizieren soll.
  • Der Speicher 122 speichert eine Vielzahl von Anwendungen, von denen jede eine Vielzahl von computerlesbaren Befehlen enthält, die vom Prozessor 120 ausgeführt werden können. Die Ausführung der oben genannten Befehle durch den Prozessor 120 konfiguriert die Rechenvorrichtung 101 so, dass sie verschiedene hier beschriebene Aktionen ausführt. Die im Speicher 122 gespeicherten Anwendungen umfassen eine Steueranwendung 128, die auch als eine Folge von logisch getrennten Anwendungen implementiert werden kann. Im Allgemeinen wird der Prozessor 120 durch die Ausführung der Steueranwendung 128 oder von Teilkomponenten davon so konfiguriert, dass er verschiedene Funktionen implementiert. Der Prozessor 120, der durch die Ausführung der Steueranwendung 128 konfiguriert wird, wird hier auch als Steuerung 120 bezeichnet. Wie sich nun zeigen wird, kann ein Teil oder die gesamte Funktionalität, die durch die unten beschriebenen Steuerung 120 implementiert wird, auch durch vorkonfigurierte Hardware-Elemente (z.B. eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs)) anstatt durch die Ausführung der Steueranwendung 128 durch den Prozessor 120 ausgeführt werden.
  • Im vorliegenden Beispiel wird insbesondere die Rechenvorrichtung 101 über die Ausführung der Steueranwendung 128 durch den Prozessor 120 konfiguriert, um die von der Vorrichtung 103 erfassten Bild- und Tiefendaten zu verarbeiten, um Okklusionen, wie z.B. den Lader 108, im Paketraum 110 zu erkennen und zu ersetzen und um einen Standort für die Platzierung eines Pakets 116 zu bestimmen.
  • Der Speicher 122 speichert Bilddaten und Tiefendaten im Archiv 132. Für jeden Frame (d.h. einen Satz von Tiefenmessungen, die eine Punktwolke bilden, und einen Satz von Bildpixeln, die den Paketraum 110 repräsentieren), der vom Bildsensor 104 und/oder dem Tiefensensor 105 erfasst wird, stellt die Bildgebungsvorrichtung 103 eine Schnittstelle mit der Rechenvorrichtung 101 her, um die aktuellen Bilddaten und die aktuellen Tiefendaten im Archiv 132 zu speichern. Das Archiv 132 speichert auch die Daten der unversperrten Tiefe und die Daten der unversperrten Bilder für das Patchen (Ausbessern) verdeckter Bereiche, wie weiter unten beschrieben wird. Das Archiv 132 speichert auch Paket-Metadaten für die eingeladenen Pakete 114 und die einzuladenden Pakete 116. Zu den Paket-Metadaten gehören Paketabmessungen, Gewicht, Zielort usw.
  • Die Tiefendaten können je nach dem zur Erfassung der Tiefendaten verwendeten Tiefensensor (z.B. durch die Vorrichtung 103) unterschiedliche Formen annehmen. Zum Beispiel kann die Vorrichtung 103 eine Tiefenkamera beinhalten, wie z.B. eine stereoskopische Kamera mit einem Projektor für strukturiertes Licht (der z.B. ein Muster von Infrarotlicht auf den Paketraum projiziert). In solchen Beispielen erfasst die Vorrichtung 103 Sätze von Tiefendaten. Die Tiefendatensätze enthalten jeweils ein Array von Tiefenmessungen (z.B. ein Array von Tiefenwerten in Metern oder einer anderen geeigneten Einheit). Das Array kann auch Intensitätswerte enthalten (z.B. ein Array von Werten, wobei jeder Wert im Bereich von 0 bis 255 liegt), die auf Tiefenwerte abgebildet werden, anstatt die Tiefenwerte selbst. Die Tiefendaten definieren somit eine 3D-Punktewolke. In ähnlicher Weise können die Bilddaten je nach dem Bildsensor, der zur Erfassung der Bilddaten verwendet wird (z.B. durch die Vorrichtung 103), verschiedene Formen annehmen. Beispielsweise kann der Bildsensor 104 Sätze von Bilddaten erfassen, von denen jeder ein Array von Pixeln enthält, wobei jeder Pixel einen Bildwert (z.B. einen RGB-Farbwert) enthält.
  • In einigen Beispielen kann die Vorrichtung 103 so konfiguriert werden, dass mit dem Bildsensor 104 und dem Tiefensensor 105 gleichzeitig Bilddaten und Tiefendaten erfasst werden. Die Vorrichtung 103 kann ferner so konfiguriert werden, dass sie eine Zuordnung von Bilddaten und Tiefendaten im Speicher 132 speichert. Beispielsweise kann das Archiv 132 eine Abbildung von Bildpixeln aus dem Bilddaten-Pixel-Array zu Tiefenpixeln aus dem Tiefendaten-Array speichern. In einigen Beispielen kann die Abbildung eine Eins-zu-eins-Abbildung zwischen den Pixelarrays sein, während in anderen Beispielen die Abbildung eine Eins-zu-viele-Abbildung oder eine Eins-zu-eins- Abbildung sein kann, je nach den jeweiligen Auflösungen des Bildsensors 104 und des Tiefensensors 105. Allgemeiner ausgedrückt werden die Tiefendaten und die Bilddaten so miteinander registriert, dass eine bestimmte Tiefenmessung durch ihre Position im Array der Tiefenmessungen einem bekannten Bildpixel oder einer bekannten Gruppe von Pixeln in den Bilddaten entspricht (d.h. denselben Teil des Paketraums 110 darstellt).
  • Mit Bezug zu 2, bevor die Funktionsweise der Anwendung 128 zur Bestimmung eines Standortes für die Platzierung eines Pakets beschrieben wird, werden bestimmte Komponenten der Anwendung 128 ausführlicher beschrieben. Wie den Fachleuten klar sein wird, können die Komponenten der Anwendung 128 in anderen Beispielen in verschiedene Anwendung getrennt oder in anderen Sätzen von Komponenten kombiniert werden. Einige oder alle der in 2 dargestellten Komponenten können auch als dedizierte Hardwarekomponenten implementiert werden, wie z.B. ein oder mehrere ASICs oder FPGAs. Zum Beispiel werden in einer Ausführungsform zur Verbesserung der Zuverlässigkeit und Verarbeitungsgeschwindigkeit zumindest einige der Komponenten von 2 direkt in die Bildsteuerung 120 programmiert, bei der es sich um einen FPGA oder einen ASIC handeln kann, dessen Schaltkreis- und Speicherkonfiguration speziell für die Optimierung der Bildverarbeitung einer großen Menge von Sensordaten ausgelegt ist, die von der Bildgebungsvorrichtung 103 empfangen werden. In einer solchen Ausführungsform ist ein Teil oder die Gesamtheit der Steueranwendung 128, die unten besprochen wird, ein FPGA oder ein ASIC-Chip.
  • Die Steueranwendung 128 enthält einen Präprozessor 200, der so konfiguriert ist, dass er Bilddaten und Tiefendaten erhält, die den Paketraum 110 repräsentieren, und Filteroperationen an den erfassten Daten durchführt. Die Steueranwendung 128 enthält auch einen Okklusionshandhaber 204, der so konfiguriert ist, dass er einen okkludierten Teil der erfassten Daten erkennt und ersetzt. Die Steueranwendung 128 enthält auch ein Paketplatzierungsmodul 208, das so konfiguriert ist, dass es Paketstördaten herausschneidet, eine 2D-Belegungsmatrix erzeugt und einen Standort für die Platzierung des Pakets auf der Grundlage der Belegungsmatrix erzeugt. Der Standort für die Platzierung des Pakets ist für die Ladequalität und Stabilität sowie für den Platz innerhalb des Paketraums 110 optimiert. Die Steueranwendung 128 enthält auch ein Ausgangsmodul 212, das so konfiguriert ist, dass es einen Hinweis auf den Standort für die Platzierung des Pakets darstellt.
  • Die Funktionalität der Steueranwendung 128 wird nun ausführlicher beschrieben. Um zu 3 zu kommen, wird ein Verfahren 300 zur Bestimmung eines Standortes für die Platzierung eines Paketes gezeigt. Das Verfahren 300 wird in Verbindung mit dessen Durchführung auf dem System 100 und unter Bezugnahme auf die in 2 dargestellten Komponenten beschrieben. Mit anderen Worten, in der nachfolgenden Diskussion ist das Paket ein Paket 116 und der zu bestimmende Standort für die Platzierung ist ein Standort im Paketraum 110. In anderen Beispielen kann der Standort für die Platzierung anderer Pakete in anderen Paketräumen über die Durchführung des Verfahrens 300 bestimmt werden.
  • Im Block 303 ist die Steuerung 120 und insbesondere der Präprozessor 200 so konfiguriert, dass sie einen Strichcode-Scan des einzuladenden Paketes 116 empfängt. Der Strichcode-Scan kann einem Paketbezeichner des Pakets 116 entsprechen. Zum Beispiel kann der Lader 108 einen Strichcode-Scanner betreiben, um einen Strichcode zu scannen, der dem Paket 116 zugeordnet ist. In anderen Beispielen kann der Präprozessor 200 einen anderen Hinweis der Paketkennzeichnung des Pakets 116 erhalten. Der Paketbezeichner kann z.B. manuell eingegeben, aus einer Liste ausgewählt, durch Lesen eines RFID- (Radio Frequency Identification) oder NFC-(Near Field Communication) Etiketts über ein entsprechendes Lesegerät empfangen oder anderweitig dem Präprozessor 200 zur Verfügung gestellt werden. In einigen Beispielen kann der Strichcode-Scanner oder ein anderer Paketbezeichner in die Rückmeldevorrichtung 106 integriert sein (z.B. eine Anwendung zum Scannen von Strichcodes oder eine Paketverwaltungsanwendung eines Smartphones). Der Präprozessor 200 ist so konfiguriert, dass er den Bezeichner im Archiv 132 nachschlägt und Paket-Metadaten wie Paketgewicht, Abmessungen, Zielort usw. erhält, die mit dem Paketbezeichner verknüpft und im Archiv 132 gespeichert sind. In anderen Beispielen können die Paket-Metadaten entfernt gespeichert werden, z.B. auf einem entfernten Server, und die Rechenvorrichtung 101 kann so konfiguriert werden, dass es die Paket-Metadaten vom entfernten Server anfordert.
  • Im Block 305 ist die Steuerung 120 und insbesondere der Präprozessor 200 so konfiguriert, dass sie Bilddaten und Tiefendaten erhält, die vom Bildsensor 104 bzw. vom Tiefensensor 105 erfasst werden und mit dem Paketraum 110 korrespondieren. Mit anderen Worten, im vorliegenden Beispiel korrespondieren die Tiefendaten mit dem Paketraum 110, der die eingeladenen Pakete 114 enthält, die mit der Paketwand 112, den gestapelten und in der Warteschlange befindlichen einzuladenden Paketen 116, dem Container und dem Lader 108 oder anderen Okklusionen im Paketraum 110 assoziiert sind. Die im Block 305 erhaltenen Tiefendaten werden z.B. mit der Bildgebungsvorrichtung 103 erfasst und im Archiv 132 gespeichert. Der Präprozessor 200 ist daher im obigen Beispiel so konfiguriert, dass er die Tiefendaten durch Abrufen der Daten aus dem Archiv 132 erhält. In anderen Beispielen ist der Präprozessor 200 so konfiguriert, dass er die Vorrichtung 103 steuert, um die Bild- und Tiefendaten zu erfassen.
  • Die Steueranwendung 128 wird dann so konfiguriert, dass sie zum Block 310 übergeht. Bei Block 310 wird der Präprozessor 200 so konfiguriert, dass er eine oder mehrere Vorverarbeitungsoperationen für die Tiefendaten ausführt. Im vorliegenden Beispiel umfassen die Vorverarbeitungsoperationen die Kalibrierung der Tiefendaten, die Rauschfilterung und das Verwerfen von Sätzen von Tiefendaten mit einem hohen Anteil an fehlenden Tiefenwerten.
  • Unter Bezugnahme auf 4 wird ein Verfahren 400 zur Durchführung von Vorverarbeitungsoperationen dargestellt.
  • Bei Block 405 bestimmt der Präprozessor 200 einen Anteil der fehlenden Tiefendaten. Zu den fehlenden Tiefendaten können Tiefenmessungen in dem Array gehören, für die kein Tiefenwert erhalten wurde (z.B. aufgrund einer Versperrung, die so nahe am Sensor 105 liegt, dass der Sensor 105 keinen Messwert erhält), oder Tiefenmessungen in dem Array, die verworfen wurden. Wenn sich z.B. ein Lader oder eine andere Okklusion in der Nähe des Sensors 105 befindet, können die erhaltenen Tiefenwerte unter einem vordefinierten Mindestschwellenabstand liegen und daher als ungenau angenommen und verworfen werden.
  • Bei Block 410, wenn der Anteil über einem vordefinierten Schwellenwert liegt (z.B. 50-60%), wird der Präprozessor 200 so konfiguriert, dass er die Tiefendaten verwirft und zu Block 305 des Verfahrens 300 zurückkehrt, um neue Tiefendaten zu erhalten. Wenn der Anteil unter einem vordefinierten Schwellenwert liegt, wird der Präprozessor 200 so konfiguriert, dass er zu Block 415 übergeht.
  • Im Block 415 ist der Präprozessor 200 so konfiguriert, dass er die Tiefendaten kalibriert und die Punktwolke so dreht, dass die Ebene der Paketwand 112 senkrecht zum Betrachtungswinkel der Bildgebungsvorrichtung 103 steht. Im vorliegenden Beispiel verwendet der Präprozessor 200 zwei Iterationen einer RANSAC- (Random Sample Consensus)-Ebenenanpassung. In der ersten Iteration wird die RANSAC-Ebenenanpassung auf den vollständigen Satz von Tiefendaten angewendet, wie sie im Block 305 erhalten wurden, um eine Untermenge von Tiefendaten zu erhalten, die ungefähre Standorte der Hauptebenen darstellen, die den Behälter definieren (d.h. die Behälterseitenwände, den Boden und die Decke). In der zweiten Iteration wird die RANSAC-Ebenenanpassung auf die Untermenge der Tiefendaten angewendet, um eine genauere Ebenenanpassung zu erhalten. Der Präprozessor 200 bestimmt dann einen Winkel einer oder mehrerer der Ebenen (z.B. die Ebene der Rückwand) und vergleicht ihn mit einem voreingestellten Winkel (z.B. 90 Grad zum Tiefensensor 105), um einen Drehwinkel zu bestimmen. Der Präprozessor 200 dreht dann die Punktwolke um den Drehwinkel. Im vorliegenden Beispiel wird also die Ebene der Rückwand so gedreht, dass sie orthogonal zum Kamerawinkel steht.
  • Bei Block 420 ist der Präprozessor 200 so konfiguriert, dass er Rauschen aus den Tiefendaten filtert. Konkret wählt der Präprozessor 200 für einen bestimmten Punkt in der Punktwolke einen Radius und eine Schwellenanzahl von Punkten für die Anwendung eines Radiusausreißerfilters aus. Für den gegebenen Punkt bestimmt der Präprozessor 200, ob es mindestens die Schwellenanzahl von Punkten in der Punktwolke innerhalb einer Kugel gibt, die auf den gegebenen Punkt zentriert ist und den ausgewählten Radius hat. Wenn der gegebene Punkt nicht mindestens die Schwellenanzahl von Punkten in der Punktwolke hat, wobei die Kugel den ausgewählten Radius hat, wird der gegebene Punkt als Rauschen bestimmt, und der Tiefenwert wird verworfen. In einigen Beispielen wird die Rauschfilterung bei Block 420 vor Block 405 durchgeführt, um den Anteil der fehlenden Tiefendaten unter Berücksichtigung des verworfenen Rauschens zu bestimmen.
  • Im vorliegenden Beispiel ist der Präprozessor 200 ferner so konfiguriert, dass er die Parameter des Radiusausreißerfilters auf der Grundlage des Tiefenwerts des ausgewählten Punkts variiert, um den Abstand vom Tiefensensor 105 zu berücksichtigen. Für Punkte, die näher am Tiefensensor 105 liegen, ist der Radius kleiner, und die Schwellenanzahl der Punkte ist höher. Für Punkte, die weiter vom Tiefensensor 105 entfernt sind, ist der Radius größer, und die Schwellenanzahl der Punkte ist niedriger.
  • 5 veranschaulicht eine Anwendung des Ausreißerfilters mit variablem Radius durch den Präprozessor 200. Insbesondere wird der Ausreißerfilter mit variablem Radius auf einen ersten Punkt 512-1 und einen zweiten Punkt 512-2 in einem Paketraum 510 angewendet. Im Beispiel von 5 befindet sich der erste Punkt 512-1 in der Nähe der Paketwand, während der zweite Punkt 512-2 in der Nähe des Ladeendes des Paketraums liegt, so dass der Punkt 512-1 weiter vom Tiefensensor 105 entfernt ist als der Punkt 512-2.
  • 5 zeigt ferner vergrößerte Abbildungen der Regionen 514-1 und 514-2 der Punktwolke, die den ersten Punkt 512-1 bzw. den zweiten Punkt 512-2 enthalten. Da die Region 514-1 weiter vom Tiefensensor 105 entfernt ist als die Region 514-2, ist die Punktwolke der Region 514-1 dünner bestückt und hat eine geringere Tiefenpixeldichte als die Punktwolke der Region 514-2. Das heißt, jeder Punkt in der Punktwolke der Region 514-1 repräsentiert einen größeren physikalischen Bereich als ein Punkt in der Punktwolke der Region 514-2. Daher werden die Radiusausreißerfilter 516-1 und 516-2 variiert, um den Unterschied in der Tiefengranularität der Daten auszugleichen und eine ähnliche Rauschfilterqualität zu erhalten. Zum Beispiel kann der Radiusausreißerfilter 516-1 für den Punkt 512-1 einen Radius r1 von 8 cm und eine Schwellenanzahl von Punkten von 4 haben. Im Beispiel von 5 hat der Punkt 512-1 5 Punkte innerhalb des Radius r1 des Radiusausreißerfilters 516-1, und daher ist der Punkt 512-1 ein gültiger Punkt. Im Gegensatz dazu kann der Radiusausreißerfilter 516-2 für den Punkt 512-2 einen Radius r2 von 2 cm und eine Schwellenanzahl von 50 Punkten haben. Im Beispiel von 5 hat der Punkt 512-2 ebenfalls 5 Punkte innerhalb des Radius r2 des Radiusausreißerfilters 516-2 und gilt daher als Rauschen. Das heißt, da der Punkt 512-2 eine höhere Punktwolken-Pixeldichte hat, wird erwartet, dass für einen gültigen Punkt eine größere Anzahl von Punkten in der Nähe (d.h. innerhalb einer Kugel, die um den Punkt 512-2 zentriert ist) liegt.
  • Um zu 3 zurückzukehren, wird die Steueranwendung 128 dann so konfiguriert, dass sie zu Block 315 übergeht. In Block 315 wird die Steueranwendung 120, genauer gesagt der Okklusionshandhaber 204, konfiguriert, um zu bestimmen, ob ein verdeckter Teil der vorverarbeiteten Tiefendaten erkannt wird. Der verdeckte Teil stellt einen Bereich des Paketraums dar, der durch eine Okklusion, genauer gesagt durch den Lader 108, versperrt wird. Wenn ein verdeckter Teil erkannt wird, fährt die Steueranwendung 128 mit Block 320 fort. Bei Block 320 ist der Okklusionshandhaber 204 so konfiguriert, dass er den verdeckten Teil durch unversperrte Daten ersetzt, um gepatchte Daten zu erzeugen.
  • Um nun zu 6 zu kommen, wird ein Verfahren 600 zum Erkennen und Ersetzen eines verdeckten Teils gezeigt. Insbesondere der Okklusionshandhaber 204 ist so konfiguriert, dass er das Verfahren 600 unter Verwendung der in Block 310 erzeugten vorverarbeiteten Tiefendaten ausführt. Die Durchführung des Verfahrens 600 führt zu einer Sequenz 700 von Bilddaten und Tiefendatenergebnissen, die in 7 dargestellt sind. Dementsprechend werden das Verfahren 600 von 6 und die Sequenz 700 von 7 gemeinsam beschrieben.
  • Im Block 605 ist der Okklusionshandhaber 204 so konfiguriert, dass er Bilddaten 705 erhält, die vom Bildsensor 104 erfasst werden und mit dem Paketraum 110 korrespondieren. Im vorliegenden Beispiel stellen die Bilddaten 705 einen Paketraum mit den Paketen 114 und 116 und einem Lader 108 dar. Die im Block 605 erhaltenen Bilddaten 705 werden z.B. vom Bildsensor 104 gleichzeitig mit den vom Tiefensensor 105 erfassten Tiefendaten erfasst und im Archiv 132 gespeichert. Der Okklusionshandhaber 204 ist daher im obigen Beispiel so konfiguriert, dass er die Bilddaten durch Abrufen der Bilddaten aus dem Archiv 132 erhält.
  • Im Block 610 ist der Okklusionshandhaber 204 so konfiguriert, dass er die im Block 605 erhaltenen Bilddaten 705 zuschneidet, um zugeschnittene Bilddaten 710 zu erzeugen. Insbesondere kann der Okklusionshandhaber 204 die Bilddaten 705 gemäß einem Seitenverhältnis zuschneiden, das von einem Okklusionsdetektor des Okklusionshandhabers 204 erwartet wird. Durch Zuschneiden der Bilddaten und Berücksichtigung des Seitenverhältnisses des Okklusionsdetektors wird die Formverzerrung und Schrumpfung der Bilddaten reduziert.
  • In einigen Beispielen kann der Okklusionshandhaber 204 so konfiguriert werden, dass er bestimmt, ob eine frühere Okklusion in einem früheren Frame erkannt wurde. Beispielsweise kann der Okklusionshandhaber 204 auf frühere Tiefendaten verweisen, die im Archiv 132 gespeichert sind. Wenn eine frühere Okklusion erkannt wurde, setzt der Okklusionshandhaber 204 ein Schnittzentrum auf das Zentrum der früheren Okklusion. Der Okklusionshandhaber 204 legt Zuschnittsabmessungen auf der Grundlage der Abmessungen der früheren Okklusion, einer vordefinierten Mindestauffüllmenge und des vom Okklusionsdetektor erwarteten Seitenverhältnisses fest. Beispielsweise kann für ein System, das Frames mit 3 Frames pro Sekunde (fps) erfasst, die Mindestauffüllmenge 100 Pixel betragen. Bei einer Bildfrequenz von 3 fps und basierend auf einem maximalen Abstand, den ein Mensch in dieser Zeit zurücklegen kann, kann der Okklusionsdetektor 204 aufgrund dieser Mindestauffüllmenge sicher davon ausgehen, dass der Lader 108 in den zugeschnittenen Bilddaten 710 verbleibt. In anderen Beispielen kann bei Systemen, die mit unterschiedlichen Framefrequenzen arbeiten, eine andere Mindestauffüllmenge definiert sein, so dass davon ausgegangen werden kann, dass der Lader 108 in den zugeschnittenen Bilddaten 710 verbleibt. In einigen Beispielen kann die Mindestauffüllmenge auch auf der Grundlage des Tiefenwerts der früheren Okklusion variieren. So verfolgt der Okklusionshandhaber 204 die Okklusion über aufeinanderfolgende Durchführungen des Verfahrens 300 durch die Erfassung separater Frames (z.B. ein Lader, der sich an verschiedene Positionen im Paketraum 110 bewegt). Die Okklusionsverfolgung ermöglicht es dem Okklusionshandhaber 204, zugeschnittene Bilddaten 710 entsprechend dem vom Okklusionsdetektor erwarteten Seitenverhältnis zu liefern, während die Okklusion innerhalb der zugeschnittenen Bilddaten beibehalten wird.
  • Im Beispiel von 7 verfolgen die zugeschnittenen Bilddaten 710 die frühere Okklusion und sind daher um den Punkt 711 zentriert, der das Zentrum der früheren Okklusion darstellt. Die Abmessungen des Zuschnitts werden auf der Grundlage der früheren Okklusion festgelegt und mindestens um die Mindestauffüllmenge aufgefüllt. Die Zuschnittsabmessungen können weiter aufgefüllt werden, um das vom Okklusionsdetektor erwartete Seitenverhältnis zu erreichen.
  • In anderen Beispielen kann der Okklusionshandhaber 204 die Bilddaten gemäß vordefinierten Standardabmessungen und basierend auf einem Zentrum der erfassten Bilddaten zuschneiden. Wenn das System z.B. initialisiert wird, wenn keine frühere Okklusion erkannt wurde (z.B. weil der Lader 108 aus dem Sichtfeld der Bildgebungsvorrichtung 103 bewegt wurde) oder wenn die Okklusionsverfolgung anderweitig nicht verwendet wird (z.B. wenn die Bild-/Tiefendaten nur selten erfasst werden), schneidet der Okklusionshandhaber 204 die Bilddaten gemäß vordefinierten Standardabmessungen um das Zentrum der erfassten Bilddaten und gemäß dem vom Okklusionsdetektor erwarteten Seitenverhältnis zu. Für einen Bildsensor mit einer Auflösung von 1920x1080 können die vordefinierten Standardabmessungen beispielsweise 1000x1000 Pixel betragen.
  • Im Block 615 liefert der Okklusionshandhaber 204 die zugeschnittenen Bilddaten 710 an den Okklusionsdetektor, um eine vorläufige Region 715 zu erzeugen, die den Standort einer Okklusion annähert. Der Okklusionsdetektor akzeptiert Bilddaten mit einer vordefinierten Auflösung. Dementsprechend werden die im Block 610 erzeugten zugeschnittenen Bilddaten 710 auf der Grundlage der vordefinierten Auflösung zugeschnitten. In einigen Beispielen können die zugeschnittenen Bilddaten 710 auf dasselbe Seitenverhältnis zugeschnitten werden, so dass in Block 615 der Okklusionshandhaber 204 die zugeschnittenen Bilddaten 710 verkleinern kann, bevor die zugeschnittenen Bilddaten 710 dem Okklusionsdetektor zur Verfügung gestellt werden. In anderen Beispielen können die zugeschnittenen Bilddaten 710 auf die vordefinierte Auflösung, die vom Okklusionsdetektor akzeptiert wird, zugeschnitten werden. Im Beispiel von 7 ist die durch die vorläufige Region 715 identifizierte Okklusion der Lader 702.
  • Der Okklusionsdetektor kann eine GPU enthalten, die mit Algorithmen des maschinellen Lernens arbeitet, um eine vorläufige Region zu erzeugen, die eine Okklusion darstellt, insbesondere den Lader 108 im Paketraum 110. Der Okklusionsdetektor kann zum Beispiel ein faltendes neuronales Netzwerk wie YOLO (You Only Look Once) oder Darknet verwenden, das so konfiguriert ist, dass es menschliche Figuren identifiziert. In einigen Beispielen kann das neuronale Netz oder ein anderer geeigneter Algorithmus für maschinelles Lernen speziell darauf trainiert werden, den Lader 108 in einer Ladeumgebung wie dem Laderaum 110 zu identifizieren. In einigen Beispielen kann die vorläufige Region 715 zwei oder mehrere Abschnitte umfassen, wobei jeder Abschnitt eine menschliche Figur darstellt, die vom Okklusionsdetektor identifiziert wird.
  • Wenn bei Block 615 keine Okklusion festgestellt wird, wird die Steueranwendung 128 so konfiguriert, dass sie zum Block 325 des Verfahrens 300 übergeht, wie weiter unten beschrieben wird. Wenn eine Okklusion erkannt wird und die vorläufige Region 715 vom Okklusionshandhaber 204 erzeugt wird, fährt die Steueranwendung 128 mit Block 620 fort.
  • Im Block 620 ruft der Okklusionshandhaber 204 eine Untermenge der Tiefendaten 720 ab, die den Bilddaten innerhalb der vorläufigen Region 715 entsprechen. Beispielsweise kann der Okklusionshandler 204 die Abbildung der Bilddaten zu den im Archiv 132 gespeicherten Tiefendaten nachschlagen, um die Tiefendaten 720 abzurufen.
  • Im Block 625 erkennt der Okklusionshandhaber 204 den verdeckten Teil 725 aus der Untermenge der Tiefendaten 720. Insbesondere wählt der Okklusionshandhaber 204 Cluster der Tiefendaten 720 aus, indem er die Tiefendaten 720 mit vordefinierten Okklusionsbezeichnern vergleicht, die strukturelle Eigenschaften einer erwarteten Okklusion definieren. Im Beispiel von 7 können die Okklusionsbezeichner durchschnittliche Höhen-, Breiten- und Tiefenbereiche einer menschlichen Figur enthalten, um Cluster auszuwählen, die den Lader 108 repräsentieren. Zum Beispiel kann der Okklusionshandhaber 204 in einem ersten Schritt euklidische Clusterbildung anwenden, um Kandidatencluster innerhalb der Untermenge 720 der Punktwolke zu finden. In einem zweiten Schritt vergleicht der Okklusionshandhaber 204 die Merkmale der Kandidatencluster mit den Okklusionsbezeichnern für die Auswahl. Insbesondere wählt der Okklusionshandhaber 204 die Cluster gemäß vordefinierten minimalen und maximalen Höhen, Breiten und Tiefen sowie gemäß einer Mindestanzahl von Punkten im Cluster aus. Zum Beispiel kann der Okklusionshandhaber 204 ein einzelnes Cluster mit einer Höhe zwischen 1 Meter (m) und 2 m, einer Breite zwischen 0,5 m und 1 m und einer Tiefe zwischen 0,5 m und 1 m auswählen. In anderen Beispielen kann der Okklusionshandhaber 204 mehr als ein Cluster gemäß menschlichen Körperteilen auswählen (z.B. ein Kopf-Cluster, ein Rumpf-Cluster und ein oder mehrere Extremitäten-Cluster). Somit nähern sich die ausgewählten Cluster (d.h. der verdeckte Teil 725) einer menschlichen Figur an. Im vorliegenden Beispiel wird der verdeckte Teil 725 als Kasten dargestellt. In anderen Beispielen kann der verdeckte Teil 725 jedoch die Bereiche sein, die durch die ausgewählten Cluster dargestellt werden.
  • Wenn die vorläufige Region 715 zwei oder mehrere Abschnitte umfasst, ist der Okklusionshandhaber 204 so konfiguriert, dass er Cluster auswählt, die in jedem Abschnitt eine Annäherung an eine menschliche Figur darstellen. Mit anderen Worten, der Okklusionshandhaber 204 prüft jeden Abschnitt der vorläufigen Region auf einen Lader 702. Wenn im Block 625 keine Cluster ausgewählt werden (d.h. keine Cluster innerhalb der vorläufigen Region erfüllen die Schwellenwerte für den Okklusionsbezeichner), bestimmt der Okklusionshandhaber 204 im Block 315 des Verfahrens 300, dass keine Okklusion erkannt wurde, und fährt mit Block 325 des Verfahrens 300 fort.
  • Im Block 630 ruft der Okklusionshandhaber 204 gespeicherte, unversperrte Tiefendaten ab, die den Bereich des Paketraums bei fehlender Okklusion repräsentieren (d.h. den Bereich, der den Lader 108 enthält). Zum Beispiel ruft der Okklusionshandhaber 204 die im Archiv 132 gespeicherten unversperrten Tiefendaten ab. Auf die Aktualisierung der unversperrten Tiefendaten wird weiter unten näher eingegangen. Insbesondere wird angenommen, dass die Bildgebungsvorrichtung 103 relativ zum Paketraum 110 stationär ist, und daher wird angenommen, dass Pixel mit denselben Pixelkoordinaten im Pixelarray denselben Bereich des Paketraums repräsentieren. Dementsprechend ist der Okklusionshandhaber 204 so konfiguriert, dass er einen Teil 730 der unversperrten Tiefendaten mit den gleichen Pixelkoordinaten wie der verdeckte Teil 725 abruft. In einigen Beispielen kann der Okklusionshandhaber 204 darüber hinaus gespeicherte unversperrte Bilddaten abrufen, die z.B. mit den unversperrten Tiefendaten 730 assoziiert sind, wie sie durch die Abbildung von Bilddaten zu Tiefendaten definiert sind, die im Archiv 132 gespeichert sind. Im vorliegenden Beispiel enthält der Teil 730 ein Paket 114, das durch den Lader 108 verdeckt wurde.
  • Im Block 635 ersetzt der Okklusionshandhaber 204 den verdeckten Teil 725 durch den Teil 730 der unversperrten Tiefendaten, um gepatchte Tiefendaten 735 zu erzeugen. Wo der Okklusionshandhaber 204 die unversperrten Bilddaten abruft, ersetzt der Okklusionshandhaber 204 die mit dem verdeckten Teil assoziierten Bilddaten durch die unversperrten Bilddaten 736. Auf diese Weise erzeugt der Okklusionshandhaber 204 gepatchte Tiefendaten und Bilddaten, die den Paketraum bei fehlender Okklusion darstellen. Die Steueranwendung 128 wird dann so konfiguriert, dass sie zum Block 330 des Verfahrens 300 übergeht.
  • Um zu 3 zurückzukehren, wenn bei Block 315 und insbesondere bei Block 615 des Verfahrens 600 keine Okklusion erkannt wird, wird die Steueranwendung 128 so konfiguriert, dass sie zum Block 325 übergeht. Bei Block 325 ist die Steueranwendung 120 und insbesondere der Okklusionshandhaber 204 so konfiguriert, dass sie bestimmt, ob eine Okklusion in einer Schwellenzahl früherer Sätze von Tiefendaten erkannt wurde. Insbesondere erhält die Steuerung 120 vor der Erfassung der aktuellen Tiefendaten eine Vielzahl von früheren Sätzen von Tiefendaten (z.B. aus früheren Frames). Wenn für die aktuellen Tiefendaten keine Okklusion erkannt wird und für eine Schwellenzahl der mehreren früheren Tiefendatensätze keine Okklusion bestimmt wurde, ist die Steueranwendung 128 so konfiguriert, dass sie mit Block 330 fortfährt. Zum Beispiel wird nach 5 Sekunden ohne Erkennung des Laders 108 (d.h. einer Schwellenzahl von 15 Sätzen von Tiefendaten bei einer Bildfrequenz von 3 fps) angenommen, dass sich der Lader 108 nicht im Paketraum 110 befindet. Im Block 330 speichert der Okklusionshandhaber 204 die aktuellen Tiefendaten (d.h. die ursprünglich erfassten Tiefendaten, in denen keine Okklusion erkannt wurde, oder die gepatchten Daten, wie weiter unten beschrieben) als die unversperrten Tiefendaten. Zusätzlich können die aktuellen Bilddaten als unversperrte Bilddaten gespeichert werden.
  • Wenn z. B. bei Block 315 der Okklusionshandhaber 204 ein falsch-negatives Ergebnis erzeugt (d. h. der Okklusionshandhaber 204 erkennt keine Okklusion, aber es liegt eine Okklusion vor), bietet Block 325 eine Prüfung, um die Wahrscheinlichkeit zu verringern, dass das falsch-negative Ergebnis als aktualisierte unversperrte Daten gespeichert wird, und um die Integrität der unversperrten Tiefendaten zu erhalten. Insbesondere ist es unwahrscheinlich, dass, wenn eine Okklusion im früheren Bild erkannt wurde, die Okklusion das Sichtfeld der Bildgebungsvorrichtung 103 vollständig verlassen hat (z.B. kann sich ein Lader bei einer Bildfrequenz von 3 fps nicht schnell genug bewegen, um in einem Bild vorhanden und im nächsten Bild nicht vorhanden zu sein), daher fährt die Steueranwendung 128 mit Block 305 fort, um neue Tiefendaten zu erhalten. Wenn auf der anderen Seite bei Block 325 für eine Schwellenzahl von Tiefendatensätzen keine Okklusion erkannt wird, kann vernünftigerweise angenommen werden, dass keine Okklusion vorhanden ist (z.B. der Lader hat tatsächlich das Sichtfeld der Bildgebungsvorrichtung 103 verlassen), und daher fährt die Steueranwendung 128 mit Block 330 fort, um die aktuellen Tiefendaten als die unversperrten Tiefendaten zu speichern.
  • In einigen Beispielen kann die Schwellenzahl früherer Sätze von Tiefendaten auf der Grundlage des Abstands der zuletzt erkannten Okklusion zum Rand des Frames und/oder der Häufigkeit der Erfassung von Tiefendaten variiert werden. Wenn sich z.B. ein Lader in der Nähe des Framerandes befindet, ist die Anzahl der Bilder, die benötigt werden, um das Sichtfeld der Bildgebungsvorrichtung 103 zu verlassen, kleiner, als wenn sich der Lader in der Mitte des Frames befindet.
  • Im obigen Beispiel kann das Verfahren 300 immer noch dazu führen, dass in einigen Fällen falsche Negative als unversperrte Daten gespeichert werden (d.h. das Speichern von Bildern, bei denen ein Lader als unversperrte Daten sichtbar ist), was dazu führt, dass die folgenden Bilder mit den „schmutzigen“ unversperrten Daten gepatcht werden. Die Bewegung des Laders innerhalb des Paketraums wird jedoch im Laufe der Zeit dazu führen, dass die „schmutzigen“, unversperrten Daten mit sauberen, unversperrten Daten gepatcht werden.
  • In anderen Beispielen, bei Block 330, aktualisiert der Okklusionshandhaber 204 nur die unversperrten Daten mit gepatchten Daten. Mit anderen Worten, es wird nicht davon ausgegangen, dass Frames, in denen kein Lader erkannt wurde, unversperrte Daten darstellen. In diesem Beispiel kann das Verfahren 300 einen Initialisierungsschritt enthalten, um die ersten erfassten Tiefen- und Bilddaten als die unversperrten Daten zu speichern, wobei davon ausgegangen wird, dass der erste Frame unversperrt ist. Zum Beispiel kann der Initialisierungsschritt beim Einschalten der Rechenvorrichtung 101 durchgeführt werden. Der Initialisierungsschritt kann ferner das Anzeigen einer Nachricht umfassen, z.B. auf der Rückmeldevorrichtung 106, um den Lader anzuweisen, sich außerhalb des Anhängers aufzuhalten, um ein erstes unversperrtes Bild zu erfassen. Die verdeckten Teile nachfolgender Frames werden daher unter Verwendung der unversperrten Daten gepatcht, und die gepatchten Bilder (d.h. die verdeckten Teile werden durch die unversperrten Daten ersetzt) werden als die unversperrten Daten für zukünftige Frames gespeichert.
  • In Block 335 erhält die Steuerung 120 und insbesondere das Paketplatzierungsmodul 208 eine Position für das in Block 303 gescannte Paket.
  • Um nun zu 8 zu kommen, wird ein Verfahren 800 zum Erhalten eines Standortes für das Paket dargestellt. Insbesondere ist das Paketplatzierungsmodul 208 so konfiguriert, dass es das Verfahren 800 unter Verwendung der unversperrten Tiefendaten 735 aus Block 330 durchführt. Die Durchführung des Verfahrens 800 führt zu einer Sequenz 900 von Bilddaten- und Tiefendatenergebnissen, die in 7 dargestellt sind. Dementsprechend wird das Verfahren 800 aus 8 und die Sequenz 900 aus 9 im Tandem beschrieben.
  • In Block 805 erkennt das Paketplatzierungsmodul 208 einen Stördatenteil der unversperrten Tiefendaten. Im vorliegenden Beispiel repräsentieren die unversperrten Tiefendaten den Paketraum 110 einschließlich der Paketwand 112 und einen Paketstördatenteil 905. Das Paketplatzierungsmodul 208 erkennt die Paketwand 112 des Paketraums, z.B. unter Verwendung eines k-Mittelwert-Clusteralgorithmus auf der Punktwolke des Paketraums 110, um verschiedene Objekte (z.B. Pakete 116 oder die Paketwand 112) in der Punktwolke zu identifizieren. Die Paketwand 112 wird dann anhand der Eigenschaften des Objekts identifiziert. Beispielsweise kann die Paketwand 112 als das Objekt oder die Gruppe von Objekten mit den höchsten Tiefenwerten oder das größte Objekt oder andere geeignete Identifikatoren identifiziert werden. Das Paketplatzierungsmodul 208 ist ferner so konfiguriert, dass ein Abstandsgrenzwert festgelegt wird. Beispielsweise kann das Paketplatzierungsmodul 208 einen einzelnen Abstandswert definieren, der repräsentativ für die Paketwand 112 ist, wie sie aus der k-Mittelwert-Clusterbildung identifiziert wurde. Der Abstandswert kann zum Beispiel der durchschnittliche Tiefenwert von Punkten sein, die mit der Paketwand 112 assoziiert sind, oder der Mindestabstandswert von Punkten, die mit der Paketwand 112 assoziiert sind. Das Paketplatzierungsmodul 208 legt dann den Abstandsgrenzwert basierend auf dem Abstandswert der Paketwand und einem Abstandsauffüllwert fest. Der Abstandsauffüllwert kann beispielsweise ein vordefiniertes Maß sein (z.B. 5 cm vor der Paketwand). In anderen Beispielen kann der Abstandsauffüllwert variabel sein, z.B. eine berechnete Standardabweichung aller Punkte in der Punktewolke. In diesem Beispiel kann der Abstandsauffüllwert den Abstand der Paketwand 112 vom Tiefensensor 105 berücksichtigen, indem alle anderen Punkte in der Punktwolke berücksichtigt werden. Das Paketplatzierungsmodul 208 identifiziert die Punkte der unversperrten Tiefendaten, die einen kleineren Abstand als den Abstandsgrenzwert haben. Diese Punkte definieren den Paketstördatenteil 905. In einigen Beispielen kann der Paketstördatenteil 905 gestapelte und in Warteschlangen angeordnete Pakete enthalten. In anderen Beispielen kann der Paketstördatenteil 905 Teile des Containers, einschließlich der Seitenwände, des Bodens und der Decke, umfassen.
  • Im Block 810 schneidet das Paketplatzierungsmodul 208 den Paketstördatenteil 905 heraus, um zugeschnittene Tiefendaten zu erzeugen 910. Da die Pakete an oder in der Nähe der Paketwand 112 geladen werden, liefert der Paketstördatenteil Fremddaten, die für die Platzierung des Pakets nicht relevant sind. Daher erzeugt das Paketplatzierungsmodul 208 die zugeschnittenen Tiefendaten 910 und konzentriert sich dabei auf die Paketwand zur Verarbeitung im Block 815.
  • Im Block 815 erzeugt das Paketplatzierungsmodul 208 eine 2D-Belegungsmatrix auf der Grundlage der zugeschnittenen Tiefendaten 910. Beispielsweise kann das Paketplatzierungsmodul 208 die Tiefenmessungen jedes Punkts in den abgeschnittenen Tiefendaten 910 extrahieren, um eine 2D-Tiefenkarte (d.h. die Belegungsmatrix) zu erzeugen. Das Paketplatzierungsmodul 208 segmentiert dann die Paketwand 112 in die Regionen 915 der Belegungsmatrix. Zum Beispiel können die Regionen 915 im 2D-Raum mit Hilfe einer Mittelwert-Verschiebungs-Segmentierungsfunktion (mean-shift segmentation function) erkannt werden. Insbesondere identifiziert die Mittelwert-Verschiebungs-Segmentierungsfunktion verschiedene Objekte in der 2D-Belegungsmatrix. Im Beispiel von 9 entspricht die Region 915-1 dem Paket 114-1, die Region 915-2 dem Paket 114-2 und die Region 915-3 dem Teil der Rückwand des Containers, vor dem keine eingeladenen Pakete 114 gestapelt sind. Jede Region 915 wird umgewandelt, um Löcher zu schließen und Rauschen zu eliminieren, z. B. durch Anwendung einer morphologischen Erosionsoperation, gefolgt von einer Dilatationsoperation. Die Regionen 915 werden dann in Polygone von 3 oder mehreren Liniensegmenten eingepasst. Das Paketplatzierungsmodul 208 identifiziert im Wesentlichen horizontale Liniensegmente 916, die flache Oberflächen für die Paketplatzierung darstellen.
  • Im Block 820 erhält das Paketplatzierungsmodul 208 eine Position innerhalb des Paketraums für die Platzierung des Pakets. Insbesondere verwendet das Paketplatzierungsmodul 208 die Belegungsmatrix, die Regionen 915 und die horizontalen Liniensegmente 916 unter Berücksichtigung der Paket-Metadaten (z.B. die in Block 303 erhaltenen Paketabmessungen, Gewicht, Zielort usw.), um eine Position für die Platzierung des Pakets zu erhalten.
  • Um zu 3 zurückzukehren, wird die Steueranwendung 128 dann so konfiguriert, dass sie zum Block 340 übergeht. In Block 340 ist die Steueranwendung 120 und insbesondere das Ausgabemodul so konfiguriert, dass sie einen Hinweis der in Block 335 erhaltenen Position präsentiert.
  • Insbesondere ist das Ausgabemodul 212 so konfiguriert, dass es mit der Rückmeldevorrichtung 106 kommuniziert, um den Hinweis darzustellen. In einigen Beispielen kann die Rückmeldevorrichtung ein Smartphone, ein Tablet, ein tragbares Gerät usw. umfassen, und die Präsentation des Hinweises umfasst die Anzeige eines Erweiterte-Realität-Bildes (Augmented-Reality-Image) auf der Vorrichtung. Das heißt, die Vorrichtung 106 zeigt die unversperrten Bilddaten an und überlagert einen visuellen Hinweis, wie z.B. einen Umriss oder ein digital gerendertes Paket an dem in Block 335 erzeugten Standort. In anderen Beispielen kann die Rückmeldevorrichtung 106 eine steuerbare Zeigevorrichtung sein, die so konfiguriert ist, dass sie den Hinweis in den Paketraum projiziert. Zum Beispiel kann die steuerbare Zeigevorrichtung beweglich mit einem Rahmen für die Navigation gekoppelt sein, und das Ausgabemodul 212 kann so konfiguriert sein, dass es die Bewegung der steuerbaren Zeigevorrichtung steuert und lenkt. Die steuerbare Zeigevorrichtung enthält daher auch ein Anzeigeelement, wie z.B. einen Projektor, eine Vielzahl von Laserpointern oder ähnliches, um einen Hinweis des Pakets, wie z.B. einen Umriss oder ein digital gerendertes Paket, direkt auf den Standort im Paketraum 110 zu projizieren. In noch weiteren Beispielen kann die Rückmeldevorrichtung 106 ein Audiogerät umfassen, z.B. Lautsprecher, der an die Rechenvorrichtung 101 angeschlossen oder in ein Tablet, ein Smartphone, ein tragbares Gerät usw. integriert ist. Das Ausgabemodul 212 kann so konfiguriert werden, dass es den Lautsprecher steuert, um eine Audio-Kommunikation als Hinweis zu liefern.
  • Variationen zu den oben genannten Systemen und Verfahren werden in Betracht gezogen. Beispielsweise kann das System 100 in einer Umgebung eingesetzt werden, in der eine Vielzahl von Containern mit einem jeweiligen Paketraum 110 aus einem gemeinsamen Vorrat von Paketen gefüllt werden. Bei einem solchen Einsatz kann das System eine Vielzahl von Bildgebungsvorrichtungen umfassen, die jeweils so konfiguriert sind, dass sie Daten für einen entsprechenden Container erfassen. Darüber hinaus kann die Rechenvorrichtung 101 so konfiguriert werden, dass sie erfasste Daten aus der Vielzahl von Containern parallel verarbeitet und aus jedem der Behälter einen Platzierungsort für ein bestimmtes Paket auswählt.
  • Mit anderen Worten, nach der Durchführung von Block 303 kann die Rechenvorrichtung 101 so konfiguriert werden, dass sie mehrere Instanzen der Blöcke 305-330 parallel ausführt (eine Instanz pro Container). Die Rechenvorrichtung 101 kann ferner so konfiguriert werden, dass sie nach Abschluss der parallelen Instanzen der Blöcke 305-330 die Blöcke 335 und 340 für das einzelne Paket, das in Block 303 gescannt wurde, auf der Grundlage mehrerer verschiedener Tiefenkarten durchführt. Auf diese Weise kann aus einer Vielzahl von Containern ein Standort für ein Paket ausgewählt und angezeigt werden. Der in Block 340 dargestellte Hinweis kann daher nicht nur den ausgewählten Standort innerhalb eines bestimmten Paketraumes 110 umfassen, sondern auch einen Bezeichner, in welchen Paketraum (z.B. einen aus einem Satz vordefinierter Containerbezeichner) das Paket zu legen ist.
  • In weiteren Ausführungsformen kann die Datenerfassungsvorrichtung, anstatt, wie bereits erwähnt, am oder in der Nähe des Ladeendes eines Containers positioniert zu werden, am Lader 108 montiert werden. Beispielsweise kann der Lader mit einer Erweiterte-Realität-Vorrichtung ausgerüstet werden, die nicht nur ein Display, sondern auch eine Tiefenkamera oder andere geeignete Sensoren enthält (z.B. ein Heads-Up-Display mit einem Tiefensensor und einer Kamera). Die Vorrichtung 101 ist so konfiguriert, dass sie den Standort des Laders (genauer gesagt die Erweiterte-Realität-Vorrichtung) zusammen mit den von der Vorrichtung erfassten Tiefen- und Bilddaten erfasst. Eine solche Vorrichtung kann die oben erwähnte fixierte Bildgebungsvorrichtung 103 ergänzen oder ersetzen.
  • 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.
  • 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 „ausgeführt“ ist, ist zumindest auch so ausgeführt, kann aber auch auf Arten ausgeführt sein, die nicht aufgeführt sind.
  • Es versteht sich, dass einige Ausführungsformen von einem oder mehreren generischen oder spezialisierten Prozessoren (oder „Verarbeitungsgeräten“) wie Mikroprozessoren, digitale Signalprozessoren, kundenspezifische Prozessoren und Field-Programmable-Gate-Arrays (FPGAs) und einmalig gespeicherten Programmanweisungen (einschließlich sowohl Software als auch Firmware) umfasst sein können, die den einen oder die mehreren Prozessoren steuern, um in Verbindung mit bestimmten Nicht-Prozessorschaltungen einige, die meisten oder alle der hierin beschriebenen Funktionen des Verfahrens und/oder der Vorrichtung zu implementieren. Alternativ können einige oder alle Funktionen durch eine Zustandsmaschine implementiert sein, die keine gespeicherten Programmanweisungen aufweist, oder in einer oder mehreren anwendungsspezifischen integrierten Schaltungen (ASICs), in denen jede Funktion oder einige Kombinationen von bestimmten Funktionen als benutzerdefinierte Logik implementiert sind. Natürlich kann eine Kombination der beiden Ansätze verwendet werden.
  • Darüber hinaus kann eine Ausführungsform als ein computerlesbares Speichermedium implementiert sein, auf dem computerlesbarer Code gespeichert ist, um einen Computer (der zum Beispiel einen Prozessor umfasst) zu programmieren, um ein Verfahren auszuführen, wie es hierin beschrieben und beansprucht ist. Beispiele solcher computerlesbaren Speichermedien weisen eine Festplatte, eine CD-ROM, eine optische Speichervorrichtung, eine magnetische Speichervorrichtung, einen ROM (Nur-Lese-Speicher), einen PROM (programmierbarer Nur-Lese-Speicher), einen EPROM (löschbarer programmierbarer Nur-Lese-Speicher), einen EEPROM (elektrisch löschbarer programmierbarer Nur-Lese-Speicher) und einen Flash-Speicher auf, sind aber nicht hierauf beschränkt auf. Ferner wird davon ausgegangen, dass ein Durchschnittsfachmann, ungeachtet möglicher signifikanter Anstrengungen und vieler Designwahlen, die zum Beispiel durch verfügbare Zeit, aktuelle Technologie und wirtschaftliche Überlegungen motiviert sind, ohne Weiteres in der Lage ist, solche Softwareanweisungen und -programme und ICs mit minimalem Experimentieren zu generieren, wenn er durch die hierin offenbarten Konzepte und Prinzipien angeleitet wird.
  • 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.

Claims (22)

  1. Verfahren zum Bestimmen eines Standortes zur Platzierung eines Pakets in einer Bildgebungssteuerung, umfassend: Erhalten von Tiefendaten, die einen Paketraum repräsentieren; Erkennen eines verdeckten Teils der Tiefendaten, der einen durch eine Okklusion verdeckten Bereich des Paketraums repräsentiert; Abrufen gespeicherter unversperrter Tiefendaten, die den Bereich des Paketraums bei fehlender Okklusion darstellen; Ersetzen des verdeckten Teils durch die unversperrten Tiefendaten, um gepatchte Tiefendaten zu erzeugen; Erhalten, basierend auf gepatchten Tiefendaten, eines Standortes innerhalb des Paketraums zur Platzierung eines Pakets; und Präsentieren eines Hinweises auf den Standort.
  2. Verfahren von Anspruch 1, ferner umfassend: Erkennen eines Paketstördatenteils der Tiefendaten, wobei der Paketstördatenteil ein oder mehrere gestaffelte oder in einer Warteschlange befindliche Pakete im Paketraum repräsentiert; und Schneiden des Paketstördatenteils aus den Tiefendaten.
  3. Verfahren nach Anspruch 2, wobei das Erkennen des Paketstördatenteils der Tiefendaten umfasst: Erkennen einer Paketwand des Paketraums; Festlegen eines Abstands-Schwellenwerts; und Identifizieren einer oder mehrerer Untermengen der Tiefendaten, die einen kleineren Abstand als den Abstands-Schwellenwert haben, wobei die Untermengen den Paketstördatenteil definieren.
  4. Verfahren nach Anspruch 1, wobei das Erkennen umfasst: Erhalten von Bilddaten des Paketraums; Identifizieren einer vorläufigen Region, die die Okklusion enthält, unter Verwendung der Bilddaten; Abrufen einer Untermenge der Tiefendaten, die den Bilddaten innerhalb der vorläufigen Region entsprechen; und Erkennen des verdeckten Teils innerhalb der Untermenge der Tiefendaten.
  5. Verfahren nach Anspruch 4, wobei das Identifizieren der vorläufigen Region umfasst: Zuschneiden der Bilddaten; und Bereitstellen der zugeschnittenen Bilddaten an einen Okklusionsdetektor zur Erzeugung der vorläufigen Region.
  6. Verfahren nach Anspruch 4, wobei das Erkennen des verdeckten Teils umfasst: Auswählen von Clustern der Tiefendaten durch Vergleichen der Tiefendaten mit vordefinierten Okklusionsbezeichnern, die strukturelle Eigenschaften einer erwarteten Okklusion definieren.
  7. Verfahren nach Anspruch 1, ferner umfassend das Speichern der gepatchten Tiefendaten als die unversperrten Tiefendaten.
  8. Verfahren nach Anspruch 1, ferner umfassend, vor dem Erfassen der Tiefendaten: Erhalten einer Vielzahl von früheren Sätzen von Tiefendaten; Erhalten von Zwischentiefendaten, die den Paketraum repräsentieren; und wenn keine Okklusion für die Zwischentiefendaten erkannt wurde und keine Okklusion für eine Schwellenanzahl der Vielzahl von früheren Tiefendatensätzen erkannt wurde, Speichern der Zwischentiefendaten als die unversperrten Tiefendaten.
  9. Verfahren nach Anspruch 1, ferner umfassend: Bestimmen eines Anteils fehlender Tiefendaten vor dem Erkennen des verdeckten Teils; Erkennen des verdecken Teils, wenn der Anteil unter einem vordefinierten Schwellenwert liegt; und Verwerfen der Tiefendaten, wenn der Anteil über dem vordefinierten Schwellenwert liegt.
  10. Verfahren nach Anspruch 1, wobei das Präsentieren des Hinweises mindestens eines umfasst von: Anzeigen eines Erweiterte-Realität-Bildes, Projizieren des Hinweises über eine steuerbare Zeigevorrichtung, und Bereitstellen einer Audiokommunikation.
  11. Verfahren nach Anspruch 1, ferner umfassend: Empfangen eines Strichcode-Scans des Pakets vor der Standortbestimmung.
  12. Rechenvorrichtung zum Bestimmen eines Standortes zur Platzierung eines Pakets, wobei die Rechenvorrichtung umfasst: eine Kommunikationsschnittstelle, die an eine Datenerfassungsvorrichtung gekoppelt ist; einen Speicher; und eine Bildgebungssteuerung, die mit dem Speicher und der Kommunikationsschnittstelle verbunden ist, wobei die Bildgebungssteuerung konfiguriert ist, um: Tiefendaten zu erhalten, die einen Paketraum repräsentieren; einen verdeckten Teil der Tiefendaten zu erfassen, der einen durch eine Okklusion versperrten Bereich des Paketraums repräsentiert; gespeicherte unversperrte Tiefendaten abzurufen, die den Bereich des Paketraums bei fehlender Okklusion repräsentieren; den verdeckten Teil mit den unversperrten Tiefendaten zu ersetzen, um gepatchte Tiefendaten zu erzeugen; basierend auf den gepatchten Tiefendaten einen Standort innerhalb des Paketraums zur Platzierung eines Pakets zu erhalten; und einen Hinweis auf den Standort zu präsentieren.
  13. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um: einen Paketstördatenteil der Tiefendaten zu erkennen, wobei der Paketstördatenteil ein oder mehrere gestaffelte oder in einer Warteschlange befindliche Pakete im Paketraum repräsentiert; und den Paketstördatenteil aus den Tiefendaten zu schneiden.
  14. Rechenvorrichtung nach Anspruch 13, wobei die Bildgebungssteuerung ferner konfiguriert ist, um den Paketstördatenteil der Tiefendaten zu erkennen durch: Erkennen einer Paketwand des Paketraums; Einstellen eines Abstands-Schwellenwerts; und Identifizieren einer oder mehrerer Untermengen der Tiefendaten, die einen kleineren Abstand als den Abstands-Schwellenwert haben, wobei die Untermengen den Paketstördatenteil definieren.
  15. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um einen Teil zu verdecken durch: Erhalten von Bilddaten des Paketraums; Identifizieren einer vorläufigen Region, die die Okklusion enthält, unter Verwendung der Bilddaten; Abrufen einer Untermenge der Tiefendaten, die den Bilddaten innerhalb der vorläufigen Region entsprechen; und Erkennen des verdeckten Teils innerhalb der Untermenge der Tiefendaten.
  16. Rechenvorrichtung nach Anspruch 15, wobei die Bildgebungssteuerung ferner konfiguriert ist, um die vorläufige Region zu identifizieren durch: Zuschneiden der Bilddaten; und Bereitstellen der zugeschnittenen Bilddaten an einen Okklusionsdetektor zur Erzeugung der vorläufigen Region.
  17. Rechenvorrichtung nach Anspruch 15, bei wobei die Bildgebungssteuerung ferner konfiguriert ist, um den verdeckten Teil zu erkennen durch: Auswählen von Clustern der Tiefendaten durch Vergleichen der Tiefendaten mit vordefinierten Okklusionsbezeichnern, die strukturelle Eigenschaften einer erwarteten Okklusion definieren.
  18. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um die gepatchten Tiefendaten im Speicher als die unversperrten Tiefendaten zu speichern.
  19. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um vor dem Erfassen der Tiefendaten: eine Vielzahl von früheren Sätzen von Tiefendaten zu erhalten; Zwischentiefendaten zu erhalten, die den Paketraum repräsentieren; und die Zwischentiefendaten als die unversperrten Tiefendaten zu speichern, wenn keine Okklusion für die Zwischentiefendaten erkannt wurde und keine Okklusion für eine Schwellenzahl der Vielzahl von früheren Tiefendatensätzen erkannt wurde.
  20. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um: vor dem Erkennen des verdeckten Teils einen Anteil der fehlenden Tiefendaten zu bestimmen; den verdeckten Teil zu erkennen, wenn der Anteil unter einem vordefinierten Schwellenwert liegt; und die Tiefendaten zu verwerfen, wenn der Anteil über dem vordefinierten Schwellenwert liegt.
  21. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um den Hinweis zu präsentieren durch Steuern mindestens eines von: einer Anzeige zum Anzeigen eines Erweiterte-Realität-Bildes, das den Hinweis enthält; einer steuerbaren Zeigevorrichtung zum Projizieren des Hinweises; und einem Lautsprecher, um einen akustischen Hinweis zu erzeugen.
  22. Rechenvorrichtung nach Anspruch 12, wobei die Bildgebungssteuerung ferner konfiguriert ist, um einen Strichcode-Scan des Pakets zu empfangen, bevor der Standort erhalten wird.
DE112019002547.3T 2018-05-18 2019-05-08 System und verfahren zum bestimmen eines standortes zur platzierung eines pakets Active DE112019002547B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/983,325 US10783656B2 (en) 2018-05-18 2018-05-18 System and method of determining a location for placement of a package
US15/983,325 2018-05-18
PCT/US2019/031342 WO2019221994A1 (en) 2018-05-18 2019-05-08 System and method of determining a location for placement of a package

Publications (2)

Publication Number Publication Date
DE112019002547T5 true DE112019002547T5 (de) 2021-03-11
DE112019002547B4 DE112019002547B4 (de) 2023-06-29

Family

ID=67514256

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019002547.3T Active DE112019002547B4 (de) 2018-05-18 2019-05-08 System und verfahren zum bestimmen eines standortes zur platzierung eines pakets

Country Status (8)

Country Link
US (1) US10783656B2 (de)
CN (1) CN112204593B (de)
BE (1) BE1026263B1 (de)
DE (1) DE112019002547B4 (de)
FR (1) FR3081248B1 (de)
GB (1) GB2586424B (de)
MX (1) MX2020011141A (de)
WO (1) WO2019221994A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021118879A1 (de) 2021-07-21 2023-01-26 Zf Cv Systems Global Gmbh Verfahren und System zur Überwachung eines Laderaums

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10867275B1 (en) * 2018-09-17 2020-12-15 Amazon Technologies, Inc. Optimized package loading
US11506483B2 (en) * 2018-10-05 2022-11-22 Zebra Technologies Corporation Method, system and apparatus for support structure depth determination
US11257199B2 (en) * 2018-10-18 2022-02-22 Wisconsin Alumni Research Foundation Systems, methods, and media for detecting manipulations of point cloud data
US11536844B2 (en) * 2018-12-14 2022-12-27 Beijing Voyager Technology Co., Ltd. Dynamic sensor range detection for vehicle navigation
FR3098332B1 (fr) * 2019-07-05 2022-01-07 Fond B Com Procédé et dispositif de détermination de l’amplitude d’un mouvement effectué par un membre d’un corps articulé
US10762331B1 (en) * 2019-10-11 2020-09-01 Zebra Technologies Corporation Three-dimensional (3D) depth and two-dimensional (2D) imaging systems and methods for automatic container door status recognition
US11120280B2 (en) 2019-11-15 2021-09-14 Argo AI, LLC Geometry-aware instance segmentation in stereo image capture processes
CN111062282B (zh) * 2019-12-05 2023-09-29 武汉科技大学 基于改进yolov3模型的变电站指针式仪表识别方法
CN111260544B (zh) * 2020-01-20 2023-11-03 浙江商汤科技开发有限公司 数据处理方法及装置、电子设备和计算机存储介质
CN111582054B (zh) * 2020-04-17 2023-08-22 中联重科股份有限公司 点云数据处理方法及装置、障碍物检测方法及装置
DE102020127881B3 (de) 2020-10-22 2022-02-24 IGZ Ingenieurgesellschaft für logistische Informationssysteme mbH Vorrichtung zur Installation an einem Kommissionier- und/oder Verpackungsarbeitsplatz
US11946796B2 (en) 2021-08-18 2024-04-02 Zebra Technologies Corporation Container load quality monitoring and feedback system
US20230112666A1 (en) * 2021-10-12 2023-04-13 Zebra Technologies Corporation System and Method for Detecting Calibration of a 3D Sensor
US11763439B2 (en) * 2021-10-26 2023-09-19 Zebra Technologies Corporation Systems and methods for assessing trailer utilization

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3140009A (en) 1961-05-31 1964-07-07 Eastman Kodak Co Article storage and retrieval device
US4408782A (en) 1981-01-19 1983-10-11 Merriam, Marshall & Bicknell Graphic means and method for maximizing utilization of cargo space
US5474083A (en) 1986-12-08 1995-12-12 Empi, Inc. Lifting monitoring and exercise training system
US5265006A (en) 1990-12-14 1993-11-23 Andersen Consulting Demand scheduled partial carrier load planning system for the transportation industry
US5430831A (en) 1991-03-19 1995-07-04 Koninklijke Ptt Nederland N.V. Method of packing rectangular objects in a rectangular area or space by determination of free subareas or subspaces
US6332098B2 (en) 1998-08-07 2001-12-18 Fedex Corporation Methods for shipping freight
US6269175B1 (en) 1998-08-28 2001-07-31 Sarnoff Corporation Method and apparatus for enhancing regions of aligned images using flow estimation
US6744436B1 (en) 1999-05-25 2004-06-01 Anthony Chirieleison, Jr. Virtual reality warehouse management system complement
DE10050385A1 (de) 2000-10-12 2002-04-18 Abb Patent Gmbh Verfahren und Vorrichtung zur Füllgraderfassung von Transportbehältern
US20080303897A1 (en) 2000-12-22 2008-12-11 Terahop Networks, Inc. Visually capturing and monitoring contents and events of cargo container
US20020150294A1 (en) 2001-02-02 2002-10-17 Honeywell Federal Manufacturing & Technologies, Llc Automated imaging system and method for concrete quality analysis
US7353181B2 (en) 2001-08-15 2008-04-01 Hewlett-Packard Development Company, L.P. Allocating freight haulage jobs
DE10212590A1 (de) 2002-03-15 2003-10-09 Demag Mobile Cranes Gmbh Optische Einrichtung zur automatischen Be- und Entladung von Containern auf Fahrzeugen
US20040066500A1 (en) 2002-10-02 2004-04-08 Gokturk Salih Burak Occupancy detection and measurement system and method
US7746379B2 (en) 2002-12-31 2010-06-29 Asset Intelligence, Llc Sensing cargo using an imaging device
CN1739119A (zh) 2003-01-17 2006-02-22 皇家飞利浦电子股份有限公司 全深度图采集
US7421112B2 (en) 2004-03-12 2008-09-02 General Electric Company Cargo sensing system
US7455621B1 (en) 2004-08-12 2008-11-25 Anthony Donald D Free-weight exercise monitoring and feedback system and method
US7728833B2 (en) 2004-08-18 2010-06-01 Sarnoff Corporation Method for generating a three-dimensional model of a roof structure
US8009871B2 (en) 2005-02-08 2011-08-30 Microsoft Corporation Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US8130285B2 (en) 2005-04-05 2012-03-06 3Vr Security, Inc. Automated searching for probable matches in a video surveillance system
JP2009501119A (ja) 2005-07-13 2009-01-15 ユナイテッド パーセル サービス オブ アメリカ インコーポレイテッド コンテナ密度を予測するためのシステム及び方法
US7468660B2 (en) 2005-10-04 2008-12-23 Delphi Technologies, Inc. Cargo sensing apparatus for a cargo container
US20070297560A1 (en) 2006-03-03 2007-12-27 Telesecurity Sciences, Inc. Method and system for electronic unpacking of baggage and cargo
US7940955B2 (en) 2006-07-26 2011-05-10 Delphi Technologies, Inc. Vision-based method of determining cargo status by boundary detection
US20080042865A1 (en) 2006-08-09 2008-02-21 Dock Watch, Llc Loading dock monitoring device and method
US7773773B2 (en) 2006-10-18 2010-08-10 Ut-Battelle, Llc Method and system for determining a volume of an object from two-dimensional images
GB2443554A (en) * 2006-11-06 2008-05-07 Goodrich Corp Aircraft cargo monitoring system
US8149126B2 (en) 2007-02-02 2012-04-03 Hartford Fire Insurance Company Lift monitoring system and method
US7667596B2 (en) 2007-02-16 2010-02-23 Panasonic Corporation Method and system for scoring surveillance system footage
US20080204225A1 (en) 2007-02-22 2008-08-28 David Kitchen System for measuring and analyzing human movement
US8091782B2 (en) 2007-11-08 2012-01-10 International Business Machines Corporation Using cameras to monitor actual inventory
AT506887A1 (de) * 2008-05-26 2009-12-15 Tgw Mechanics Gmbh Lagersystem und verfahren zum betreiben desselben
US20150170256A1 (en) 2008-06-05 2015-06-18 Aisle411, Inc. Systems and Methods for Presenting Information Associated With a Three-Dimensional Location on a Two-Dimensional Display
US20100073476A1 (en) 2008-09-24 2010-03-25 Industrial Technology Research Institute Systems and methods for measuring three-dimensional profile
EP2178035A1 (de) 2008-10-17 2010-04-21 Contronix GmbH Verfahren und Anordnung zur Leerraummessung für Lager- oder Transporträume
US8405721B2 (en) 2008-10-21 2013-03-26 Motion Metrics International Corp. Method, system and apparatus for monitoring loading of a payload into a load carrying container
US9020846B2 (en) * 2008-12-19 2015-04-28 United Parcel Service Of America, Inc. Trailer utilization systems, methods, computer programs embodied on computer-readable media, and apparatuses
DE102009011287B4 (de) 2009-03-02 2022-12-01 Kuka Roboter Gmbh Automatisierte Palettierung stabiler Paketstapel
US8269616B2 (en) 2009-07-16 2012-09-18 Toyota Motor Engineering & Manufacturing North America, Inc. Method and system for detecting gaps between objects
EP2302564A1 (de) 2009-09-23 2011-03-30 Iee International Electronics & Engineering S.A. Dynamische Echtzeitreferenzbilderzeugung für ein Entfernungsbildgebungssystem
US7961910B2 (en) 2009-10-07 2011-06-14 Microsoft Corporation Systems and methods for tracking a model
US8725273B2 (en) 2010-02-17 2014-05-13 Irobot Corporation Situational awareness for teleoperation of a remote vehicle
US8718393B2 (en) 2010-07-28 2014-05-06 Shenzhen Institutes Of Advanced Technology Chinese Academy Of Sciences Method for reconstruction of urban scenes
US8346056B2 (en) 2010-10-14 2013-01-01 Honeywell International Inc. Graphical bookmarking of video data with user inputs in video surveillance
KR101752690B1 (ko) 2010-12-15 2017-07-03 한국전자통신연구원 변이 맵 보정 장치 및 방법
US8488888B2 (en) 2010-12-28 2013-07-16 Microsoft Corporation Classification of posture states
RU2630749C2 (ru) * 2011-03-17 2017-09-12 Патрик КАМПБЕЛЛ Система слежения за товарами на полках (стп)
US9171277B2 (en) 2011-05-04 2015-10-27 Victaulic Company Generation of plans for loading and unloading a container
US8873835B2 (en) 2011-11-30 2014-10-28 Adobe Systems Incorporated Methods and apparatus for correcting disparity maps using statistical analysis on local neighborhoods
EP2664553B1 (de) 2012-05-03 2017-09-20 Matthias Ehrat Verfahren zum Einlegen von Einzelprodukten in Behälter in einer Roboterstrasse
US9779546B2 (en) 2012-05-04 2017-10-03 Intermec Ip Corp. Volume dimensioning systems and methods
US10158842B2 (en) 2012-06-20 2018-12-18 Honeywell International Inc. Cargo sensing detection system using spatial data
CN104662589B (zh) * 2012-08-21 2017-08-04 派力肯影像公司 用于使用阵列照相机捕捉的图像中的视差检测和校正的系统和方法
US9838669B2 (en) 2012-08-23 2017-12-05 Stmicroelectronics (Canada), Inc. Apparatus and method for depth-based image scaling of 3D visual content
US9514522B2 (en) * 2012-08-24 2016-12-06 Microsoft Technology Licensing, Llc Depth data processing and compression
JP5296913B1 (ja) * 2012-10-02 2013-09-25 株式会社小松製作所 エンジンユニット
CN104903922B (zh) * 2012-10-04 2018-12-18 亚马逊科技公司 在库存支架处填充订单
DE102013209362A1 (de) 2013-05-21 2014-11-27 Krones Ag Überwachung und Steuerung einer Transportvorrichtung für Behälter
US20140372182A1 (en) * 2013-06-17 2014-12-18 Motorola Solutions, Inc. Real-time trailer utilization measurement
US20140372183A1 (en) 2013-06-17 2014-12-18 Motorola Solutions, Inc Trailer loading assessment and training
US20150130592A1 (en) * 2013-11-13 2015-05-14 Symbol Technologies. Inc. Package-loading system
US20150241209A1 (en) * 2014-02-25 2015-08-27 Astronics Advanced Electronic Systems Corp. Apparatus and method to monitor the occupied volume within a fixed or variable volume
US9626766B2 (en) 2014-02-28 2017-04-18 Microsoft Technology Licensing, Llc Depth sensing using an RGB camera
CN106687885B (zh) 2014-05-15 2020-03-03 联邦快递公司 用于信使处理的可穿戴设备及其使用方法
US9460524B1 (en) 2014-05-30 2016-10-04 Amazon Technologies, Inc. Estimating available volumes using imaging data
US9460562B2 (en) * 2015-01-09 2016-10-04 International Business Machines Corporation Providing volume indicators based on received images of containers
US20160238374A1 (en) 2015-02-18 2016-08-18 Fedex Corporate Services, Inc. Systems, apparatus, and methods for quantifying space within a container using a removable scanning sensor node
US10878364B2 (en) 2015-02-18 2020-12-29 Fedex Corporate Services, Inc. Managing logistics information related to a logistics container using a container interface display apparatus
US9940730B2 (en) 2015-11-18 2018-04-10 Symbol Technologies, Llc Methods and systems for automatic fullness estimation of containers
US10713610B2 (en) * 2015-12-22 2020-07-14 Symbol Technologies, Llc Methods and systems for occlusion detection and data correction for container-fullness estimation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021118879A1 (de) 2021-07-21 2023-01-26 Zf Cv Systems Global Gmbh Verfahren und System zur Überwachung eines Laderaums

Also Published As

Publication number Publication date
BE1026263A1 (nl) 2019-12-04
BE1026263B1 (nl) 2020-08-14
GB202017981D0 (en) 2020-12-30
FR3081248A1 (fr) 2019-11-22
DE112019002547B4 (de) 2023-06-29
US10783656B2 (en) 2020-09-22
WO2019221994A1 (en) 2019-11-21
US20190355144A1 (en) 2019-11-21
FR3081248B1 (fr) 2022-06-24
MX2020011141A (es) 2022-07-20
GB2586424A (en) 2021-02-17
CN112204593B (zh) 2021-10-29
CN112204593A (zh) 2021-01-08
GB2586424B (en) 2021-09-08
BE1026263A9 (nl) 2020-01-07

Similar Documents

Publication Publication Date Title
DE112019002547B4 (de) System und verfahren zum bestimmen eines standortes zur platzierung eines pakets
DE112018002314T5 (de) Verfahren und vorrichtung zur erkennung eines objektstatus
DE102018006765B4 (de) Verfahren und system(e) für das management von frachtfahrzeugen
DE102018120487A1 (de) Verfahren und vorrichtung zur kantenerkennung von auflageflächen
DE112016006583T5 (de) Vorrichtung und Verfahren zur Dimensionierung unter Verwendung von digitalen Bildern und Tiefendaten
DE112016006366T5 (de) Verfahren und systeme zur verarbeitung von punktwolkendaten mit einem linienscanner
DE112019001788T5 (de) Verfahren, system und vorrichtung zum korrigieren von transluzenzartefakten in daten, die eine trägerstruktur darstellen
DE112020005377B4 (de) Systeme und verfahren zur automatischen kamerainstallationsführung
EP3299995A1 (de) Bildanalysesystem für landwirtschaftliche arbeitsmaschinen
DE112020003332B4 (de) Dreidimensionale (3D) Tiefenbildgebungssysteme und -Verfahren zur dynamischen Container-Autokonfiguration
DE112018006554T5 (de) Systeme und verfahren zum bestimmen der kommerziellen anhängerbefüllung
DE102013206153A1 (de) Verfahren und system zur robusten neigungseinstellung und zum zuschneiden von nummernschildbildern
DE102014011821A1 (de) Vorrichtung und Verfahren zur Volumenbestimmung eines durch ein Flurförderzeug bewegten Objekts
DE112013004489T5 (de) Laserscanner mit Dynamischer Einstellung der Winkel-Abtastgeschwindigkeit
DE102009051826A1 (de) Verfahren zum Vergleichen der Ähnlichkeit von 3D-bildlichen Objekten
EP2124194B1 (de) Verfahren zur Erkennung von Objekten
DE112016005287T5 (de) Verfahren und systeme zur behälter-vollheitsschätzung
DE102020127732A1 (de) Dreidimensionale (3d) tiefenbildgebungssysteme und -verfahren zur automatischen bestimmung einer versandcontainerfüllung basierend auf bildgebungsvorlagen
BE1029791B1 (de) System und verfahren zum detektieren der kalibrierung eines 3d- sensors
DE112018005976T5 (de) Berechnung der paketwanddichte beim beladen von kommerziellen anhängern
DE112016006213T5 (de) System und Verfahren zum Fusionieren von Ausgängen von Sensoren, die unterschiedliche Auflösungen aufweisen
DE102020124613A1 (de) Verbesserte auswahl eines objekts von interesse für neuronale netzwerksysteme an verkaufspunken
DE102021114078A1 (de) Detektieren dreidimensionaler Strukturmodelle zur Laufzeit in Fahrzeugen
DE112021002519T5 (de) Referenzoberflächenerkennung zur mobilen bemessung
DE112019006132T5 (de) Verfahren, system und vorrichtung zur hilfsetikett-erkennung und -zuordnung

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: G06K0009620000

Ipc: G06V0030190000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06V0030190000

Ipc: G06V0020520000

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final