DE102021201921A1 - Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts - Google Patents

Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts Download PDF

Info

Publication number
DE102021201921A1
DE102021201921A1 DE102021201921.8A DE102021201921A DE102021201921A1 DE 102021201921 A1 DE102021201921 A1 DE 102021201921A1 DE 102021201921 A DE102021201921 A DE 102021201921A DE 102021201921 A1 DE102021201921 A1 DE 102021201921A1
Authority
DE
Germany
Prior art keywords
image
area
camera
descriptor
machine learning
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
DE102021201921.8A
Other languages
English (en)
Inventor
Markus Spies
Andras Gabor Kupcsik
Philipp Christian Schillinger
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 DE102021201921.8A priority Critical patent/DE102021201921A1/de
Priority to US17/680,861 priority patent/US20220274257A1/en
Priority to JP2022029497A priority patent/JP2022133256A/ja
Priority to CN202210184801.2A priority patent/CN115082554A/zh
Publication of DE102021201921A1 publication Critical patent/DE102021201921A1/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/1612Programme controls characterised by the hand, wrist, grip control
    • 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/50Depth or shape recovery
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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
    • 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/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • 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/40532Ann for vision processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)

Abstract

Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts beschrieben, das aufweist: Empfangen eines Kamerabilds eines Objekts, Ermitteln eines Bildbereichs in dem Kamerabild, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll, durch Zuführen des Kamerabilds zu einem maschinellen Lernmodell, das dazu trainiert ist, Bereichen in Kamerabildern Werte zuzuordnen, die repräsentieren, ob die Bereiche Stellen eines Objekts zeigen, an denen es nicht aufgenommen werden soll, Zuordnen des ermittelten Bildbereichs zu einem Raumbereich; und Steuern des Roboters zum Greifen des Objekts in einem anderen als den ermittelten Raumbereich.

Description

  • Die vorliegende Offenbarung betrifft Vorrichtungen und Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts.
  • 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, in welcher Lage sich das Objekt befindet, zumindest insofern, wie es zum Aufnehmen (z.B. Greifen) des Objekts relevant ist, d.h. er sollte fähig sein, eine Aufnehmpose (z.B. eines Greifpose) für das Objekt zu ermitteln, um entsprechend seinen End-Effektor (z.B. mit einem Greifer) korrekt ausrichten zu können und ihn an die korrekte Position bewegen zu können. Es kann jedoch als Nebenbedingung der Fall auftreten, dass ein Objekt nicht überall gegriffen werden darf, beispielsweise weil sonst ein Bar-Code durch den Greifer verdeckt werden würde oder weil das Objekt, wenn es an einer empfindlichen Stelle gegriffen wird, beschädigt werden könnte. Deshalb sind Steuerungsverfahren für eine Robotervorrichtung zum Aufnehmen eines Objekts in verschiedenen Lagen, bei denen das Greifen an bestimmten Stellen des Objekts vermieden wird, wünschenswert.
  • Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts bereitgestellt, das aufweist: Empfangen eines Kamerabilds eines Objekts, Ermitteln eines Bildbereichs in dem Kamerabild, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll, durch Zuführen des Kamerabilds zu einem maschinellen Lernmodell, das dazu trainiert ist, Bereichen in Kamerabildern Werte zuzuordnen, die repräsentieren, ob die Bereiche Stellen eines Objekts zeigen, an denen es nicht aufgenommen werden soll, Zuordnen des ermittelten Bildbereichs zu einem Raumbereich; und Steuern des Roboters zum Greifen des Objekts in einem anderen als den ermittelten Raumbereich.
  • Das oben beschriebene Verfahren ermöglicht das sichere Aufnehmen (z.B. Greifen) von einem Objekt für eine beliebige Lage des Objekts, wobei vermieden wird, dass das Objekt an einer Stelle gegriffen wird, an der es nicht gegriffen werden soll.
  • Im Folgenden sind verschiedene Ausführungsbeispiele angegeben.
  • Ausführungsbeispiel 1 ist das Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts in verschiedenen Lagen wie oben beschrieben.
  • Ausführungsbeispiel 2 ist das Verfahren nach Ausführungsbeispiel 1, aufweisend Ermitteln des Bildbereichs durch Trainieren, für das Objekt, des maschinellen Lernmodells zum Abbilden von Kamerabildern des Objekts auf Deskriptorbilder, wobei ein Deskriptorbild, auf das ein Kamerabild abzubilden ist, für eine Stelle des Objekts, die das Kamerabild an einer Bildposition zeigt, an der Bildposition einen Deskriptorwert der Stelle des Objekts aufweist, Beschaffen von Deskriptorwerten der Stelle des Objekts, an der es nicht aufgenommen werden soll, Abbilden des Kamerabilds mittels des trainierten maschinellen Lernmodells auf ein Deskriptorbild, Ermitteln eines Bereichs im Deskriptorbild, der die beschafften Deskriptorwerte aufweist und Ermitteln des Bildbereichs als den Bereich des Kamerabilds an der Bildposition, der dem ermittelten Bereich im Deskriptorbild entspricht.
  • Das Trainieren eines solchen maschinellen Lernmodells für die Ermittlung des Bildbereichs, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll, ermöglicht auch (mit geringem Zusatzaufwand) die Ermittlung des Objekts im Raum und damit eine geeignete Steuerung des Roboters zum Aufnehmen des Objekts.
  • Ausführungsbeispiel 3 ist das Verfahren nach Ausführungsbeispiel 2, wobei das Beschaffen von Deskriptorwerten der Stelle des Objekts, an der es nicht aufgenommen werden soll, das Abbilden eines Kamerabilds, in dem ein Bereich als ein Bereich markiert ist, der eine Stelle zeigt, an der das Objekt nicht aufgenommen werden soll, mittels des maschinellen Lernmodells auf ein Deskriptorbild und das Auswählen der Deskriptorwerte des markierten Bereichs aus dem Deskriptorbild aufweist.
  • Beispielsweise kann ein Benutzer einmalig (d.h. für ein Kamerabild) den Bereich markieren und Bereiche, die eine Stelle des Objekts zeigen, an der es nicht aufgenommen werden soll, können dann über die Deskriptorwerte für alle weiteren Kamerabilder ermittelt werden.
  • Ausführungsbeispiel 4 ist das Verfahren nach Ausführungsbeispiel 2 oder 3, wobei der ermittelte Bildbereich dem Raumbereich mittels des trainierten maschinellen Lernmodells zugeordnet wird durch Ermitteln eines 3D-Modells des Objekts, wobei das 3D-Modell ein Gitter von Vertices aufweist, denen Deskriptorwerte zugeordnet sind, Ermitteln einer Korrespondenz zwischen Positionen im Kamerabilds und Vertices des 3D-Modells, indem Positionen Vertices zugeordnet werden, die die gleichen Deskriptorwerte haben wie die, die das Deskriptorbild an den Positionen hat, und Zuordnen des ermittelten Bildbereichs zu einer Stelle des Objekts entsprechend der ermittelten Korrespondenz zwischen Positionen im Kamerabilds und Vertices des 3D-Modells.
  • Auf diese Weise kann mittels des maschinellen Lernmodells auch die Zuordnung des Bildbereichs zu dem entsprechenden Raumbereich mit geringem Zusatzaufwand durchgeführt werden.
  • Ausführungsbeispiel 5 ist das Verfahren nach Ausführungsbeispiel 1, aufweisend Ermitteln des Bildbereichs durch Trainieren des maschinellen Lernmodells mittels einer Vielzahl von Kamerabildern und Kennzeichnungen von ein oder mehreren Bildbereichen in den Kamerabildern, die Stellen zeigen, an denen ein Objekt nicht aufgenommen werden soll, zum Erkennen von Bildbereichen in Kamerabildern, die Stellen von Objekten zeigen, an denen Objekte nicht aufgenommen werden sollen, und Ermitteln des Bildbereichs durch Zuführen des Kamerabilds zu dem trainierten maschinellen Lernmodell.
  • Stehen Trainingsdaten für ein solches Training des maschinellen Lernmodells zur Verfügung, z.B. Bilder mit Beispielen von Objekten von Barcodes, die nicht verdeckt werden dürfen, bietet dies eine effiziente Möglichkeit zur Ermittlung des Bildbereichs, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll.
  • Ausführungsbeispiel 6 ist das Verfahren nach einem der Ausführungsbeispiele 1 bis 5, wobei Tiefeninformationen für den Bildbereich des Kamerabilds empfangen werden und der ermittelte Bildbereich dem Raumbereich mittels der Tiefeninformationen zugeordnet wird.
  • Die Verwendung von Tiefeninformationen, z.B. bereitgestellt von einer RGB-D-Kamera, ermöglicht eine Zuordnung des ermittelten Bildbereichs zu einem Raumbereich mit geringem Rechenaufwand.
  • Ausführungsbeispiel 7 ist eine Robotersteuervorrichtung, die eingerichtet ist, ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 6 durchzuführen.
  • Ausführungsbeispiel 8 ist ein Computerprogramm, das Anweisungen aufweist, die bei Ausführung durch einen Prozessor bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiele 1 bis 6 durchführt.
  • Ausführungsbeispiel 9 ist ein computerlesbares Medium, das Anweisungen speichert, die bei Ausführung durch einen Prozessor bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiele 1 bis 6 durchführt.
  • In den Zeichnungen beziehen sich im Allgemeinen überall in den verschiedenen Ansichten ähnliche Bezugszeichen auf die gleichen Teile. Die Zeichnungen sind nicht notwendigerweise maßstabsgetreu, stattdessen wird der Schwerpunkt allgemein auf die Veranschaulichung der Prinzipien der Erfindung gelegt. In der folgenden Beschreibung werden verschiedene Aspekte unter Bezugnahme auf die folgenden Zeichnungen beschrieben, wobei gilt:
    • 1 zeigt einen Roboter.
    • 2 veranschaulicht das Trainieren eines neuronalen Netzes gemäß einer Ausführungsform.
    • 3 veranschaulicht ein Verfahren zum Ermitteln einer Greifpose.
    • 4 veranschaulicht das Training für das mit Bezug auf 3 beschriebene Verfahren für den Fall, dass ein dichtes Objektnetz verwendet wird.
    • 5 veranschaulicht das Training für das mit Bezug auf 3 beschriebene Verfahren für den Fall, dass ein maschinelles Lernmodell trainiert wird, Nicht-Greif-Bereiche in Kamerabildern zu erkennen.
    • 6 zeigt ein Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts.
  • Die folgende ausführliche Beschreibung bezieht sich auf die begleitenden Zeichnungen, die veranschaulichend spezifische Einzelheiten und Aspekte dieser Offenbarung zeigen, in der die Erfindung umgesetzt werden kann. Andere Aspekte können genutzt werden und strukturelle, logische und elektrische Änderungen können vorgenommen werden, ohne vom Schutzumfang der Erfindung abzuweichen. Die verschiedenen Aspekte dieser Offenbarung schließen sich nicht notwendigerweise gegenseitig aus, da manche 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 ausführlicher 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 Halterung) 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 Basis 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 Steuerungseinrichtung 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 Programmcode 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.
  • Gemäß verschiedenen Ausführungsformen ist das maschinelle Lernmodell 112 dazu ausgelegt und trainiert, dem Roboter 100 (speziell der Steuereinrichtung) zu ermöglichen, Stellen eines Objekts 113 zu erkennen, an denen das Objekt 113 nicht gegriffen werden soll. Beispielsweise kann das Objekt 113 einen Teil 115 aufweisen, der empfindlich ist (beispielsweise kann ein kistenförmiges Objekt eine ausgeschnittenes Fenster aufweisen, an dem es leicht beschädigt werden kann) oder es kann ein Bar-Code (oder QR-Code) 116 vorgesehen sein, der nicht durch den Endeffektor 114 verdeckt werden soll, weil er gelesen werden soll, wenn der Roboterarm 101 das Objekt 113 hält. Durch das Erkennen der Stellen des Objekts 113, an denen das Objekt 113 nicht gegriffen werden soll (im Folgenden auch als Nicht-Greif-Stellen bezeichnet), wird der Roboter 100 in die Lage versetzt, mit Objekten umzugehen, die solche Stellen aufweisen, was in vielen Anwendungen auftritt.
  • 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 machen kann, indem er den Roboterarm 101 herumbewegt.
  • Dies ermöglicht dem Roboter 100 einerseits, die Pose des Objekts 113 zu ermitteln und anderseits kann das maschinelle Lernmodell 111 dazu trainiert sein, Bereiche in einem Kamerabild zu identifizieren, die Nicht-Greif-Stellen zeigen. Durch Kenntnis der Pose 113 und der Nicht-Greif-Stellen kann die Steuereinrichtung 106 eine Greif-Pose für den Roboter (d.h. Position und Orientierung des Endeffektors 104) zum Greifen (bzw. allgemein zum Aufnehmen) des Objekts 113 ermitteln, die vermeidet, dass der Roboter eine Nicht-Greif-Stelle des Roboters greift.
  • Die Kamera 114 stellt beispielsweise Bilder mit Tiefeninformation bereit (z.B. RGB-D-Bilder), die es der Steuereinrichtung 106 ermöglichen, die Pose des Objekts 113 aus ein oder mehreren Kamerabildern (ggf. aus unterschiedlichen Perspektiven) zu ermitteln.
  • Die Steuereinrichtung 106 kann aber auch ein solches maschinelles Lernmodell 112 implementieren, dessen Ausgabe sie verwenden kann, um die Aufnehmpose (z.B. eine Greifpose oder auch eine Pose zum Ansaugen) für das Objekt 113 zu ermitteln.
  • Ein Beispiel für ein solches 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) auf ein beliebiges dimensionales (Dimension D) Deskriptorraumbild ab. Es können aber auch andere maschinelle Lemmodelle 112 zur Ermittlung der Greifpose des Objekts 113 verwendet werden, insbesondere solche, die nicht notwendigerweise eine „dichte“ Merkmalskarte erzeugen, sondern lediglich bestimmten Punkten (z.B. Ecken) des Objekts Deskriptorwerte zuordnen.
  • 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. Ist ein 3D-Modell (z. B. ein CAD(Computer Aided Design)-Modell) des Objekts bekannt, was typischerweise für Industriemontage- oder -bearbeitungsaufgaben der Fall ist, kann auch das dichte Objektnetz auch mittels überwachtem Lernen trainiert werden
  • Dazu wird beispielsweise für jedes Kamerabild ein Zielbild erzeugt, d. h. Paare von Kamerabildern und Zielbildern werden gebildet und diese Paare von Trainingseingabebild und assoziiertem Zielbild werden als Trainingsdaten zum Trainieren eines neuronalen Netzes verwendet werden, wie in 2 veranschaulicht.
  • 2 veranschaulicht das Trainieren eines neuronalen Netzes 200 gemäß einer Ausführungsform.
  • Das neuronale Netz 200 ist ein voll faltendes Netz (engl. fully convolutional network), das einen h × w × 3-Tensor (Eingabebild) auf einen h × w × D-Tensor (Ausgabebild) abbildet.
  • Es umfasst mehrere Stufen 204 von Faltungsschichten, gefolgt von einer Pooling-Schicht, Upsampling-Schichten 205 und Skip-Verbindungen 206, um die Ausgaben verschiedener Schichten zu kombinieren.
  • Für das Training empfängt das neuronale Netz 200 ein Trainingseingabebild 201 und gibt ein Ausgabebild 202 mit Pixelwerten im Deskriptorraum (z. B. Farbkomponenten gemäß Deskriptorvektorkomponenten) aus. Ein Trainingsverlust wird zwischen dem Ausgabebild 202 und dem mit dem Trainingseingabebild assoziierten Zielbild 203 berechnet. Dies kann für einen Stapel von Trainingseingabebildern stattfinden und der Trainingsverlust kann über die Trainingseingabebilder gemittelt werden und die Gewichte des neuronalen Netzes 200 werden unter Verwendung stochastischen Gradientenabstiegs unter Verwendung des Trainingsverlustes trainiert. Der zwischen dem Ausgabebild 202 und dem Zielbild 203 berechnete Trainingsverlust ist zum Beispiel eine L2-Verlustfunktion (um einen pixelweisen Least-Square-Fehler zwischen dem Zielbild 203 und dem Ausgabebild 202 zu minimieren).
  • Das Trainingseingabebild 201 zeigt ein Objekt und das Zielbild sowie das Ausgabebild beinhalten Vektoren im Deskriptorraum. Die Vektoren im Deskriptorraum können auf Farben abgebildet werden, sodass das Ausgabebild 202 (sowie das Zielbild 203) eine Heatmap des Objekts ähneln.
  • Die Vektoren im Deskriptorraum (auch als (dichte) Deskriptoren bezeichnet) sind d-dimensionale Vektoren (z. B. beträgt d 1, 2 oder 3), die jedem Pixel im jeweiligen Bild (z. B. jedem Pixel des Eingabebildes 201, unter der Annahme, dass das Eingabebild 201 und das Ausgabebild 202 die gleiche Dimension aufweisen) zugewiesen sind. Die dichten Deskriptoren codieren implizit die Oberflächentopologie des im Eingabebild 201 gezeigten Objekts, invariant gegenüber seiner Stellung oder der Kameraposition.
  • Ist das maschinelle Lernmodell 112 zum Erzeugen von Kamerabildern aus Deskriptorbildern (wie ein dichtes Objektnetz), wird beispielsweise wie folgt vorgegangen:
    1. a. Registrieren von Kamerabildern für einen Objekttyp (z.B. eine spezielle Kiste) aus unterschiedlichen Perspektiven. Dies kann mittels eines Roboters erfolgen, an dem eine Kamera befestigt ist, oder mit einer Kamera, die man in der Hand hält, erfolgen.
    2. b. Trainieren des maschinellen Lernmodells 112, für Kamerabilder dieses Objekttyps eine Deskriptorbilder auszugeben. Dies resultiert in einem maschinellen Lernmodell, das jedem Oberflächenpunkt des Objekts unabhängig von der Perspektive im Kamerabild einen Deskriptorwert (z.B. Merkmalsvektor) zuordnet.
    3. c. In einem repräsentativen Kamerabild des Objekts kennzeichnet der Benutzer den Nicht-Greif-Bereich (oder die Nicht-Greif-Bereiche) für das gezeigte Objekt.
    4. d. Durch Nachverfolgen der Oberflächenpunkte des Objekts, die auf diese Weise durch den Benutzer gekennzeichnet wurden, mittels der Deskriptorwerte kann die Steuereinrichtung 106 automatisch Nicht-Greif-Bereiche (d.h. den Bereiche, die Nicht-Greif-Stellen des Objekts zeigen) in neu aufgenommenen Kamerabildern erkennen.
  • Alternativ zu der obigen Vorgehensweise kann das maschinelle Lernmodell 112 auch trainiert werden, direkt in den Kamerabildern Nicht-Greif-Bereiche zu erkennen. Beispielsweise ist das maschinelle Lernmodell ein Konvolutionsnetzwerk (z.B. ein Mask-RCNN), das trainiert ist, Kamerabilder entsprechend zu segmentieren. Dies ist dann möglich, wenn Trainingsbilder mit Kennzeichnungen von Nicht-Greif-Bereichen zur Verfügung stehen. Dies kann sich z.B. für den Fall eignen, dass die Nicht-Greif-Bereiche solche sind, die Barcodes aufweisen, denn dann kann das maschinelle Lernmodell 112 dazu trainiert werden, Barcodes in Bildern zu finden. An die Stelle des Zielbilds 203 mit Deskriptorwerten in 3 tritt dann beispielsweise ein Zielbild, das eine Segmentierung des Eingabe-Kamerabilds 201 (z.B. in Bar-Code-Bereiche und Nicht-Bar-Code-Bereiche) angibt. Die Architektur des neuronalen Netzwerks kann an diese Aufgabe entsprechend angepasst sein.
  • 3 veranschaulicht ein Verfahren zum Ermitteln einer Greifpose, z.B. durchgeführt von der Steuereinrichtung 106.
  • Eine Kamera 114 nimmt ein Kamerabild 301 des zu greifenden Objekts 113 auf, z.B. ein RGB-D-Bild. Dieses Bild wird einem trainierten maschinellen Lernmodell 302 zugeführt, z.B. einem Dense Object Net oder einem neuronalen Netzwerk zum Erkennen von Nicht-Greif-Bereichen in Kamerabildern. Aus der Ausgabe des neuronalen Netzwerks ermittelt die Steuereinrichtung die Nicht-Greif-Bereiche 303 in dem Kamerabild (entweder über die Deskriptorwerte, die den verschiedenen Bildbereichen zugeordnet sind oder direkt über die vom neuronalen Netzwerk ausgegebene Segmentierung des Kamerabilds).
  • In 304 projiziert die Steuereinrichtung 106 jeden Nicht-Greif-Bereich 303 auf 3D-Koordinaten, z.B. auf Nicht-Greif-Stellen des Objekts oder auch in 3D-Koordinaten im Arbeitsbereich des Roboterarms 101, z.B. 3D-Koordinaten im Koordinatensystem einer Roboterzelle (unter Verwendung der bekannten Geometrie des Roboter-Arbeitsbereichs und intrinsischer und extrinsischer Kalibrierung der Kamera). Dies kann mittels Tiefeninformation erfolgen. Alternativ kann dies über die Deskriptorwerte erfolgen, indem die Objektpose ermittelt wird, die zu dem beobachteten Kamerabild passt (sodass die Deskriptorwerte an den richtigen Stellen im Kamerabild bzw. zugehörigen Deskriptorbild erscheinen). Dazu wird das zugehörige PnP (Perspective-n-Point)-Problem gelöst.
  • Die Steuereinrichtung schließt dann in 305 die ermittelten 3D-Koordinaten von den möglichen Greifposen aus (d.h. Greifposen, die das Objekt an Stellen greifen würden, die sich mit den ermittelten 3D-Koordinaten überschneiden).
  • Die Steuereinrichtung (z.B. ein Greif-Plan-Modul) ermittelt dann eine sichere Greifpose 306, bei der die Nicht-Greif-Stellen des Objekts nicht gegriffen werden.
  • 4 veranschaulicht das Training für das mit Bezug auf 3 beschriebene Verfahren für den Fall, dass ein dichtes Objektnetz (oder allgemein ein maschinelles Lemmodell, das Kamerabilder auf Deskriptorbilder abbildet), verwendet wird.
  • In 401 werden Kamerabilder aus unterschiedlichen Perspektiven des zu greifenden Objekttyps aufgezeichnet.
  • In 402 wird das dichte Objektnetz unter Verwendung der Kamerabilder trainiert, Kamerabilder auf Deskriptorbilder abzubilden (gemäß einer Zuordnung von Oberflächenpunkten (z.B. Vertices) des Objekts zu Deskriptorwerten, die vorgegeben sein kann für überwachtes Lernen oder gleichzeitig gelernt werden kann für unüberwachtes Lernen). Hierin werden wie im Zusammenhang mit 3D-Modellen üblich die Gitterpunkte eines 3D-Objektmodells als „Vertices“ (Einzahl „Vertex“) bezeichnet.
  • In 403 definiert ein Benutzer in einem der Bildern den Nicht-Greif-Bereich, z.B. durch Angabe eines Rechteck-Rahmens des Nicht-Greif-Bereichs mit der Maus.
  • Dies resultiert in einem trainierten Lernmodell 404, das die Nicht-Greif-Stelle des Objekts, die der Benutzer durch Definition des Nicht-Greif-Bereichs im Kamerabild angegeben hat, in neu aufgenommenen Kamerabildern unabhängig von der Perspektive erkennen kann.
  • 5 veranschaulicht das Training für das mit Bezug auf 3 beschriebene Verfahren für den Fall, dass ein maschinelles Lernmodell (überwacht) trainiert wird, Nicht-Greif-Bereiche (direkt) in Kamerabildern zu erkennen, d.h. ein eingegebenes Kamerabild entsprechend zu segmentieren.
  • In 501 werden Bilder gesammelt, die Beispiele für Nicht-Greif-Bereiche (z.B. BarCodes) enthalten. In 502 wird jedem der gesammelten Bilder eine Kennzeichnungen des Nicht-Greif-Bereichs in dem Bild zugeordnet (z.B. ein entsprechendes Segmentierungsbild). In 503 wird ein neuronales Netzwerk zum Detektieren von Nicht-Greif-Bereichen in neu aufgenommenen Kamerabildern unter Verwendung der so erzeugten Trainingsdaten trainiert.
  • Zusammengefasst wird gemäß verschiedenen Ausführungsformen ein Verfahren wie in 6 veranschaulicht bereitgestellt.
  • Zusammenfassend wird gemäß verschiedenen Ausführungsformen ein Verfahren bereitgestellt, wie es in 6 gezeigt ist.
  • 6 zeigt ein Ablaufdiagramm für ein Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts, beispielsweise durchgeführt von einer Steuereinrichtung 106.
  • In 601 wird ein Kamerabild eines Objekts empfangen (z.B. von einer Kamera aufgenommen).
  • In 602 wird ein Bildbereich in dem Kamerabild ermittelt, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll. Dies erfolgt durch Zuführen des Kamerabilds zu einem maschinellen Lernmodell, das dazu trainiert ist, Bereichen in Kamerabildern Werte zuzuordnen, die repräsentieren, ob die Bereiche Stellen eines Objekts zeigen, an denen es nicht aufgenommen werden soll.
  • Diese Werte könnten beispielsweise Deskriptorwerte sein oder auch Werte, die eine Segmentierung des Kamerabilds angeben (z.B. erzeugt durch ein zum Segmentieren trainiertes Konvolutionsnetzwerk).
  • In 603 wird der ermittelte Bildbereich einem Raumbereich zugeordnet.
  • In 604 wird der Roboter zum Greifen des Objekts in einem anderen als den ermittelten Raumbereich gesteuert.
  • In anderen Worten wird gemäß verschiedenen Ausführungsformen mittels eines maschinellen Lernmodells (z.B. mittels eines neuronalen Netzwerks) in einem Kamerabild eine Bereich identifiziert, der eine Stelle eines Objekts zeigt, an dem das Objekt nicht aufgenommen (z.B. gegriffen oder angesaugt) werden soll. Dieser Bereich des Kamerabilds wird dann auf einen Raumbereich abgebildet, z.B. über Tiefeninformation oder Lösen eines PnP-Problems. Dieser Raumbereich (d.h. der Stelle des Objekts im Raum, der in dem identifizierten Bereich gezeigt ist) wird dann vom Aufnehmen ausgeschlossen, d.h. z.B. Greifposen, die das Objekt an dieser Stelle greifen (oder ansaugen) würden, werden aus der Menge Greifposen, aus denen beispielsweise ein Planungssoftwaremodul auswählt, ausgeschlossen.
  • Unter „Aufnehmen“ ist beispielsweise das Greifen mit einem Greifer zu verstehen. Es können aber auch andere Arten von Haltemechanismen verwendet werden, z.B. ein Sauger zum Ansaugen des Objekts. Außerdem ist „Aufnehmen“ nicht notwendigerweise so zu verstehen, dass das Objekt allein bewegt wird, es kann z.B. auch eine Komponente an einer größeren Struktur genommen werden und verbogen werden, ohne es von der größeren Struktur zu trennen.
  • Das maschinelle Lernmodell ist beispielsweise ein neuronales Netz. Es können aber auch andere maschinelle Lernmodelle verwendet werden, die entsprechend trainiert werden.
  • Gemäß verschiedenen Ausführungsformen weist das maschinelle Lernmodell Pixeln des Objekts (in der Bildebene des jeweiligen Kamerabilds) Deskriptoren zu. Dies kann als indirektes Codieren der Oberflächentopologie des Objekts angesehen werden. Diese Verbindung zwischen Deskriptoren und der Oberflächentopologie kann durch Rendern explizit vorgenommen werden, um die Deskriptoren auf die Bildebene abzubilden. Es sollte angemerkt werden, dass Deskriptorwerte an Flächen (d. h. Punkten, die keine Vertices sind) des Objektmodells mittels Interpolation bestimmt werden können. Wenn beispielsweise eine Fläche durch drei Vertices des Objektmodells mit ihren jeweiligen Deskriptorwerten y1, y2, y3 gegeben ist, dann kann an einem beliebigen Punkt der Fläche der Deskriptorwert y als eine gewichtete Summe dieser Werte w1 · y1 + w2 · y2 + w3 · y3 berechnet werden. Mit anderen Worten werden die Deskriptorwerte an den Vertices interpoliert.
  • Gemäß verschiedenen Ausführungsformen wird das maschinelle Lernmodell mit Trainingsdatenbildpaaren trainiert, wobei jedes Trainingsdatenbildpaar ein Trainingseingabebild des Objekts und ein Zielbild aufweist, wobei das Zielbild durch Projizieren der in dem Trainingseingabebild sichtbaren Deskriptoren der Vertices auf die Trainingseingabebildebene gemäß der Stellung, die das Objekt in dem Trainingseingabebild aufweist, erzeugt wird.
  • Gemäß einer anderen Ausführungsform wird das maschinelle Lernmodell mit Trainingsdatenbildern trainiert, wobei jedes Trainingsdatenbild als Ground Truth eine Kennzeichnung der Bereiche des Trainingsdatenbilds aufweist, die Stellen des Objekts zeigen, die nicht gegriffen werden sollen.
  • Die Bilder zusammen mit ihren assoziierten Zielbildern bzw. den Kennzeichnungen werden zum überwachten Trainieren des maschinellen Lernmodells verwendet.
  • Das Verfahren von 6 kann durch einen oder mehrere Computer durchgeführt werden, die eine oder mehrere Datenverarbeitungseinrichtungen beinhalten. Die Komponenten der Datenverarbeitungseinrichtung können durch ein oder mehrere Schaltungen realisiert sein.In einer Ausführungsform ist eine „Schaltung“ als jegliche Einheit zu verstehen, die eine Logik implementiert, und die sowohl Hardware, Software, Firmware oder eine Kombination daraus sein kann. Somit kann eine „Schaltung“ in einer Ausführungsform ein hart-verdrahteter Logik-Schaltkreis oder ein programmierbarer Logik-Schaltkreis sein, wie beispielsweise ein programmierbarer Prozessor. Unter einer „Schaltung“ kann auch ein Prozessor, der Software ausführt, zu verstehen sein, z.B. jegliche Art von Computer-Programm, etwa ein Computer-Programm in Programmiercode für eine virtuelle Maschine (Virtual Machine). Unter einer „Schaltung“ kann in einer Ausführungsform jegliche Art der Implementierung der hierin beschriebenen Funktionen zu verstehen sein.
  • Die Kamerabilder sind beispielsweise RGB-Bilder oder RGB-D-Bilder, können aber auch andere Arten von Kamerabildern wie Wärmebilder sein. Die Greifpose wird beispielsweise zur Steuerung eines Roboters zum Aufnehmen eines Objekts in einer Roboterzelle (z.B. aus einer Kiste) ermittelt, z.B. für den Zusammenbau eines größeren Objekts aus Teilobjekten, das Bewegen von Objekten etc.
  • Obwohl spezifische Ausführungsformen hierin veranschaulicht und beschrieben wurden, sollte ein Durchschnittsfachmann erkennen, dass eine Vielfalt alternativer und/oder äquivalenter Implementierungen für die spezifischen gezeigten und beschriebenen Ausführungsformen ersetzt werden können, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen. Diese Anmeldung soll jegliche Anpassungen oder Variationen der spezifischen hierin besprochenen Ausführungsformen abdecken. Daher wird beabsichtigt, dass diese Erfindung nur durch die Ansprüche und deren Äquivalente beschränkt wird.

Claims (9)

  1. Verfahren zum Steuern eines Roboters zum Aufnehmen eines Objekts, aufweisend: Empfangen eines Kamerabilds eines Objekts; Ermitteln eines Bildbereichs in dem Kamerabild, der eine Stelle des Objekts zeigt, an der es nicht aufgenommen werden soll, durch Zuführen des Kamerabilds zu einem maschinellen Lernmodell, das dazu trainiert ist, Bereichen in Kamerabildern Werte zuzuordnen, die repräsentieren, ob die Bereiche Stellen eines Objekts zeigen, an denen es nicht aufgenommen werden soll; Zuordnen des ermittelten Bildbereichs zu einem Raumbereich; und Steuern des Roboters zum Greifen des Objekts in einem anderen als den ermittelten Raumbereich.
  2. Verfahren nach Anspruch 1, aufweisend Ermitteln des Bildbereichs durch Trainieren, für das Objekt, des maschinellen Lernmodells zum Abbilden von Kamerabildern des Objekts auf Deskriptorbilder, wobei ein Deskriptorbild, auf das ein Kamerabild abzubilden ist, für eine Stelle des Objekts, die das Kamerabild an einer Bildposition zeigt, an der Bildposition einen Deskriptorwert der Stelle des Objekts aufweist; Beschaffen von Deskriptorwerten der Stelle des Objekts, an der es nicht aufgenommen werden soll; Abbilden des Kamerabilds mittels des trainierten maschinellen Lernmodells auf ein Deskriptorbild; Ermitteln eines Bereichs im Deskriptorbild, der die beschafften Deskriptorwerte aufweist; und Ermitteln des Bildbereichs als den Bereich des Kamerabilds an der Bildposition, der dem ermittelten Bereich im Deskriptorbild entspricht.
  3. Verfahren nach Anspruch 2, wobei das Beschaffen von Deskriptorwerten der Stelle des Objekts, an der es nicht aufgenommen werden soll, das Abbilden eines Kamerabilds, in dem ein Bereich als ein Bereich markiert ist, der eine Stelle zeigt, an der das Objekt nicht aufgenommen werden soll, mittels des maschinellen Lernmodells auf ein Deskriptorbild und das Auswählen der Deskriptorwerte des markierten Bereichs aus dem Deskriptorbild aufweist.
  4. Verfahren nach Anspruch 2 oder 3, wobei der ermittelte Bildbereich dem Raumbereich mittels des trainierten maschinellen Lernmodells zugeordnet wird durch Ermitteln eines 3D-Modells des Objekts, wobei das 3D-Modell ein Gitter von Vertices aufweist, denen Deskriptorwerte zugeordnet sind; Ermitteln einer Korrespondenz zwischen Positionen im Kamerabilds und Vertices des 3D-Modells, indem Positionen Vertices zugeordnet werden, die die gleichen Deskriptorwerte haben wie die, die das Deskriptorbild an den Positionen hat; und Zuordnen des ermittelten Bildbereichs zu einer Stelle des Objekts entsprechend der ermittelten Korrespondenz zwischen Positionen im Kamerabilds und Vertices des 3D-Modells.
  5. Verfahren nach Anspruch 1, aufweisend Ermitteln des Bildbereichs durch Trainieren des maschinellen Lernmodells mittels einer Vielzahl von Kamerabildern und Kennzeichnungen von ein oder mehreren Bildbereichen in den Kamerabildern, die Stellen zeigen, an denen ein Objekt nicht aufgenommen werden soll, zum Erkennen von Bildbereichen in Kamerabildern, die Stellen von Objekten zeigen, an denen Objekte nicht aufgenommen werden sollen; und Ermitteln des Bildbereichs durch Zuführen des Kamerabilds zu dem trainierten maschinellen Lernmodell.
  6. Verfahren nach einem der Ansprüche 1 bis 5, wobei Tiefeninformationen für den Bildbereich des Kamerabilds empfangen werden und der ermittelte Bildbereich dem Raumbereich mittels der Tiefeninformationen zugeordnet wird.
  7. Robotersteuervorrichtung, die eingerichtet ist, ein Verfahren gemäß einem der Ansprüche 1 bis 6 durchzuführen.
  8. Computerprogramm, das Anweisungen umfasst, die bei Ausführung durch einen Prozessor veranlassen, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 6 durchführt.
  9. Computerlesbares Medium, das Anweisungen speichert, die bei Ausführung durch einen Prozessor veranlassen, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 6 durchführt.
DE102021201921.8A 2021-03-01 2021-03-01 Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts Pending DE102021201921A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102021201921.8A DE102021201921A1 (de) 2021-03-01 2021-03-01 Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts
US17/680,861 US20220274257A1 (en) 2021-03-01 2022-02-25 Device and method for controlling a robot for picking up an object
JP2022029497A JP2022133256A (ja) 2021-03-01 2022-02-28 対象物をピックアップするロボットの制御装置及び制御方法
CN202210184801.2A CN115082554A (zh) 2021-03-01 2022-02-28 用于控制机器人来拿起对象的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021201921.8A DE102021201921A1 (de) 2021-03-01 2021-03-01 Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts

Publications (1)

Publication Number Publication Date
DE102021201921A1 true DE102021201921A1 (de) 2022-09-01

Family

ID=82799438

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021201921.8A Pending DE102021201921A1 (de) 2021-03-01 2021-03-01 Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts

Country Status (4)

Country Link
US (1) US20220274257A1 (de)
JP (1) JP2022133256A (de)
CN (1) CN115082554A (de)
DE (1) DE102021201921A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116934308B (zh) * 2023-09-15 2023-12-15 浙江恒逸石化有限公司 丝路巡检设备的控制方法、装置、设备以及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2263837B1 (de) 2008-03-10 2013-06-19 Toyota Jidosha Kabushiki Kaisha Operationslehrsystem und operationslehrverfahren
DE102013113459B4 (de) 2013-03-14 2015-05-13 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Intuitive greifsteuerung für einen mehrachsigenrobotergreifer
DE102014106210B4 (de) 2014-04-14 2015-12-17 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Probabilistische Personennachführung unter Verwendung der Mehr- Ansichts-Vereinigung
DE102014223167A1 (de) 2014-11-13 2016-05-19 Kuka Roboter Gmbh Bestimmen von objektbezogenen Greifräumen mittels eines Roboters
DE102017108727A1 (de) 2017-04-24 2018-10-25 Roboception Gmbh Verfahren zur Erstellung einer Datenbank mit Greiferposen, Verfahren zum Steuern eines Roboters, computerlesbares Speichermedium und Handhabungssystem
DE102019122790A1 (de) 2018-08-24 2020-02-27 Nvidia Corp. Robotersteuerungssystem
EP3702108A1 (de) 2019-02-27 2020-09-02 GILDEMEISTER Drehmaschinen GmbH Verfahren zum ermitteln einer greifposition zum ergreifen eines werkstücks
DE102019206444A1 (de) 2019-05-06 2020-11-12 Kuka Deutschland Gmbh Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera
DE102020106714A1 (de) 2019-05-28 2020-12-03 Intel Corporation Methoden und geräte für komplexe montage über autonome roboter mit verstärkungs-lernaktionsprimitive
DE112019001507T5 (de) 2018-03-23 2020-12-31 Amazon Technologies, Inc. Optimierungsbasiertes federgitterverformungsmodell für weiche materialien

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013184273A (ja) * 2012-03-09 2013-09-19 Sony Corp ロボット装置及びロボット装置の制御方法、並びにコンピューター・プログラム
GB201309156D0 (en) * 2013-05-21 2013-07-03 Univ Birmingham Grasp modelling
US10769411B2 (en) * 2017-11-15 2020-09-08 Qualcomm Technologies, Inc. Pose estimation and model retrieval for objects in images
DE112018007727B4 (de) * 2018-06-14 2022-10-06 Yamaha Hatsudoki Kabushiki Kaisha Robotersystem

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2263837B1 (de) 2008-03-10 2013-06-19 Toyota Jidosha Kabushiki Kaisha Operationslehrsystem und operationslehrverfahren
DE102013113459B4 (de) 2013-03-14 2015-05-13 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Intuitive greifsteuerung für einen mehrachsigenrobotergreifer
DE102014106210B4 (de) 2014-04-14 2015-12-17 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Probabilistische Personennachführung unter Verwendung der Mehr- Ansichts-Vereinigung
DE102014223167A1 (de) 2014-11-13 2016-05-19 Kuka Roboter Gmbh Bestimmen von objektbezogenen Greifräumen mittels eines Roboters
DE102017108727A1 (de) 2017-04-24 2018-10-25 Roboception Gmbh Verfahren zur Erstellung einer Datenbank mit Greiferposen, Verfahren zum Steuern eines Roboters, computerlesbares Speichermedium und Handhabungssystem
DE112019001507T5 (de) 2018-03-23 2020-12-31 Amazon Technologies, Inc. Optimierungsbasiertes federgitterverformungsmodell für weiche materialien
DE102019122790A1 (de) 2018-08-24 2020-02-27 Nvidia Corp. Robotersteuerungssystem
EP3702108A1 (de) 2019-02-27 2020-09-02 GILDEMEISTER Drehmaschinen GmbH Verfahren zum ermitteln einer greifposition zum ergreifen eines werkstücks
DE102019206444A1 (de) 2019-05-06 2020-11-12 Kuka Deutschland Gmbh Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera
DE102020106714A1 (de) 2019-05-28 2020-12-03 Intel Corporation Methoden und geräte für komplexe montage über autonome roboter mit verstärkungs-lernaktionsprimitive

Also Published As

Publication number Publication date
CN115082554A (zh) 2022-09-20
JP2022133256A (ja) 2022-09-13
US20220274257A1 (en) 2022-09-01

Similar Documents

Publication Publication Date Title
DE102019130046B4 (de) Robotersytem mit verbessertem Abtastmechanismus
DE102013203381B4 (de) Verfahren und system zum trainieren eines roboters unter verwendung einer von menschen unterstützten aufgabendemonstration
DE102018215057A1 (de) Maschinelles-lernen-vorrichtung, robotersystem und maschinelles-lernen-verfahren
DE102015111080B4 (de) Robotervorrichtung mit maschinellem Sehen
US20220245849A1 (en) Machine learning an object detection process using a robot-guided camera
DE102021107333A1 (de) 3d-stellungsabschätzung mit einer 2d-kamera
DE102021109036A1 (de) Vorrichtung und verfahren zum lokalisieren von stellen von objekten aus kamerabildern der objekte
WO2023078884A1 (de) Ansteuerung eines industrieroboters für eine greifaufgabe
DE102020214301A1 (de) Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts in verschiedenen lagen
DE102021201921A1 (de) Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts
Lu et al. Markerless camera-to-robot pose estimation via self-supervised sim-to-real transfer
DE102020208211A1 (de) Vorrichtungen und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erkennen einer Objekttopologie eines Objekts aus einem Bild des Objekts
DE102021107479A1 (de) Erfassung einer dreidimensionalen pose durch mehrere 2d-kameras
DE102021107351A1 (de) System zur eigenschaftserkennung durch deep-learning und vektorfeldschätzung
DE102021212859A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten
DE102021202570A1 (de) Vorrichtung und verfahren zum lokalisieren von stellen von objekten aus kamerabildern der objekte
DE102022201719A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erzeugen von Deskriptorbildern zu Bildern von Objekten
CN115631401A (zh) 一种视觉感知的机器人自主抓取技能学习***及方法
DE102021201880A1 (de) Vorrichtung und Verfahren zum Ermitteln der Pose eines Objekts
DE102022206274A1 (de) Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts
CN112171664A (zh) 基于视觉识别的生产线机器人轨迹补偿方法、装置和***
DE102021212494B4 (de) Vorrichtung und Verfahren zur Steuerung einer Robotervorrichtung
DE102022207847A1 (de) Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts
DE102021212860B4 (de) Verfahren zum Aufnehmen eines Objekts mittels eines Roboters
DE102021202337A1 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erkennen einer Objekttopologie eines Objekts in einem Bild des Objekts

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R016 Response to examination communication