Deep Object Pose Estimation for Semantic Robotic Grasping of Household Objects
Autoren: Jonathan Tremblay, Thang To, Balakumar Sundaralingam, Yu Xiang, Dieter Fox, Stan Birchfield · CoRL 2018
Lizenzen
- Open Access
- Paper: CC BY 4.0
Alles Folgende stützt sich auf das vollständige Paper unter seiner Lizenz CC BY 4.0; die Abbildung wird mit Nennung der Autoren gezeigt.
Kurz gesagt
Ein Keypoint-Netz, das nur auf gemischten domänenrandomisierten und fotorealistischen synthetischen Bildern trainiert ist, schätzt die 6-DoF-Objektpose gut genug für das Greifen mit einem realen Roboter.
Warum es wichtig ist
Ein Roboter braucht keine realen gelabelten Bilder, um ein neues bekanntes Objekt zu lernen, und weil die Pose aus PnP statt aus direkter Regression stammt, kann das Netz ohne erneutes Training mit einer anderen Kamera verwendet werden. Das Paper zeigt, dass die Schätzungen auf einem Baxter genau genug sind für Griffe von oben, Pick-and-Place auf ein anderes Objekt und die Übergabe durch eine Person.
Problem
Die Manipulation bekannter Objekte erfordert ihre 3D-Position und -Orientierung, doch das Labeln von 6-DoF-Posen in realen Bildern ist arbeitsintensiv, sodass Netze meist auf realen Daten trainiert werden, die eng mit dem Testset korrelieren, und schlecht auf neue Kameras und Beleuchtung generalisieren. Synthetische Daten vermeiden das Labeln, leiden aber unter der Reality Gap, und Domänenrandomisierung allein hatte ein Fine-Tuning auf realen Daten gebraucht, um konkurrenzfähig zu sein.
Lösungsansatz
DOPE ist ein sechsstufiges vollständig faltendes Netz (die ersten zehn Schichten von VGG-19 plus Stufen nach dem Vorbild von Convolutional Pose Machines), das Belief Maps für die 8 projizierten Eckpunkte des Quaders und den Schwerpunkt ausgibt, dazu Vektorfelder, die von den Eckpunkten zu den Schwerpunkten zeigen. Die Maxima werden gierig zu Objektinstanzen gruppiert und zusammen mit den intrinsischen Kameraparametern und den Objektabmessungen an einen Perspective-n-Point-Löser (PnP) übergeben, um die Pose zu bestimmen. Trainiert wird mit etwa 60k domänenrandomisierten und 60k fotorealistischen Bildern von YCB-Objekten, gerendert mit dem NDDS-Plugin der Autoren für Unreal Engine 4.
Wichtigste Erkenntnisse
- Domänenrandomisierte und fotorealistische synthetische Daten ergänzen sich: Der gemischte Satz mit 120k Bildern übertraf viel größere Sätze nur eines der beiden Typen.
- Die Vorhersage von 2D-Keypoints und das Lösen von PnP halten die intrinsischen Kameraparameter aus den Netzgewichten heraus, anders als bei Methoden, die die Pose direkt regressieren.
- Jede zusätzliche Netzstufe erhöht die Genauigkeit und kostet Zeit, weil spätere Stufen größere rezeptive Felder nutzen, um frühere Mehrdeutigkeiten aufzulösen.
- Rein synthetisches Training generalisierte besser auf eine andere Kamera und extreme Beleuchtung als PoseCNN, dessen reale Trainingsbilder von derselben Kamera stammten wie sein Testset.
- Materialien, die der Renderer nicht modelliert, führen zu Fehlschlägen: Der spiegelnde Metalldeckel der Fleischkonserve wurde nicht erkannt, wenn er der einzige sichtbare Teil war.
Hauptergebnisse
- Auf YCB-Video hatte DOPE, nur auf synthetischen Daten trainiert, bei 4 von 5 Objekten eine größere ADD-Fläche unter der Kurve als PoseCNN (trainiert auf synthetischen plus realen YCB-Video-Daten) und schnitt unterhalb von 2 cm besser ab, etwa der Grenze des Greiffehlers des Baxter-Greifers.
- Zuckerschachtel, nur domänenrandomisierte Daten: Die AUC stieg von 0,25 bei 2k Bildern auf 54,22 bei 10k und etwa 60,6 bei 100k, mit einem Höchstwert von 66,64 bei 300k; nur fotorealistische Daten erreichten höchstens 62,94 bei 600k; der gemischte Satz mit 120k erreichte 77,00.
- Mischungsverhältnis: Die Leistung war für alle Netze vergleichbar, solange mindestens 40 % des einen Datensatzes zusammen mit dem vollständigen anderen enthalten waren.
- Stufen gegenüber Zeit (einschließlich Objektextraktion und PnP): 1 Stufe ergab 46,44 AUC in 57 ms und 6 Stufen 75,69 AUC in 232 ms.
- Baxter-Griffe von oben, 12 Versuche pro Objekt in Unordnung: Crackerschachtel 10, Fleischkonserve 10, Senfflasche 11, Zuckerschachtel 11, Tomatensuppendose 7 (9 mit liegender Dose).
Einschränkungen
- Stark verdeckte Fleischkonserven werden oft übersehen, weil die synthetischen Daten die spiegelnde metallische Oberseite nicht modellieren.
- Runde Objekte sind für Griffe von oben schwierig: Die aufrecht stehende Suppendose gelang in 7 von 12 Versuchen.
- Die Griffe laufen ohne Closed-Loop-Servoing; Fehler stammen aus der Posenschätzung, der Kamera-Roboter-Kalibrierung und ungenauer Robotersteuerung, wobei die Steuerung eine große Rolle zu spielen scheint.
- Die Methode setzt bekannte starre Objekte mit bekannten Abmessungen und bekannte intrinsische Kameraparameter voraus; die Autoren nennen mehr Objekte, den Umgang mit Symmetrie und Closed-Loop-Verfeinerung als zukünftige Arbeit.
- Der Vergleich mit PoseCNN bei extremer Beleuchtung ist nur qualitativ.
Wirkung auf das Fachgebiet
778-mal zitiert. Das Paper verweist auf Video und Code auf seiner NVIDIA-Projektseite, die auf das DOPE-Code-Repository verlinkt; die fotorealistischen Trainingsdaten wurden als Datensatz Falling Things (FAT) veröffentlicht, und das NDDS-Plugin zur Datenerzeugung ist auf GitHub verfügbar.
Zusammenfassung
Die Verwendung synthetischer Daten zum Training tiefer neuronaler Netze für robotische Manipulation verspricht eine nahezu unbegrenzte Menge vorab gelabelter Trainingsdaten, die sicher und gefahrlos erzeugt werden. Eine der zentralen Herausforderungen synthetischer Daten bestand bisher darin, die sogenannte Reality Gap zu überbrücken, damit auf synthetischen Daten trainierte Netze korrekt arbeiten, wenn sie Daten aus der realen Welt ausgesetzt werden. Wir untersuchen die Reality Gap im Kontext der 6-DoF-Posenschätzung bekannter Objekte aus einem einzigen RGB-Bild. Wir zeigen, dass sich für dieses Problem die Reality Gap durch eine einfache Kombination domänenrandomisierter und fotorealistischer Daten erfolgreich überbrücken lässt. Mit so erzeugten synthetischen Daten stellen wir ein One-Shot-Deep-Neural-Network vor, das mit einem Netz auf dem Stand der Technik konkurrieren kann, das auf einer Kombination aus realen und synthetischen Daten trainiert wurde. Unseres Wissens ist dies das erste tiefe Netz, das nur auf synthetischen Daten trainiert wurde und Leistung auf dem Stand der Technik bei der 6-DoF-Objektposenschätzung erreicht. Unser Netz generalisiert zudem besser auf neue Umgebungen, einschließlich extremer Lichtverhältnisse, für die wir qualitative Ergebnisse zeigen. Mit diesem Netz demonstrieren wir ein Echtzeitsystem, das Objektposen mit ausreichender Genauigkeit für semantisches Greifen bekannter Haushaltsobjekte in Unordnung durch einen realen Roboter in der realen Welt schätzt.
Links
- arXiv 1809.10790: https://arxiv.org/abs/1809.10790
- DOI 10.48550/arXiv.1809.10790: https://doi.org/10.48550/arXiv.1809.10790
- PDF: http://proceedings.mlr.press/v87/tremblay18a/tremblay18a.pdf
- Code: https://github.com/NVlabs/Deep_Object_Pose
- Projektseite: https://research.nvidia.com/publication/2018-09_Deep-Object-Pose