DE112017006429T5 - Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten - Google Patents

Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten Download PDF

Info

Publication number
DE112017006429T5
DE112017006429T5 DE112017006429.5T DE112017006429T DE112017006429T5 DE 112017006429 T5 DE112017006429 T5 DE 112017006429T5 DE 112017006429 T DE112017006429 T DE 112017006429T DE 112017006429 T5 DE112017006429 T5 DE 112017006429T5
Authority
DE
Germany
Prior art keywords
representation
image
model
controller
scene
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
DE112017006429.5T
Other languages
English (en)
Inventor
Bo Fu
Yan Zhang
Ye Gu
Jay J. Williams
Kevin J. O'Connell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Symbol Technologies LLC
Original Assignee
Symbol Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Symbol Technologies LLC filed Critical Symbol Technologies LLC
Publication of DE112017006429T5 publication Critical patent/DE112017006429T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • 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
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • 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/10024Color image
    • 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/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30112Baggage; Luggage; Suitcase
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten sind angegeben. Eine Steuerung: empfängt von einem oder mehreren Sensoren eine 3D-Darstellung einer Szene, die ein durch ein 3D-Modell dargestelltes Objekt umfasst; bestimmt eine Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleich des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; bestimmt einen ersten Teil der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen entsprechenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert ist; Segmentieren des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung.

Description

  • GEBIET DER OFFENBARUNG
  • Diese Offenbarung bezieht sich im Allgemeinen auf Bildverarbeitungssysteme und insbesondere auf Verfahren, Systeme und Vorrichtungen zur Segmentierung von Objekten.
  • HINTERGRUND
  • Transport- und Logistiksysteme umfassen Planungsvorgänge, die die Effizienz und Genauigkeit bestimmter Lieferdienste verbessern. Wenn beispielsweise eine Vielzahl von Objekten (z. B. Pakete) mit einem Gabelstapler und dergleichen in einen Container (z. B. Lieferwagen) geladen werden sollen, kann ein Transport- und Logistiksystem bestimmen, welche Objekte über welchen Container transportiert werden sollen und wie die Objekte in die Container geladen werden sollen. Solche Systeme sind besser in der Lage, die Planungsoperationen durchzuführen, indem sie Kenntnisse über eine oder mehrere Dimensionen der zu transportierenden Objekte erlangen. Eine solche Dimensionierung ist kompliziert, wenn sich die Objekte auf einem Fahrzeug befinden, wie beispielsweise einem Gabelstapler und dergleichen.
  • Figurenliste
    • 1 zeigt ein beispielhaftes System zum Segmentieren eines Objekts.
    • 2 zeigt eine beispielhafte Plattform zum Segmentieren eines Objekts.
    • 3 ist ein Flussdiagramm, das ein beispielhaftes Verfahren zum Segmentieren eines Objekts darstellt.
    • 4 zeigt eine beispielhafte dreidimensionale Darstellung einer Szene, die ein zu segmentierendes Objekt umfasst.
    • 5 zeigt ein beispielhaftes dreidimensionales Modell eines Fahrzeugs, das zum Segmentieren eines Objekts verwendet wird.
    • 6 zeigt ein beispielhaftes zweidimensionales Bild, das als Vorlage für das Segmentieren eines Objekts verwendet wird.
    • 7 zeigt einen beispielhaften Merkmalsabgleich zwischen einem beispielhaften zweidimensionalen Bild und einem beispielhaften dreidimensionalen Modell.
    • 8 zeigt einen beispielhaften Merkmalsabgleich zwischen einem beispielhaften zweidimensionalen Bild und einer beispielhaften dreidimensionalen Darstellung einer Szene, die ein zu segmentierendes Objekt umfasst.
    • 9 zeigt eine beispielhafte kommutative Merkmalsabstimmung eines beispielhaften dreidimensionalen Modells und einer beispielhaften dreidimensionalen Darstellung einer Szene, die ein zu segmentierendes Objekt umfasst.
    • 10 zeigt eine beispielhafte Segmentierung eines Objekts unter Verwendung einer beispielhaften Begrenzungsbox.
    • 11 zeigt einen beispielhaften Teil eines segmentierten Objekts, das zu dimensionierende Elemente umfasst.
    • 12 ist ein Flussdiagramm, das ein beispielhaftes Verfahren zum Bestimmen eines dreidimensionalen Modells darstellt.
    • 13 zeigt eine beispielhafte Implementierung des Verfahrens aus 12.
    • 14 ist ein Flussdiagramm, das ein alternatives beispielhaftes Verfahren zum Segmentieren eines Objekts darstellt.
    • 15 ist ein Flussdiagramm, das ein alternatives beispielhaftes Verfahren zum Segmentieren eines Objekts darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • Fortschritte in der Kommunikationstechnologie, wie z. B. der internetbasierte Einkauf und die Bestellung, haben die Zahl der Verbraucher und Unternehmen erhöht, die auf eine genaue und rechtzeitige Lieferung von Waren und Materialien angewiesen sind. Dementsprechend haben sich die Anforderungen an die mit der Erbringung solcher Dienste Beauftragten erhöht. Neben größeren Volumina an zu liefernden Paketen haben sich die zugeteilten Lieferzeiten zur Bedienung der Nachfrage verkürzt, da die Transport- und Logistikindustrie wächst und der Wettbewerb intensiver wird. Darüber hinaus arbeiten viele Unternehmen mit Garantien in Bezug auf die genaue und rechtzeitige Lieferung von Paketen, wodurch die Bedeutung einer genauen und rechtzeitigen Ausführung noch erhöht wird.
  • Um diese und andere Herausforderungen zu bewältigen, suchen Transport- und Logistikeinheiten nach Verbesserungen in verschiedenen Aspekten der verschiedenen Abläufe. Der Prozess des Verladens von Paketen in Container (z. B. Lieferwagenanhänger) umfasst beispielsweise das Bestimmen, welche Pakete in welche Container verladen werden sollen, das Bestimmen einer bevorzugten räumlichen Anordnung der Pakete in den Containern, das Übermitteln von Daten an Verlader (z. B. Personen oder Maschinen, die damit beauftragt sind, die Pakete physisch in die Container zu legen) und das Verfolgen von Informationen bezüglich der zu verladenden Pakete. Einige dieser Vorgänge umfassen das Bestimmen oder Erhalten eines oder mehrerer Merkmale der Pakete, wie beispielsweise ein Gewicht eines Pakets, eine Form eines Pakets und/oder eine oder mehrere Dimensionen eines Pakets. Das Verfahren zum Messen oder Erhalten einer oder mehrerer Dimensionen eines Objekts, wie beispielsweise eines Pakets, wird manchmal als Dimensionierung bezeichnet.
  • Das Dimensionieren jedes Pakets, das in einen Container geladen werden soll, kostet jedoch wertvolle Zeit. Um die Zeit für die Dimensionierung von Paketen zu verkürzen, verwenden einige Systeme Maschinen wie Scanner oder Bildgeber, um Messungen zu erhalten. In bekannten Systemen, die Maschinen zum Erhalten von Messungen verwenden, sind die abzubildenden oder zu scannenden Pakete stationär und von anderen Objekten isoliert, aufgrund der Herausforderungen und Komplexitäten, die mit dem zu dimensionierenden Objekt in der Nähe (z. B. anstoßend an oder aufliegend auf) anderer Objekte (z. B. Gabeln eines Gabelstaplers) zusammenhängen. Solche bekannten Systeme verursachen einen zusätzlichen Zeit- und Ressourcenverbrauch in Verbindung mit dem Isolieren der Pakete von anderen Objekten, bevor sie dimensioniert werden.
  • In einigen Systemen, die Maschinen zum Erhalten von Messungen verwenden, ist ein Objekt nicht physisch von beispielsweise einem Fahrzeug getrennt, das das Objekt trägt, bevor der Dimensionierungsprozess durchgeführt wird. Vielmehr werden erste Daten (z. B. Bilddaten), die das Objekt darstellen, von zweiten Daten (z. B. Bilddaten), die das Fahrzeug darstellen, isoliert (d. h. unterschieden). In solchen Fällen wird die Isolierung oder Trennung der ersten Daten und der zweiten Daten auf eine Segmentierung bezogen. Herausforderungen im Zusammenhang mit der Segmentierung ergeben sich beispielsweise durch den Einsatz von kostengünstigen dreidimensionalen Sensoren, die verrauschte Daten erzeugen können. So kann beispielsweise die Mehrwegeinterferenz einer dreidimensionalen Laufzeitkamera (timeof-flight three-dimensional camera) in einigen Szenarien zu ungenauen Daten (z. B. nicht repräsentativ für eine tatsächliche Szene) führen. Die Durchführung einer Segmentierung auf solchen Daten weist mit hoher Wahrscheinlichkeit Fehler auf.
  • Die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen ermöglichen eine effiziente und genaue Dimensionierung eines Objekts, während das Objekt von einem Fahrzeug, wie beispielsweise einem Gabelstapler, getragen wird. Hierin offenbarte Beispiele umfassen insbesondere Verfahren und Systeme zum Segmentieren von Teilen einer dreidimensionalen („3D“)-Darstellung einer Szene erfasst durch Sensoren, wie beispielsweise Bildsensoren, wobei die Szene beispielsweise einen Gabelstapler umfasst, der Gegenstände wie Kästen transportiert. Wie im Folgenden näher beschrieben, handelt es sich bei den hierin offenbarten Beispielen um „vorgängerunterstützte“ Systeme, Verfahren und Vorrichtungen zum Erkennen und Segmentieren von Objekten aus einer 3D-Darstellung einer Szene, und welche die Verwendung einer 3D-Punktwolke, eines farbbasierten Merkmalsabgleichs und eines „hochauflösenden“ Bildes und/oder Farbbildes als ein Vorgänger umfassen können. In einem Offline-Prozess kann ein „hochauflösendes“ 3D-Modell, das eine Farbtexturkarte eines Objekts, wie beispielsweise eines Gabelstaplers, umfassen kann, zunächst aus Mehrfachansicht-Scans unter Verwendung eines strukturierten Lichtscanners bestimmt werden. Eine der einzelnen Ansichten (z. B. eine Einzelansicht-Modellpunktwolke) mit charakteristischen Texturinformationen wie Texten und Mustern kann ausgewählt werden, um über Merkmals-Korrespondenz (die als Modellvorgänger-Abgleich bezeichnet werden kann) das Vorgängerbild abzugleichen. Ein „Live“-Prozess kann das Erfassen einer 3D-Darstellung (z. B. einer Punktwolke und/oder einer Farbpunktwolke) einer Szene, die das Objekt umfasst, das Entfernen des Hintergrunds, so dass nur das Objekt und alle Gegenstände auf dem Objekt übrig bleiben, das Auswählen einer Einzelansicht der Szene unter Verwendung ihrer Pose und der Pose der Einzelansicht-Modellpunktwolke umfassen. Die Ausrichtung des Vorgängers in der Einzelansicht-Szene kann auch über Merkmals-Korrespondenz (die als Vorgänger-Szenenabgleich bezeichnet werden kann) bestimmt werden. Nachdem der Modellvorgänger-Abgleich und der Vorgänger-Szenenabgleich erhalten wurden, kann ein Modell-Szenenabgleich kommutativ abgeleitet werden. Die Punktwolken des 3D-Modells und die 3D-Darstellung der Szene werden dann für eine Hypothesenverifikation und eine Identifizierung der 3D-Transformation verwendet. Eine genauere Registrierung wie ICP kann auch durchgeführt werden, um die Anpassung der Modell-Szene weiter zu verfeinern. Eine Begrenzungsbox des 3D-Modells kann geschätzt und mittels einer Transformationsmatrix in die 3D-Darstellung der Szene transformiert werden. Gegenstände in der 3D-Darstellung der Szene außerhalb der transformierten Begrenzungsbox können dann dimensioniert werden.
  • Darüber hinaus können die hierin beschriebenen vorgängerunterstützten Systeme, Verfahren und Vorrichtungen zu einer besseren Anpassung zwischen dem 3D-Modell und der 3D-Darstellung führen, um die Segmentierung durchzuführen, was zu weniger Fehlern bei den Dimensionierungsgegenständen und damit zu einer schnelleren Dimensionierung führen kann. Tatsächlich kann es sein, dass ohne die hierin beschriebenen vorgängergestützten Systeme, Verfahren und Vorrichtungen die Segmentierung und/oder Dimensionierung von Gegenständen wiederholt werden muss, bis eine genaue Segmentierung und/oder Dimensionierung der Gegenstände erreicht ist. Daher können die hierin beschriebenen vorgängergestützten Systeme, Verfahren und Vorrichtungen zu weniger Wiederholungen bei der Segmentierung und/oder Dimensionierung von Gegenständen führen. Daher können die hierin beschriebenen vorgängergestützten Systeme, Verfahren und Vorrichtungen zu einem effizienteren Betrieb von Rechengeräten zur Segmentierung und/oder Dimensionierung von Gegenständen und/oder zu Verbesserungen an Rechengeräten zur Segmentierung und/oder Dimensionierung von Gegenständen führen.
  • Ein Aspekt der Offenbarung stellt ein Verfahren bereit, das umfasst: Empfangen, an einer Steuerung, von einem oder mehreren Sensoren, eine dreidimensionale (3D-)Darstellung einer Szene, die ein Objekt umfasst, das durch ein 3D-Modell dargestellt ist; Bestimmen, an der Steuerung, eine Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleichen des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; Bestimmen, an der Steuerung, einen ersten Teil der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen korrespondierenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert ist; und Segmentieren, an der Steuerung, des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung.
  • In einigen beispielhaften Ausführungsformen umfasst das Segmentieren des ersten Teils der 3D-Darstellung von dem zweiten Teil der 3D-Darstellung das Entfernen des ersten Teils der 3D-Darstellung, der der Teilmenge des 3D-Modells entspricht. In einigen beispielhaften Ausführungsformen umfasst das Verfahren ferner das Dimensionieren eines oder mehrerer Gegenstände, die durch den zweiten Teil der 3D-Darstellung repräsentiert werden, der nach dem Entfernen des ersten Teils der 3D-Darstellung, der dem 3D-Modell entspricht, verbleibt.
  • In einigen beispielhaften Ausführungsformen umfasst die 3D-Darstellung der Szene eine oder mehrere von einer Punktewolke, Farbdaten, die der Punktwolke zugeordnet sind, und eine Farbpunktwolke.
  • In einigen beispielhaften Ausführungsformen umfasst jedes des Bestimmens der Ausrichtung des 2D-Bildes in der 3D-Darstellung und des Bestimmens des ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht: einen 3D-Punktwolken-Merkmalsabgleich und einen Farb-Merkmalsabgleich.
  • In einigen beispielhaften Ausführungsformen umfasst die 3D-Darstellung der Szene eine Vielzahl von Bildern von einem oder mehreren Sensoren, und der Abgleich des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung umfasst das Durchführen eines 2D-Abgleichs zwischen dem 2D-Bild und einem Bild der Vielzahl von Bildern. In einigen beispielhaften Ausführungsformen umfasst das Verfahren ferner das Bestimmen einer Bewegungsrichtung des Objekts in der Szene und das Bestimmen des einen Bildes der Vielzahl von Bildern zur Verwendung in dem 2D-Abgleich aus der Bewegungsrichtung.
  • In einigen beispielhaften Ausführungsformen umfasst das Verfahren ferner ein Optimieren der 3D-Darstellung durch eine oder mehrere von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung (iterative closest point registration refinement) und einer 3D-Hypothesenprüfung.
  • In einigen beispielhaften Ausführungsformen umfasst das Segmentieren des ersten Teils der 3D-Darstellung aus dem zweiten Teil ein Bestimmen einer Begrenzungsbox der Teilmenge des 3D-Modells in der 3D-Darstellung und ein Entfernen von Daten aus der 3D-Darstellung, die der Begrenzungsbox entsprechen.
  • In einigen beispielhaften Ausführungsformen umfasst das 2D-Bild eine Darstellung von Markierungen auf dem Objekt, wobei die Markierungen ein oder mehrere von einem Logo, einem gegebenen Teil des Objekts, einem merkmalsreichen Bild und einem besonderen Teil des Objekts umfassen.
  • In einigen beispielhaften Ausführungsformen umfasst das 3D-Modell des Objekts ein 3D-Modell eines Gabelstaplers, und die Teilmenge des 3D-Modells schließt Gabeln des Gabelstaplers aus.
  • Ein weiterer Aspekt der Offenbarung stellt eine Vorrichtung bereit, umfassend: eine Steuerung und eine Kommunikationsschnittstelle, wobei die Steuerung ausgeführt ist, um: unter Verwendung der Kommunikationsschnittstelle von einem oder mehreren Sensoren eine dreidimensionale (3D-)Darstellung einer Szene zu empfangen, die ein durch ein 3D-Modell dargestelltes Objekt umfasst; eine Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleich des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung zu bestimmen; einen ersten Teil der 3D-Darstellung zu bestimmen, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen korrespondierenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert ist; und Segmentieren des ersten Teils der 3D-Darstellung aus einem zweiten Teil der 3D-Darstellung.
  • In einigen beispielhaften Ausführungsformen ist die Steuerung ferner ausgeführt, um den ersten Teil der 3D-Darstellung vom zweiten Teil der 3D-Darstellung zu segmentieren, indem sie den ersten Teil der 3D-Darstellung, der der Teilmenge des 3D-Modells entspricht, entfernt. In einigen beispielhaften Ausführungsformen ist die Steuerung ferner ausgeführt, um ein oder mehrere Gegenstände zu dimensionieren, die durch den zweiten Teil der 3D-Darstellung repräsentiert werden, der nach dem Entfernen des ersten Teils der 3D-Darstellung, der dem 3D-Modell entspricht, verbleibt.
  • In einigen beispielhaften Ausführungsformen umfasst die 3D-Darstellung der Szene eine oder mehrere Punktewolken, Farbdaten, die der Punktwolke zugeordnet sind, und eine Farbpunktwolke.
  • In einigen beispielhaften Ausführungsformen umfasst jedes des Bestimmens der Ausrichtung des 2D-Bildes in der 3D-Darstellung und des Bestimmens des ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht: einen 3D-Punktwolken-Merkmalsabgleich und einen Farbmerkmalsabgleich.
  • In einigen beispielhaften Ausführungsformen umfasst die 3D-Darstellung der Szene eine Vielzahl von Bildern von einem oder mehreren Sensoren, und die Steuerung ist ferner ausgeführt, um das 2D-Bild mit einem entsprechenden Bereich der 3D-Darstellung abzugleichen, indem ein 2D-Abgleich zwischen dem 2D-Bild und einem Bild aus der Vielzahl von Bildern durchgeführt wird. In einigen beispielhaften Ausführungsformen ist die Steuerung ferner ausgeführt, um eine Bewegungsrichtung des Objekts in der Szene zu bestimmen und das eine Bild der Vielzahl von Bildern zu bestimmen zur Verwendung in dem 2D-Abgleich aus der Bewegungsrichtung.
  • In einigen beispielhaften Ausführungsformen ist die Steuerung ferner ausgeführt, um die 3D-Darstellung zu optimieren durch eine oder mehrere von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenprüfung.
  • In einigen beispielhaften Ausführungsformen ist die Steuerung ferner ausgeführt, um den ersten Teil der 3D-Darstellung von dem zweiten Teil zu segmentieren, indem sie eine Begrenzungsbox der Teilmenge des 3D-Modells in der 3D-Darstellung bestimmt und Daten, die der Begrenzungsbox entsprechen, aus der 3D-Darstellung entfernt.
  • In einigen beispielhaften Ausführungsformen umfasst das 2D-Bild eine Darstellung von Markierungen auf dem Objekt, wobei die Markierungen ein oder mehrere von einem: Logo, einem gegebenen Teil des Objekts, einem merkmalsreichen Bild und einem besonderen Teil des Objekts umfassen.
  • In einigen beispielhaften Ausführungsformen umfasst das 3D-Modell des Objekts ein 3D-Modell eines Gabelstaplers, und die Teilmenge des 3D-Modells schließt Gabeln des Gabelstaplers aus.
  • Ein weiterer Aspekt der Offenbarung stellt ein computerlesbares Medium bereit, das ein Computerprogramm speichert, wobei die Ausführung des Computerprogramms eine Maschine veranlasst, Operationen durchzuführen, umfassend: Empfangen, an einer Steuerung, durch einen oder mehrere Sensoren einer dreidimensionalen (3D-)Darstellung einer Szene, die ein durch ein 3D-Modell dargestelltes Objekt umfasst; Bestimmen, an der Steuerung, einer Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleich des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; Bestimmen, an der Steuerung, eines ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die einen Abgleich des 2D-Bildes mit einem jeweiligen korrespondierenden Bereich des 3D-Modells darstellen, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert ist; und Segmentieren, an der Steuerung, des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung. In einigen beispielhaften Ausführungsformen umfasst das computerlesbare Medium ein nichtflüchtiges, computerlesbares Medium.
  • Während im Vorstehenden die Herausforderungen im Zusammenhang mit dem Verladen und Liefern von Paketen erläutert werden, gibt es ähnliche Herausforderungen in anderen Umgebungen und Anwendungen, die genaue und effiziente Dimensionierungen von Objekten erfordern. Beispielsweise leiden Lagerbestandvorgänge und Lagerverwaltungsvorgänge unter der Tatsache, dass Objekte nicht genau an zugewiesenen Orten platziert sind. Darüber hinaus können, während die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen im Folgenden im Zusammenhang mit der Verladung von Paketen an einer Laderampe beschrieben werden, beispielhafte Verfahren, Systeme und Vorrichtungen, die hierin offenbart werden, in jedem anderen geeigneten Kontext oder in jeder anderen geeigneten Umgebung implementiert werden, wie beispielsweise in einem Lager, einer Einzelhandelseinrichtung, einem Flughafen, einem Bahnverladeplatz oder einem Schifffahrtshafen. Während im Folgenden ein Gabelstapler und Dimensionierungspakete beschrieben werden, die von einem Gabelstapler getragen werden, gelten darüber hinaus die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen für zusätzliche oder alternative Objekttypen und/oder zusätzliche oder alternative Trägertypen (z. B. Container, Personen, die Objekt(e) tragen und/oder verschiedene Fahrzeugtypen).
  • 1 zeigt eine beispielhafte Umgebung, in der die hierin offenbarten beispielhaften Verfahren, Systeme und Vorrichtungen implementiert werden können. Das Beispiel von 1 ist repräsentativ für eine Laderampe mit einem Dimensionierungssystem 100, das gemäß den Lehren dieser Offenbarung konstruiert wurde. Das beispielhafte Dimensionierungssystem 100 von 1 umfasst eine nördliche Bildgebungsstation 102-1, eine westliche Bildgebungsstation 102-2, eine südliche Bildgebungsstation 102-3 und eine östliche Bildgebungsstation 102-4. Die Bildgebungsstationen 102-1, 102-2, 102-3, 102-4 werden austauschbar im Folgenden gemeinsam als Stationen 102 und im Allgemeinen als Station 102 bezeichnet. Die Bildgebungsstationen 102 von 1 sind an einem Rahmen 110 montiert. Alternative Beispiele umfassen eine beliebige geeignete Anzahl (z. B. drei (3) oder fünf (5)) von Bildgebungsstation, die in geeigneter Weise angeordnet sind (z. B. an Wänden montiert). Die Begriffe „Nord“, „West“, „Süd“ und „Ost“ werden zur besseren Orientierung und nicht zur Einschränkung verwendet.
  • Jede der Stationen 102 von 1 umfasst einen entsprechenden Bildsensor 112-1, 112-2, 112-3, 112-4, der Farbdaten und Tiefendaten in einem jeweiligen Koordinatensystem erfassen kann. Die Bildsensoren 112-1, 112-2, 112-3, 112-4 werden austauschbar im Folgenden gemeinsam als Sensoren 112 und im Allgemeinen als Sensor 112 bezeichnet. In einigen beispielhaften Ausführungsformen ist beispielsweise jeder der Sensoren 112 ein RGB-D („Rot-Grün-Blau-Tiefe“) Sensor (z. B. ein Kinect®-Sensor), der für jedes Pixel in einem Koordinatensystem einen RGB-Wert und einen Tiefenwert erzeugt. In alternativen Beispielen umfasst jede der Stationen 102 einen dreidimensionalen (3D) Bildsensor, der Tiefendaten liefert, und einen separaten zweidimensionalen (2D) Bildsensor, der Farbdaten bereitstellt. In solchen Fällen ist der 2D-Bildsensor auf das Koordinatensystem des zugeordneten 3D-Bildsensors registriert oder umgekehrt, so dass die Farbdaten jedes Pixels den Tiefendaten dieses Pixels zugeordnet sind.
  • Jeder der Sensoren 112 von 1 ist auf einen Bildgebungsbereich 120 gerichtet. Jeder der Sensoren 112 ist geneigt (z. B. in einem Winkel von fünfundvierzig (45) Grad geneigt zu einem Boden des Bildgebungsbereichs 120. Somit erzeugt jeder der Sensoren 112 Farbdaten und Tiefendaten, die für den Bildgebungsbereich 120 repräsentativ sind.
  • Während ferner im System 100 von 1 vier Stationen 102 und vier Sensoren 112 dargestellt sind, umfassen andere beispielhafte Ausführungsformen mehr als vier Stationen und/oder mehr als vier Sensoren oder weniger als vier Stationen und/oder weniger als vier Sensoren. Im Allgemeinen sind die Sensoren 112 des Systems 100 jedoch ausgeführt, um gemeinsam eine 3D-Darstellung einer Szene zu erfassen, beispielsweise eine 3D-Darstellung von mindestens einem Teil des Bildgebungsbereichs 120. Wenn also ein Fahrzeug 122, das einen Gegenstand 124 trägt, in den Bildgebungsbereich 120 eintritt, erzeugen die Sensoren 112 Farbdaten und Tiefendaten, die für das Fahrzeug 122 und den Gegenstand 124 aus den jeweiligen Perspektiven repräsentativ sind, um eine 3D-Darstellung des Fahrzeugs 122 und des Gegenstands 124 zu erfassen.
  • Im Beispiel von 1 ist das Fahrzeug 122 ein Gabelstapler und der Gegenstand 124 ist ein Paket, das vom Dimensionierungssystem 100 zu dimensionieren ist. So kann beispielsweise das Fahrzeug 122 gerade dabei sein, den Gegenstand 124 von einem Lagerort zu einem Anhänger oder einer anderen Art von Container zu bewegen, der der in 1 dargestellten Laderampe zugeordnet ist. Im veranschaulichten Beispiel können Fahrzeuge in einer ersten Richtung 126 oder einer zweiten Richtung 128 in den Bildgebungsbereich 120 einfahren. Allerdings ist jede beliebige Anzahl von Richtungen möglich, abhängig z. B. von der umgebenden Umgebungsanordnung der Laderampe. Wie in 1 veranschaulicht, tritt das Fahrzeug 122 in den Bildgebungsbereich 120 in der ersten Richtung 126 ein, die zur westlichen Bildgebungsstation 114 hin verläuft.
  • In den dargestellten beispielhaften Ausführungsformen umfasst das System 100 weiterhin Sensoren 129-1, 129-2, 129-3, 129-4, die sich am Rahmen 110 in Positionen befinden, die das Erfassen einer Bewegungsrichtung des Fahrzeugs 122 unterstützen. Die Sensoren 129-1, 129-2, 129-3, 129-4 werden austauschbar im Folgenden gemeinsam als Sensoren 129 und im Allgemeinen als Sensor 129 bezeichnet. In einigen Beispielen umfasst beispielsweise jeder der Sensoren 129 einen Bewegungsdetektor und dergleichen, die in einer Höhe auf dem Rahmen 110 positioniert sind, wo eine Bewegungsrichtung des Fahrzeugs 122 erkennbar ist. Während vier Sensoren 129 im System 100 von 1 dargestellt sind, umfassen andere beispielhafte Ausführungsformen mehr als vier Sensoren zur Unterstützung bei der Erkennung einer Bewegungsrichtung oder weniger als vier Sensoren zur Erkennung einer Bewegungsrichtung. In einigen Beispielen ist das System 100 ausgeführt, um die Bewegungsrichtung des Fahrzeugs 122 mit einem oder mehreren der Sensoren 112 (z. B. mit Bildverarbeitungstechniken) zu erfassen, und dem System 100 fehlen jegliche weitere Sensoren zur Unterstützung bei der Erkennung einer Bewegungsrichtung (z. B. Sensoren 129 sind im System 100 nicht vorhanden).
  • Um den vom Fahrzeug 122 getragenen Gegenstand 124 effizient und genau zu dimensionieren, ohne die Bewegung des Fahrzeugs 122 zu unterbrechen und ohne dass der Gegenstand 124 vom Fahrzeug 122 physisch entfernt werden muss, umfasst das beispielhafte Dimensionierungssystem 100 von 1 ein Frachtdimensionierungssystem 130, das gemäß den Lehren dieser Offenbarung konstruiert wurde. Im veranschaulichten Beispiel von 1 ist der Frachtdimensionierer 130 auf einer Bearbeitungsplattform 132 implementiert, die an der Laderampe angeordnet ist. Wie dargestellt, umfasst die Plattform 132 einen Personalcomputer oder dergleichen, der sich an der Laderampe befindet und mit einer Anzeigevorrichtung und einer Tastatur in Verbindung steht, die Komponenten des Personalcomputers sein können und/oder in dem Personalcomputer integriert sein können.
  • Der hierin offenbarte beispielhafte Frachtdimensionierer 130 kann jedoch in jede geeignete Verarbeitungsplattform implementiert sein, wie beispielsweise eine Verarbeitungsplattform, die an einem entfernten Ort (z. B. einem entfernten Server), an einem oder mehreren Orten auf dem Fahrzeug 122 und/oder einer mobilen Verarbeitungsplattform angeordnet ist, die von einer dem Fahrzeug 122 oder, allgemeiner, der Laderampe zugeordneten Person getragen wird.
  • Die Aufmerksamkeit richtet sich als nächstes auf 2, die ein schematisches Diagramm einer beispielhaften Ausführungsform der Plattform 132 darstellt. Im Beispiel von 2 umfasst die Plattform 132 eine Steuerung 220 in Verbindung mit einem Speicher 222, der eine Anwendung 223 speichert, und eine Kommunikationsschnittstelle 224 (im Folgenden austauschbar als Schnittstelle 224 bezeichnet). In der dargestellten beispielhaften Ausführungsform ist der Frachtdimensionierer 130 eine Komponente der Steuerung 220, während in alternativen beispielhaften Ausführungsformen der Frachtdimensionierer 130 eine separate Komponente der Plattform 132 ist, oder in noch weiteren Ausführungsform ist die Steuerung 220 eine Komponente des Frachtdimensionierers 130. Während im Folgenden die Funktionalität der Plattform 132 als von der Steuerung 220 implementiert beschrieben wird, wird die Funktionalität der Plattform 132 austauschbar durch den Frachtdimensionierer 130 ausgeführt.
  • In einigen Beispielen umfasst die Plattform 132 alle geeigneten zusätzlichen oder alternativen Komponenten, wie z. B. eine Lagerbestands-Verfolgungsanwendung und/oder andere Datenerfassungsanwendungen und dergleichen. Im Allgemeinen ist die Plattform 132 mit den Sensoren 112 und, wenn vorhanden, den Sensoren 129 in Verbindung, beispielsweise über die Schnittstelle 224.
  • Wie dargestellt, speichert der Speicher 222 weiterhin: ein 3D-Modell 232 eines Objekts; ein 2D-Bild 234; und vorbestimmte Abgleichsdaten 236, die für einen Abgleich des 2D-Bildes 234 mit einem jeweiligen korrespondierenden Bereich des 3D-Modells 232 repräsentativ sind, wie im Folgenden näher beschrieben.
  • Die beispielhafte Steuerung 220 von 2 umfasst eine oder mehrere logische Schaltungen, die ausgeführt sind, um beispielsweise die Funktionalität der Frachtdimensionierung der Plattform 132 zu implementieren. Beispielhafte Logikschaltungen umfassen einen oder mehrere Prozessoren, einen oder mehrere Mikroprozessoren, einen oder mehrere ASIC (anwendungsspezifische integrierte Schaltungen) und ein oder mehrere FPGA (field-programmable gate arrays). Im Beispiel von 2 ist die Steuerung 220 ausgeführt, um Teile einer 3D-Darstellung einer Szene zu segmentieren, beispielsweise eine 3D-Darstellung des Bildgebungsbereichs 120. In einigen Beispielen ist die Plattform 132 keine generische Rechenvorrichtung, Plattform, die ausgeführt ist, um spezifische Funktionen zur Frachtdimensionierung zu implementieren. So kann beispielsweise die Plattform 132 und/oder die Steuerung 220 spezifisch eine computerausführbare Maschine umfassen, die für eine bestimmte Funktionalität der Frachtdimensionierung konfiguriert ist.
  • Der Speicher 222 von 2 ist ein maschinenlesbares Medium, das maschinenlesbare Anweisungen zur Implementierung eines oder mehrerer Programme oder Anwendungen speichert. Beispielhafte maschinenlesbare Medien umfassen eine nichtflüchtige Speichereinheit (z. B. Erasable Electronic Programmable Read Only Memory („EEPROM“), Flash Memory) und/oder eine flüchtige Speichereinheit (z. B. Random Access Memory („RAM“)). Im Beispiel von 2 werden Programmieranweisungen (z. B. maschinenlesbare Anweisungen), die die hierin beschriebenen Funktionslehren der Plattform 132 umsetzen, dauerhaft im Speicher 222 gehalten und von der Steuerung 220 verwendet, was eine Verwendung von flüchtigem Speicher während der Ausführung solcher Programmieranweisungen geeignet macht. In einigen beispielhaften Ausführungsformen ist der Speicher 222 extern zur Plattform 132. Unabhängig davon ist der Speicher 222 über einen Computerbus der Plattform 132 und/oder die Schnittstelle 224 für die Steuerung 220 zugänglich.
  • Der beispielhafte Speicher 222 von 2 speichert Anweisungen entsprechend der Anwendung 223, die es der Steuerung 220 bei Ausführung durch die Steuerung 220 ermöglichen, die mit der Anwendung 223 assoziierte Frachtdimensionierungs-Funktionalität zu implementieren. In dem veranschaulichten Beispiel, wenn die Steuerung 220 die Anwendung 223 ausführt, ist die Steuerung 220 konfiguriert, um: von einem oder mehreren der Sensoren 112 eine dreidimensionale (3D-)Darstellung einer Szene zu empfangen, die ein durch das 3D-Modell 232 dargestelltes Objekt umfasst; eine Ausrichtung des 2D-Bildes 234 in der 3D-Darstellung zu bestimmen, indem das 2D-Bild 234 mit einem entsprechenden Bereich der 3D-Darstellung abgeglichen wird; einen ersten Teil der 3D-Darstellung zu bestimmen, der einer Teilmenge des 3D-Modells 232 des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes 234 in der 3D-Darstellung; und den vorbestimmten Abgleichsdaten 236, die für einen Abgleich des 2D-Bildes 234 mit einem jeweiligen korrespondierenden Bereich des 3D-Modells 232 repräsentativ sind, wobei jedes des 3D-Modells 232, des 2D-Bildes 234 und der vorbestimmten Abgleichsdaten 236 in dem für die Steuerung 220 zugänglichen Speicher 222 gespeichert sind; und Segmentieren des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung. In einigen beispielhaften Ausführungsformen umfasst die Segmentierung durch die Steuerung 220 des ersten Teils der 3D-Darstellung von dem zweiten Teil der 3D-Darstellung das Entfernen des ersten Teils der 3D-Darstellung, der der Teilmenge des 3D-Modells 232 entspricht; und die Steuerung 220 ist ferner ausgeführt, um ein oder mehrere Gegenstände zu dimensionieren, die durch den zweiten Teil der 3D-Darstellung dargestellt werden, der nach dem Entfernen des ersten Teils der 3D-Darstellung, der dem 3D-Modell 232 entspricht, verbleibt.
  • Die beispielhafte Schnittstelle 224 von 2, die beispielsweise durch ein oder mehrere Funkvorrichtungen und/oder Stecker und/oder Netzwerkadapter implementiert ist, ist ausgeführt, um drahtgebunden und/oder drahtlos mit der Netzwerkarchitektur zu kommunizieren, die verwendet wird, um eine oder mehreren Kommunikationsverbindungen zwischen anderen Vorrichtungen und/oder einem Netzwerk zu implementieren. Beispielhafte Kommunikationsverbindungen umfassen jede geeignete Kombination von USB (Universal Serial Bus) -Kabeln, seriellen Kabeln, drahtlosen Verbindungen, Mobiltelefonverbindungen, Mobilfunknetzverbindungen (einschließlich, aber nicht beschränkt auf 2G, 2.5G, 3G, 4G+ wie UMTS (Universal Mobile Telecommunications System), GSM (Global System for Mobile Communications), CDMA (Code Division Multiple Access), FDD (Frequency Division Duplexing), LTE (Long Term Evolution), TDD (Time Division Duplexing), TDD-LTE (TDD-Long Term Evolution), TD-SCDMA (Time Division Synchronous Code Division Multiple Access) und dergleichen, drahtlose Daten, WLAN (Wireless Local Area Network) -Verbindungen, WiFi-Verbindungen, WiMax-Verbindungen, paketbasierte Verbindungen, das Internet, analoge Netzwerke, das PSTN (Public Switched Telephone Network), Zugangspunkte und dergleichen, und/oder eine Kombination.
  • Insbesondere ist die beispielhafte Schnittstelle 224 ausgeführt, um drahtgebunden und/oder drahtlos mit den Sensoren 112 (und, falls vorhanden, den Sensoren 129) zu kommunizieren.
  • Obwohl in 2 nicht explizit dargestellt, kann die beispielhafte Plattform 132 und/oder die beispielhafte Steuerung 220 weiterhin mit einer Anzeigevorrichtung und einer oder mehreren Eingabevorrichtungen, wie beispielsweise einer Tastatur, in Verbindung stehen und wird ferner durch einen oder mehrere von einem Anschluss an ein Stromnetz, eine Batterie, einem Netzteil und dergleichen mit Strom versorgt.
  • Die beispielhafte Plattform 132 kann zusätzliche oder alternative Komponenten umfassen, die sich beispielsweise auf Lagerwesen, Inventarisierung, Benachrichtigung, Unterhaltung und/oder andere Komponenten beziehen, die entweder mit einer festen Positionsplattform oder einer mobilen Positionsplattform verwendet werden können.
  • Aufmerksamkeit wird nun auf 3 gerichtet, die ein Flussdiagramm zeigt, dass ein beispielhaftes Verfahren 300 zum Segmentieren von Objekten darstellt. Die beispielhaften Operationen des beispielhaften Verfahrens 300 von 3 entsprechen maschinenlesbaren Anweisungen, die beispielsweise durch die Plattform 132 von 2, und insbesondere durch die Steuerung 220 der Plattform 132 und/oder durch den Frachtdimensionierer 130 ausgeführt werden. Im dargestellten Beispiel sind die Anweisungen, die durch die Blöcke von 3 dargestellt werden, auf dem Speicher 222 gespeichert, z. B. als Anwendung 223. Das beispielhafte Verfahren 300 von 3 ist eine Möglichkeit, wie die Plattform 132 konfiguriert sein kann. Darüber hinaus wird die folgende Diskussion des beispielhaften Verfahrens 300 aus 3 zu einem weiteren Verständnis der Plattform 132 und ihrer verschiedenen Komponenten führen. Es sei jedoch verstanden, dass die Plattform 132 und/oder das beispielhafte Verfahren 300 variiert werden können und nicht genau so zu funktionieren brauchen, wie hierin in Verbindung miteinander diskutiert, und dass solche Variationen vom Umfang der vorliegenden Ausführungsformen umfasst sind.
  • Das beispielhafte Verfahren 300 von 3 braucht nicht in der exakten Reihenfolge wie dargestellt durchgeführt werden, und ebenso können verschiedene Blöcke parallel ausgeführt werden, als dass sie nacheinander ausgeführt werden. Dementsprechend werden die Elemente des beispielhaften Verfahrens 300 hierin eher als „Blöcke“ als als „Schritte“ bezeichnet. Das beispielhafte Verfahren 300 von 3 kann alternativ auch auf Variationen der beispielhaften Plattform 132, der beispielhaften Steuerung 220 und/oder des beispielhaften Frachtdimensioners 130 von 2 implementiert sein.
  • In der folgenden Beschreibung des beispielhaften Verfahrens 300 wird weiterhin davon ausgegangen, dass dem Speicher 222 das 3D-Modell 232, das 2D-Bild 234 und die vorgegebenen Abgleichsdaten 236 bereitgestellt sind. Die Bereitstellung des Speichers 222 mit dem 3D-Modell 232, dem 2D-Bild 234 und den vorgegebenen Abgleichsdaten 236 wird im Folgenden näher beschrieben.
  • Bei Block 301 empfängt die Steuerung 220 von einem oder mehreren der Sensoren 112 eine 3D-Darstellung einer Szene (d. h. eine 3D-Szenendarstellung), die ein durch das 3D-Modell 232 dargestelltes Objekt (z. B. einen Gabelstapler) umfasst.
  • Bei Block 303 bestimmt die Steuerung 220 eine Ausrichtung des 2D-Bildes 234 (z. B. ein Bild eines Logos) in der 3D-Szenendarstellung, indem sie das 2D-Bild 234 mit einem entsprechenden Bereich der 3D-Szenendarstellung abgleicht.
  • Bei Block 305 bestimmt die Steuerung 220 einen ersten Teil der 3D-Szenendarstellung, der einer Teilmenge des 3D-Modells 232 des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes 234 in der 3D-Szenendarstellung; und den vorbestimmten Abgleichsdaten 236, die einen Abgleich des 2D-Bildes 234 mit einem jeweiligen korrespondierenden Bereich des 3D-Modells 232 darstellen, wobei jedes des 3D-Modells 232, des 2D-Bildes 234 und der vorbestimmten Abgleichsdaten 236 im Speicher 222 gespeichert ist, auf den die Steuerung 220 Zugriff hat.
  • Bei Block 307 segmentiert die Steuerung 220 den ersten Teil der 3D-Szenendarstellung von einem zweiten Teil der 3D-Szenendarstellung.
  • Bei Block 309 entfernt die Steuerung 220 den ersten Teil der 3D-Szenendarstellung, der der Teilmenge des 3D-Modells 232 entspricht.
  • Bei Block 311 ist die Steuerung 220 ferner ausgeführt, um einen oder mehrere Gegenstände zu dimensionieren, die durch den zweiten Teil der 3D-Szenendarstellung dargestellt sind, der nach dem Entfernen des ersten Teils der 3D-Szenendarstellung, der dem 3D-Modell 232 entspricht, verbleibt.
  • In einigen beispielhaften Ausführungsformen kann der Block 309 parallel zu und/oder in Verbindung mit Block 307 ausgeführt werden, so dass das Segmentieren des ersten Teils der 3D-Szenendarstellung vom zweiten Teil der 3D-Darstellung am Block 307 umfasst, dass die Steuerung 220 den ersten Teil der 3D-Szenendarstellung entfernt, der der Teilmenge des 3D-Modells 232 entspricht.
  • In einigen Ausführungsformen endet das beispielhafte Verfahren 300 auf der Plattform 132 am Block 307, und die Plattform 132 stellt einer anderen Vorrichtung und/oder Plattform, die den Rest des beispielhaften Verfahrens 300 ausführt, Zwischensegmentdaten zur Verfügung.
  • Das beispielhafte Verfahren 300 wird nun mit Bezug auf 4 bis 11 beschrieben.
  • Die Aufmerksamkeit richtet sich nun auf 4, die eine beispielhafte 3D-Darstellung 401 einer von den Sensoren 112 erfassten Szene darstellt. 4 zeigt daher ein Beispiel für den Block 301 des beispielhaften Verfahrens 300.
  • Insbesondere umfasst die 3D-Szenendarstellung 401 eine Datenerfassung durch die Sensoren 112, die das den Gegenstand 124 tragende Fahrzeug 122 im Bildgebungsbereich 120 darstellt. Wie dargestellt, ist das Fahrzeug 122 ein Gabelstapler und der Gegenstand 124 ist eine Vielzahl von Kästen auf den Gabeln des Gabelstaplers. Während die 3D-Szenendarstellung 401 in einer bestimmten Pose (z. B. einer gegebenen Position, eines Winkels, einer gegebenen Ausrichtung und dergleichen) dargestellt ist, umfasst die 3D-Szenendarstellung 401 Daten, die eine beliebige Oberfläche des den Gegenstand 124 tragenden Fahrzeugs 122 darstellen, die sich in einem Sichtfeld von einem der Sensoren 112 befindet. Obwohl nicht in 4 dargestellt, umfasst die 3D-Szenendarstellung 401 einen Bereich, der dem 2D-Bild 234 entspricht, wie im Folgenden näher beschrieben. Insbesondere befindet sich ein Bereich der 3D-Szenendarstellung 401, der dem 2D-Bild 234 entspricht, auf einer Rückseite des Gabelstaplers (z. B. eine Seite gegenüberliegend zum Gegenstand 124).
  • Darüber hinaus wird, wie im Folgenden näher beschrieben, die 3D-Szenendarstellung 401 aus einer Vielzahl von Bildern (einschließlich, aber nicht beschränkt auf, hochauflösende RGB (rot-grün-blau) -Bilder) von den Sensoren 112 erzeugt und umfasst eines oder mehrere von einer Punktwolke und einer Farbpunktwolke. Mit anderen Worten, die 3D-Szenendarstellung 401 umfasst eine Vielzahl von dreidimensionalen Punkten.
  • In einigen beispielhaften Ausführungsformen hat jeder Punkt in der Punktwolke einen oder mehrere Farbwert(e) (z. B. eine Farbpunktwolke). Daher umfasst die 3D-Szenendarstellung 401 in diesen beispielhaften Ausführungsformen Tiefeninformationen und Farbinformationen, einschließlich, aber nicht beschränkt auf, eine Farbtexturkarte der dargestellten Szene.
  • In einigen beispielhaften Ausführungsformen wird die am Block 301 empfangene 3D-Szenendarstellung 401 weiterhin einem Hintergrund-Entfernungsvorgang unterzogen, um beispielsweise Hintergrundbilder zu entfernen, die nicht Teil des Objekts sind, das durch die 3D-Szenendarstellung 401 dargestellt wird.
  • Die Aufmerksamkeit richtet sich nun auf 5, die eine beispielhafte visuelle Darstellung des 3D-Modells 232 eines Objekts in der 3D-Szenendarstellung 401 darstellt. Im Beispiel von 5 ist das 3D-Modell 232 ein 3D-Modell des Gabelstaplers in der 3D-Szenendarstellung 401, das unter streng kontrollierten Bedingungen vor der Erfassung der 3D-Szenendarstellung erzeugt wird.
  • Wie bei der 3D-Szenendarstellung 401 umfasst das 3D-Modell 232 in einigen beispielhaften Ausführungsformen Tiefeninformationen und Farbinformationen. Daher umfasst das 3D-Modell 232 in diesen beispielhaften Ausführungsformen Tiefeninformationen und Farbinformationen, einschließlich, aber nicht beschränkt auf, eine Farbtexturkarte des dargestellten Objekts.
  • Das 3D-Modell 232 umfasst eine erste Teilmenge 542, die einem Körper des Gabelstaplers entspricht, und eine zweite Teilmenge 550, die den Gabeln des Gabelstaplers entspricht. In einigen beispielhaften Ausführungsformen wird das 3D-Modell 232 mit den Sensoren (z. B. den Sensoren 112 von 1 oder anderen Sensoren) auf einer ähnliche Weise erzeugt, wie beim Erhalten der der 3D-Szenendarstellung 401 (z. B. wird der Gabelstapler ohne Tragen von Gegenständen abgebildet) aus Bildern (einschließlich, aber nicht beschränkt auf hochauflösende RGB-Bilder), die von den Sensoren erzeugt werden. Insbesondere wird das 3D-Modell 232 basierend auf Daten erzeugt, die unter streng kontrollierten Bedingungen (z. B. ist der Gabelstapler stationär und unter bevorzugten Lichtverhältnissen) unter Verwendung von hochauflösendem Equipment erfasst werden. Solche Ausführungsformen werden im Folgenden in Bezug auf 12 und 13 beschrieben.
  • In anderen beispielhaften Ausführungsformen wird das 3D-Modell 232 aus einer CAD-Zeichnung (Computer Aided Design) und/oder einem Modell des Gabelstaplers erzeugt, wie von einem Hersteller bereitgestellt und/oder mit einer CAD-Anwendung erzeugt. Unabhängig davon, wie das 3D-Modell 232 erzeugt wird, wird in der vorliegenden Offenbarung davon ausgegangen, dass das Fahrzeug 122 in der 3D-Szenendarstellung 401 durch das 3D-Modell 232 repräsentiert wird. Darüber hinaus werden in einigen beispielhaften Ausführungsformen die Teilmengen 542, 550 des 3D-Modells 232 vom Hersteller und/oder mit einer CAD-Anwendung als die Teilmengen 542, 550 geparst und/oder bezeichnet.
  • In einigen beispielhaften Ausführungsformen schließt das 3D-Modell 232 die zweite Teilmenge 550 aus und das 3D-Modell 232 definiert somit den Körper des Gabelstaplers.
  • In einigen beispielhaften Ausführungsformen umfasst das 3D-Modell 232 eine oder mehrere einer Punktwolke, Farbdaten, die der Punktwolke zugeordnet sind, und einer Farbpunktwolke, die eine Farbtexturkarte aufweist, jedoch nicht darauf beschränkt ist.
  • Obwohl in 5 nicht dargestellt, umfasst das 3D-Modell 232 einen Bereich, der dem 2D-Bild 234 entspricht, wie im Folgenden näher beschrieben. Insbesondere befindet sich ein Bereich des 3D-Modells 232, der dem 2D-Bild 234 entspricht, auf einer Rückseite des Gabelstaplers (z. B. eine Seite gegenüber den Gabeln), wie zumindest in 8 und 9 dargestellt, wie nachfolgend beschrieben.
  • Die Aufmerksamkeit richtet sich nun auf 6, die eine beispielhafte visuelle Darstellung des 2D-Bildes 234 darstellt, die einem Bereich sowohl im 3D-Modell 232 als auch in der 3D-Szenendarstellung 401 entspricht. Insbesondere entspricht das 2D-Bild 234 einem Bereich des 3D-Modells 232 und, die 3D-Szenendarstellung umfasst das durch das 3D-Modell 232 dargestellte Objekt, die 3D-Szenendarstellung 401, die sowohl innerhalb des 3D-Modells 232 als auch der 3D-Szenendarstellung 401 einzigartig ist. So wird beispielsweise ein Bereich des 3D-Modells 232, der von der Steuerung 220 und/oder dem Frachtdimensionierer 130 in der 3D-Darstellung 401 leicht identifizierbar ist, als 2D-Bild 234 ausgewählt.
  • Im Beispiel von 6 ist das 2D-Bild 234 repräsentativ für ein Logo, das am Gabelstapler sowohl des 3D-Modells 232 als auch der 3D-Szenendarstellung 401 vorhanden ist. Insbesondere ist das beispielhafte 2D-Bild 234 von 6 ein farbiges 2D-Bild des Logos. Das 2D-Bild 234 kann jedoch anderen Bereich(en) des 3D-Modells 232 entsprechen, die keinem Logo entsprechen, sofern der Bereich merkmalsreich und einzigartig im 3D-Modell 232 ist. Mit anderen Worten entspricht das 2D-Bild 234 einem Bereich im 3D-Modell 232, der nicht verwechselbar ist (z. B. durch die Steuerung 220 und/oder den Frachtdimensionierer 130) und/oder einzigartig im Vergleich zu anderen Bereichen des 3D-Modells 232 ist. Darüber hinaus wird das 2D-Bild 234 als ein Bereich des Fahrzeugs 122 ausgewählt, der für die Sensoren 112 sichtbar ist, wenn das Fahrzeug 122 (z. B. der Gabelstapler) den Gegenstand 124 trägt. Daher ist das 2D-Bild 234 eine Darstellung von Markierung(en) auf einem Objekt im 3D-Modell 232. In einigen Ausführungsformen bezieht sich der Begriff „merkmalsreich“ auf eine Vielzahl von Merkmalen, die sich auf dem Objekt befinden und die den zugehörigen Bereich des Objekts von anderen Bereichen des Objekts unterscheidbar und/oder einzigartig machen.
  • In einigen beispielhaften Ausführungsformen wird das 2D-Bild 234 aus einer CAD-Zeichnung erzeugt, während in anderen beispielhaften Ausführungsformen das 2D-Bild 234 mit einem Sensor (z. B. den Sensoren 112 von 1) und/oder einer Digitalkamera und/oder dergleichen erzeugt wird, beispielsweise durch Verwendung eines Sensors und/oder der Digitalkamera, um ein Bild eines Teils des Fahrzeugs 122 aufzunehmen, auf dem sich das Logo befindet.
  • In einigen beispielhaften Ausführungsformen wird das 2D-Bild 234 alternativ als „Vorgänger“ und/oder „Bildvorgänger“ bezeichnet.
  • Darüber hinaus umfasst das 2D-Bild 234 in einigen beispielhaften Ausführungsformen ein Farbbild und/oder eine 2D-Farbtexturkarte.
  • Die Aufmerksamkeit richtet sich nun auf 7, die eine visuelle Darstellung einer Bestimmung der Abgleichsdaten 236 aus 2 ist. Im Beispiel von 7 sind das 2D-Bild 234 und das 3D-Modell 232 dargestellt. Insbesondere wird das 3D-Modell 232 in einer Pose dargestellt, in der ein Bereich 734 sichtbar ist (z. B. eine Rückseite eines Gabelstaplers), der Daten entsprechend dem 2D-Bild 234 enthält. Darüber hinaus schließt das in 7 dargestellte 3D-Modell 232 in einigen beispielhaften Ausführungsformen die Gabeln des Gabelstaplers aus. Unter Verwendung von Bildverarbeitungstechniken vergleicht die Steuerung 220 das 2D-Bild 234 mit dem 3D-Modell 232 und bestimmt Entsprechungen und/oder Übereinstimmungen zwischen dem 2D-Bild 234 und dem 3D-Modell 232. Solche Entsprechungen und/oder Übereinstimmungen werden in 7 durch Linien zwischen Merkmalen im 2D-Bild 234 und entsprechenden Merkmalen im Bereich 734 visuell dargestellt. Tatsächlich werden solche Korrespondenzen und/oder Übereinstimmungen als die vorgegebenen Abgleichsdaten 236 gespeichert, die für eine Übereinstimmung des 2D-Bildes 234 mit dem jeweiligen entsprechenden Bereich 734 des 3D-Modells 232 repräsentativ sind.
  • In beispielhaften Ausführungsformen erfolgt die Bestimmung der Entsprechungen und/oder Übereinstimmungen zwischen dem 2D-Bild 234 und dem 3D-Modell 232 unter Verwendung von texturgesteuertem 3D-Bildabgleich, z. B. durch Abgleich von Teilen des 2D-Bildes 234 mit entsprechenden Teilen des 3D-Modells 232 unter Verwendung von Farbe, Buchstabenformen und/oder Logoformen.
  • Die Bestimmung der Entsprechungen und/oder Übereinstimmungen wird hierin austauschbar als Merkmalsabgleich bezeichnet, was in einigen beispielhaften Ausführungsformen unter Verwendung der jeweiligen Farbtexturkarten von jedem des 2D-Bildes 234 und des 3D-Modells 232 erfolgt.
  • Im Beispiel von 7 ist der durch das 3D-Modell 232 dargestellte Gabelstapler auf seiner Seite dargestellt; jedoch ist jede Pose des 3D-Modells 232 in 7 möglich.
  • Jedes des 3D-Modells 232, des 2D-Bildes 234 und der vorgegebenen Abgleichdaten 236 werden auf dem Speicher 222 gespeichert, bevor die 3D-Szenendarstellung 401 aufgenommen wird. Das heißt, das 3D-Modell 232, das 2D-Bild 234 und die vorgegebenen Abgleichdaten 236 werden zu einem Zeitpunkt vor der Erfassung der 3D-Szenendarstellung 401 erzeugt.
  • Die Aufmerksamkeit richtet sich nun auf 8, die eine visuelle Darstellung des Blocks 303 des beispielhaften Verfahrens 300 darstellt. Im Beispiel von 8 sind das 2D-Bild 234 und die 3D-Szenendarstellung 401 dargestellt. Insbesondere wird die 3D-Szenendarstellung 401 in einer Pose dargestellt, in der ein Bereich 834 sichtbar ist (z. B. eine Rückseite eines Gabelstaplers), der Daten entsprechend dem 2D-Bild 234 enthält. Die Steuerung 220 führt einen Merkmalsabgleich durch, um das 2D-Bild 234 mit der 3D-Szenendarstellung 401 zu vergleichen, und bestimmt die Entsprechungen und/oder Übereinstimmungen zwischen dem 2D-Bild 234 und der 3D-Szenendarstellung 401. Solche Entsprechungen und/oder Übereinstimmungen werden in 8 durch Linien zwischen Merkmalen im 2D-Bild 234 und entsprechenden Merkmalen im Bereich 834 visuell dargestellt. Insbesondere stellen die Linien zwischen den Merkmalen im 2D-Bild 234 und den entsprechenden Merkmalen im Bereich 834 eine Ausrichtung des 2D-Bildes 234 in der 3D-Szenendarstellung 401 dar, die durch Abgleichen des 2D-Bildes 234 mit einem entsprechenden Bereich (z. B. dem Bereich 834) der 3D-Szenendarstellung 401 bestimmt wird.
  • In einigen beispielhaften Ausführungsformen erfolgt die Bestimmung der Entsprechungen und/oder Übereinstimmungen zwischen dem 2D-Bild 234 und der 3D-Szenendarstellung 401 unter Verwendung von texturgesteuertem 3D-Bildabgleich, z. B. durch Abgleich von Teilen des 2D-Bildes 234 mit entsprechenden Teilen der 3D-Szenendarstellung 401 unter Verwendung von Farbe, Buchstabenformen und/oder Logoformen. Insbesondere umfasst das Bestimmen der Ausrichtung 836 des 2D-Bildes 234 in der 3D-Szenendarstellung 401 in einigen beispielhaften Ausführungsformen einen 3D-Punktwolken-Merkmalsabgleich, einen Farb-Merkmalsabgleich und/oder einen Farbtexturkarten-Merkmalsabgleich, beispielsweise zwischen dem 2D-Bild 234 und der Punktwolke der 3D-Szenendarstellung 401.
  • Während 8 ferner einige Entsprechungen (z. B. Linien) zwischen dem 2D-Bild 234 und Bereichen der 3D-Szenendarstellung 401 außerhalb des Bereichs 834 darstellt, werden solche Entsprechungen unter Verwendung von Filterung (z. B. Näherungsvergleiche mit einem oder mehreren Entfernungsgrenzwerten) ignoriert und/oder gefiltert, um Ausreißer zu beseitigen.
  • Wie vorstehend beschrieben, umfasst die 3D-Szenendarstellung 401 in einigen beispielhaften Ausführungsformen Daten aus einer Vielzahl von Bildern, die von den Sensoren 112 erzeugt werden. Daher umfasst in einigen dieser Ausführungsformen der Abgleich des 2D-Bildes 234 mit einem entsprechenden Bereich der 3D-Szenendarstellung 401 das Durchführen eines 2D-Abgleichs zwischen dem 2D-Bild 234 und einem Bild aus der Vielzahl der von den Sensoren 112 empfangenen Bilder. Ein solcher 2D-Abgleich kann schneller sein und mit weniger Verarbeitungsressourcen erfolgen als das Vergleichen des 2D-Bildes 234 mit der Gesamtheit der 3D-Szenendarstellung 401. Ein solcher 2D-Abgleich wird in Bezug auf 15 ausführlich beschrieben.
  • Die Auswahl eines Bildes von den Sensoren 112 zum Vergleich mit dem 2D-Bild 234 umfasst beispielsweise das Bestimmen einer Bewegungsrichtung des Objekts in der Szene (z. B. des Fahrzeugs 122 und/oder des Gabelstaplers, beispielsweise unter Verwendung von Daten von Sensoren 129) und das Bestimmen eines Bildes aus der Vielzahl von Bildern zur Verwendung im 2D-Abgleich basierend auf der Bewegungsrichtung. In einigen dieser Ausführungsformen ist die Steuerung 220 und/oder der Frachtdimensionierer 130 mit einer erwarteten Position des Bereichs 834, wie beispielsweise einer Rückseite eines Gabelstaplers, vorkonfiguriert, so dass beim Bestimmen einer Bewegungsrichtung des Fahrzeugs 122 ein Bild von den Sensoren 112 zum Vergleich mit dem 2D-Bild 234 ausgewählt wird, das wahrscheinlich den Bereich 834 umfasst. Wenn beispielsweise unter Bezugnahme auf 1 eine Bewegungsrichtung als die erste Richtung 126 bestimmt wird, wird ein Bild von den Sensoren 112 ausgewählt, das wahrscheinlich eine Rückseite des Fahrzeugs 122 umfasst (z. B. ein Bild von dem Sensor 112-4, das aufgenommen wird, wenn sich das Fahrzeug 122 innerhalb des Bildgebungsbereichs 120 befindet). In diesen Beispielen wird die erwartete Position des Bereichs 834 im Allgemeinen der Steuerung 220 und/oder dem Frachtdimensionierer 130 bereitgestellt, beispielsweise in Geometriedaten und/oder Koordinatendaten, die dem 3D-Modell 232 zugeordnet sind und/oder von einem zu abzubildenden Objekt und/oder Fahrzeug.
  • Die Aufmerksamkeit richtet sich nun auf 9, die eine visuelle Darstellung des Blocks 305 des beispielhaften Verfahrens 300 darstellt. Im Beispiel von 9 werden das 3D-Modell 232 und die 3D-Szenendarstellung 401 sowie die Bereiche 734, 834 und 834 dargestellt, die dem 2D-Bild 234 entsprechen. Wenn die Ausrichtung wird 836 des 2D-Bildes 234 in der 3D-Szenendarstellung 401 bestimmt ist (z. B. für den Bereich 834), und wenn die vorbestimmten Abgleichsdaten 236 repräsentativ für einen Abgleich des 2D-Bildes 234 mit einem entsprechenden Bereich 734 des 3D-Modells 232 sind, bestimmt die Steuerung 220 (und/oder der Frachtdimensionierer 130) kommutativ einen ersten Bereich der 3D-Szenendarstellung 401, der einer Teilmenge des 3D-Modells 232 des Objekts entspricht, und führt eine solche Bestimmung durch insbesondere aus: der Ausrichtung 836 des 2D-Bildes 234 in der 3D-Szenendarstellung 401 und den vorbestimmten Abgleichsdaten 236.
  • Wie bei der Bestimmung der Ausrichtung 836 des 2D-Bildes 234 in der 3D-Szenendarstellung 401, umfasst das Bestimmen des Teils der 3D-Szenendarstellung 401, der einer Teilmenge des 3D-Modells 232 des Objekts entspricht (z. B. in der 3D-Darstellung 401), in einigen beispielhaften Ausführungsformen, jedoch nicht beschränkt darauf: einen 3D-Punktwolken-Merkmalsabgleich, einen Farb-Merkmalsabgleich und/oder einen Farbtexturkarten-Merkmalsabgleich.
  • Mit anderen Worten bestimmt am Block 305 die Steuerung 220 eine Position und/oder Ausrichtung des Bereichs 834 in der 3D-Darstellung 401 und passt den entsprechenden Bereich 734 des 3D-Modells 232 an den Bereich 834 an, der wiederum das 3D-Modell 232 in Bezug auf die 3D-Szenendarstellung 401 ausrichtet. Somit ist ein erster Teil der 3D-Szenendarstellung 401 an mindestens einer Teilmenge des 3D-Modells 232 angepasst. Insbesondere stellen Linien zwischen dem Bereich 734 und dem Bereich 834 im Beispiel von 9 eine bestimmte Entsprechung 936 zwischen den Merkmalen in jedem der Bereiche 734, 834 dar.
  • Mit dieser Entsprechung wird das 3D-Modell 232 in die 3D-Szenendarstellung 401 transformiert (z. B. unter Verwendung einer Transformationsmatrix). Das 3D-Modell 232 ist eine sauberere (z. B. weniger verrauschte) Darstellung des Fahrzeugs 122 als die Daten der von den Sensoren 112 in Echtzeit erfassten 3D-Szenendarstellung. Die Transformation des 3D-Modells 232 in die 3D-Szenendarstellung 401 in korrekter Anpassung mit den entsprechenden Daten der 3D-Szenendarstellung 401 ermöglicht somit, dass Bildverarbeitungsoperationen (z. B. Erzeugen einer Begrenzungsbox um das Fahrzeug 122) mit sauberen, hochauflösenden Daten durchgeführt werden können. Mit anderen Worten, unter Verwendung der Entsprechungsinformationen, die durch die Identifizierung des 2D-Bildes 234 im 3D-Modell 232 und die 3D-Szenendarstellung 401 bereitgestellt werden, wird das 3D-Modell 234 in die Szene importiert, so dass die hochauflösenden Daten des 3D-Modells 232 zur Darstellung des Fahrzeugs 122 verwendet werden können, anstatt der verrauschten Informationen, die von den Sensoren 112 in Echtzeit unter nicht-idealen Bedingungen erzeugt werden. In einigen Beispielen umfasst die Transformation des 3D-Modells 232 in die 3D-Szenendarstellung 401 eine oder mehrere von einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenprüfung. Während die vorliegenden Beispiele die spezifischen Optimierungstechniken der 3D-Hough-Transformation, des Geometriekonsistenz-Clustering, der Verfeinerung durch iterative Nächster-Punkt-Registrierung und der 3D-Hypothesenprüfung umfassen, kann jede Optimierungstechnik, die die Genauigkeit der Anpassung und/oder Ausrichtung des 3D-Modells 232 in der 3D-Szenendarstellung erhöht, verwendet werden.
  • In einigen Ausführungsformen, wenn das 3D-Modell 232 ein 3D-Modell eines Gabelstaplers umfasst, wird die Teilmenge des 3D-Modells 232, die die Gabeln des Gabelstaplers ausschließt, in der Anpassung verwendet. Alternativ schließt das im Beispiel von 9 verwendete 3D-Modell 232 die Gabeln des Gabelstaplers aus. In Bezug auf 5 wird daher in einigen beispielhaften Ausführungsformen die erste Teilmenge 542 in der Anpassung verwendet, nicht aber die zweite Teilmenge 550. Mit Bezug zu 4 sind die Gabeln des Gabelstaplers (z. B. das Fahrzeug 122) in der 3D-Szenendarstellung 401 aufgrund der Anwesenheit des Gegenstandes 124 im Allgemeinen nicht sichtbar.
  • Die Aufmerksamkeit richtet sich nun auf 10, die eine beispielhafte Ausführungsform des Blocks 307 des beispielhaften Verfahrens 300 darstellt. In 10 wird ein erster Teil 1042 der 3D-Szenendarstellung 401 von einem zweiten Teil 1050 der 3D-Szenendarstellung 401 segmentiert. Der erste Teil 1042 entspricht der ersten Teilmenge 542 des 3D-Modells 232, der in der 3D-Szenendarstellung 401 bei Block 305 des beispielhaften Verfahrens 300 positioniert (z. B. in diese transformiert) ist, und der zweite Teil 1050 ist der verbleibende Teil der 3D-Szenendarstellung 401, der den zu dimensionierenden Gegenstand 124 umfasst.
  • In 10 ist auch eine Begrenzungsbox 1060 dargestellt, die den ersten Teil 1042 enthält. Die Begrenzungsbox 1060 wird aus den Dimensionen des Fahrzeugs 122 (z. B. des Gabelstaplers) gemäß dem 3D-Modell 232 bestimmt, welche in diesen Ausführungsformen vor dem Bestimmen der Begrenzungsbox 1060 an der Steuerung 220 bereitgestellt und/oder empfangen werden. In solchen Ausführungsformen, um die Rechenzeit und den Ressourcenverbrauch an der Steuerung 220 zu reduzieren, umfasst die Segmentierung des ersten Teils 1042 der 3D-Szenendarstellung 401 von dem zweiten Teil 1050 das Bestimmen der Begrenzungsbox 1060 unter Verwendung der ersten Teilmenge 542 des 3D-Modells 232, wie sie in der 3D-Szenendarstellung 401 positioniert ist, und das Entfernen von Daten, die beispielsweise der Begrenzungsbox 1060 entsprechen (beispielsweise darin positioniert sind), aus der 3D-Szenendarstellung 401. Mit anderen Worten, die Begrenzungsbox 1060 in der 3D-Szenendarstellung 401 positioniert und Punkte darin werden entfernt, wodurch der zweite Teil 1050 ausgelassen wird.
  • Während jeder des ersten Teils 1042 und des zweiten Teils 1050 in 10 umrissen dargestellt ist, sei verstanden, dass mindestens der zweite Teil 1050 ein gleiches Format wie die 3D-Szenendarstellung 401 und insbesondere eine oder mehrere von Punktwolken-Farbdaten, die der Punktwolke zugeordnet sind, und eine Farbpunktwolke umfasst.
  • Die Aufmerksamkeit richtet sich nun auf 11, die eine visuelle Darstellung des Blocks 309 des beispielhaften Verfahrens 300 darstellt, bei dem der erste Teil 1042 aus der 3D-Szenendarstellung 401 entfernt wurde. Insbesondere stellt 11 den zweiten Teil 1050 dar, der eine Darstellung des Gegenstandes 124 umfasst. Wie dargestellt, umfasst der durch den zweiten Teil 1050 dargestellte Gegenstand 124 drei Boxen, die sich auf einer Palette befinden. Jede der drei Boxen wird bei Block 311 des beispielhaften Verfahrens 300 dimensioniert. Insbesondere dimensioniert die Steuerung 220 (und/oder der Frachtdimensionierer 130) einen oder mehrere Gegenstände, die durch den zweiten Teil 1050 der 3D-Szenendarstellung 401 dargestellt werden, der verbleibt, nachdem der erste Teil 1042 der 3D-Szenendarstellung 401, der dem 3D-Modell 232 entspricht, entfernt wird. Eine solche Dimensionierung erfolgt unter Verwendung einer geeigneten Dimensionierungstechnik, einschließlich, aber nicht beschränkt auf, orientierte Begrenzungsboxtechniken (oriented bounding box techniques) oder 3D-Belegungsrasterabbildung (occupancy grid mapping).
  • In einigen beispielhaften Ausführungsformen übermittelt die Steuerung 220 und/oder der Frachtdimensionierer 130 Daten an eine oder mehrere Anzeigevorrichtungen, um die Dimensionen der durch den zweiten Teil 1050 dargestellten Gegenstände wiederzugeben.
  • Aufmerksamkeit wird nun auf 12 gerichtet, die ein Flussdiagramm darstellt, das ein beispielhaftes Verfahren 1200 zum Erzeugen eines 3D-Modells eines Objekts darstellt. Die beispielhaften Operationen des beispielhaften Verfahrens 1200 von 12 entsprechen maschinenlesbaren Anweisungen, die beispielsweise durch die Plattform 132 von 2, und insbesondere durch die Steuerung 220 der Plattform 132 und/oder durch den Frachtdimensionierer 130 ausgeführt werden. Im dargestellten Beispiel werden die durch die Blöcke von 12 dargestellten Anweisungen auf dem Speicher 222 gespeichert, z. B. als die Anwendung 223 und/oder als ein Modul der Anwendung 223 und/oder als separate Anwendung. Das beispielhafte Verfahren 1200 von 12 ist eine Möglichkeit, wie die Plattform 132 konfiguriert werden kann. Darüber hinaus wird die folgende Diskussion des beispielhaften Verfahrens 1200 aus 12 zu einem weiteren Verständnis der Plattform 132 und ihrer verschiedenen Komponenten führen. Es sei jedoch verstanden, dass die Plattform 132 und/oder das beispielhafte Verfahren 1200 variiert werden kann und nicht genau so zu funktionieren braucht, wie hierin in Verbindung miteinander diskutiert, und dass solche Variationen vom Umfang der vorliegenden Ausführungsformen umfasst sind.
  • Das beispielhafte Verfahren 1200 von 12 braucht nicht in der exakten Reihenfolge wie dargestellt durchgeführt werden, und ebenso können verschiedene Blöcke vielmehr parallel als nacheinander ausgeführt werden. Dementsprechend werden die Gegenstände des beispielhaften Verfahrens 1200 hierin eher als „Blöcke“ als als „Schritte“ bezeichnet. Das beispielhafte Verfahren 1200 von 12 kann alternativ auch auf Variationen der beispielhaften Plattform 132, der beispielhaften Steuerung 220 und/oder des beispielhaften Frachtdimensionierers 130 von 2 implementiert werden.
  • Darüber hinaus wird im beispielhaften Verfahren 1200 davon ausgegangen, dass einer oder mehrere der Sensoren 112 zur Abbildung des Fahrzeugs 122 verwendet werden, um das 3D-Modell 232 zu erzeugen.
  • In den vorliegenden beispielhaften Ausführungsformen wird weiterhin davon ausgegangen, dass die Steuerung 220 mit einem strukturierten Lichtscanner in Verbindung steht, beispielsweise einem Projektor, der ausgeführt ist, um strukturiertes Licht auf ein Objekt zu projizieren, einschließlich, aber nicht beschränkt auf das Fahrzeug 122. Ein solches strukturiertes Licht kann, ist aber nicht darauf beschränkt, ein Schachbrettmuster umfassen.
  • Bei Block 1201 scannt die Steuerung 220 das Objekt mit dem strukturierten Licht, beispielsweise durch Steuern des strukturierten Lichtscanners, um strukturiertes Licht auf das Objekt zu projizieren. Darüber hinaus erfolgt das Scannen des Objekts mit dem strukturierten Licht bei einer Vielzahl von Posen, z. B. einer physischen Position des Objekts relativ zu einem das Objekt scannenden Sensor und dem strukturierten Lichtscanner, der das strukturierte Licht projiziert. Im Allgemeinen wird jede Pose durch Posedaten dargestellt, die diese Geometrien definieren. Im Allgemeinen wird davon ausgegangen, dass die Posedaten bekannt sind und/oder bestimmt werden und daher austauschbar als Pose-Vorgängerdaten bezeichnet werden können. In einigen beispielhaften Ausführungsformen wird das Objekt beispielsweise in einer Vielzahl von Posen mit einer Vielzahl von Sensoren 112 unter Verwendung eines oder mehrerer strukturierter Lichtscanner gescannt (und/oder ein strukturierter Lichtscanner wird an bestimmten Positionen um das Objekt herum bewegt). In anderen Ausführungsformen wird das Objekt in Bezug auf einen einzelnen Sensor 112 und einen einzelnen strukturierten Lichtscanner gedreht, und/oder der einzelne Sensor 112 und der einzelne strukturierte Lichtscanner werden um das Objekt gedreht.
  • Darüber hinaus umfasst jeder Scan des Objekts bei Block 301 in jeder Pose ein partielles 3D-Modell des Objekts in der gegebenen Pose, wobei jedes partielle 3D-Modell eine Punktwolke und/oder eine Farbpunktwolke umfasst.
  • Unabhängig von der physischen Konfiguration, wie das Objekt gescannt wird, empfängt die Steuerung bei Block 1203 die mit den Posedaten korrelierten partiellen 3D-Modelle. Es wird weiterhin davon ausgegangen, dass sich die partiellen 3D-Modelle zumindest teilweise überlappen, so dass die partiellen 3D-Modelle in das 3D-Modell 232 des Objekts kombinierbar sind.
  • Bei Block 1205 empfängt die Steuerung 220 die Geometrie des Objekts, z. B. 3D-Dimensionen des Objekts. In einigen dieser Ausführungsformen umfasst die Geometrie des Objekts eine Länge, eine Breite und eine Höhe des Objekts, ohne Rücksicht auf Details von Merkmalen des Objekts (z. B. eine längste Länge von vorne nach hinten, eine breiteste Breite von Seite zu Seite und eine höchste Höhe von oben nach unten). In einigen beispielhaften Ausführungsformen wird die Geometrie des Objekts verwendet, um eine Begrenzungsbox des 3D-Modells 232 zu bestimmen. Darüber hinaus definiert in einigen dieser Ausführungsformen, wenn das Objekt (und/oder das Fahrzeug 122) einen Gabelstapler definiert, die Geometrie des Objekts eine Geometrie, die die Gabeln des Gabelstaplers ausschließt, um das 3D-Modell 232 zu vereinfachen. In einigen Ausführungsformen umfasst die Geometrie des Objekts eine Position eines Bereichs, der dem 2D-Bild 234 entspricht.
  • Bei Block 1207 führt die Steuerung 220 eine paarweise Anpassung der partiellen 3D-Modelle durch. In einigen dieser Ausführungsformen führt die Steuerung 220 auch eine Optimierung vor, während und/oder nach der paarweisen Anpassung durch, wobei die Optimierung umfasst, aber nicht beschränkt ist auf eine oder mehrere von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenprüfung.
  • So vergleicht die Steuerung 220 beispielsweise bei Block 1207 die partiellen 3D-Modelle, um Paare von Punkten in jeder entsprechenden Punktwolke zu bestimmen, die aneinander angepasst sind und/oder einander entsprechen. Diese Anpassung und/oder Entsprechung braucht keine exakte Anpassung und/oder Entsprechung sein; vielmehr umfasst diese Anpassung und/oder Entsprechung das Bestimmen von Punkten in jedem der partiellen 3D-Modelle, die aneinandergrenzen und/oder sich gegenseitig überlappen, um sie in dem 3D-Modell 232 zu kombinieren. Die jeweiligen Posedaten werden verwendet, um die relativen Positionen jedes der partiellen 3D-Modelle zueinander zu bestimmen, wenn die paarweise Anpassung durchgeführt wird.
  • In einigen beispielhaften Ausführungsformen führt die Steuerung 220 bei Block 1209 eine 3D-Vereinfachung und Neufärbung der Ausgabe aus dem Block 1207 durch; z. B. bei Block 1209 werden überschüssige Punkte und/oder Ausreißer entfernt, und die Farbe wird in den kombinierten Bereichen der partiellen 3D-Modelle normiert (z. B. um Farbunterschiede zwischen den partiellen 3D-Modellen zu berücksichtigen, die bei Beleuchtungsunterschieden des Objekts während des Scannens des Blocks 1201 und/oder aufgrund von Unterschieden in der Farberkennung durch die Sensoren 112 beim Scannen des Blocks 1201 auftreten können).
  • Bei Block 1211 wird das 3D-Modell 232 ausgegeben, z. B. durch Speichern des 3D-Modells auf dem Speicher 222, wie in 2 dargestellt.
  • Die Aufmerksamkeit richtet sich nun auf 13, die eine beispielhafte schematische Ausführungsform von mindestens einem Teil des beispielhaften Verfahrens 1200 darstellt. Insbesondere zeigt 13 eine Vielzahl von Bildern 1319, die jeweils einem partiellen 3D-Modell entsprechen, das am Block 1201 des Verfahrens 1200 aufgenommen wurde. Beispielsweise umfasst jedes der Bilder 1319 ein abgeflachtes 2D-Bild und ein entsprechendes partielles 3D-Modell. Darüber hinaus ist jedes der Bilder 1319 mit den jeweiligen Posedaten 1320 verknüpft, die eine Pose definieren, in der das zugehörige partielle 3D-Modell aufgenommen wurde. Wie dargestellt, umfasst jedes der abgeflachten 2D-Bilder1319 eine andere Ansicht eines Gabelstaplers. Darüber hinaus werden die zugehörigen partiellen 3D-Modelle zu dem 3D-Modell 232 zusammengefasst. Wie dargestellt, umfasst das 3D-Modell 232 nur die erste Teilmenge 542 und schließt damit die Gabeln des Gabelstaplers aus. Tatsächlich wird in einigen beispielhaften Ausführungsformen die Geometrie des am Block 1205 empfangenen Objekts verwendet, um die Gabeln des Gabelstaplers aus dem 3D-Modell 232 auszuschließen, wie vorstehend beschrieben.
  • Außerdem wird bei einem oder mehreren der Blöcke 1201, 1203, 1207, 1209 ein Hintergrund entfernt.
  • Im Allgemeinen umfasst das resultierende beispielhafte 3D-Modell 232, das in 13 dargestellt ist, ein hochauflösendes 3D-Modell zusammen mit einer Farbtexturkarte eines Gabelstaplers, der aus Mehrfachansicht-Scans unter Verwendung des strukturierten Lichtscanners konstruiert wurde.
  • In einigen beispielhaften Ausführungsformen umfasst das beispielhafte Verfahren 1200 ferner das Bestimmen der 2D-Abgleichsdaten 236, beispielsweise an einem der Blöcke 1203, 1207, 1209, 1211 und/oder an einem separaten Block. Beispielsweise wird der in 7 dargestellte Prozess an der Ausgabe des 3D-Modells 232 am Block 1211 und/oder an jedem anderen Block durchgeführt, bei dem ein Abgleich des 2D-Modells 232 mit den partiellen 3D-Modellen (dargestellt durch die Bilder 1319) und dergleichen erfolgen kann.
  • In weiteren Ausführungsformen umfassen die 2D-Abgleichsdaten 236 einen 2D-Abgleich zwischen Merkmalen im 2D-Bild 234 und einem der Bilder 1319 (z. B. das einen Bereich umfasst, der dem 2D-Bild 234 entspricht), welcher weiter auf die Punktwolke des 3D-Modells 232 angeglichen ist.
  • Aufmerksamkeit wird nun auf 14 gerichtet, die ein Flussdiagramm zeigt, das ein beispielhaftes Verfahren 1400 zum Segmentieren von Objekten darstellt. Die beispielhaften Operationen des beispielhaften Verfahrens 1400 von 14 entsprechen maschinenlesbaren Anweisungen, die beispielsweise durch die Plattform 132 von 2, und insbesondere durch die Steuerung 220 der Plattform 132 und/oder durch den Frachtdimensionierer 130 ausgeführt werden. Im dargestellten Beispiel werden die Anweisungen, die durch die Blöcke von 14 dargestellt werden, auf dem Speicher 222 gespeichert, z. B. als Anwendung 223. Das beispielhafte Verfahren 1400 von 14 ist eine Möglichkeit, wie die Plattform 132 konfiguriert werden kann. Darüber hinaus wird die folgende Diskussion des beispielhaften Verfahrens 1400 aus 14 zu einem weiteren Verständnis der Plattform 132 und ihrer verschiedenen Komponenten führen. Es sei jedoch verstanden, dass die Plattform 132 und/oder das beispielhafte Verfahren 1400 variiert werden kann und nicht genau so zu funktionieren braucht, wie hierin in Verbindung miteinander diskutiert, und dass solche Variationen vom Umfang der vorliegenden Ausführungsformen umfasst sind.
  • Das beispielhafte Verfahren 1400 von 14 braucht nicht in der exakten Reihenfolge wie dargestellt durchgeführt werden, und ebenso können verschiedene Blöcke vielmehr parallel als nacheinander ausgeführt werden. Dementsprechend werden die Elemente des beispielhaften Verfahrens 1400 hierin eher als „Blöcke“ als als „Schritte“ bezeichnet. Das beispielhafte Verfahren 1400 von 14 kann alternativ auch auf Variationen der beispielhaften Plattform 132, der beispielhaften Steuerung 220 und/oder des beispielhaften Frachtdimensioners 130 von 2 implementiert werden.
  • Darüber hinaus wird im beispielhaften Verfahren 1400 davon ausgegangen, dass es dem Verfahren 300 mit ähnlichen Blöcken mit gleichen Zahlen ähnlich ist, jedoch in einer „1400“-Serie und nicht in einer „300“-Serie; somit ist beispielsweise der Block 1401 des beispielhaften Verfahrens 1400 dem Block 301 des beispielhaften Verfahrens 300 ähnlich.
  • Bei Block 1401 erfasst die Steuerung 220 eine Punktwolke, ähnlich der 3D-Darstellung 401, die bei Block 301 erfasst wird. Darüber hinaus führt die Steuerung 220 bei Block 1401 eine Hintergrund-Entfernung durch, um Merkmale zu entfernen, die nicht dem Objekt zugeordnet sind, das durch die Punktwolke dargestellt wird. In einigen beispielhaften Ausführungsformen wird die Punktwolke in einem ähnlichen Prozess erfasst, wie er in Bezug auf 12 und 13 beschrieben ist, unter Verwendung der Sensoren 112 und, wenn sich das Objekt im Bildgebungsbereich 120 befindet.
  • Bei Block 1402 extrahiert die Steuerung 220 eine Einzelansicht-Punktwolke aus der am Block 1401 erfassten Punktwolke. So entspricht beispielsweise die Einzelansicht-Punktwolke den Daten eines der Sensoren 112, mit denen die Punktwolke bei Block 1401 erzeugt wurde. Es wird angenommen, dass die bei Block 1402 extrahierte Einzelansicht-Punktwolke einen Bereich umfasst, der dem 2D-Bild 234 entspricht. In einigen beispielhaften Ausführungsformen wird die Einzelansicht-Punktwolke basierend auf den am Block 1203 des beispielhaften Verfahrens 1200 aufgenommenen partiellen 3D-Modellen extrahiert. So wird beispielsweise in einigen dieser Ausführungsformen beim Generieren des 3D-Modells 232 nach dem beispielhaften Verfahren 1200 eine Pose bestimmt, in der ein Bereich, der dem 2D-Bild 234 entspricht, für einen Sensor 112 sichtbar ist, und eine dieser Pose entsprechende Einzelansicht-Punktwolke wird aus der am Block 1401 aufgenommenen Punktwolke extrahiert. Darüber hinaus erfolgt in einigen Beispielen das Extrahieren der Einzelansicht-Punktwolke in Verbindung mit dem Bestimmen der Bewegungsrichtung eines Objekts, das durch die am Block 1401 aufgenommene Punktwolke repräsentiert wird, wie vorstehend beschrieben.
  • Bei Block 1403 führt die Steuerung 220 einen vorgängerbasierten texturgesteuerten 3D-Abgleich durch, um beispielsweise eine Ausrichtung des 2D-Bildes 234 in der 3D-Szenendarstellung 401 zu bestimmen, ähnlich dem Block 303 des beispielhaften Verfahrens 300. Beim Block 1403 findet jedoch der vorgängerbasierte texturgesteuerte 3D-Abgleich zwischen dem 2D-Bild 234 und der beim Block 1402 extrahierten Einzelansicht-Punktwolke statt.
  • Insbesondere bei einigen beispielhaften Ausführungsformen beim Block 1403 fasst die Steuerung 220 die am Block 1403 extrahierte Einzelansicht-Punktwolke in eine 2D-Darstellung zusammen (z. B. ähnlich einem der Bilder 1319) und führt einen 2D-Abgleich zwischen dem 2D-Bild 234 und der 2D-Darstellung durch, um die Merkmale dazwischen abzugleichen.
  • Bei Block 1405 passt die Steuerung 220 das 3D-Modell 232 an die Punktwolke an, z. B. mit dem vorgängerbasierten texturgesteuerten 3D-Abgleich des Blocks 1403 und den vorbestimmten Abgleichsdaten 236. In einigen beispielhaften Ausführungsformen umfasst der Block 1405 die Verwendung einer Transformationsmatrix, um das 3D-Modell 232 in die Punktwolke zu transformieren, beispielsweise um das 3D-Modell auf die Punktwolke auszurichten. Beispielsweise werden der vorgängerbasierte texturgesteuerte 3D-Abgleich des Blocks 1403 und die vorbestimmten Abgleichsdaten 236 verwendet, um eine Transformationsmatrix zu erzeugen, die zur Durchführung der Anpassung verwendet wird.
  • In einigen beispielhaften Ausführungsformen führt die Steuerung 220 die Anpassung durch, indem sie zunächst einen 2D-Abgleich zwischen einem Teil des 3D-Modells 232 und der 2D-Darstellung durchführt, die aus der oben beschriebenen zusammengefassten Einzelansicht-Punktwolke erzeugt wird. Beispielsweise wird eines der Bilder 1319 verwendet, um eine 2D-Anpassung durchzuführen, welche anschließend verwendet wird, um eine 3D-Anpassung zwischen dem 3D-Modell 232 und der am Block 1401 aufgenommenen Punktwolke zu erzeugen.
  • Bei Block 1406-1 führt die Steuerung 220 eine Verfeinerung durch iterative Nächster-Punkt-Registrierung (ICP) durch, um die Anpassung des 3D-Modells 232 auf die Punktwolke weiter zu verfeinern. Bei Block 1406-2 schätzt die Steuerung 220 wie oben beschrieben die Begrenzungsbox 1060 ab.
  • Bei Block 1407 führt die Steuerung 220 eine Segmentierung unter Verwendung der Ausgabe aus der ICP-Verfeinerung des Blocks 1406-1 durch, ähnlich der Segmentierung des Blocks 307, wie in 10 dargestellt. Bei Block 1408 gibt die Steuerung 220 eine segmentierte Punktwolke aus, ähnlich der in 11 dargestellten, die anschließend dimensioniert wird.
  • In der Beschreibung des beispielhaften Verfahrens 1400 wurde die Anpassung zwischen dem 2D-Bild 234 und dem 3D-Modell 232 sowie die Anpassung zwischen dem 2D-Bild 234 und der 3D-Szenendarstellung 401 zumindest teilweise in Bezug auf ein 2D-Anpassungschema beschrieben. Ein solches 2D-Anpassungschema wird in Bezug auf 15 beschrieben, das ein Flussdiagramm zeigt, das ein beispielhaftes Verfahren 1500 zum Segmentieren von Objekten darstellt. Die beispielhaften Operationen des beispielhaften Verfahrens 1500 von 15 entsprechen maschinenlesbaren Anweisungen, die beispielsweise von der Plattform 132 von 2, insbesondere von der Steuerung 220 der Plattform 132 und/oder vom Frachtdimensionierer 130 ausgeführt werden. Im dargestellten Beispiel werden die Anweisungen, die durch die Blöcke von 15 dargestellt werden, auf dem Speicher 222 gespeichert, z. B. als Anwendung 223. Das beispielhafte Verfahren 1500 von 15 ist eine Möglichkeit, wie die Plattform 132 konfiguriert werden kann. Darüber hinaus wird die folgende Diskussion des beispielhaften Verfahrens 1500 aus 15 zu einem weiteren Verständnis der Plattform 132 und ihrer verschiedenen Komponenten führen. Es sei jedoch verstanden, dass die Plattform 132 und/oder das beispielhafte Verfahren 1500 variiert werden kann und nicht genau so funktionieren muss, wie hierin in Verbindung miteinander diskutiert, und dass solche Variationen vom Umfang der vorliegenden Ausführungsfirmen umfasst sind.
  • Das beispielhafte Verfahren 1500 von 15 muss nicht in der exakten Reihenfolge wie dargestellt durchgeführt werden, und ebenso können verschiedene Blöcke vielmehr parallel als nacheinander ausgeführt werden. Dementsprechend werden die Elemente des beispielhaften Verfahrens 1500 hierin eher als „Blöcke“ als „Schritte“ bezeichnet. Das beispielhafte Verfahren 1500 von 15 kann alternativ auch auf Variationen der beispielhaften Plattform 132, der beispielhaften Steuerung 220 und/oder des beispielhaften Frachtdimensioners 130 von 2 implementiert werden.
  • Bei Block 1501 extrahiert die Steuerung ein partielles 2D-Modell aus dem 3D-Modell 232, z. B. durch Auswählen eines der am Block 1203 des beispielhaften Verfahrens 1200 empfangenen partiellen 3D-Modelle und Zusammenfassen des ausgewählten partiellen 3D-Modells in ein partielles 2D-Modell, wie beispielsweise ein in 13 dargestelltes Bild 1319. Die Extraktion des partiellen 2D-Modells wird eine oder mehrere von: iterativ in Verbindung mit dem nachfolgend beschriebenen Block 1503 durchgeführt; und basierend auf einer Geometrie des durch das 3D-Modell 232 dargestellten Objekts durchgeführt, die eine Position eines Bereichs anzeigt, der einen dem 2D-Bild 234 entsprechenden Bereich umfasst.
  • Bei Block 1503 gleich die Steuerung 220 das am Block 1501 extrahierte partielle 2D-Modell mit dem 2D-Bild 234 unter Verwendung der zuvor beschriebenen Merkmals-Abgleichstechniken ab. In einigen beispielhaften Ausführungsformen, auch am Block 1503, erzeugt die Steuerung 220 die vorgegebenen Abgleichsdaten 236 und speichert die vorgegebenen Abgleichsdaten 236 im Speicher 222. Daher werden die Blöcke 1501, 1503 in der Regel nicht „live“, sondern vor der Abbildung eines Objekts (z. B. des Fahrzeugs 122, das den Gegenstand 124 trägt) mit den Sensoren 112 durchgeführt.
  • Beim Block 1505 extrahiert die Steuerung 220 aus der 3D-Darstellung 401 eine partielle 2D-Darstellung, wobei angenommen wird, dass der Block 301 des beispielhaften Verfahrens 300 durchgeführt wurde. Der Block 1505 wird ähnlich wie der Block 1501 durchgeführt. Alternativ wird der Block 1505 durch Bestimmen einer Bewegungsrichtung durchgeführt, wie vorstehend beschrieben.
  • Bei dem Block 1507 gleicht die Steuerung 220 die am Block 1505 extrahierte partielle 2D-Darstellung mit dem 2D-Bild 234 unter Verwendung der zuvor beschriebenen Markmals-Abgleichstechniken ab.
  • Am Block 1509 führt die Steuerung 220 eine 2D-Korrespondenz zwischen dem partiellen 2D-Modell und der partiellen 2D-Darstellung basierend auf den Blöcken 1503, 1507 durch. Daher wird die Anpassung des 2D-Bildes 234 mit jedem des partiellen 2D-Modells und der partiellen 2D-Darstellung verwendet, um Merkmale in den entsprechenden Bereichen jedes des partiellen 2D-Modells und der partiellen 2D-Darstellung, die dem 2D-Bild 234 entsprechen, anzupassen. Die Anpassung des 3D-Modells 232 an die 3D-Darstellung 401 ist jedoch noch nicht erfolgt.
  • Daher führt die Steuerung 220 bei Block 1511 eine 3D-Korrespondenz zwischen den 2D-Merkmalen des am Block 1509 angepassten partiellen 2D-Modells und dem 3D-Modell 232 durch. So bestimmt beispielsweise die Steuerung 220, wo sich die angepassten 2D-Merkmale des Blocks 1509 im 3D-Modell 232 befinden.
  • Ebenso führt die Steuerung 220 bei Block 1513 eine 3D-Korrespondenz zwischen den 2D-Merkmalen der am Block 1509 angepassten partiellen 2D-Darstellung und der 3D-Darstellung 401 durch. So bestimmt beispielsweise die Steuerung 220, wo sich die angepassten 2D-Merkmale des Blocks 1509 in der 3D-Darstellung 401 befinden.
  • Die an jedem der Blöcke 1511, 1513 bestimmten Korrespondenzen werden von der Steuerung 220 an Block 1515 verwendet, um eine 3D-Korrespondenz zwischen dem 3D-Modell 232 und der 3D-Darstellung 401 durchzuführen. Die Blöcke 1505 bis 1515 stellen somit eine bestimmte beispielhafte Ausführungsform der Blöcke 303, 305 des beispielhaften Verfahrens 300 und/oder eine bestimmte beispielhafte Ausführungsform der Blöcke 1401 bis 1405 des beispielhaften Verfahrens 1400 dar.
  • Bei Block 1517 optimiert die Steuerung 220 die Kombination des an die 3D-Darstellung 401 angepassten 3D-Modells 232, z. B. unter Verwendung eines oder mehrerer von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenüberprüfung und/oder jeder anderen Optimierungstechnik.
  • Bei Block 1519 führt die Steuerung 220 die Segmentierung, wie oben in Bezug auf die Blöcke 307, 1407, und 10 und 11 beschrieben, durch.
  • 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 Offenbarung zu verlassen, wie sie in den Ansprüchen wiedergegeben ist. 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 eines Nutzens, eines Vorteils, oder einer Lösung führen oder diese verstärken können, sind nicht als kritische, erforderliche oder wesentliche Merkmale oder Elemente in einigen oder sämtlichen Ansprüchen zu verstehen.
  • In diesem Dokument kann die Sprache von „mindestens einem von X, Y und Z“ und „einem oder mehreren von X, Y und Z“ als nur X, nur Y, nur Z oder eine Kombination von zwei oder mehr Elementen X, Y und Z (z. B. XYZ, XY, XZ, YZ und dergleichen) ausgelegt werden. Eine ähnliche Logik kann für zwei oder mehrere Elemente bei jedem Auftreten einer „mindestens einer...“ und „einer oder mehreren...“ -Sprache angewendet werden.
  • 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“, „aufweisen“, „enthält“, „enthalten“ 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.
  • Die obige Beschreibung bezieht sich auf Blockschaltbilder der zugehörigen Zeichnungen. Alternative Ausführungsformen der in den Blockdiagrammen dargestellten Beispiele umfassen ein oder mehrere zusätzliche oder alternative Elemente, Prozesse und/oder Vorrichtungen. Zusätzlich oder alternativ kann einer oder mehrere der beispielhaften Blöcke der Diagramme kombiniert, geteilt, neu angeordnet oder weggelassen werden. Die durch die Blöcke der Diagramme dargestellten Komponenten werden durch Hardware, Software, Firmware und/oder eine beliebige Kombination aus 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 definiert als eine physikalische Vorrichtung, die mindestens eine Hardwarekomponente umfasst, die konfiguriert ist (z. B. durch Betrieb gemäß einer vorbestimmten Konfiguration und/oder durch Ausführen gespeicherter maschinenlesbarer Anweisungen), um eine oder mehrere Maschinen zu steuern und/oder Operationen an einer oder mehreren Maschinen durchzuführen. Beispiele für eine Logikschaltung können einen oder mehrere Prozessoren, einen oder mehrere Koprozessoren, einen oder mehrere Mikroprozessoren, eine oder mehrere Steuerungen, einen oder mehrere digitale Signalprozessoren (DSPs), eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs), einen oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), eine oder mehrere Mikrocontroller-Einheiten (MCUs), einen oder mehrere Hardwarebeschleuniger, einen oder mehrere spezielle Computerchips und ein oder mehrere System-on-a-Chip (SoC)-Geräte umfassen. Einige beispielhafte Logikschaltungen, wie ASICs oder FPGAs, sind speziell konfigurierte Hardware zur Durchführung von Operationen (z. B. eine oder mehrere der Operationen, die durch die Flussdiagramme dieser Offenbarung dargestellt werden). Einige beispielhafte Logikschaltungen sind Hardware, die maschinenlesbare Anweisungen zur Ausführung von Operationen (z. B. eine oder mehrere der Operationen, die durch die Flussdiagramme dieser Offenbarung dargestellt werden) ausführt. Einige beispielhafte Logikschaltungen umfassen eine Kombination aus speziell konfigurierter Hardware und Hardware, die maschinenlesbare Anweisungen ausführt.
  • Die obige Beschreibung bezieht sich auf Flussdiagramme der zugehörigen Zeichnungen. Die Flussdiagramme sind repräsentativ für die hierin offenbarten beispielhaften Verfahren. In einigen Beispielen implementieren die durch die Flussdiagramme dargestellten Verfahren die durch die Blockdiagramme dargestellte Vorrichtung. Alternative Ausführungsformen von hierin offenbarten beispielhaften Verfahren können zusätzliche oder alternative Operationen umfassen. Darüber hinaus können Operationen alternativer Ausführungsformen der hierin offenbarten Verfahren kombiniert, geteilt, neu angeordnet oder weggelassen werden. In einigen Beispielen werden die durch die Flussdiagramme dargestellten Operationen durch maschinenlesbare Anweisungen (z. B. Software und/oder Firmware) implementiert, die auf einem Medium (z. B. einem zugreifbaren maschinenlesbaren Medium) gespeichert sind, um von einer oder mehreren Logikschaltungen (z. B. Prozessor(en)) ausgeführt zu werden. In einigen Beispielen werden die durch die Flussdiagramme dargestellten Operationen durch eine oder mehrere Konfigurationen einer oder mehrerer speziell entwickelter Logikschaltungen (z. B. ASIC(s)) implementiert. In einigen Beispielen werden die Operationen der Flussdiagramme durch eine Kombination aus speziell entwickelten Logikschaltung(en) und maschinenlesbaren Anweisungen, die auf einem Medium (z. B. einem zugreifbaren maschinenlesbaren Medium) gespeichert sind, zur Ausführung durch die Logikschaltung(en) implementiert.
  • Wie hierin verwendet, ist jeder der Begriffe „zugreifbares maschinenlesbares Medium“, „nichtflüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ ausdrücklich als Speichermedium definiert (z. B. Platte einer Festplatte, eine Digital Versatile Disc, eine Compact Disc, ein Flash-Speicher, ein Nur-Lese-Speicher (read-only memory), Direktzugriffsspeicher (random-access memory) usw.), auf dem maschinenlesbare Anweisungen (z. B. Programmcode in Form von z. B. Software und/oder Firmware) gespeichert werden können. Darüber hinaus ist, wie hierin verwendet, jeder der Begriffe „zugreifbares maschinenlesbares Medium“, „nichtflüchtiges maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ ausdrücklich definiert, indem sich ausbreitende Signale ausgeschlossen sind. Das heißt, wie in irgendeinem Anspruch dieses Patents verwendet, kann keiner der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht-flüchtiges maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ gelesen werden, um durch ein sich ausbreitendes Signal implementiert zu werden.
  • Wie hierin verwendet, ist jeder der Begriffe „zugreifbares maschinenlesbares Medium“, „nicht-flüchtiges maschinenlesbares Medium“ und „maschinenlesbares Speichermedium“ ausdrücklich als Speichermedium definiert, auf dem maschinenlesbare Anweisungen für einen geeigneten Zeitraum gespeichert werden (z. B....., dauerhaft, für einen längeren Zeitraum (z. B. während der Ausführung eines den maschinenlesbaren Anweisungen zugeordneten Programms) und/oder für einen kurzen Zeitraum (z. B. während der Zwischenspeicherung der maschinenlesbaren Anweisungen und/oder während eines Pufferungsprozesses)).
  • Obwohl bestimmte beispielhafte Vorrichtungen, Verfahren und Herstellungserzeugnisse hierin offenbart wurden, ist der Schutzumfang dieses Patents nicht darauf beschränkt. Im Gegenteil, dieses Patent umfasst alle Vorrichtungen, Verfahren und Herstellungserzeugnisse, die in den Schutzumfang der Ansprüche dieses Patents fallen.

Claims (20)

  1. Verfahren, umfassend: Empfangen, an einer Steuerung, von einem oder mehreren Sensoren, einer dreidimensionalen (3D-)Darstellung einer Szene, die ein Objekt umfasst, das durch ein 3D-Modell dargestellt ist; Bestimmen, an der Steuerung, einer Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleichen des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; Bestimmen, an der Steuerung, eines ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen entsprechenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert sind; und Segmentieren, an der Steuerung, des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung.
  2. Verfahren nach Anspruch 1, wobei das Segmentieren des ersten Teils der 3D-Darstellung vom zweiten Teil der 3D-Darstellung ein Entfernen des ersten Teils der 3D-Darstellung umfasst, der der Teilmenge des 3D-Modells entspricht.
  3. Verfahren nach Anspruch 2, ferner umfassend Dimensionieren eines oder mehrerer Gegenstände, die durch den zweiten Teil der 3D-Darstellung dargestellt sind, der nach dem Entfernen des ersten Teils der 3D-Darstellung, der dem 3D-Modell entspricht, verbleibt.
  4. Verfahren nach Anspruch 1, wobei die 3D-Darstellung der Szene eine oder mehrere von einer Punktwolke, Farbdaten, die der Punktwolke zugeordnet sind, und einer Farbpunktwolke umfasst.
  5. Verfahren nach Anspruch 1, wobei jedes des Bestimmens der Ausrichtung des 2D-Bildes in der 3D-Darstellung und des Bestimmens des ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, eine 3D-Punktwolken-Merkmalsanpassung und eine Farbmerkmalsanpassung umfasst.
  6. Verfahren nach Anspruch 1, wobei die 3D-Darstellung der Szene eine Vielzahl von Bildern von einem oder mehreren Sensoren umfasst, und der Abgleich des 2D-Bildes mit einen entsprechenden Bereich der 3D-Darstellung ein Durchführen eines 2D-Abgleichs zwischen dem 2D-Bild und einem Bild der Vielzahl von Bildern umfasst.
  7. Verfahren nach Anspruch 6, ferner umfassend Bestimmen einer Bewegungsrichtung des Objekts in der Szene und Bestimmen des einen Bildes der Vielzahl von Bildern zur Verwendung in dem 2D-Abgleich aus der Bewegungsrichtung.
  8. Verfahren nach Anspruch 1, ferner umfassend Optimieren der 3D-Darstellung durch eine oder mehrere von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenprüfung.
  9. Verfahren nach Anspruch 1, wobei das Segmentieren des ersten Teil der 3D-Darstellung von dem zweiten Teil ein Bestimmen einer Begrenzungsbox der Teilmenge des 3D-Modells in der 3D-Darstellung und ein Entfernen von Daten, die der Begrenzungsbox entsprechen, aus der 3D-Darstellung umfasst.
  10. Verfahren nach Anspruch 1, wobei das 2D-Bild eine Darstellung von Markierungen auf dem Objekt umfasst, wobei die Markierungen ein oder mehrere von einem Logo, einem gegebenen Teil des Objekts, einem merkmalsreichen Bild und einem besonderen Abschnitt des Objekts umfassen.
  11. Verfahren nach Anspruch 1, wobei das 3D-Modell des Objekts ein 3D-Modell eines Gabelstaplers umfasst und die Teilmenge des 3D-Modells Gabeln des Gabelstaplers ausschließt.
  12. Vorrichtung, umfassend: eine Steuerung und eine Kommunikationsschnittstelle, wobei die Steuerung konfiguriert ist zum: Empfangen, unter Verwendung der Kommunikationsschnittstelle, von einem oder mehreren Sensoren, einer dreidimensionalen (3D-)Darstellung einer Szene, die ein durch ein 3D-Modell dargestelltes Objekt umfasst; Bestimmen einer Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleichen des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; Bestimmen eines ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen entsprechenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert sind; und Segmentieren des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung.
  13. Vorrichtung nach Anspruch 12, wobei die Steuerung ferner ausgeführt ist, um den ersten Teil der 3D-Darstellung vom zweiten Teil der 3D-Darstellung zu segmentieren, indem der erste Teil der 3D-Darstellung entfernt wird, der der Teilmenge des 3D-Modells entspricht.
  14. Vorrichtung nach Anspruch 13, wobei die Steuerung ferner ausgeführt ist, um ein oder mehrere Elemente zu dimensionieren, die durch den zweiten Teil der 3D-Darstellung dargestellt werden, der nach dem Entfernen des ersten Teils der 3D-Darstellung, der dem 3D-Modell entspricht, verbleibt.
  15. Vorrichtung nach Anspruch 12, wobei jedes des Bestimmens der Ausrichtung des 2D-Bildes in der 3D-Darstellung und des Bestimmens des ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, umfasst: einen 3D-Punktwolken-Merkmlasabgleich und einen Farbmerkmalsabgleich.
  16. Vorrichtung nach Anspruch 12, wobei die 3D-Darstellung der Szene eine Vielzahl von Bildern von einem oder mehreren Sensoren umfasst, und die Steuerung ferner ausgeführt ist, um das 2D-Bild mit einem entsprechenden Bereich der 3D-Darstellung durch Ausführen eines 2D-Abgleichs zwischen dem 2D-Bild und einem Bild aus der Vielzahl von Bildern abzugleichen.
  17. Vorrichtung nach Anspruch 16, wobei die Steuerung ferner ausgeführt ist, um eine Bewegungsrichtung des Objekts in der Szene zu bestimmen und das eine Bild der Vielzahl von Bildern zu bestimmen zur Verwendung in dem 2D-Abgleich aus der Bewegungsrichtung.
  18. Vorrichtung nach Anspruch 12, wobei die Steuerung ferner ausgeführt ist, um die 3D-Darstellung durch eine oder mehrere von: einer 3D-Hough-Transformation, einem Geometriekonsistenz-Clustering, einer Verfeinerung durch iterative Nächster-Punkt-Registrierung und einer 3D-Hypothesenprüfung zu optimieren.
  19. Vorrichtung nach Anspruch 12, wobei Steuerung ist ferner ausgeführt ist, um den ersten Teil der 3D-Darstellung vom zweiten Teil zu segmentieren, indem eine Begrenzungsbox der Teilmenge des 3D-Modells in der 3D-Darstellung bestimmt wird und Daten, die der Begrenzungsbox entsprechen, aus der 3D-Darstellung entfernt werden.
  20. Nichtflüchtiges, computerlesbares Medium, das ein Computerprogramm speichert, wobei die Ausführung des Computerprogramms eine Maschine dazu veranlasst, Operationen auszuführen, die Folgendes umfassen: Empfangen, an einer Steuerung, von einem oder mehreren Sensoren, einer dreidimensionalen (3D-)Darstellung einer Szene, die ein Objekt umfasst, das durch ein 3D-Modell dargestellt ist; Bestimmen, an der Steuerung, einer Ausrichtung eines 2D-Bildes in der 3D-Darstellung durch Abgleichen des 2D-Bildes mit einem entsprechenden Bereich der 3D-Darstellung; Bestimmen, an der Steuerung, eines ersten Teils der 3D-Darstellung, der einer Teilmenge des 3D-Modells des Objekts entspricht, aus: der Ausrichtung des 2D-Bildes in der 3D-Darstellung; und vorbestimmten Abgleichsdaten, die für einen Abgleich des 2D-Bildes mit einem jeweiligen entsprechenden Bereich des 3D-Modells repräsentativ sind, wobei jedes des 3D-Modells, des 2D-Bildes und der vorbestimmten Abgleichsdaten in einem für die Steuerung zugänglichen Speicher gespeichert sind; und Segmentieren, an der Steuerung, des ersten Teils der 3D-Darstellung von einem zweiten Teil der 3D-Darstellung.
DE112017006429.5T 2016-12-20 2017-11-17 Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten Pending DE112017006429T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/385,113 2016-12-20
US15/385,113 US10354411B2 (en) 2016-12-20 2016-12-20 Methods, systems and apparatus for segmenting objects
PCT/US2017/062255 WO2018118294A1 (en) 2016-12-20 2017-11-17 Methods, systems and apparatus for segmenting objects

Publications (1)

Publication Number Publication Date
DE112017006429T5 true DE112017006429T5 (de) 2019-09-05

Family

ID=62561815

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017006429.5T Pending DE112017006429T5 (de) 2016-12-20 2017-11-17 Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten

Country Status (7)

Country Link
US (1) US10354411B2 (de)
CN (1) CN110383334B (de)
CA (1) CA3037606C (de)
DE (1) DE112017006429T5 (de)
GB (1) GB2571458B (de)
MX (1) MX2019005042A (de)
WO (1) WO2018118294A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021128624A1 (de) 2021-11-03 2023-05-04 Pandia 3D GmbH Systeme und verfahren zum prüfen eines bauteils oder einer baugruppe

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11042161B2 (en) 2016-11-16 2021-06-22 Symbol Technologies, Llc Navigation control method and apparatus in a mobile automation system
US11430148B2 (en) * 2016-12-28 2022-08-30 Datalogic Ip Tech S.R.L. Apparatus and method for pallet volume dimensioning through 3D vision capable unmanned aerial vehicles (UAV)
US11367092B2 (en) 2017-05-01 2022-06-21 Symbol Technologies, Llc Method and apparatus for extracting and processing price text from an image set
US10726273B2 (en) 2017-05-01 2020-07-28 Symbol Technologies, Llc Method and apparatus for shelf feature and object placement detection from shelf images
US11978011B2 (en) 2017-05-01 2024-05-07 Symbol Technologies, Llc Method and apparatus for object status detection
US11449059B2 (en) 2017-05-01 2022-09-20 Symbol Technologies, Llc Obstacle detection for a mobile automation apparatus
US10591918B2 (en) 2017-05-01 2020-03-17 Symbol Technologies, Llc Fixed segmented lattice planning for a mobile automation apparatus
WO2018204342A1 (en) 2017-05-01 2018-11-08 Symbol Technologies, Llc Product status detection system
US10663590B2 (en) 2017-05-01 2020-05-26 Symbol Technologies, Llc Device and method for merging lidar data
US10949798B2 (en) 2017-05-01 2021-03-16 Symbol Technologies, Llc Multimodal localization and mapping for a mobile automation apparatus
US11600084B2 (en) 2017-05-05 2023-03-07 Symbol Technologies, Llc Method and apparatus for detecting and interpreting price label text
US11044445B2 (en) * 2017-05-05 2021-06-22 VergeSense, Inc. Method for monitoring occupancy in a work area
US10742940B2 (en) * 2017-05-05 2020-08-11 VergeSense, Inc. Method for monitoring occupancy in a work area
US10572763B2 (en) 2017-09-07 2020-02-25 Symbol Technologies, Llc Method and apparatus for support surface edge detection
US10521914B2 (en) 2017-09-07 2019-12-31 Symbol Technologies, Llc Multi-sensor object recognition system and method
JP2019104376A (ja) * 2017-12-12 2019-06-27 トヨタ自動車株式会社 車室内監視装置、格納装置、および車両
US11327504B2 (en) 2018-04-05 2022-05-10 Symbol Technologies, Llc Method, system and apparatus for mobile automation apparatus localization
US10740911B2 (en) 2018-04-05 2020-08-11 Symbol Technologies, Llc Method, system and apparatus for correcting translucency artifacts in data representing a support structure
US10823572B2 (en) 2018-04-05 2020-11-03 Symbol Technologies, Llc Method, system and apparatus for generating navigational data
US10832436B2 (en) 2018-04-05 2020-11-10 Symbol Technologies, Llc Method, system and apparatus for recovering label positions
US10809078B2 (en) 2018-04-05 2020-10-20 Symbol Technologies, Llc Method, system and apparatus for dynamic path generation
US10282834B1 (en) 2018-06-22 2019-05-07 Caterpillar Inc. Measurement platform that automatically determines wear of machine components based on images
US11010920B2 (en) 2018-10-05 2021-05-18 Zebra Technologies Corporation Method, system and apparatus for object detection in point clouds
US11506483B2 (en) 2018-10-05 2022-11-22 Zebra Technologies Corporation Method, system and apparatus for support structure depth determination
KR102545105B1 (ko) * 2018-10-10 2023-06-19 현대자동차주식회사 차량용 허위 타겟 판별 장치 및 그의 허위 타겟 판별 방법과 그를 포함하는 차량
US11003188B2 (en) 2018-11-13 2021-05-11 Zebra Technologies Corporation Method, system and apparatus for obstacle handling in navigational path generation
US11090811B2 (en) 2018-11-13 2021-08-17 Zebra Technologies Corporation Method and apparatus for labeling of support structures
US11079240B2 (en) 2018-12-07 2021-08-03 Zebra Technologies Corporation Method, system and apparatus for adaptive particle filter localization
US11416000B2 (en) 2018-12-07 2022-08-16 Zebra Technologies Corporation Method and apparatus for navigational ray tracing
US11100303B2 (en) 2018-12-10 2021-08-24 Zebra Technologies Corporation Method, system and apparatus for auxiliary label detection and association
US11015938B2 (en) 2018-12-12 2021-05-25 Zebra Technologies Corporation Method, system and apparatus for navigational assistance
US10731970B2 (en) 2018-12-13 2020-08-04 Zebra Technologies Corporation Method, system and apparatus for support structure detection
CN113498530A (zh) * 2018-12-20 2021-10-12 艾奎菲股份有限公司 基于局部视觉信息的对象尺寸标注系统和方法
CA3028708A1 (en) 2018-12-28 2020-06-28 Zih Corp. Method, system and apparatus for dynamic loop closure in mapping trajectories
PE20220161A1 (es) * 2019-05-31 2022-01-27 Cqms Pty Ltd Sistema de monitoreo de herramienta de contacto de tierra
US11960286B2 (en) 2019-06-03 2024-04-16 Zebra Technologies Corporation Method, system and apparatus for dynamic task sequencing
US11200677B2 (en) 2019-06-03 2021-12-14 Zebra Technologies Corporation Method, system and apparatus for shelf edge detection
US11662739B2 (en) 2019-06-03 2023-05-30 Zebra Technologies Corporation Method, system and apparatus for adaptive ceiling-based localization
US11402846B2 (en) 2019-06-03 2022-08-02 Zebra Technologies Corporation Method, system and apparatus for mitigating data capture light leakage
US11151743B2 (en) 2019-06-03 2021-10-19 Zebra Technologies Corporation Method, system and apparatus for end of aisle detection
US11080566B2 (en) 2019-06-03 2021-08-03 Zebra Technologies Corporation Method, system and apparatus for gap detection in support structures with peg regions
US11341663B2 (en) 2019-06-03 2022-05-24 Zebra Technologies Corporation Method, system and apparatus for detecting support structure obstructions
US11010915B2 (en) * 2019-07-11 2021-05-18 Zebra Technologies Corporation Three-dimensional (3D) depth imaging systems and methods for dynamic container auto-configuration
US11532093B2 (en) 2019-10-10 2022-12-20 Intermap Technologies, Inc. First floor height estimation from optical images
US11507103B2 (en) 2019-12-04 2022-11-22 Zebra Technologies Corporation Method, system and apparatus for localization-based historical obstacle handling
US11107238B2 (en) 2019-12-13 2021-08-31 Zebra Technologies Corporation Method, system and apparatus for detecting item facings
US11822333B2 (en) 2020-03-30 2023-11-21 Zebra Technologies Corporation Method, system and apparatus for data capture illumination control
US11450024B2 (en) 2020-07-17 2022-09-20 Zebra Technologies Corporation Mixed depth object detection
US20220070235A1 (en) * 2020-08-28 2022-03-03 Tmrw Foundation Ip S.Àr.L. System and method enabling interactions in virtual environments with virtual presence
US11593915B2 (en) 2020-10-21 2023-02-28 Zebra Technologies Corporation Parallax-tolerant panoramic image generation
US11392891B2 (en) 2020-11-03 2022-07-19 Zebra Technologies Corporation Item placement detection and optimization in material handling systems
US11847832B2 (en) 2020-11-11 2023-12-19 Zebra Technologies Corporation Object classification for autonomous navigation systems
US11551366B2 (en) * 2021-03-05 2023-01-10 Intermap Technologies, Inc. System and methods for correcting terrain elevations under forest canopy
US11954882B2 (en) 2021-06-17 2024-04-09 Zebra Technologies Corporation Feature-based georegistration for mobile computing devices
US20230168661A1 (en) * 2021-11-29 2023-06-01 International Business Machines Corporation Intelligent object segmentation

Family Cites Families (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408322A (en) 1993-04-26 1995-04-18 Materials Research Corporation Self aligning in-situ ellipsometer and method of using for process monitoring
US20020014533A1 (en) 1995-12-18 2002-02-07 Xiaxun Zhu Automated object dimensioning system employing contour tracing, vertice detection, and forner point detection and reduction methods on 2-d range data maps
US5831719A (en) 1996-04-12 1998-11-03 Holometrics, Inc. Laser scanning system
US5988862A (en) 1996-04-24 1999-11-23 Cyra Technologies, Inc. Integrated system for quickly and accurately imaging and modeling three dimensional objects
US6332098B2 (en) 1998-08-07 2001-12-18 Fedex Corporation Methods for shipping freight
US6820895B2 (en) 1998-09-23 2004-11-23 Vehicle Safety Systems, Inc. Vehicle air bag minimum distance enforcement apparatus, method and system
JP2002321698A (ja) 2001-04-27 2002-11-05 Mitsubishi Heavy Ind Ltd 航空貨物運搬用ボーディング・ブリッジ
AU2002315499B2 (en) 2001-06-29 2006-08-03 Quantronix, Inc. Overhead dimensioning system and method
US6995762B1 (en) 2001-09-13 2006-02-07 Symbol Technologies, Inc. Measurement of dimensions of solid objects from two-dimensional image(s)
DE10210650B4 (de) * 2002-03-11 2005-04-28 Siemens Ag Verfahren zur dreidimensionalen Darstellung eines Untersuchungsbereichs eines Patienten in Form eines 3D-Rekonstruktionsbilds und medizinische Untersuchungs- und/oder Behandlungseinrichtung
US20060106742A1 (en) 2002-04-29 2006-05-18 Speed Trac Technologies, Inc. System and method for weighing and tracking freight
US7248754B2 (en) 2003-05-05 2007-07-24 International Business Machines Corporation Apparatus and method for determining whether machine readable information on an item matches the item
US7137207B2 (en) 2003-06-23 2006-11-21 Armstrong Timothy D Measuring arrangement to determine location of corners for a building foundation and a wooden base frame, and the use thereof
DE10336638A1 (de) 2003-07-25 2005-02-10 Robert Bosch Gmbh Vorrichtung zur Klassifizierung wengistens eines Objekts in einem Fahrzeugumfeld
TWI266035B (en) 2003-11-11 2006-11-11 Hon Hai Prec Ind Co Ltd A system and method for measuring point-cloud
US8294809B2 (en) 2005-05-10 2012-10-23 Advanced Scientific Concepts, Inc. Dimensioning system
RU2416783C2 (ru) 2005-06-28 2011-04-20 Скэнэлайз Пти Лтд Система и способ измерения и составления карты поверхности относительно репера
US8625854B2 (en) 2005-09-09 2014-01-07 Industrial Research Limited 3D scene scanner and a position and orientation system
US7605817B2 (en) 2005-11-09 2009-10-20 3M Innovative Properties Company Determining camera motion
US8157205B2 (en) 2006-03-04 2012-04-17 Mcwhirk Bruce Kimberly Multibody aircrane
CA2545118C (en) 2006-04-28 2011-07-05 Global Sensor Systems Inc. Device for measuring package size
US20070272732A1 (en) 2006-05-26 2007-11-29 Mettler-Toledo, Inc. Weighing and dimensioning system and method for weighing and dimensioning
US7647752B2 (en) 2006-07-12 2010-01-19 Greg Magnell System and method for making custom boxes for objects of random size or shape
WO2008057504A2 (en) 2006-11-06 2008-05-15 Aman James A Load tracking system based on self- tracking forklift
US8531457B2 (en) 2006-11-29 2013-09-10 Technion Research And Development Foundation Ltd. Apparatus and method for finding visible points in a cloud point
US7474389B2 (en) 2006-12-19 2009-01-06 Dean Greenberg Cargo dimensional and weight analyzing system
US7940279B2 (en) 2007-03-27 2011-05-10 Utah State University System and method for rendering of texel imagery
US8132728B2 (en) 2007-04-04 2012-03-13 Sick, Inc. Parcel dimensioning measurement system and method
US8094937B2 (en) 2007-04-17 2012-01-10 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. System and method for labeling feature clusters in frames of image data for optical navigation
JP4561769B2 (ja) 2007-04-27 2010-10-13 アイシン・エィ・ダブリュ株式会社 経路案内システム及び経路案内方法
JP2010533282A (ja) 2007-06-08 2010-10-21 テレ アトラス ベスローテン フエンノートシャップ 多視点パノラマを生成する方法及び装置
WO2008154611A2 (en) 2007-06-11 2008-12-18 Honeywell International Inc. Optical reader system for extracting information in a digital image
US7726575B2 (en) 2007-08-10 2010-06-01 Hand Held Products, Inc. Indicia reading terminal having spatial measurement functionality
JP4466705B2 (ja) 2007-09-21 2010-05-26 ヤマハ株式会社 ナビゲーション装置
US8396284B2 (en) 2007-10-23 2013-03-12 Leica Geosystems Ag Smart picking in 3D point clouds
EP2083390B1 (de) * 2008-01-24 2016-06-01 Brainlab AG Verfahren zur Segmentierung eines 3D-Bilddatensatzes, zugehöriges Computerprogrammprodukt und zugehöriges System
US9841314B2 (en) 2008-08-29 2017-12-12 United Parcel Service Of America, Inc. Systems and methods for freight tracking and monitoring
WO2010029558A1 (en) 2008-09-14 2010-03-18 Eliezer Magal Automatic identification system for randomly oriented objects
US20100091094A1 (en) 2008-10-14 2010-04-15 Marek Sekowski Mechanism for Directing a Three-Dimensional Camera System
US8479996B2 (en) 2008-11-07 2013-07-09 Symbol Technologies, Inc. Identification of non-barcoded products
US8463079B2 (en) 2008-12-16 2013-06-11 Intermec Ip Corp. Method and apparatus for geometrical measurement using an optical device such as a barcode and/or RFID scanner
US8812226B2 (en) 2009-01-26 2014-08-19 GM Global Technology Operations LLC Multiobject fusion module for collision preparation system
US8290305B2 (en) * 2009-02-13 2012-10-16 Harris Corporation Registration of 3D point cloud data to 2D electro-optical image data
US8265895B2 (en) 2009-03-27 2012-09-11 Symbol Technologies, Inc. Interactive sensor systems and methods for dimensioning
US8284988B2 (en) 2009-05-13 2012-10-09 Applied Vision Corporation System and method for dimensioning objects using stereoscopic imaging
US8743176B2 (en) 2009-05-20 2014-06-03 Advanced Scientific Concepts, Inc. 3-dimensional hybrid camera and production system
US8542252B2 (en) 2009-05-29 2013-09-24 Microsoft Corporation Target digitization, extraction, and tracking
US8933925B2 (en) 2009-06-15 2015-01-13 Microsoft Corporation Piecewise planar reconstruction of three-dimensional scenes
US20110047636A1 (en) 2009-08-21 2011-02-24 Syngenta Participations Ag Crop Automated Relative Maturity System
KR101619076B1 (ko) 2009-08-25 2016-05-10 삼성전자 주식회사 모바일 플랫폼의 동적 물체 검출 및 추적 방법
US8942884B2 (en) 2010-01-14 2015-01-27 Innovative Transport Solutions, Llc Transport system
US20110216063A1 (en) 2010-03-08 2011-09-08 Celartem, Inc. Lidar triangular network compression
WO2011123057A1 (en) 2010-03-30 2011-10-06 Azimuth Intellectual Products Pte Ltd Apparatus and methods for acquiring and analysing images of a pallet load
US9400170B2 (en) 2010-04-21 2016-07-26 Faro Technologies, Inc. Automatic measurement of dimensional data within an acceptance region by a laser tracker
US8619265B2 (en) 2011-03-14 2013-12-31 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8199977B2 (en) 2010-05-07 2012-06-12 Honeywell International Inc. System and method for extraction of features from a 3-D point cloud
US8134717B2 (en) 2010-05-21 2012-03-13 LTS Scale Company Dimensional detection system and associated method
US20110310088A1 (en) 2010-06-17 2011-12-22 Microsoft Corporation Personalized navigation through virtual 3d environments
US8872851B2 (en) 2010-09-24 2014-10-28 Intel Corporation Augmenting image data based on related 3D point cloud data
EP2439487B1 (de) 2010-10-06 2012-08-22 Sick Ag Volumenmessvorrichtung für bewegte Objekte
US20120250984A1 (en) 2010-12-01 2012-10-04 The Trustees Of The University Of Pennsylvania Image segmentation for distributed target tracking and scene analysis
US8744644B2 (en) 2011-01-19 2014-06-03 Electronics And Telecommunications Research Institute Apparatus and method for detecting location of vehicle
KR101758058B1 (ko) 2011-01-20 2017-07-17 삼성전자주식회사 깊이 정보를 이용한 카메라 모션 추정 방법 및 장치, 증강 현실 시스템
WO2012100593A1 (zh) 2011-01-30 2012-08-02 浙江省电力公司 智能电能表全自动化检定系统
US8447549B2 (en) 2011-02-11 2013-05-21 Quality Vision International, Inc. Tolerance evaluation with reduced measured points
US8660338B2 (en) 2011-03-22 2014-02-25 Honeywell International Inc. Wide baseline feature matching using collobrative navigation and digital terrain elevation data constraints
US9854209B2 (en) 2011-04-19 2017-12-26 Ford Global Technologies, Llc Display system utilizing vehicle and trailer dynamics
US20140351073A1 (en) 2011-05-11 2014-11-27 Proiam, Llc Enrollment apparatus, system, and method featuring three dimensional camera
US20120287249A1 (en) 2011-05-12 2012-11-15 Electronics And Telecommunications Research Institute Method for obtaining depth information and apparatus using the same
US9070285B1 (en) 2011-07-25 2015-06-30 UtopiaCompression Corporation Passive camera based cloud detection and avoidance for aircraft systems
US20150213590A1 (en) * 2011-07-29 2015-07-30 Google Inc. Automatic Pose Setting Using Computer Vision Techniques
KR101907081B1 (ko) 2011-08-22 2018-10-11 삼성전자주식회사 3차원 점군의 물체 분리 방법
US9129277B2 (en) 2011-08-30 2015-09-08 Digimarc Corporation Methods and arrangements for identifying objects
US9002099B2 (en) 2011-09-11 2015-04-07 Apple Inc. Learning-based estimation of hand and finger pose
US8793107B2 (en) 2011-12-01 2014-07-29 Harris Corporation Accuracy-based significant point derivation from dense 3D point clouds for terrain modeling
CN103164842A (zh) 2011-12-14 2013-06-19 鸿富锦精密工业(深圳)有限公司 点云提取系统及方法
US20130162806A1 (en) 2011-12-23 2013-06-27 Mitutoyo Corporation Enhanced edge focus tool
EP2615580B1 (de) 2012-01-13 2016-08-17 Softkinetic Software Automatische Szenenkalibrierung
ES2535122T3 (es) 2012-03-01 2015-05-05 Caljan Rite-Hite Aps Transportador extensible con luz
US8668136B2 (en) 2012-03-01 2014-03-11 Trimble Navigation Limited Method and system for RFID-assisted imaging
US9329269B2 (en) 2012-03-15 2016-05-03 GM Global Technology Operations LLC Method for registration of range images from multiple LiDARS
US8989342B2 (en) 2012-04-18 2015-03-24 The Boeing Company Methods and systems for volumetric reconstruction using radiography
US9153061B2 (en) 2012-05-04 2015-10-06 Qualcomm Incorporated Segmentation of 3D point clouds for dense 3D modeling
WO2013170260A1 (en) 2012-05-11 2013-11-14 Proiam, Llc Hand held dimension capture apparatus, system, and method
US9846960B2 (en) 2012-05-31 2017-12-19 Microsoft Technology Licensing, Llc Automated camera array calibration
US9135543B2 (en) 2012-06-20 2015-09-15 Apple Inc. Compression and obfuscation of three-dimensional coding
US9420265B2 (en) 2012-06-29 2016-08-16 Mitsubishi Electric Research Laboratories, Inc. Tracking poses of 3D camera using points and planes
US9651363B2 (en) 2012-07-24 2017-05-16 Datalogic Usa, Inc. Systems and methods of object measurement in an automated data reader
US8757479B2 (en) 2012-07-31 2014-06-24 Xerox Corporation Method and system for creating personalized packaging
ES2545374T3 (es) 2012-07-31 2015-09-10 Sick Ag Sistema de detección para el montaje en una cinta transportadora
US9939259B2 (en) 2012-10-04 2018-04-10 Hand Held Products, Inc. Measuring object dimensions using mobile computer
US20140192050A1 (en) 2012-10-05 2014-07-10 University Of Southern California Three-dimensional point processing and model generation
US9472022B2 (en) 2012-10-05 2016-10-18 University Of Southern California Three-dimensional point processing and model generation
US20140104413A1 (en) 2012-10-16 2014-04-17 Hand Held Products, Inc. Integrated dimensioning and weighing system
EP2915563B1 (de) 2012-11-05 2018-04-18 Mitsubishi Electric Corporation System zur erfassung dreidimensionaler bilder und partikelstrahltherapievorrichtung
WO2014080330A2 (en) 2012-11-22 2014-05-30 Geosim Systems Ltd. Point-cloud fusion
MY172143A (en) 2012-12-13 2019-11-14 Mimos Berhad Method for non-static foreground feature extraction and classification
DE102012113009A1 (de) 2012-12-21 2014-06-26 Jenoptik Robot Gmbh Verfahren zum automatischen Klassifizieren von sich bewegenden Fahrzeugen
US9154773B2 (en) 2013-03-15 2015-10-06 Seiko Epson Corporation 2D/3D localization and pose estimation of harness cables using a configurable structure representation for robot operations
US9558559B2 (en) 2013-04-05 2017-01-31 Nokia Technologies Oy Method and apparatus for determining camera location information and/or camera pose information according to a global coordinate system
WO2014192107A1 (ja) 2013-05-29 2014-12-04 トヨタ自動車 株式会社 駐車支援装置
US9443297B2 (en) 2013-07-10 2016-09-13 Cognex Corporation System and method for selective determination of point clouds
US20150088618A1 (en) 2013-08-26 2015-03-26 Ims Solutions, Inc. Road tolling
US9615012B2 (en) 2013-09-30 2017-04-04 Google Inc. Using a second camera to adjust settings of first camera
US20150106403A1 (en) 2013-10-15 2015-04-16 Indooratlas Oy Generating search database based on sensor measurements
GB2520338A (en) * 2013-11-19 2015-05-20 Nokia Corp Automatic scene parsing
US9412040B2 (en) 2013-12-04 2016-08-09 Mitsubishi Electric Research Laboratories, Inc. Method for extracting planes from 3D point cloud sensor data
MY177646A (en) 2014-02-28 2020-09-23 Icm Airport Technics Australia Pty Ltd Luggage processing station and system thereof
CN103945208B (zh) 2014-04-24 2015-10-28 西安交通大学 一种针对多视点裸眼3d显示的并行同步缩放引擎及方法
CN106573381B (zh) * 2014-06-04 2019-12-03 因特利格兰特总部有限责任公司 卡车卸载机可视化
EP3161572B1 (de) 2014-06-27 2019-01-23 Crown Equipment Corporation Wiederfinden eines verlorenen fahrzeuges unter verwendung von assoziierten merkmalspaaren
US11051000B2 (en) 2014-07-14 2021-06-29 Mitsubishi Electric Research Laboratories, Inc. Method for calibrating cameras with non-overlapping views
DE102014011821A1 (de) 2014-08-08 2016-02-11 Cargometer Gmbh Vorrichtung und Verfahren zur Volumenbestimmung eines durch ein Flurförderzeug bewegten Objekts
US20160044862A1 (en) 2014-08-14 2016-02-18 Raven Industries, Inc. Site specific product application device and method
CN104200086B (zh) 2014-08-25 2017-02-22 西北工业大学 宽基线可见光相机位姿估计方法
WO2016033451A1 (en) 2014-08-28 2016-03-03 Lts Metrology, Llc Stationary dimensioning apparatus
JP2016057108A (ja) 2014-09-08 2016-04-21 株式会社トプコン 演算装置、演算システム、演算方法およびプログラム
US9600892B2 (en) 2014-11-06 2017-03-21 Symbol Technologies, Llc Non-parametric method of and system for estimating dimensions of objects of arbitrary shape
EP3221851A1 (de) 2014-11-20 2017-09-27 Cappasity Inc. Systeme und verfahren zur 3d-erfassung von objekten mit mehreren bereichskameras und mehreren rgb-kameras
US9396554B2 (en) 2014-12-05 2016-07-19 Symbol Technologies, Llc Apparatus for and method of estimating dimensions of an object associated with a code in automatic response to reading the code
US9646410B2 (en) 2015-06-30 2017-05-09 Microsoft Technology Licensing, Llc Mixed three dimensional scene reconstruction from plural surface models
EP3687156B1 (de) 2015-07-10 2022-03-16 SZ DJI Technology Co., Ltd. Doppellinsensystem mit lichtteiler
US9549125B1 (en) 2015-09-01 2017-01-17 Amazon Technologies, Inc. Focus specification and focus stabilization
CN105139416A (zh) * 2015-10-10 2015-12-09 北京微尘嘉业科技有限公司 一种基于图像信息和深度信息的物体识别方法
US20170150129A1 (en) 2015-11-23 2017-05-25 Chicago Measurement, L.L.C. Dimensioning Apparatus and Method
KR102373926B1 (ko) 2016-02-05 2022-03-14 삼성전자주식회사 이동체 및 이동체의 위치 인식 방법
US10482681B2 (en) * 2016-02-09 2019-11-19 Intel Corporation Recognition-based object segmentation of a 3-dimensional image
US9875535B2 (en) * 2016-02-11 2018-01-23 Caterpillar Inc. Wear measurement system using computer vision
US9791862B1 (en) 2016-04-25 2017-10-17 Thayermahan, Inc. Systems and method for unmanned undersea sensor position, orientation, and depth keeping
US9778388B1 (en) 2016-12-22 2017-10-03 Thayermahan, Inc. Systems and methods for autonomous towing of an underwater sensor array

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021128624A1 (de) 2021-11-03 2023-05-04 Pandia 3D GmbH Systeme und verfahren zum prüfen eines bauteils oder einer baugruppe

Also Published As

Publication number Publication date
CN110383334B (zh) 2023-07-07
US10354411B2 (en) 2019-07-16
GB201904497D0 (en) 2019-05-15
US20180174325A1 (en) 2018-06-21
GB2571458B (en) 2021-12-15
WO2018118294A1 (en) 2018-06-28
CA3037606C (en) 2021-03-02
CA3037606A1 (en) 2018-06-28
MX2019005042A (es) 2019-08-05
GB2571458A (en) 2019-08-28
CN110383334A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
DE112017006429T5 (de) Verfahren, Systeme und Vorrichtungen zum Segmentieren von Objekten
DE112017004142T5 (de) Verfahren, systeme und vorrichtung zum segmentieren und dimensionieren von objekten
EP3177889B1 (de) Vorrichtung und verfahren zur volumenbestimmung eines durch ein flurförderzeug bewegten objekts
DE112019002547B4 (de) System und verfahren zum bestimmen eines standortes zur platzierung eines pakets
DE102018006765B4 (de) Verfahren und system(e) für das management von frachtfahrzeugen
DE102015209967B4 (de) Verfahren und System zur räumlichen Charakterisierung eines Bildgebungssystems
DE112018002314T5 (de) Verfahren und vorrichtung zur erkennung eines objektstatus
DE112017005910T5 (de) Dimensionierungssystem zum und Verfahren zum Dimensionieren von sich entlang eines nicht eingeschränkten Pfades in einer Örtlichkeit bewegender Fracht
EP2439487B1 (de) Volumenmessvorrichtung für bewegte Objekte
US10102433B2 (en) Traveling road surface detection apparatus and traveling road surface detection method
DE102013012224B4 (de) Vorrichtung zum Entnehmen von lose gespeicherten Gegenständen durch einen Roboter
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
DE112020003332B4 (de) Dreidimensionale (3D) Tiefenbildgebungssysteme und -Verfahren zur dynamischen Container-Autokonfiguration
DE112018005979T5 (de) Schätzung der be-/entladezeit von containern
DE112015005485T5 (de) Vorrichtung für und verfahren zum schätzen von abmessungen eines objekt mit einem code im automatischen ansprechen auf ein lesen des codes
CN106573381A (zh) 卡车卸载机可视化
DE112020005377T5 (de) Systeme und verfahren zur automatischen kamerainstallationsführung (cig)
DE102020206387B4 (de) Verfahren und computersystem zur verarbeitung von kandidatenkanten
DE112018006533T5 (de) Schätzung der Containerausnutzung
DE112019004488B4 (de) Doppelmodus-Datenerfassungssystem zur Kollisionserfassung und Objektdimensionierung und Verfahren zur Doppelmodus-Datenerfassung
CH708993B1 (de) Verfahren und Vorrichtung zum Identifizieren eines zweidimensionalen Punktcodes.
EP3696135B1 (de) Gabelstapler und system mit gabelstapler zur identifikation einer ware
DE102020127732A1 (de) Dreidimensionale (3d) tiefenbildgebungssysteme und -verfahren zur automatischen bestimmung einer versandcontainerfüllung basierend auf bildgebungsvorlagen
DE112019002730B4 (de) Datenerfassungssystem und Verfahren zur Objektdimensionierung

Legal Events

Date Code Title Description
R012 Request for examination validly filed