-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft das Gebiet von Bildverarbeitung, insbesondere ein Verfahren und eine Einrichtung zur Bestimmung der 6D-Geste eines Objekts.
-
Stand der Technik
-
Mit der Verbreitung von Robotern ist oft erforderlich, beim Griff eines Objekts, wie eines Werkstücks, durch einen Roboter ein Griff-in-die-Kiste-Verfahren (binpicking) zu verwenden. Daher spielt die genaue Bestimmung der 6D-Geste des Objekts eine kritische Rolle für den effizienten und sicheren Betrieb des Roboters.
-
Bei der Bestimmung der 6D-Geste des Objekts wird in der Regel die 6D-Geste des Objekts durch ein RGB-Bild des Objekts abgeschätzt.
-
Beispielsweise kann das RGB-Bild in ein neuronales Netzwerk für die Schätzung der 6D-Geste eingegeben werden, um die 6D-Geste des Objekts zu ermitteln. Da jedoch während des Trainings des neuronalen Netzwerks die Daten für Training, wie die 6D-Gesten in verschiedenen tatsächlichen Umgebungen bzw. die RGB-Bilder des Objekts in verschiedenen Umgebungen, nur schwer erhältlich sind, ist die so bestimmte 6D-Geste nicht ausreichend genau.
-
Darüber hinaus kann durch die RGB-Daten eine lokale Punktwolke des Objekts erhalten werden, mit der wiederum die 6D-Geste des Objekts abgeschätzt werden kann. Bei diesem Verfahren soll jedoch der sämtliche Zustand des Objekts aus der lokalen Punktwolke des Objekts, d. h. aus einem lokalen 2D-Bild des Objekts der 3D-Zustand des Objekts und wiederum die 6D-Geste des Objekts, abgeschätzt werden, was zu einer niedrigen Genauigkeit der abgeschätzten 6D-Geste führt. Zudem ist dieses Verfahren zur Schätzung der 6D-Geste rechenintensiv und es weist eine niedrige Effizienz für die Berechnung der 6D-Geste auf.
-
Daher besteht ein Bedarf an ein Verfahren zur genauen und schnellen Bestimmung der 6D-Geste eines Objekts.
-
Offenbarung der Erfindung
-
Die Aufgabe der Erfindung liegt darin, ein Verfahren und eine Einrichtung zur Bestimmung der 6D-Geste eines Objekts bereitzustellen.
-
Gemäß einem Aspekt der Erfindung wird ein Verfahren zur Bestimmung der 6D-Geste eines Objekts bereitgestellt, umfassend: Erhalten eines RGB-Bilds des Objekts und einer entsprechenden Punktwolke des Bilds aus einem RGB-D-Bild des Objekts; Ermitteln einer dem Objekt entsprechenden Maske und des Typs des Objekts gemäß dem RGB-Bild durch ein vorher trainiertes Masken-Neuronennetzwerk; Ausschneiden einer tatsächlichen Punktwolke des Objekts aus der Punktwolke des Bilds und Ermitteln einer vorhergesagten 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts, gemäß der ermittelten Maske und/oder dem Typ des Objekts; und Registrieren der vorhergesagten 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts, um die 6D-Geste des Objekts zu bestimmen.
-
Gemäß einem weiteren Aspekt der Erfindung wird eine Einrichtung zur Bestimmung der 6D-Geste eines Objekts bereitgestellt, umfassend: eine Bildverarbeitungseinheit, die dazu eingerichtet ist, ein RGB-Bild des Objekts und eine entsprechende Punktwolke des Bilds aus einem RGB-D-Bild des Objekts erhalten zu können; eine Neuronennetzwerkeinheit, die dazu eingerichtet ist, eine dem Objekt entsprechende Maske und den Typ des Objekts gemäß dem RGB-Bild durch ein vorher trainiertes Masken-Neuronennetzwerk ermitteln zu können; eine Gestenvorhersageeinheit, die dazu eingerichtet ist, gemäß der ermittelten Maske und/oder dem Typ des Objekts eine tatsächliche Punktwolke des Objekts aus der Punktwolke des Bilds ausschneiden und eine vorhergesagte 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts ermitteln zu können; und eine Gestenbestimmungseinheit, die dazu eingerichtet ist, die vorhergesagte 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts registrieren zu können, um die 6D-Geste des Objekts zu bestimmen.
-
Gemäß einem anderen Aspekt der Erfindung wird ein Computerprogrammprodukt bereitgestellt, wobei das Computerprogrammprodukt ein Computerprogramm umfasst, das beim Ausführen durch einen Prozessor diesen ermöglicht, ein erfindungsgemäßes Verfahren zur Bestimmung der 6D-Geste eines Objekts durchzuführen.
-
Das Verfahren und die Einrichtung der Erfindung zur Bestimmung der 6D-Geste eines Objekts können basierend auf RGB-D-Bildern mittels eines Neuronennetzwerks die Maske und den Typ des Objekts genau und schnell ermitteln, um gemäß der ermittelten Maske und dem ermittelten Typ des Objekts und basierend auf dem ursprünglichen 3D-Modell des Objekts die 6D-Geste des Objekts genau zu bestimmen, was die Effizienz und Genauigkeit in der Bestimmung der 6D-Geste des Objekts verbessert.
-
Figurenliste
-
Durch die nachfolgende detaillierte Beschreibung in Zusammenhang mit den Figuren können die voranstehenden und weiteren Aspekte der vorliegenden Erfindung umfänglicher verstanden werden.
- 1 zeigt ein Ablaufdiagramm des Verfahrens zur Bestimmung der 6D-Geste eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 2 zeigt eine beispielhafte Darstellung eines RGB-Bilds eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 3 zeigt eine beispielhafte Darstellung einer Punktwolke des Bilds des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 4 zeigt eine beispielhafte Darstellung einer Maske des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 5 zeigt eine beispielhafte Darstellung einer tatsächlichen Punktwolke des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 6 zeigt ein Ablaufdiagramm des Schritts zum Ermitteln einer vorhergesagten 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 7 zeigt eine beispielhafte Darstellung eines 3D-Modells des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 8 zeigt eine beispielhafte Darstellung einer vorhergesagten 6D-Gestenpunktwolke des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 9 zeigt eine beispielhafte Darstellung einer registrierten Punktwolke gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
- 10 zeigt ein Blockdiagramm einer Einrichtung zur Bestimmung der 6D-Geste eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Ausführliche Ausführungsformen
-
Um die durch die Erfindung zu lösenden Aufgaben, die technischen Lösungen und die vorteilhaften technischen Effekte klarer zu machen, wird die vorliegende Erfindung in Verbindung mit den beigefügten Zeichnungen und beispielhaften Ausführungsbeispielen ausführlicher beschrieben. Es sollte verstanden sein, dass die ausführlichen Ausführungsbeispiele hierbei nur dazu dienen, die Erfindung zu erklären, ohne den Schutzumfang der Erfindung zu beschränken.
-
1 zeigt ein Ablaufdiagramm des Verfahrens zur Bestimmung der 6D-Geste eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Es kann sich beim hierbei betroffenen Objekt um ein beliebiges Objekt handeln, wie z. B. ein Objekt, beispielsweise ein Werkstück, das durch einen Roboter gegriffen werden soll.
-
Bezugnehmend auf 1 wird im Schritt S1 durch ein RGB-D-Bild des Objekts ein RGB-Bild des Objekts und eine entsprechende Punktwolke des Bilds erhalten.
-
Beispielsweise kann mittels einer 3D-Kamera ein Zielobjekt, wie z. B. ein durch den Roboter zu greifendes Objekt, aufgenommen werden, um das RGB-D-Bild des Objekts zu erhalten. Es ist zu verstehen, dass das RGB-D-Bild die Informationen über das Objekt sowie über die Umgebung, in der sich das Objekt befindet, umfassen kann.
-
Als das oben beschriebene RGB-Bild kann ein RGB-Bild aus dem RGB-D-Bild unmittelbar verwendet werden. Zudem kann auf beliebige Weise ein Tiefenbild aus dem RGB-D-Bild in die entsprechende Punktwolke (die Punktwolke des Bilds) umgewandelt werden.
-
2 zeigt eine beispielhafte Darstellung eines RGB-Bilds eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Im Mittelteil der 2 ist gezeigt, dass es sich bei dem aufzunehmenden Objekt, also dem Objekt, dessen 6D-Geste bestimmt werden soll, um ein Objekt mit einer großen Krümmung handeln kann. In der Umgebung um das Objekt in 2 liegen auch weitere Objekte, beispielsweise der Schraubendreher, der Schreiber, usw. in 2, vor.
-
3 zeigt eine beispielhafte Darstellung einer Punktwolke des Bilds des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Siehe 3. In 3 ist unter einem anderen Standpunkt als bei dem RGB-Bild in 2 (also unter einem anderen Aufnahmewinkel als bei 2) die aus dem RGB-D-Bild erhaltene Punktwolke des Bilds gezeigt. Das Objekt mit einer großen Krümmung im Mittelteil von 3 ist das Zielobjekt in 2, nämlich das Objekt, dessen 6D-Geste bestimmt werden soll.
-
Da das RGB-D-Bild die Tiefeninformation enthält, kann die so erhaltene Punktwolke des Bilds den dreidimensionalen (3D) Zustand des Objekts widerspiegeln, so dass die Punktwolke des Bilds unter unterschiedlichen Standpunkten dargestellt werden kann.
-
Es ist zu verstehen, dass die in 3 unter dem anderen Standpunkt als bei 2 gezeigte Punktwolke des Bilds lediglich der Beschreibung der Tatsache dient, dass eine Punktwolke des Bilds den dreidimensionalen Zustand des Objekts angeben kann. Um die Bestimmung der 6D-Geste des Objekts zu erleichtern, kann die Punktwolke des Bilds in der Regel unter dem gleichen Standpunkt wie bei 2 gezeigt werden.
-
Wieder bezugnehmend auf 1, werden im Schritt S2 eine dem Objekt entsprechenden Maske und der Typ des Objekts gemäß dem RGB-Bild durch ein vorher trainiertes Masken-Neuronennetzwerk ermittelt.
-
In einem Ausführungsbeispiel ist vorgesehen, dass das Masken-Neuronennetzwerk ein Neuronennetzwerk der Art zirkulärer Faltung (wie z. B. Mask-RCNN) ist. Durch die Eingabe des im Schritt S1 erhaltenen RGB-Bilds in das Masken-Neuronennetzwerk kann eine Maske und der Typ des Objekts, die dem eingegebenen RGB-Bild entsprechen, von dem Masken-Neuronennetzwerk ausgegeben werden.
-
Da dabei während des Trainings des Masken-Neuronennetzwerks ausreichende Trainingsdaten, nämlich die Eingabedaten und die Kommentierungsdaten (weiter unten wird das Training des Masken-Neuronennetzwerks näher beschrieben) förderlich erhalten werden können, können durch das Masken-Neuronennetzwerk die dem Objekt entsprechende Maske und der Typ des Objekts schnell und genau ermittelt werden.
-
4 zeigt eine beispielhafte Darstellung einer Maske des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Siehe 4. In 4 ist die dem Zielobjekt in 2, also dem Objekt mit Krümmung im Mittelteil von 2, entsprechende Maske gezeigt. Die Maske stellt die Information über die Kontur des Objekts bereit.
-
Nach der Ermittlung der Maske und des Typs des Objekts kann der Schritt S3 in 1 durchgeführt werden, so dass gemäß der ermittelten Maske und/oder dem Typ des Objekts eine tatsächliche Punktwolke des Objekts aus der Punktwolke des Bilds ausgeschnitten wird und eine vorhergesagte 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts ermittelt wird.
-
In einem Ausführungsbeispiel kann im Schritt S3 die Punktwolke des Bilds in eine Punktwolke des Objekts und eine Punktwolke der Umgebung durch die ermittelte Maske, und Verwenden der getrennten Punktwolke des Objekts als die tatsächliche Punktwolke des Objekts getrennt werden.
-
Beispielsweise kann die tatsächliche Punktwolke des Objekts eine Punktwolke des in 2 und 3 gezeigten gekrümmten Objekts sein, die aus der Punktwolke des Bilds aus 3 ausgeschnitten ist.
-
5 zeigt eine beispielhafte Darstellung einer tatsächlichen Punktwolke des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
5 zeigt eine von der Punktwolke des Bilds in 3 ausgeschnittene Punktwolke (die tatsächliche Punktwolke des Objekts), die von der Umgebung getrennt ist und das Zielobjekt enthält. Um die Bestimmung der 6D-Geste des Objekts zu erleichtern, ist die tatsächliche Punktwolke des Objekts in 5 unter dem gleichen Standpunkt wie bei 2 gezeigt.
-
Es ist zu verstehen, dass die tatsächliche Punktwolke des Objekts auch im Standpunkt in 3 oder in einem anderen Standpunkt gezeigt werden kann.
-
Im Schritt S3 in 1 kann das Ermitteln der vorhergesagten 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts parallel zu, vor oder nach dem Ausschneiden der tatsächlichen Punktwolke des Objekts aus der Punktwolke des Bilds im Schritt S3 durchgeführt werden.
-
Bei der vorhergesagten 6D-Gestenpunktwolke kann es sich um eine Punktwolke des Objekts mit einer ungefähr abgeschätzten 6D-Geste basierend auf dem ursprünglichen 3D-Modell des Objekts handeln.
-
6 zeigt ein Ablaufdiagramm des Schritts zum Ermitteln einer vorhergesagten 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Bezugnehmend auf 6 kann im Schritt S31 eine der ermittelten Maske entsprechende 6D-Geste aus einer Gestendatenbank als die vorhergesagte 6D-Geste erhalten werden.
-
Als Beispiel kann die Gestendatenbank mehrere Masken und mehrere den Masken jeweils entsprechenden 6D-Gesten umfassen.
-
Durch die so ermittelte Maske kann aus der Gestendatenbank eine entsprechende 6D-Geste als die vorhergesagte 6D-Geste (also die ungefähr abgeschätzte 6D-Geste des Objekts) abgerufen werden.
-
Um die 6D-Geste effizienter aus der Gestendatenbank abzurufen, kann darüber hinaus in einem Ausführungsbeispiel die Gestendatenbank mehrere Typen des Objekts, mehrere den Typen des Objekts entsprechende Masken und den Masken entsprechende 6D-Geste umfassen.
-
In diesem Fall kann im Schritt S31 durch die so ermittelte Maske und den Typ des Objekts aus der Gestendatenbank eine entsprechende 6D-Geste (die vorhergesagte 6D-Geste) abgerufen werden.
-
Parallel zu, vor oder nach dem Ermitteln der vorhergesagten 6D-Geste kann der Schritt S32 durchgeführt werden, so dass ein dem ermittelten Typ des Objekts entsprechendes 3D-Modell des Objekts aus einer Modelldatenbank erhalten wird.
-
Als Beispiel kann die Modelldatenbank mehrere 3D-Modelle des Objekts, die mehreren Typen des Objekts jeweils entsprechen, umfassen. Beispielsweise kann es sich bei der Modelldatenbank um eine Modelldatenbank, die die CAD-Modelle und die Texturmerkmale (wie die Farbenmerkmale, z. B. RGB-Merkmale) mehrerer Objekte umfasst, handeln.
-
Beispielsweise kann durch den so ermittelten Typ des Objekts ein 3D-Modell dieses Typs des Objekts in der oben beschriebenen Modelldatenbank suchen, wie z. B. ein ursprüngliches 3D-Modell des Zielobjekts in 2. Dieses 3D-Modell weist die vollständigen und genauen Informationen über das Objekt, wie die detaillierte Struktur sowie die Farbe des Objekts, auf.
-
7 zeigt eine beispielhafte Darstellung eines 3D-Modells des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
7 zeigt das ursprüngliche 3D-Modell des in 2 aufgenommenen Objekts. Das ursprüngliche 3D-Modell des Objekts in 7 kann die vollständigen und genauen Informationen über das Objekt, wie die detaillierte Struktur sowie die Farbe des Objekts, aufweisen.
-
Wieder bezugnehmend auf 6 kann nach dem Erhalten des ursprünglichen 3D-Modells des Objekts der Schritt S33 durchgeführt werden, so dass das erhaltene 3D-Modell in die vorhergesagte 6D-Geste über Lichtprojektionsumrechnung umgewandelt wird, um eine Punktwolke des 3D-Modells unter der vorhergesagten 6D-Geste als die vorhergesagte 6D-Gestenpunktwolke zu erhalten.
-
Durch die Umwandlung des aus der Modelldatenbank erhaltenen, vollständigen, und genauen 3D-Modells des Objekts in die aus der Gestendatenbank abgerufene 6D-Geste (die vorhergesagte 6D-Geste) über beispielsweise CAD-Lichtprojektionsumrechnung kann dabei das vollständige und genaue 3D-Modell des Objekts eine dem tatsächlichen Objekt annähernde 6D-Geste aufweisen. Daher kann die so ermittelte vorhergesagte 6D-Gestenpunktwolke sowohl verhältnismäßig vollständige und genaue Informationen über das Objekt als auch eine dem tatsächlichen Objekt annähernde 6D-Geste aufweisen.
-
8 zeigt eine beispielhafte Darstellung einer vorhergesagten 6D-Gestenpunktwolke des Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Aus 8 ist ersichtlich, dass die aus dem Schritt S33 erhaltene vorhergesagte 6D-Gestenpunktwolke bereits eine der tatsächlichen Punktwolke des Objekts in 5 sehr annähernde 6D-Geste aufweist und gleichzeitig auch mehr Information über das Objekt als bei der tatsächlichen Punktwolke des Objekts in 5, wie z. B. die detaillierte Struktur und die Farbe des Objekts, umfasst.
-
Nach dem Erhalten der vorhergesagten 6D-Gestenpunktwolke, beispielsweise Erhalten der vorhergesagten 6D-Gestenpunktwolke auf oben beschriebene Weise, kann der Schritt S4 in 1 durchgeführt werden, so dass die vorhergesagte 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts registriert wird, um die 6D-Geste des Objekts zu bestimmen.
-
In einem Ausführungsbeispiel kann im Schritt S4 zunächst die vorhergesagte 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts durch ICP- (Iterative-Closest-Point-) Algorithmus unter Verwendung der vorhergesagten 6D-Gestenpunktwolke als Anfangswert registriert werden, um eine registrierte Punktwolke zu erhalten.
-
9 zeigt eine beispielhafte Darstellung einer registrierten Punktwolke gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Siehe 9. Die darin gezeigte registrierte Punktwolke kann sowohl die von der vorhergesagten 6D-Gestenpunktwolke enthaltene, vollständige und genaue Informationen über das Objekt als auch eine 6D-Geste, die der tatsächlichen 6D-Geste des Objekts gleich ist, aufweisen.
-
Danach kann im Schritt S4 eine der registrierten Punktwolke entsprechende 6D-Geste als die 6D-Geste des Objekts bestimmt werden.
-
Auf diese Weise kann es vermieden werden, über ICP-Algorithmus die Punktwolke eines Anfangsmodells des Objekts (beispielsweise des Modells des Objekts in 7) aus einer ursprünglichen 6D-Geste des Anfangsmodells über komplizierte iterative Prozesse in eine tatsächliche 6D-Geste des Zielobjekts (beispielsweise die der tatsächlichen Punktwolke des Objekts in 5 entsprechende 6D-Geste) umzuwandeln.
-
In einem Ausführungsbeispiel der Offenbarung kann über ICP-Algorithmus die vorhergesagte 6D-Gestenpunktwolke mit einer der tatsächlichen 6D-Geste des Objekts sehr annähernden Geste, wie in 8 gezeigt, zu der tatsächlichen Punktwolke des Objekts rasch registriert werden, um die oben erwähnten komplizierten iterativen Prozesse zu vermeiden und die 6D-Geste des Objekts effizient bestimmen zu können.
-
In dem obigen Ausführungsbeispiel kann die 6D-Geste des Objekts die Position und Ausrichtung des Objekts umfassen. Die Position des Objekts kann die x-Koordinate, y-Koordinate und z-Koordinate des Objekts in einem vorgegebenen dreidimensionalen Koordinatensystem umfassen, und die Ausrichtung des Objekts kann das Nicken, Rollen und Gieren des Objekts umfassen.
-
Bei beispielsweise einem durch eine 3D-Kamera aufgenommenen RGB-D-Bild des Objekts kann es sich bei dem oben erwähnten vorgegebenen Koordinatensystem um das Koordinatensystem der Kamera, und bei dem Nicken, Rollen und Gieren des Objekts um das Nicken, Rollen und Gieren in Bezug auf einen vorgegebenen ursprünglichen Zustand, wie z. B. auf ein in der oben beschriebenen Modelldatenbank gespeichertes ursprüngliches 3D-Modell, handeln.
-
Es ist zu verstehen, dass das oben beschriebene vorgegebene Koordinatensystem sowie das Nicken, Rollen und Gieren nur beispielhaft sind, und nach praktischem Bedarf ein beliebiges anderes vorgegebenes Koordinatensystem, Nicken, Rollen und Gieren eingestellt werden können.
-
Um die Genauigkeit in der Bestimmung der Maske und der vorhergesagten 6D-Geste des Objekts zu erhöhen, kann in einem Ausführungsbeispiel das erfindungsgemäße Verfahren zur Bestimmung der 6D-Geste eines Objekts auch einen Schritt zum Trainieren des oben beschriebenen Masken-Neuronennetzwerks und einen Schritt zum Etablieren der oben beschriebenen Gestendatenbank umfassen.
-
Als Beispiel kann das Masken-Neuronennetzwerk unter Verwendung mehrerer Gruppen von RGB-Bildern als Eingabedaten und unter Verwendung einer jedem RGB-Bild in jeder Gruppe von RGB-Bildern entsprechenden Kommentierungsmaske und eines entsprechenden Kommentierungstyps des Objekts als Kommentierungsdaten trainiert werden. Jede Gruppe der mehreren Gruppen von RGB-Bildern kann Objekten eines Typ des Objekts entsprechen.
-
In einem Ausführungsbeispiel können die Eingabedaten und die Kommentierungsdaten wie folgt erhalten werden:
- Zunächst können mehrere 3D-Modelle aus der Modelldatenbank erhalten werden. Jedes 3D-Modell kann Objekten eines Typ des Objekts entsprechen.
-
Danach wird jedes 3D-Modell einer Standpunktänderung, einer Vergrößerung bzw. Verkleinerung und/oder einem Lichtwechsel unter zumindest einem Umgebungsmodell unterworfen, um für jedes 3D-Modell eine Gruppe von RGB-Bildern des dem Typ des Objekts entsprechenden Objekts, eine jedem RGB-Bild entsprechende Maske und/oder eine jedem RGB-Bild entsprechende 6D-Geste zu erhalten.
-
Dabei können alle erhaltenen Gruppen von RGB-Bildern die Eingabedaten sein, kann die jedem RGB-Bild entsprechende Maske die Kommentierungsmaske sein, und kann der jedem RGB-Bild entsprechende Typ des Objekts der Kommentierungstyp des Objekts sein.
-
Beispielsweise kann für jedes 3D-Modell das 3D-Modell und zumindest eine Umgebung in eine beliebige Hardware- oder Software-Einheit (wie Blender), die das 3D-Modell und die Umgebung wie oben erwähnt umwandelt, eingegeben werden. Danach werden das eingegebene 3D-Modell und die eingegebene Umgebung einer Standpunktänderung, einer Vergrößerung bzw. Verkleinerung und/oder einem Lichtwechsel mittels der beliebigen Hardware- oder Software-Einheit (wie Blender) unterworfen, um unterschiedliche RGB-Bilder des Objekts sowie die jedem RGB-Bild entsprechende Maske und 6D-Geste unter unterschiedlichen Standpunkten, Vergrößerung und/oder Lichtwechsel auszugeben.
-
Dabei können durch die oben beschriebenen Umwandlungen der 3D-Modelle verschiedener Objekte und Umgebungen die RGB-Bilder, die entsprechenden Masken, die Typen des Objekts und die 6D-Gesten der Objekte unter verschiedenen Gesten, Standpunkten und Umgebungen leicht erhalten werden. Dadurch können also ausreichende Trainingsdaten für das Training des Masken-Neuronennetzwerks leicht erhalten werden.
-
Daher kann das so trainierte Neuronennetzwerk die Masken und Typen verschiedener Objekte unter verschiedenen Gesten genau bestimmen. Dies ermöglicht die genaue Bestimmung der 6D-Geste des Objekts im oben genannten Vorgang für Bestimmung der 6D-Geste des Objekts, ohne die einzelnen 6D-Gesten verschiedener Objekte in realen Umgebungen als Kommentierung oder Referenz sammeln zu müssen.
-
Parallel zum Erhalten der unterschiedlichen RGB-Bilder, der jedem RGB-Bild entsprechenden Maske und/oder der jedem RGB-Bild entsprechenden 6D-Geste kann in einem Ausführungsbeispiel zudem auch die jedem RGB-Bild entsprechende Maske und die jedem RGB-Bild entsprechende 6D-Geste entsprechend gespeichert werden, um die Gestendatenbank zu erhalten.
-
Darüber hinaus kann die entsprechende Typen des Objekts zusammen gespeichert werden, so dass die etablierte Gestendatenbank verschiedene Typen des Objekts, mehrere den Typen des Objekts entsprechende Masken und den Masken entsprechende 6D-Geste umfassen.
-
Das Verfahren der Erfindung zur Bestimmung der 6D-Geste eines Objekts kann basierend auf RGB-D-Bildern mittels eines Neuronennetzwerks die Maske und den Typ des Objekts genau und schnell ermitteln, um gemäß der ermittelten Maske und dem ermittelten Typ des Objekts und basierend auf dem ursprünglichen 3D-Modell des Objekts die 6D-Geste des Objekts genau zu bestimmen, was die Effizienz und Genauigkeit in der Bestimmung der 6D-Geste des Objekts verbessert.
-
10 zeigt ein Blockdiagramm einer Einrichtung 10 zur Bestimmung der 6D-Geste eines Objekts gemäß einem beispielhaften Ausführungsbeispiel der Erfindung.
-
Bezugnehmend auf 10 umfasst eine erfindungsgemäße Einrichtung 10 zur Bestimmung der 6D-Geste eines Objekts eine Bildverarbeitungseinheit 1, eine Neuronennetzwerkeinheit 2, eine Gestenvorhersageeinheit 3 und eine Gestenbestimmungseinheit 4.
-
Die Bildverarbeitungseinheit 1 ist dazu eingerichtet, ein RGB-Bild des Objekts und eine entsprechende Punktwolke des Bilds aus einem RGB-D-Bild des Objekts erhalten zu können.
-
Die Neuronennetzwerkeinheit 2 ist dazu eingerichtet, eine dem Objekt entsprechende Maske und den Typ des Objekts gemäß dem RGB-Bild durch ein vorher trainiertes Masken-Neuronennetzwerk ermitteln zu können.
-
Die Gestenvorhersageeinheit 3 ist dazu eingerichtet, gemäß der ermittelten Maske und/oder dem Typ des Objekts eine tatsächliche Punktwolke des Objekts aus der Punktwolke des Bilds ausschneiden und eine vorhergesagte 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts ermitteln zu können.
-
Die Gestenbestimmungseinheit 4 ist dazu eingerichtet, die vorhergesagte 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts registrieren zu können, um die 6D-Geste des Objekts zu bestimmen.
-
Oben wurden in Bezug auf 1 bis 9 die Ermittlung der Punktwolke des Bilds, der Maske, des Typs des Objekts und der vorhergesagten Punktwolke sowie die Bestimmung der 6D-Geste des Objekts näher beschrieben, und hier wird nicht mehr weiter darauf eingegangen.
-
Die Einrichtung der Erfindung zur Bestimmung der 6D-Geste eines Objekts kann basierend auf RGB-D-Bildern mittels eines Neuronennetzwerks die Maske und den Typ des Objekts genau und schnell ermitteln, um gemäß der ermittelten Maske und dem ermittelten Typ des Objekts und basierend auf dem ursprünglichen 3D-Modell des Objekts die 6D-Geste des Objekts genau zu bestimmen, was die Effizienz und Genauigkeit in der Bestimmung der 6D-Geste des Objekts verbessert.
-
Gemäß einem beispielhaften Ausführungsbeispiel der Erfindung wird ferner ein Computerprogrammprodukt bereitgestellt, wobei das Computerprogrammprodukt ein Computerprogramm umfasst, das beim Ausführen durch einen Prozessor diesen ermöglicht, ein erfindungsgemäßes Verfahren zur Bestimmung der 6D-Geste eines Objekts durchzuführen. Das Computerprogrammprodukt kann Computerprogramme, Programmcodes, Anweisungen, oder Kombination davon umfassen, um eine Hardware-Einrichtung einzeln oder zusammenarbeitend zu befehlen oder konfigurieren und sie nach Bedarf zu betreiben. Das Computerprogramm und/oder der Programmcode kann/können ein Programm oder computerlesbare Anweisungen, eine Software-Komponente, ein Software-Modul, Dateien, Datenstrukturen, usw., die durch ein oder mehrere Hardware-Einrichtungen durchgeführt werden, umfassen. Zu dem Beispiel des Programmcodes gehören die von einem Compiler erzeugten Maschinencodes und die von einem Interpreter durchgeführten höheren Programmcodes.
-
Zudem können die oben genannte Einrichtung und die einzelnen Einheiten in der Einrichtung gemäß den beispielhaften Ausführungsbeispielen der Erfindung sowohl als Hardware-Komponente als auch als Software-Modul implementiert werden. Darüber hinaus können die einzelnen Einheiten nach ihren Funktionalitäten vom Fachmann mittels Field-Programmable-Gate-Array (FPGA), Application-Specific-Integrated-Circuit (ASIC) oder Prozessor realisiert werden.
-
Obwohl hierbei die Erfindung in Bezug auf die detaillierten Ausführungsbeispiele beschrieben und erläutert wurde, soll die Erfindung nicht auf die gezeigten Details beschränkt sein. Vielmehr können die Details innerhalb des Umfangs der Erfindung modifiziert werden.
-
Bezugszeichenliste
-
- S1
- Erhalten eines RGB-Bilds des Objekts und einer entsprechenden Punktwolke des Bilds aus einem RGB-D-Bild des Objekts
- S2
- Ermitteln einer dem Objekt entsprechenden Maske und des Typs des Objekts gemäß dem RGB-Bild durch ein vorher trainiertes Masken-Neuronennetzwerk
- S3
- Ausschneiden einer tatsächlichen Punktwolke des Objekts aus der Punktwolke des Bilds und Ermitteln einer vorhergesagten 6D-Gestenpunktwolke basierend auf einem 3D-Modell des Objekts, gemäß der ermittelten Maske und/oder dem Typ des Objekts
- S4
- Registrieren der vorhergesagten 6D-Gestenpunktwolke zur tatsächlichen Punktwolke des Objekts, um die 6D-Geste des Objekts zu bestimmen
- S31
- Erhalten einer der ermittelten Maske entsprechenden 6D-Geste aus einer Gestendatenbank als die vorhergesagte 6D-Geste
- S32
- Erhalten eines dem ermittelten Typ des Objekts entsprechenden 3D-Modells des Objekts aus einer Modelldatenbank
- S33
- Umwandeln des erhaltenen 3D-Modells in die vorhergesagte 6D-Geste über Lichtprojektionsumrechnung, um eine Punktwolke des 3D-Modells unter der vorhergesagten 6D-Geste als die vorhergesagte 6D-Gestenpunktwolke zu erhalten
- 10
- Einrichtung zur Bestimmung der 6D-Geste eines Objekts
- 1
- Bildverarbeitungseinheit
- 2
- Neuronennetzwerkeinheit
- 3
- Gestenvorhersageeinheit
- 4
- Gestenbestimmungseinheit