DE102021212859A1 - Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten - Google Patents

Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten Download PDF

Info

Publication number
DE102021212859A1
DE102021212859A1 DE102021212859.9A DE102021212859A DE102021212859A1 DE 102021212859 A1 DE102021212859 A1 DE 102021212859A1 DE 102021212859 A DE102021212859 A DE 102021212859A DE 102021212859 A1 DE102021212859 A1 DE 102021212859A1
Authority
DE
Germany
Prior art keywords
image
descriptor
images
machine learning
learning model
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
DE102021212859.9A
Other languages
English (en)
Inventor
Markus Spies
David Adrian
Andras Gabor Kupcsik
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102021212859.9A priority Critical patent/DE102021212859A1/de
Priority to US18/053,239 priority patent/US20230150142A1/en
Priority to CN202211423371.1A priority patent/CN116152335A/zh
Publication of DE102021212859A1 publication Critical patent/DE102021212859A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • 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
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37555Camera detects orientation, position workpiece, points of workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39001Robot, manipulator control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39543Recognize object and plan hand shapes in grasping movements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40528Ann for learning robot contact surface shape
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von ein oder mehreren Objekten, beschrieben, das das Bilden von Paaren von Bildern, wobei jedes Bildpaar ein erstes Bild und ein zweites Bild aufweist, die das eine oder die mehreren Objekte aus unterschiedlichen Perspektiven zeigen, das Erzeugen, mittels des maschinellen Lernmodells, für jedes Bildpaar, eines ersten Deskriptorbilds zu dem ersten Bild, das in dem ersten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, und eines zweiten Deskriptorbilds zu dem zweiten Bild, das in dem zweiten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, das Sampeln, für jedes Bildpaar, von Deskriptorenpaaren, die jeweils einen ersten Deskriptor aus dem ersten Deskriptorbild und einen zweiten Deskriptor aus dem zweiten Deskriptorbild aufweisen, die derselben Stelle zugewiesen sind, und das Anpassen des maschinellen Lernmodells zum Verringern eines Verlusts aufweist, der für jedes gesampelte Deskriptorpaar das Verhältnis von der Distanz gemäß einem Distanzmaß zwischen dem ersten Deskriptor und dem zweiten Deskriptor zu der Summe aller Distanzen gemäß dem Distanzmaß zwischen dem ersten Deskriptor und den Deskriptoren des zweiten Deskriptorbilds, die in den gesampelten Deskriptorpaaren auftreten, beinhaltet.

Description

  • Stand der Technik
  • Die vorliegende Offenbarung bezieht sich auf Vorrichtungen und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten.
  • Offenbarung der Erfindung
  • Um eine flexible Herstellung oder Bearbeitung von Objekten durch einen Roboter zu ermöglichen, ist es wünschenswert, dass der Roboter in der Lage ist, ein Objekt ungeachtet der Stellung, mit der das Objekt in den Arbeitsraum des Roboters platziert wird, zu handhaben. Daher sollte der Roboter fähig sein, zu erkennen, welche Teile des Objektes sich an welchen Positionen befinden, sodass er zum Beispiel das Objekt an der korrekten Stelle greifen kann, um es z. B. an einem anderen Objekt zu befestigen, oder das Objekt am aktuellen Ort zu schweißen. Dies bedeutet, dass der Roboter fähig sein sollte, die Pose (Position und Orientierung) des Objekts zum Beispiel aus einem oder mehreren Bildern, die durch eine am Roboter befestigte Kamera aufgenommen werden, zu erkennen bzw. die Position von Stellen zum Aufnehmen oder Bearbeiten zu ermitteln. Ein Ansatz zum Erzielen davon besteht darin, Deskriptoren, d. h. Punkte (Vektoren) in einem vordefinierten Deskriptorraum, für Teile des Objekts (d. h. in einer Bildebene repräsentierte Pixel des Objekts) zu bestimmen, wobei der Roboter trainiert ist, unabhängig von einer aktuellen Pose des Objekts den gleichen Teilen eines Objekts die gleichen Deskriptoren zuzuweisen und somit die Topologie des Objekts in dem Bild zu erkennen, sodass dann beispielsweise bekannt ist, wo sich welche Ecke des Objekts in dem Bild befindet. Bei Kenntnis der Pose der Kamera lässt sich dann wiederum auf die Pose des Objekts rückschließen. Das Erkennen der Topologie lässt sich mit einem maschinellen Lernmodell realisieren, das entsprechend trainiert wird.
  • Ein Beispiel hierfür ist das in der Veröffentlichung „Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation“ von Peter Florence et al. (im Folgenden als „Referenz 1“ bezeichnet) beschriebene dichte Objektnetz. Das dichte Objektnetz wird hierbei auf selbst-überwachte Weise trainiert, wobei der Fokus auf vereinzelten Objekten liegt.
  • In der Praxis treten jedoch Objekte oft zusammen auf, z.B. bei der Aufgabe, ein Objekt aus einer Kiste voller Objekte zu nehmen.
  • Es sind deshalb Verfahren zum Trainieren von maschinellen Lernmodellen zum Erzeugen von Deskriptorbildern, wie beispielsweise einem dichten Objektnetz, wünschenswert, die auch in solchen praxisrelevanten Szenarien zu guten Ergebnisse führen.
  • Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von ein oder mehreren Objekten, bereitgestellt, das das Bilden von Paaren von Bildern, wobei jedes Bildpaar ein erstes Bild und ein zweites Bild aufweist, die das eine oder die mehreren Objekte aus unterschiedlichen Perspektiven zeigen, das Erzeugen, mittels des maschinellen Lernmodells, für jedes Bildpaar, eines ersten Deskriptorbilds zu dem ersten Bild, das in dem ersten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, und eines zweiten Deskriptorbilds zu dem zweiten Bild, das in dem zweiten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, das Sampeln, für jedes Bildpaar, von Deskriptorenpaaren, die jeweils einen ersten Deskriptor aus dem ersten Deskriptorbild und einen zweiten Deskriptor aus dem zweiten Deskriptorbild aufweisen, die derselben Stelle zugewiesen sind, und das Anpassen des maschinellen Lernmodells zum Verringern eines Verlusts aufweist, der für jedes gesampelte Deskriptorpaar das Verhältnis von der Distanz gemäß einem Distanzmaß zwischen dem ersten Deskriptor und dem zweiten Deskriptor zu der Summe aller Distanzen gemäß dem Distanzmaß zwischen dem ersten Deskriptor und den Deskriptoren des zweiten Deskriptorbilds, die in den gesampelten Deskriptorpaaren auftreten, beinhaltet.
  • Das oben beschriebene Verfahren ermöglicht ein besseres Training von maschinellen Lernmodellen, die Deskriptorbilder erzeugen, insbesondere von dichten Objektnetzen. Insbesondere kann ein mit dem oben beschriebenen trainiertes maschinelles Lernmodell besser mit Bilder mit Szenen umgehen, die mehrere Objekt enthalten. Die Verwendung von Bildern, die mehrere (gleiche) Objekte enthalten, erleichtert wiederum die Sammlung von Trainingsdaten bzw. die Dateneffizienz, da schon in einem Bild die Objekte in unterschiedlichen Blickwinkeln gezeigt sind. Des Weiteren sind keine Objektmasken erforderlich.
  • Das Verfahren erlaubt das Training des maschinellen Lernmodells mittels selbstüberwachtem Lernen, d.h. ohne das Kennzeichnen (Labeln) von Daten. Damit kann es für neue Objekte automatisch trainiert werden und somit, beispielsweise im industriellen Umfeld, auf einfache Weise für die Bearbeitung neuer Objekte durch Roboter eingesetzt werden.
  • Im Folgenden werden verschiedene Ausführungsbeispiele angegeben.
  • Ausführungsbeispiel 1 ist ein Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von ein oder mehreren Objekten, wie oben beschrieben.
  • Ausführungsbeispiel 2 ist das Verfahren nach Ausführungsbeispiel 1, aufweisend aufnehmen der ein oder mehreren Objekte in Kamerabildern, beschaffen von zusätzlichen Bildern durch Augmentieren zumindest eines Teils der Kamerabilder und Bilden der Paare von Bildern aus den Kamerabildern und zusätzlichen Bildern, wobei das Augmentieren aufweist eines oder mehrere von: Größenänderung und Zuschneiden, perspektivische und affine Verzerrung, horizontales und vertikales Spiegeln, Rotation, hinzufügen von Unschärfe, hinzufügen von Farbrauschen und Umwandlung in Graustufen.
  • Ergänzung von Trainingsbildern mittels Augmentieren verringert die Gefahr der Überanpassung beim Training und erhöht die Robustheit des Trainings aufgrund der Vergrößerung des Trainingsdatensatzes.
  • Ausführungsbeispiel 3 ist das Verfahren nach Ausführungsbeispiel 2, wobei für jedes von Größenänderung und Zuschneiden, perspektivische und affine Verzerrung, horizontales und vertikales Spiegeln, Rotation, Hinzufügen von Unschärfe, Hinzufügen von Farbrauschen und Umwandlung in Graustufen zumindest ein zusätzliches Bild aus den Kamerabildern erzeugt wird.
  • Ein breites Spektrum von Augmentierungen ermöglicht ein robustes Training, insbesondere in dem Fall, dass in den Bildern, die zum Training verwendet werden, mehrere Objekte gezeigt sind.
  • Ausführungsbeispiel 4 ist das Verfahren nach einem der Ausführungsbeispiele 1 bis 3, aufweisend aufnehmen von Kamerabildern, die jeweils mehrere der Objekte zeigen; und bilden der Paare von Bildern zumindest teilweise aus den Kamerabildern.
  • Dadurch wird unter anderem sichergestellt, dass ein großer Teil der Bilder Objekte zeigen und damit für das Training interessante Informationen enthalten. Es kann auch vermieden werden, dass eine Erzeugung von Objektmasken erforderlich ist.
  • Ausführungsbeispiel 5 ist das Verfahren nach einem der Ausführungsbeispiele 1 bis 4, wobei das maschinelle Lernmodell ein neuronales Netz ist.
  • In anderen Worten wird ein dichtes Objektnetz trainiert. Mit diesen können gute Resultate zur Erzeugung von Deskriptorbildern erzielt werden.
  • Ausführungsbeispiel 6 ist das Verfahren zum Steuern eines Roboters zum Aufnehmen oder Bearbeiten eines Objekts, aufweisend trainieren eines maschinellen Lernmodells nach einem der Ausführungsbeispiele 1 bis 5, aufnehmen eines Kamerabilds, das das Objekt in einem aktuellen Steuerszenario zeigt, zuführen des Kamerabilds zu dem maschinellen Lernmodell zum Erzeugen eines Deskriptorbilds, ermitteln der Position einer Stelle zum Aufnehmen oder Bearbeiten des Objekts in dem aktuellen Steuerszenario aus dem Deskriptorbild und steuern des Roboters entsprechend der ermittelten Position.
  • Ausführungsbeispiel 7 ist das Verfahren nach Ausführungsbeispiel 6, aufweisend identifizieren einer Referenzstelle in einem Referenzbild, ermitteln eines Deskriptors der identifizierten Referenzstelle durch Zuführen des Referenzbilds zu dem maschinellen Lernmodell, ermitteln der Position der Referenzstelle in dem aktuellen Steuerszenario durch Suchen des ermittelten Deskriptors in dem aus dem Kamerabild erzeugten Desktriptorbild und ermitteln der Position der Stelle zum Aufnehmen oder Bearbeiten des Objekts in dem aktuellen Steuerszenario aus der ermittelten Position der Referenzstelle.
  • Ausführungsbeispiel 8 ist eine Steuereinrichtung, die eingerichtet ist, ein Verfahren nach einem der Ausführungsbeispiele 1 bis 7 durchzuführen.
  • Ausführungsbeispiel 9 ist ein Computerprogramm mit Befehlen, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiele 1 bis 7 durchführt.
  • Ausführungsbeispiel 10 ist ein Computerlesbares Medium, das Befehle speichert, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiele 1 bis 7 durchführt.
  • In den Zeichnungen beziehen sich ähnliche Bezugszeichen im Allgemeinen auf dieselben Teile in den ganzen verschiedenen Ansichten. Die Zeichnungen sind nicht notwendigerweise maßstäblich, wobei die Betonung stattdessen im Allgemeinen auf die Darstellung der Prinzipien der Erfindung gelegt wird. In der folgenden Beschreibung werden verschiedene Aspekte mit Bezug auf die folgenden Zeichnungen beschrieben.
    • 1 zeigt einen Roboter.
    • 2 zeigt ein Training eines dichten Objektnetzes unter Verwendung einer Augmentierung gemäß einer Ausführungsform.
    • 3 zeigt ein Ablaufdiagramm für ein Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten gemäß einer Ausführungsform.
  • Die folgende ausführliche Beschreibung bezieht sich auf die begleitenden Zeichnungen, die zur Erläuterung spezielle Details und Aspekte dieser Offenbarung zeigen, in denen die Erfindung ausgeführt werden kann. Andere Aspekte können verwendet werden und strukturelle, logische und elektrische Änderungen können durchgeführt werden, ohne vom Schutzbereich der Erfindung abzuweichen. Die verschiedenen Aspekte dieser Offenbarung schließen sich nicht notwendigerweise gegenseitig aus, da einige Aspekte dieser Offenbarung mit einem oder mehreren anderen Aspekten dieser Offenbarung kombiniert werden können, um neue Aspekte zu bilden.
  • Im Folgenden werden verschiedene Beispiele genauer beschrieben.
  • 1 zeigt einen Roboter 100.
  • Der Roboter 100 beinhaltet einen Roboterarm 101, zum Beispiel einen Industrieroboterarm zum Handhaben oder Montieren eines Arbeitsstücks (oder eines oder mehrerer anderer Objekte). Der Roboterarm 101 beinhaltet Manipulatoren 102, 103, 104 und eine Basis (oder Stütze) 105, mittels der die Manipulatoren 102, 103, 104 gestützt werden. Der Ausdruck „Manipulator“ bezieht sich auf die bewegbaren Bauteile des Roboterarms 101, deren Betätigung eine physische Interaktion mit der Umgebung ermöglicht, um z. B. eine Aufgabe auszuführen. Zur Steuerung beinhaltet der Roboter 100 eine (Roboter-) Steuereinrichtung 106, die zum Implementieren der Interaktion mit der Umgebung gemäß einem Steuerprogramm ausgelegt ist. Das letzte Bauteil 104 (das am weitesten von der Stütze 105 entfernt ist) der Manipulatoren 102, 103, 104 wird auch als der Endeffektor 104 bezeichnet und kann ein oder mehrere Werkzeuge beinhalten, wie etwa einen Schweißbrenner, ein Greifinstrument, ein Lackiergerät oder dergleichen.
  • Die anderen Manipulatoren 102, 103 (die sich näher an der Stütze 105 befinden) können eine Positionierungsvorrichtung bilden, sodass, zusammen mit dem Endeffektor 104, der Roboterarm 101 mit dem Endeffektor 104 an seinem Ende bereitgestellt ist. Der Roboterarm 101 ist ein mechanischer Arm, der ähnliche Funktionen wie ein menschlicher Arm bereitstellen kann (möglicherweise mit einem Werkzeug an seinem Ende).
  • Der Roboterarm 101 kann Gelenkelemente 107, 108, 109 beinhalten, die die Manipulatoren 102, 103, 104 miteinander und mit der Stütze 105 verbinden. Ein Gelenkelement 107, 108, 109 kann ein oder mehrere Gelenke aufweisen, die jeweils eine drehbare Bewegung (d. h. Drehbewegung) und/oder translatorische Bewegung (d. h. Verlagerung) für assoziierte Manipulatoren relativ zueinander bereitstellen können. Die Bewegung der Manipulatoren 102, 103, 104 kann mittels Aktoren initiiert werden, die durch die Steuereinrichtung 106 gesteuert werden.
  • Der Ausdruck „Aktor“ kann als eine Komponente verstanden werden, die als Reaktion auf ihren Antrieb zum Bewirken eines Mechanismus oder Prozesses ausgebildet ist. Der Aktor kann durch die Steuereinrichtung 106 erstellte Anweisungen (die sogenannte Aktivierung) in mechanische Bewegungen implementieren. Der Aktor, z. B. ein elektromechanischer Wandler, kann dazu ausgelegt sein, als Reaktion auf seinen Antrieb elektrische Energie in mechanische Energie umzuwandeln.
  • Der Ausdruck „Steuereinrichtung“ kann als ein beliebiger Typ von logikimplementierender Entität verstanden werden, die zum Beispiel eine Schaltung und/oder einen Prozessor beinhalten kann, die/der in der Lage ist, in einem Speicherungsmedium gespeicherte Software, Firmware oder eine Kombination davon auszuführen, und die/der Anweisungen, z. B. zu einem Aktor im vorliegenden Beispiel, ausstellen kann. Die Steuereinrichtung kann zum Beispiel durch Programmcode (z. B. Software) konfiguriert werden, um den Betrieb eines Systems, eines Roboters im vorliegenden Beispiel, zu steuern.
  • Im vorliegenden Beispiel beinhaltet die Steuereinrichtung 106 einen oder mehrere Prozessoren 110 und einen Speicher 111, der Code und Daten speichert, basierend auf denen der Prozessor 110 den Roboterarm 101 steuert. Gemäß verschiedenen Ausführungsformen steuert die Steuereinrichtung 106 den Roboterarm 101 auf Basis eines maschinellen Lernmodells 112, das im Speicher 111 gespeichert ist.
  • Die Steuereinrichtung 106 verwendet das maschinelle Lernmodell 112 dazu, um die Pose eines Objekts 113 zu ermitteln, das zum Beispiel in einen Arbeitsraum des Roboterarms 101 platziert ist. Abhängigkeit von der ermittelten Pose kann die Steuereinrichtung 106 beispielsweise entscheiden, welche Stelle des Objekts 113 durch den Endeffektor 109 gegriffen (oder anderweitige bearbeitet) werden soll.
  • Die Steuereinrichtung 106 ermittelt die Pose unter Verwendung des maschinellen Lernmodells 112 unter Verwendung von ein oder mehreren Kamerabildern des Objekts 113. Der Roboter 100 kann zum Beispiel mit einer oder mehreren Kameras 114 ausgestattet sein, die es ihm ermöglichen, Bilder seines Arbeitsraums aufzunehmen. Die Kamera 114 ist zum Beispiel an dem Roboterarm 101 befestigt, sodass der Roboter Bilder des Objekts 113 von verschiedenen Perspektiven aus aufnehmen kann, indem er den Roboterarm 101 herumbewegt. Es können aber auch ein oder mehrere fixe Kameras vorgesehen sein.
  • Das maschinelle Lernmodell 112 ist gemäß verschiedenen Ausführungsformen ein (tiefes) neuronales Netzwerk, das für ein Kamerabild eine Merkmalskarte, z.B. in Form eines Bilds in einem Merkmalsraum, erzeugt, die es ermöglicht, Punkte im (2D) Kamerabild Punkten des (3D) Objekts zuzuordnen.
  • Beispielsweise kann das maschinelle Lernmodell 112 trainiert sein, ein bestimmten Ecke des Objekts einen bestimmten (eindeutigen) Merkmalswert (auch als Deskriptorwert bezeichnet) im Merkmalsraum zuzuweisen. Wird dem maschinellen Lernmodell 112 dann ein Kamerabild zugeführt und das maschinelle Lernmodell 112 ordnet einem Punkt des Kamerabilds diesen Merkmalswert zu, so kann man folgern, dass sich an dieser Stelle die Ecke befindet (also an einer Stelle im Raum, deren Projektion auf die Kameraebene dem Punkt im Kamerabild entspricht). Kennt man so die Position mehrerer Punkte des Objekts im Kamerabild, kann man die Pose des Objekts im Raum ermitteln.
  • Das maschinelle Lernmodell 112 muss für diese Aufgabe geeignet trainiert werden.
  • Ein Beispiel für ein maschinelles Lernmodell 112 zur Objekterkennung ist ein dichtes Objektnetz. Ein dichtes Objektnetz bildet ein Bild (z. B. ein durch die Kamera 114 bereitgestelltes RGB-Bild I ∈ ℝH×W×3) auf ein beliebiges dimensionales (Dimension D, z.B. D = 16) Deskriptorraumbild (auch bezeichnet als Deskriptorbild) ID ∈ ℝH×W×D ab. Das dichte Objektnetz ist ein neuronales Netz, das unter Verwendung von selbstüberwachtem Lernen trainiert ist, ein Deskriptorraumbild für ein Eingabebild eines Bildes auszugeben. Damit können Bilder bekannter Objekte (oder auch unbekannter Objekte) auf Deskriptorbilder abgebildet werden, die Deskriptoren enthalten, die Stellen auf den Objekten unabhängig von der Perspektive des Bildes identifizieren.
  • Bei dem in Referenz 1 beschriebenem selbstüberwachten Training liegt der Fokus auf vereinzelten Objekten, in der Praxis treten jedoch Objekte oft zusammen auf, z.B. bei der Aufgabe, ein Objekt aus einer Kiste voller Objekte zu nehmen.
  • Im Folgenden werden Ausführungsbeispiele beschrieben, die ein verbessertes Training eines dichten Objektnetzes für solche praxisrelevanten Szenarien ermöglichen.
  • Es werden dabei statische Szenen mit mehreren Objekten 113 mittels einer Kamera 114 aufgezeichnet, wobei die Kamera 114 in verschiedenen Ausführungsformen eine am Roboterarm 101 (z.B. am „Handgelenk“ des End-effektors 114) befestigte RGB-D-Kamera ist (d.h. eine Kamera, die ein Farb- und Tiefeninformation liefert). Für jede Szene werden Tausende von solchen Bildern aus unterschiedlichen Blickwinkeln aufgezeichnet. Dann werden aus aufgezeichneten Bildern für jede Szene jeweils Bildpaare (IA, IB) für das Training gesampelt. Jedes Bildpaar enthält zwei Bilder, die die jeweilige Szene aus unterschiedlichen Perspektiven zeigen.
  • Gemäß verschiedenen Ausführungsformen werden eines oder beide der Bilder augmentiert. Augmentierungen ermöglichen das Lernen von unterschiedlichen globalen Merkmalsrepräsentationen. Augmentierungen ermöglichen es, die Trainingsdaten (bestehend aus den aufgezeichneten Bildern der verschiedenen Szenen) zu diversifizieren, die Dateneffizienz zu erhöhen und Überanpassung zu reduzieren. Gemäß verschiedenen Ausführungsformen verwendete Augmentierungen sind:
    • • Größenänderung und Zuschneiden
    • • perspektivische und affine Verzerrung
    • • horizontales und vertikales Spiegeln
    • • Rotationen
    • • Unschärfe
    • • Farbrauschen
    • • Umwandlung in Graustufen.
  • Insbesondere Transformationen wie perspektivische Verzerrungen treten in der Praxis in Szenarien auf, bei der ein Roboter ein Objekt manipuliert. Ähnlich treten Unschärfe und Farbverzerrungen oft in der Praxis aufgrund von sich ändernden Lichtbedingungen oder Bewegungsunschärfe auf.
  • Damit kann durch die Erweiterung der Trainingsdaten mittels Augmentierungen von Bildpaaren (jeweils eines oder beider Bilder) nicht nur Überanpassung reduziert werden, die durch eine zu geringe Trainingsdatenmenge auftreten können, sondern sie liefert auch zusätzliche Testdatenelemente (Bildpaare) zum Verbessern der Robustheit des Trainings.
  • 2 zeigt ein Training eines DON unter Verwendung einer Augmentierung.
  • Für ein Bildpaar 201 (IA, IB) wird für eines oder jedes der beiden Bilder eine jeweilige Augmentierung tA, tB zufällig (z.B. aus den Obigen) ausgewählt und auf das Bild angewendet. Das Resultat ist ein neues Bildpaar 202, das als DON-Trainingsbildpaar verwendet wird, bei dem eines oder beide Bilder durch Augmentierung hervorgegangen sind. Die beiden Bilder des DON-Trainingsbildpaars 202 werden dann durch das (gleiche) DON 203, repräsentiert durch die von ihm implementierte Funktion fe, auf ein Paar von Deskriptorbildern 204 abgebildet.
  • Für das Paar von Deskriptorbildern 204 wird dann ein Verlust 205 berechnet, entsprechend dem das DON 203 trainiert wird, d.h. die Parameter (Gewichte) des DON θ werden so angepasst, dass sich der Verlust 205 verringert. Der Verlust wird dabei z.B. für Batches von Eingabebildern 201 berechnet.
  • Die Berechnung des Verlusts verwendet einen Korrespondenz-Sampling-Prozess, bezeichnet mit c(.,.), der Korrespondenzen zwischen Pixeln der Bilder des DON-Trainingsbildpaars liefert. Diese Korrespondenzen werden für die Berechnung des Verlusts verwendet (siehe unten).
  • Korrespondenz-Sampling kann für ein DON-Trainingsbildpaar 202 ganz einfach durchgeführt werden, wenn für die jeweilige Kamerapose (d.h. die Perspektive, in der das jeweilige Bild aufgenommen wurde) Kameraparameter und Tiefeninformation vorhanden sind. Da gemäß verschiedenen Ausführungsformen jedoch die Posenermittlung in Szenen angewendet wird, in denen viele Objekte 113 im Arbeitsraum des Roboters 100 dicht gepackt vorhanden sind, treten Verdeckungen und teilweise sich überlappende Blickwinkel auf. Deshalb wird gemäß verschiedenen Ausführungsformen, anstatt individuelle Pixel direkt zu sampeln und anschließend ihre Validität zu überprüfen, folgender direkter Ansatz verwendet: Jeder Pixel des ersten Bilds wird in die Perspektive des zweiten Bilds abgebildet (unter Verwendung seiner Position im Welt-Koordinatensystem) und dann wird ermittelt, welche Pixel in der Perspektive des zweiten Bilds sichtbar (d.h. nicht verdeckt) sind. Dies liefert eine Boolesche Maske für das erste Bild, die angibt, welche Pixel im ersten Bild einen korrespondierenden Pixel im zweiten Bild haben. Nun können zufällig korrespondierende Pixel gesampelt werden (Sampling-Prozess c(.,.)), wobei die zuvor ermittelte Abbildung von Pixeln des ersten Bildes in die Perspektive des zweiten Bildes verwendet wird. Ein Paar von korrespondierenden Pixeln wird auch als zu einander gehörende Pixel oder positive Paare bezeichnet.
  • Der Verlust 205 wird gemäß verschiedenen Ausführungsformen mittels einer (einzigen) Verlustfunktion berechnet. Dazu werden N positive Paare für das Trainingsbildpaar 202 gesampelt. Jedes positive Paar liefert ein Paar von zugehörigen Deskriptoren aus dem Deskriptorbildpaar 204, also insgesamt 2N Deskriptoren. Für jeden Deskriptoren werden alle anderen 2N-1 Deskriptoren als Negativ-Beispiele behandelt. Die Verlustfunktion ist so gewählt, dass beim Training alle 2N Deskriptoren in Bezug aufeinander optimiert werden.
  • Für ein Paar von Deskriptoren (di, dj) wird ein paarweiser Verlust definiert als l i , j = log exp ( D ( d i , d j ) / τ ) k = 1 ; k i 2 N exp ( D ( d i , d k ) / τ )
    Figure DE102021212859A1_0001
    wobei τ ein Temperatur-Skalierungsfaktor ist (z.B. zwischen 0,01 und 0,3) und D(., .) ein Entfernungs- oder Ähnlichkeitsmaß ist. Der vollständige Verlust 205 für ein TrainingsBildpaar 202 ist dann durch die Summe über alle paarweisen Verluste nach (1) gegeben.
  • Für einen Batch von Trainings-Bildpaaren werden diese Verluste der Bildpaare über die Bildpaare summiert, um den vollständigen Verlust für den Batch zu erhalten. Für diesen Verlust wird dann ein Gradient berechnet und das maschinelle Lernmodell 112 (z.B. die Gewichte des neuronalen Netzes) wird angepasst, um diesen Verlust zu verringern (d.h. in Richtung der Abnahme des Verlusts angepasst, wie sie der Gradient anzeigt).
  • Als Ähnlichkeitsmaß wird beispielsweise die Kosinusähnlichkeit verwendet, definiert als D ( d i , d j ) = d i , d j d i 2 d j 2
    Figure DE102021212859A1_0002
  • Dies ist das Skalarprodukt zwischen Vektoren, die auf Länge eins normiert wurden.
  • Zusammengefasst wird gemäß verschiedenen Ausführungsformen ein Verfahren bereitgestellt, wie in 3 dargestellt.
  • 3 zeigt ein Ablaufdiagramm 300 für ein Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten gemäß einer Ausführungsform.
  • In 301 werden Paare von Bildern gebildet, wobei jedes Bildpaar ein erstes Bild und ein zweites Bild aufweist, die das eine oder die mehreren Objekte aus unterschiedlichen Perspektiven zeigen.
  • In 302 werden mittels des maschinellen Lernmodells, für jedes Bildpaar, ein erstes Deskriptorbild zu dem ersten Bild, das in dem ersten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, und ein zweites Deskriptorbild zu dem zweiten Bild, das in dem zweiten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, erzeugt. Dies geschieht durch Zuführen des ersten Bilds bzw. des zweiten Bilds zu dem maschinellen Lernmodell.
  • In 303 werden für jedes Bildpaar Deskriptorenpaare gesampelt, die jeweils einen ersten Deskriptor aus dem ersten Deskriptorbild und einen zweiten Deskriptor aus dem zweiten Deskriptorbild aufweisen, die derselben Stelle zugewiesen sind.
  • In 304 wird das maschinelle Lernmodell zum Verringern eines Verlusts angepasst, der für jedes gesampelte Deskriptorpaar das Verhältnis von der Distanz gemäß einem Distanzmaß zwischen dem ersten Deskriptor und dem zweiten Deskriptor zu der Summe aller Distanzen gemäß dem Distanzmaß zwischen dem ersten Deskriptor und den Deskriptoren des zweiten Deskriptorbilds, die in den gesampelten Deskriptorpaaren auftreten, beinhaltet. Dabei wird ein Gradient gebildet, wobei die Variablen Parameter des maschinellen Lernmodells sind (z.B. Gewichte) und die Parameter des maschinellen Lernmodell in Richtung des abnehmenden Verlusts angepasst.
  • Mittels des trainierten maschinellen Lernmodells kann (z.B. durch Verwenden des trainierten maschinellen Lernmodells zum Ermitteln einer Objektpose oder Ermittlung zu bearbeitender Stellen) letztendlich ein Steuersignal für eine Robotervorrichtung erzeugt werden. Der Begriff „Robotervorrichtung“ kann als sich auf irgendein physikalisches System beziehend verstanden werden, wie z. B. eine computergesteuerte Maschine, ein Fahrzeug, ein Haushaltsgerät, ein Elektrowerkzeug, eine Fertigungsmaschine, einen persönlichen Assistenten oder ein Zugangssteuersystem. Es wird eine Steuerungsvorschrift für das physikalische System gelernt und das physikalische System dann entsprechend gesteuert.
  • Beispielsweise werden Bilder mittels einer RGB-D(Farbbild plus Tiefe)-Kamera aufgenommen, durch das trainierte maschinelle Lernmodell (z.B. neuronale Netz) verarbeitet und relevanten Stellen im Arbeitsbereich der Robotervorrichtung ermittelt, wobei die Robotervorrichtung abhängig von den ermittelten Stellen gesteuert wird.
  • Die Kamerabilder sind beispielsweise RGB-Bilder oder RGB-D(Farbbild plus Tiefe)-Bilder, können aber auch andere Arten von Kamerabildern wie (nur) Tiefenbilder oder Wärmebilder sein. Die Ausgabe des trainierten maschinellen Lernmodells kann dazu verwendet werden, Objektposen zu ermitteln, beispielsweise zur Steuerung eines Roboters, z.B. für den Zusammenbau eines größeren Objekts aus Teilobjekten, das Bewegen von Objekten etc. Die Herangehensweise von 3 kann für jegliches Posenermittlungsverfahren verwendet werden.
  • Das Verfahren ist gemäß einer Ausführungsform Computer-implementiert.
  • Obwohl spezielle Ausführungsformen hier dargestellt und beschrieben wurden, wird vom Fachmann auf dem Gebiet erkannt, dass die speziellen Ausführungsformen, die gezeigt und beschrieben sind, gegen eine Vielfalt von alternativen und/oder äquivalenten Implementierungen ausgetauscht werden können, ohne vom Schutzbereich der vorliegenden Erfindung abzuweichen. Diese Anmeldung soll irgendwelche Anpassungen oder Variationen der speziellen Ausführungsformen abdecken, die hier erörtert sind.
  • Daher ist beabsichtigt, dass diese Erfindung nur durch die Ansprüche und die Äquivalente davon begrenzt ist.

Claims (10)

  1. Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von ein oder mehreren Objekten aufweisend: Bilden von Paaren von Bildern, wobei jedes Bildpaar ein erstes Bild und ein zweites Bild aufweist, die das eine oder die mehreren Objekte aus unterschiedlichen Perspektiven zeigen; Erzeugen, mittels des maschinellen Lernmodells, für jedes Bildpaar, eines ersten Deskriptorbilds zu dem ersten Bild, das in dem ersten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist, und eines zweiten Deskriptorbilds zu dem zweiten Bild, das in dem zweiten Bild gezeigten Stellen der ein oder mehreren Objekte Deskriptoren zuweist; Sampeln, für jedes Bildpaar, von Deskriptorenpaaren, die jeweils einen ersten Deskriptor aus dem ersten Deskriptorbild und einen zweiten Deskriptor aus dem zweiten Deskriptorbild aufweisen, die derselben Stelle zugewiesen sind; Anpassen des maschinellen Lernmodells zum Verringern eines Verlusts, der für jedes gesampelte Deskriptorpaar das Verhältnis von der Distanz gemäß einem Distanzmaß zwischen dem ersten Deskriptor und dem zweiten Deskriptor zu der Summe aller Distanzen gemäß dem Distanzmaß zwischen dem ersten Deskriptor und den Deskriptoren des zweiten Deskriptorbilds, die in den gesampelten Deskriptorpaaren auftreten, beinhaltet.
  2. Verfahren nach Anspruch 1, aufweisend: Aufnehmen der ein oder mehreren Objekte in Kamerabildern; Beschaffen von zusätzlichen Bildern durch Augmentieren zumindest eines Teils der Kamerabilder und Bilden der Paare von Bildern aus den Kamerabildern und zusätzlichen Bildern, wobei das Augmentieren aufweist eines oder mehrere von: Größenänderung und Zuschneiden, perspektivische und affine Verzerrung, horizontales und vertikales Spiegeln, Rotation, Hinzufügen von Unschärfe, Hinzufügen von Farbrauschen und Umwandlung in Graustufen.
  3. Verfahren nach Anspruch 2, wobei für jedes von Größenänderung und Zuschneiden, perspektivische und affine Verzerrung, horizontales und vertikales Spiegeln, Rotation, Hinzufügen von Unschärfe, Hinzufügen von Farbrauschen und Umwandlung in Graustufen zumindest ein zusätzliches Bild aus den Kamerabildern erzeugt wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, aufweisend: Aufnehmen von Kamerabildern, die jeweils mehrere der Objekte zeigen; und Bilden der Paare von Bildern zumindest teilweise aus den Kamerabildern.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei das maschinelle Lernmodell ein neuronales Netz ist.
  6. Verfahren zum Steuern eines Roboters zum Aufnehmen oder Bearbeiten eines Objekts, aufweisend: Trainieren eines maschinellen Lernmodells nach einem der Ansprüche 1 bis 5; Aufnehmen eines Kamerabilds, das das Objekt in einem aktuellen Steuerszenario zeigt; Zuführen des Kamerabilds zu dem maschinellen Lernmodell zum Erzeugen eines Deskriptorbilds; Ermitteln der Position einer Stelle zum Aufnehmen oder Bearbeiten des Objekts in dem aktuellen Steuerszenario aus dem Deskriptorbild; und Steuern des Roboters entsprechend der ermittelten Position.
  7. Verfahren nach Anspruch 6, aufweisend: Identifizieren einer Referenzstelle in einem Referenzbild; Ermitteln eines Deskriptors der identifizierten Referenzstelle durch Zuführen des Referenzbilds zu dem maschinellen Lernmodell; Ermitteln der Position der Referenzstelle in dem aktuellen Steuerszenario durch Suchen des ermittelten Deskriptors in dem aus dem Kamerabild erzeugten Desktriptorbild; und Ermitteln der Position der Stelle zum Aufnehmen oder Bearbeiten des Objekts in dem aktuellen Steuerszenario aus der ermittelten Position der Referenzsstelle.
  8. Steuereinrichtung, die eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen.
  9. Computerprogramm mit Befehlen, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 7 durchführt.
  10. Computerlesbares Medium, das Befehle speichert, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 7 durchführt.
DE102021212859.9A 2021-11-16 2021-11-16 Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten Pending DE102021212859A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102021212859.9A DE102021212859A1 (de) 2021-11-16 2021-11-16 Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten
US18/053,239 US20230150142A1 (en) 2021-11-16 2022-11-07 Device and method for training a machine learning model for generating descriptor images for images of objects
CN202211423371.1A CN116152335A (zh) 2021-11-16 2022-11-15 用于训练机器学习模型以生成描述符图像的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021212859.9A DE102021212859A1 (de) 2021-11-16 2021-11-16 Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten

Publications (1)

Publication Number Publication Date
DE102021212859A1 true DE102021212859A1 (de) 2023-05-17

Family

ID=86144220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021212859.9A Pending DE102021212859A1 (de) 2021-11-16 2021-11-16 Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten

Country Status (3)

Country Link
US (1) US20230150142A1 (de)
CN (1) CN116152335A (de)
DE (1) DE102021212859A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116682110B (zh) * 2023-07-20 2023-10-31 腾讯科技(深圳)有限公司 图像处理方法、装置、设备及介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHEN, Ting [et al.]: A simple framework for contrastive learning of visual representations. In: International conference on machine learning. PMLR, 2020. S. 1597-1607.
FLORENCE, Peter R. ; MANUELLI, Lucas ; TEDRAKE, Russ: Dense object nets: Learning dense visual object descriptors by and for robotic manipulation. Version 2; arXiv:1806.08756v2. 07-09-2018. S. 1-12. URL: https://arxiv.org/pdf/1806.08756 [abgerufen am 2020-08-24].
SCHMIDT, T.; NEWCOMBE, R.; FOX, D.: Self-supervised visual descriptor learning for dense correspondence. IEEE Robotics and Automation Letters, 2(2):420–427, 2017.
TROTTER, Cameron: How To Train Your Siamese Neural Network. In: towards data science. 19.02.2021 URL: https://towardsdatascience.com/how-to-train-your-siamese-neural-network-4c6da3259463 [abgerufen am 25.08.2022]
WENG, Lilian: Contrastive Representation Learning. URL: https://lilianweng.github.io/posts/2021-05-31-contrastive/ [abgerufen am 25.08.2022]

Also Published As

Publication number Publication date
CN116152335A (zh) 2023-05-23
US20230150142A1 (en) 2023-05-18

Similar Documents

Publication Publication Date Title
DE102020105655A1 (de) Verfahren und system zum durchführen einer automatischen kamerakalibrierung zur roboterseuerung
DE102018215057A1 (de) Maschinelles-lernen-vorrichtung, robotersystem und maschinelles-lernen-verfahren
DE102015111080B4 (de) Robotervorrichtung mit maschinellem Sehen
DE102021107333A1 (de) 3d-stellungsabschätzung mit einer 2d-kamera
DE102012223047B4 (de) Mehrteil-Korrespondierer (corresponder) für mehrere Kameras
DE102021109334A1 (de) Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021212859A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten
DE102021107479A1 (de) Erfassung einer dreidimensionalen pose durch mehrere 2d-kameras
DE102020214300A1 (de) Vorrichtung und verfahren zum trainieren eines maschinellen lernmodells zum erkennen einer objekttopologie eines objekts aus einem bild des objekts
DE102022201719A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten
DE102020209080A1 (de) Bildverarbeitungssystem
DE102020208211A1 (de) Vorrichtungen und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erkennen einer Objekttopologie eines Objekts aus einem Bild des Objekts
DE102021201880A1 (de) Vorrichtung und Verfahren zum Ermitteln der Pose eines Objekts
DE102018218611A1 (de) Verfahren und Recheneinrichtung zum Erzeugen eines dreidimensionalen CAD-Modells
DE102020214301A1 (de) Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts in verschiedenen lagen
DE102021202570A1 (de) Vorrichtung und verfahren zum lokalisieren von stellen von objekten aus kamerabildern der objekte
DE102021109333A1 (de) Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021202337A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erkennen einer Objekttopologie eines Objekts in einem Bild des Objekts
DE3412533C2 (de)
DE102022207847A1 (de) Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts
DE102022206274A1 (de) Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts
DE102021201921A1 (de) Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts
DE102021109036A1 (de) Vorrichtung und verfahren zum lokalisieren von stellen von objekten aus kamerabildern der objekte
DE102021210993A1 (de) Verfahren zum Erzeugen von Trainingsdaten für überwachtes Lernen zum Trainieren eines neuronalen Netzes
DE102021209646B4 (de) Robotervorrichtung, Verfahren zum computerimplementierten Trainieren eines Roboter-Steuerungsmodells und Verfahren zum Steuern einer Robotervorrichtung

Legal Events

Date Code Title Description
R163 Identified publications notified