Wir machen weiter hier mit dem Kapitel Active Perception.
Wir haben uns das letzte Mal mit dem Thema Active Vision beschäftigt.
Das heißt, aktive Wahrnehmung bedeutet, dass man nicht nur die reine
passive Sensorik, statische Sensorik verwendet, sondern die Verbindung
zwischen Perzeption und Aktion ausnutzt, um mehr Informationen über
Objekte, über eine Szene zu extrahieren.
Und bei Active Vision hatten wir ein Beispiel gesehen, wo ein Roboter
durch seine eigenen Aktionen, also diese Push-Aktionen in einer
unstrukturierten Clutter-Szene, seine Aktionen ausnutzt, um Objekte zu
segmentieren.
Das heißt, er generiert Initiale Hypothesen über Objektkandidaten und
führt diese Push-Aktionen und evaluiert danach, was hat sich so bewegt
wie ein rigides Objekt.
Das haben wir natürlich für rigide Objekte in der Vorlesung gesehen.
Was hat sich wie ein rigides Objekt bewegt?
Das heißt, welche Merkmale hatten die gleichen Transformationen vor
der Push-Aktion und nach der Push-Aktion?
Das sind irgendwie gute Hypothesen oder Kandidaten, um auf der
Oberfläche eines Objekts zu sein.
Und wenn wir das ein, zwei Mal wiederholen, dann könnten wir das
Objekt sehr gut segmentieren und zum Beispiel es greifen, in die Hand
nehmen und dann die Repräsentation von dem Objekt vervollständigen.
Das heißt, Active Wahrnehmung bedeutet, es gibt immer eine Aktion im
Spiel.
Und visuell haben wir Push-Aktionen verwendet, um Objekte zu
segmentieren.
Eigentlich zunächst mal, um Objekte zu entdecken und dann zu
segmentieren und visuelle Repräsentation zu lernen.
Haptisches Ertasten ist auch eine Art der aktiven Wahrnehmung.
Haptisches Ertasten kann ohne Aktionen nicht erfolgen.
Das heißt, es ist fundamental aktiv.
Du kannst kein Objekt ertasten, ohne dass du deine Hand oder dein
Körper oder ein Teil des Körpers gegen dieses Objekt oder die Umgebung
bewegst.
Aktive haptische Wahrnehmung ist nichts anderes als die haptische
Exploration von Objekten.
Und da haben wir hier ein Beispiel, hatte ich glaube ich an der einen
oder anderen Stelle, wo der Roboter nichts weiß über dieses Objekt und
anhand von seinen Aktionen, man sieht, er muss seinen Finger, seinen
Arm bewegen, damit er Kontakt mit dem Objekt herstellt und etwas über
dieses Objekt lernt.
Also in dem Beispiel hier etwas über die Weichheit von einem Schwamm.
So und jetzt stellen wir uns mal vor, bzw.
nach allem was wir zum Thema Greifen in der Vorlesung hier behandelt
oder besprochen haben, können wir uns ganz gut vorstellen, dass diese
haptische Exploration essentiell oder kann essentiell sein für das
Greifen von unbekannten Objekten.
Unbekannte Objekte heißt, ich habe keine Modelle der Objekte.
Unbekannte Objekte heißt, wenn ich keine Modelle der Objekte habe,
kann ich keinen Greifplaner einsetzen, um Greifkandidaten zu
generieren.
Und da müssen wir natürlich hier diese Information irgendwie gewinnen
aus Exploration, visueller Exploration, aber auch beispielsweise hier
haptische Exploration.
Und man kann schon in diesem Video sehen, man weiß nicht nur, dass
dort ein Objekt ist mit der haptischen Exploration, wenn wir Menschen
etwas berühren, wir wissen nicht nur, dass an der Stelle ein Kontakt
gibt mit der Umgebung, sondern wir wissen eigentlich mehr.
Wir wissen etwas über die Beschaffenheit der Objekte.
Das heißt, automatisch erweitern wir oder erhöhen wir den
Informationsgehalt, den wir überhaupt haben, über die Aufgabe, über
das Objekt.
Dass dort ein Objekt oder ein Punkt gibt und dass dieser Punkt oder
dieser Bereich weich oder hart ist.
Und da wollen wir ein bisschen heute in dieser Vorlesung sehen, welche
Methoden setzt man hier ein, um Objekte haptisch zu explorieren.
Warum muss ich das machen?
Das liegt auf der Hand.
Stellen wir uns mal vor, jetzt natürlich mit Vision, mit
Bildverarbeitung kann man auch Ausdehnung von Objekten, Form von
Objekten vielleicht segmentieren, extrahieren aus visueller
Information, aber es gibt natürlich viele Objekte, die schwierig sind
für die visuelle Wahrnehmung.
Also beispielsweise hier diese Gläser.
Wenn wir jetzt nur mit Stereo-Vision arbeiten, dann wird es schwierig
sein, hier etwas über die Form von einem Objekt zu bekommen.
Es gibt transparente, reflektierende Objekte, die für die
Bildverarbeitung natürlich sehr schwierig sind.
Und auch wenn wir den besten, den ultimativen visuellen Sensor hätten,
der uns die Informationen liefert über Glas und transparente Objekte
und reflektierende Objekte, wir wissen nichts über die Rückseite von
einem Objekt.
Und diese Rückseite von einem Objekt ist natürlich sehr wichtig für
die Generierung von Griffen.
Und wir wollen ja das Wissen über die Objekte erweitern.
Also Active Touch Information von Haptic Exploration ermöglicht es uns
Menschen zum Beispiel Eigenschaften von Objekten, beispielsweise Form.
Und Haptik ist nicht nur Form, sondern Haptik ist auch Temperatur und
Druck und Schmerz und vieles.
Aber diese Haptik Exploration erlaubt uns mehr Informationen über
Objekte zu gewinnen, die man nutzen kann, um Objekte zu
klassifizieren, weich, hart, um Objekte zu erkennen.
Man kann tatsächlich basierend auf der Form, basierend auf haptischer
Information, und haptisch ist die Kombination von Kontakt pro
Perzeptiv für Informationen, also Fingerstellungen, Kräfte und so,
kann man erkennen, welche Objekte man in der Hand hat, nur basierend
auf dieser haptischen Information.
Das könnt ihr mal probieren heute, einfach die Augen zu machen und
versuchen festzustellen, welche Objekte ihr in der Hand habt.
Aber auch für die Manipulation, also das Greifen und die Manipulation
von Objekten.
Und das kennen wir eigentlich, die Sinne beim Menschen, Vision, das
Hören, Schmecken und Riechen und Touch bzw.
alles was mit Haptik zu tun hat, da ist das somatosensorische System
beim Menschen dafür verantwortlich.
Und was ist Haptik?
Haptik ist der Sinn vom Berühren und Haptik ist auch jede Form von
nichtverballer Kommunikation, die Kontakt umfasst.
Also es ist nicht nur, um Objekte zu explorieren oder mehr
Informationen über Objekte zu bekommen, sondern es ist eine Art der
nichtverballen Kommunikation.
Also man kann kommunizieren über Augen, über Gesichtsausdrücke, aber
man kann auch kommunizieren, indem man jemanden zum Beispiel an die
Schulter antippt oder anfasst oder ähnliches.
Und das sieht man hier, wenn man die nichtverballen Kommunikationen
bzw.
Körpersprache hier mal betrachtet, dann ist natürlich das
Handyschütteln beispielsweise auch eine Haptik, also da ist viel
Haptik dabei und ich glaube man kommuniziert viel und man kann viel an
Informationen transferieren über Haptik, über Kontakt.
Also gerade bei Handyschütteln, ihr könnt ja eigentlich unglaublich
viel durch die Art und Weise, wie ihr jemandem die Hand schüttelt, wie
stark, wie soft, auf welche Art und Weise könnt ihr unglaublich viele
Informationen kommunizieren.
So, das sind nochmal ein paar Definitionen bzw.
Aussagen, die Fähigkeit die Welt wahrzunehmen mithilfe von dem eigenen
Körper und es ist vielleicht nicht so vielen von euch bekannt, was es
bedeutet, wenn man diese haptische Wahrnehmung als Mensch verliert.
Ihr könnt euch vorstellen, wenn ihr Fahrrad fährt im Winter ohne
Handschuhe und dann frieren fast die Finger und dann wollt ihr
vielleicht einen Knopf von eurem Hemd aufmachen oder zumachen im
Winter, wenn es kalt ist.
Da könnt ihr euch vorstellen, kann jeder von euch vielleicht
vorstellen, wie schwierig das ist.
Das heißt, wenn man diesen Sinn vom Tasten verliert, dann sind das
katastrophale Folgen, was Handhabung bzw.
Manipulation von Objekten.
Wie ich das bereits erwähnt habe, das haptische somatosensorische
System beim Menschen besteht aus zwei Teilen.
Ein Teilsystem, das für die Überflächensensitivität zuständig ist.
Das ist alles, was man taktil nennt.
Das heißt Temperatur, Druck, Vibration, Rutschen, aber auch Schmerz.
Und diese Wahrnehmung bzw.
Sensation von dieser taktilen Information erfolgt natürlich durch
Stimulis oder verursachen Stimulis auf der menschlichen Haut.
Das zweite Teilsystem ist die Proprozeption.
Das heißt, es ist das Teilsystem, das für die Tiefensensitivität
verantwortlich ist.
Das ist das System, das kräftig um Momente in euren Gelenken misst.
Also ihr merkt immer Kraft in euren Armen oder Ellenbogen, wenn ihr
etwas manipuliert.
Aber ihr merkt, wenn es euch an einer bestimmten Stelle wehtut, wenn
jemand drückt auf den Bauch, auf den Leber, auf die Brust und
ähnliches.
Das heißt, das sind Sensoren, die in unserem Körper integriert sind,
mit denen wir kräftige Verspannungen, Drehmomente in allen Organen,
aber vor allem auch in den Gelenken des menschlichen Körpers
wahrnehmen können.
Das heißt, Haptik ist Tektil plus Proprozeption.
Also wenn man über Haptik redet, dann ist es die Oberflächen und die
Tiefensensitivität.
Und was kann man mit Haptik machen?
Das ist ein sehr interessantes Papier von den 80er Jahren von
Ledermann aus der Psychologie.
Das sind Psychologen, die darüber forschen, welche Informationen über
Objekte kann man über Haptik gewinnen.
Und da kann man sehen hier, also Haptik über beide, dann die Tiefen-
und die Oberflächensensitivität.
Und welche Aktionen muss man auf dem Objekt ausführen, damit man
welche Eigenschaften oder Informationen bekommt.
Das heißt, durch laterale Bewegungen auf der Oberfläche eines Objekts,
kriegen wir Informationen über die Beschaffenheit, die Textur von dem
Objekt.
Wenn wir natürlich drauf drücken, wie angedeutet ist, dann kriegen wir
Informationen über Softness oder Hardness, also wie hart, wie soft das
Objekt ist.
Natürlich, wenn wir unsere Hand statisch hier auf einer Oberfläche
tun, dann können wir die Temperatur messen.
Also deshalb, Temperatur war ja auch ein Teil hier von Tektil, deshalb
können wir die Temperatur hier messen.
Wir können natürlich über die Tiefensensitivität Gewichte von Objekten
ahnen oder schätzen.
Das sind letztendlich Kräfte, die in den Muskeln und Gelenken
auftreten durch so ein Gewicht und dadurch können wir eine Schätzung
von dem Gewicht machen.
Auch durch die Tiefensensitivität können wir die Form von einem Objekt
explorieren, weil die Form des Objekts korreliert mit dem Gelenkwinkel
der Finger der Hand in dem Beispiel.
Oder mithilfe von propriozeptiver, aber auch tektiler Informationen
können wir zum Beispiel Linien bzw.
Konturen von Objekten explorieren.
Das sind die sogenannten Explorationsprozeduren von Ledermann, die
sechs bekannten Explorationsprozeduren von Ledermann, die noch einmal
zeigen, was man alles mit haptischer Information gewinnen kann.
Was sind die wichtigen Fragen, wenn man jetzt über Haptic Perception
redet?
Die wichtigen Fragen sind natürlich auf der einen Seite, auf der
menschlichen Seite mehr darüber zu verstehen, wie wirklich diese
haptische Information, also Tiefen- und Überflächensensitivität im
menschlichen Gehirn verarbeitet wird, welche Regionen davor
verantwortlich sind, also die Neurowissenschaften, die Psychologen und
Ähnliches.
Aber für uns als Informatiker und Ingenieurwissenschaftler natürlich
haptische Sensortechnologien.
Haptische Sensortechnologien, wir haben in der Vorlesung Robotik 3
eine ganze Menge über haptische Sensorik, also welche Messprinzipien
und welche Konfigurationen kann man hier wählen, um haptische Sensoren
zu entwickeln.
Und für uns in dieser Vorlesung natürlich zentral ist bei uns Greifen.
Und um greifen zu können, brauchen wir mehr Informationen über
Objekte.
Vor allem die Form haben wir gesehen in der Vorlesung Greifen, dass
die Form ein super Deskriptor oder super Deskriptor ist, mit dem man
das Greifen bootstrappen kann.
Und das Besondere bei Haptik ist, dass man nicht so wie bei Vision,
ich nehme nur eine Aufnahme von einer Szene und kriege hunderte,
tausende von Punkten, die vielleicht die Überfläche von einem Objekt
beschreiben.
Sondern ihr könnt euch vorstellen, wenn ich Haptik ertaste, dann muss
ich mal zu dem Punkt gehen, mal mich hier bewegen, vielleicht zur
anderen Seite springen.
Das heißt, ich kriege ganz wenige Punkte im Vergleich zu Vision.
Also wir kriegen sparse Data, also keine dichten Punkte, aus denen man
zum Beispiel eine Form von einem Objekt lernen oder schätzen soll,
sondern ganz wenige dünne Punkte, die irgendwie verteilt sind und aus
denen wir auch die Form schätzen sollen.
Das heißt, die Herausforderung ist, wie können wir eine robuste oder
eine zuverlässige Schätzung der Überfläche von Objekten mithilfe von
ganz wenigen Punkten schaffen.
Das heißt, wir reden nicht über riesige, sondern wir müssen die
Algorithmen sein, die uns erlauben, die komplette Form aus ein paar
Punkten, aus 10, 20 Punkten, ohne dass wir jetzt tausende oder
Millionen von Punkten wie in der Bildverarbeitung haben.
Deshalb ist es ganz wichtig hier, also Sparse Data und das Zweite ist
natürlich für uns, wie ich bereits gesagt habe, das Greifen von
unbekannten Objekten.
Und da will ich hier ein paar Arbeiten zu dem Thema.
Eine Arbeit, die so ungefähr zehn Jahre alt ist, aber weil sie so
schön ist und noch aktuell ist, will ich das hier präsentieren.
Und eine, die kommt aus 2018, also zwei Papers, die wir heute
behandeln.
Das erste von Birbaum, der hier promoviert hat in meiner Gruppe.
Und das heißt Grasp Affordances from Multifingered Tactile Exploration
using Dynamic Potential Fields.
Also Grasp Affordances, das heißt, welche Affordances sind die
Interaktionsmöglichkeiten eines Agenten mit einem Objekt.
Das heißt, ich kann das hier so greifen, ich kann das hier so greifen.
Und in dem Paper hier oder bei dieser Arbeit ging es darum, welche
Interaktionsmöglichkeiten, also Griffy hauptsächlich, können aus der
taktilen Exploration gewonnen werden, und zwar taktile Exploration
mithilfe von Potentialfeldern.
So, das heißt eigentlich Potentialfelder, wer kennt Potentialfelder?
Hand hoch, damit ich alle Hände sehe.
Okay, die, die das nicht kennen, die sollen die Folien von Robotik 1
lesen.
So, und die Idee ist, wir haben hier ein transparentes Objekt, wir
explorieren das Objekt hier, kriegen wir nur ein paar Punkte,
eigentlich nicht alle diese Punkte hier, die rot markiert sind.
Das ist der Bereich, der vordefinierte Bereich, in dem wir
explorieren, damit wir nicht überall explorieren.
Sondern wir kriegen ganz, ganz wenige Punkte, sieht man hier blau,
werden wir noch genauer sehen, und aus diesen ganz wenigen Punkten
sollen wir mal einen Griff bestimmen, der uns vielleicht erlaubt, das
Objekt da hochzuheben.
So, und für diese Exploration bedeutet eigentlich die Strategie, die
wir einsetzen, damit wir die Hand des Roboters entlang der Überfläche
des zu explorierenden Objekts oder Regions führen können, damit wir
diese haptischen Punkte bekommen.
Und für diese Exploration werden Potentialfeldmethoden eingesetzt, und
diese Potentialfeldmethoden, wie wir wissen, wurden zunächst einmal im
Bereich der Navigation oder der Bewegungsplanung eingeführt.
Wir wissen, wir haben ein Ziel, und dieses Ziel hat anziehende
Potenziale oder einen anziehenden Potenzial, und wir haben
Hindernisse, und diese Hindernisse haben abstoßende Potenziale.
Und durch die Superposition, also die Superposition von den
abstoßenden und anziehenden Potenzialen, können wir hier so einen Pfad
für einen Roboter von einer Startkonfiguration zu einer
Endkonfiguration erzeugen.
Und wir wissen ja, dass diese Potentialfelder, so schön sie sind, ihre
Probleme haben.
Das heißt, sie können zu einem lokalen Minimum wandern, aus dem man
ohne Weiteres nicht herauskommen kann.
Das heißt, dieser Roboter hier, das ist ein mobiler Roboter, der hier
fährt, wenn er einmal hier landet, dann wird er da stecken bleiben und
wird hier das Ziel nicht erreichen.
Und jetzt stellt sich die Frage, wie kann man das auf die Exploration
von Objekten einsetzen, diese Methode.
Ziel wollen wir erreichen, und das sind Hindernisse und anstoßende und
abstoßende Potenziale.
Naja, wenn wir etwas explorieren, dann ist es wahrscheinlich klar, wir
können nicht die ganze Welt explorieren hier, sondern wir nehmen an,
wir haben eine Vision, die uns sagt, dort in dieser Region gibt es
irgendetwas, das soll exploriert werden.
Und diese Regionen, die von Interesse sind, die sind eigentlich unser
Ziel.
Das heißt, diese Regionen, wo wir interessiert sind, herauszufinden,
was dort ist, das sind unsere Ziele und die sollen eigentlich die Hand
anziehen.
Die sollen die Hand anziehen, und zwar soweit, bis wir einen Kontakt
oder Kollision zwischen der Hand und einem Objekt in dieser Region
haben.
Wenn wir diese Kollision haben, dann müssen wir natürlich etwas
machen, dann bleiben wir hier stecken, wenn wir nichts machen.
Das heißt, wir müssen eigentlich von Punkten im Raum, die wir kennen
oder die wir exploriert haben, abstoßende Potenziale definieren, die
die Hand wieder nach hinten ziehen, damit sie weitermacht.
Und das ist die Idee, das ist die Übertragung von diesem Prinzip auf
die haptische Exploration.
Also wir haben zwei Potenziale, anstoßende und abstoßende Potenziale.
Die unbekannten Regionen, die bekommen attraktive Potenziale, also 4a.
Und die bekannten Regionen, weil es kann sein, dass wir wissen, okay,
das ist hier die Überfläche, das ist der Tisch hier, da muss ich ja am
Tisch keine Punkte explorieren, sondern ich muss vom Tisch weg kommen,
damit ich hier diesen Laptop mal exploriere.
Die bekannten Regionen haben also abstoßende Potenziale.
Und immer wieder, wenn die Hand irgendetwas berührt in dieser Region,
müssen wir natürlich alle abstoßende und anziehende Potenziale
anpassen, adaptieren, modifizieren.
Das heißt, wir haben eine dynamische Adaption der
Potenzialfeldkonfigurationen, basierend auf der haptischen oder
tektilen Antwort, die wir bekommen.
Das heißt, eigentlich für die Exploration bekommen wir ein
Potenzialfeld, 4 von x, der setzt sich zusammen aus abstoßenden und
anziehenden Potenzialen zu einem Punkt x im Raum.
Und zwar, das sind nicht nur ein einzelnes Potenzial, wie beim
Roboter, der Roboter fährt und hat ein einzelnes Potenzial zum Ziel,
sondern das sind mehrere, und zwar von jedem Punkt auf der Hand, wo
wir Sensorik haben, die uns Informationen über Kontakt liefert.
Das heißt, wenn die Hand komplett mit Haut, mit tektiler Sensorik
ausgestattet ist, dann müssen wir natürlich irgendwie diskretisieren
und diese Potenziale in diskretisierter Form darstellen.
Aber wenn man nur an den Fingerspitzen Kontaktsensoren hat oder an der
Handfläche, dann muss man natürlich von den Fingerspitzen zum Objekt
diese anstoßenden Potenziale erzeugen, beziehungsweise auch die
abstoßenden.
Und diese nennen wir gleich Robot Control Points.
Und wie ich bereits erwähnt habe, diese erste Initialisierung vom
Feld, dieses Potenzialfeld hier, die bekommen wir zum Beispiel durch
eine Schätzung über die Lage des Objekts oder den Bereich der Region,
wo das Objekt ist, aus visueller Information.
Wie ich bereits erwähnt habe, diese Felder hier und deshalb die
Indizes I und J hier für anstoßende und anziehende Potenziale, die
sind nicht nur für einen Punkt der Hand definiert, sondern für alle
Robot Control Punkte hier.
Und zwar, das sind die Fingerspitzen hier, im Falle der Hand von Arma
3, wo wir Haut haben.
Und das ist natürlich die Tool Center Point, weil wir wollen ja auch
irgendwann mal das Objekt greifen.
Deshalb sieht man hier, hier haben wir Sensoren und Robot Control
Points, hier haben wir den Tool Center Point.
Also insgesamt haben wir hier fünf Robot Control Points, von denen wir
diese anstoßenden und abstoßenden Potenziale definieren können.
Nur ein Detail hier, es werden nicht die Potenzialfelder, die wir bei
der Navigation oder Kollisionsvermeidung in der Vorlesung
kennengelernt haben, sondern eine spezielle Variante, die sogenannte
harmonische Potenzialfunktionen verwendet, mit denen man die Anzahl
der lokalen Minima minimieren kann.
Und das sind so Kontrolldetails, die man braucht, wie man die Hand zum
Objekt führt oder den Arm zum Objekt führt, brauchen uns jetzt an der
Stelle nicht zu interessieren.
Aber wenn wir jetzt mithilfe von diesen definierten Anstoßen und
Abstoßen Potenziale uns irgendwie bewegen und dann kommen wir so an
die Oberfläche von dem Objekt, dann haben wir einen Deadlock hier.
Da können wir jetzt gar nichts mehr machen, weil wir entweder
Gelenkwinkeleinschränkungen haben oder weil wir so in einem lokalen
Minima stecken.
Deshalb brauchen wir eine Recovery-Strategie, also eine
Rekonfigurationsstrategie, um diese strukturellen lokalen Minima, die
aufgrund von den Verfahren auftreten können, immer aufzulösen.
Wie funktioniert das Ganze?
Ziemlich einfach.
Da sieht man hier ein Objekt, das ist ein Telefonhörer.
So sah ein Telefonhörer aus.
Viele von euch kennen das vielleicht nicht mehr.
Das ist das blaue Objekt und das ist hier die Fünffingerhand von AMA3.
Die exploriert dieses Objekt und da sieht man hier die Punkte, die
entstehen und immer die Anstoßen und Abstoßen Potenziale.
Jetzt hier für eine Kugel und die Linien hier in diesem Diagramm, die
sagen uns, wenn wir die Hand komplett umkonfigurieren müssen und neu
anfangen, weil wir in diesem strukturellen lokalen Minima gelandet
sind.
Natürlich, wenn man hier eine Walle exploriert, dann bekommt man hier,
also jetzt steckt zum Beispiel die Hand fest, deshalb muss man hier
umkonfigurieren und das ist der Stanford HSI hier, der wird auch
exploriert, wie man sieht mit der Hand.
Und diese Superposition von, wir wissen ja, die Kraft, die wir bei
Potenzialfeldern generieren, ist ein Gradient von dem Potenzial, also
ein Nebler-Operator von dem Potenzial und diese Kräfte werden dann
interpretiert als Geschwindigkeiten für die Robot-Control-Points, also
für die Fingerspitzen, sagen wir mal so, mit denen man entlang des
Objekts, entlang der Oberfläche des Objekts sich bewegen kann.
Und wenn man das hat, dann bekommt man eigentlich am Ende, wie auf der
Folie hier stand, orientierte 3D-Punktmengen, die sehr irregulär sind
und natürlich sparse, also dünn besetzt im Vergleich zum Beispiel zu
Computer Vision oder zu dem, was man aus der Bildverarbeitung bekommen
würde.
Und wenn man das hat, man bekommt also sowas hier, die 3D-Punktwolken,
die Koordinaten kriegt man natürlich über die Kinematik der Hand, wenn
ich weiß, hier habe ich Kontakt und ich habe meine Kinematik, dann
weiß ich, wo der Punkt im Raum ist, also ich muss alles immer
registrieren in einem globalen Koordinatensystem.
Und die Orientierung an diesen Punkten, die kann man natürlich auf
mehreren Arten und Weisen bekommen, wenn man jetzt hier Punktwolken
aus Bildsensoren hat, dann kann man mehrere Benachbarte nehmen zum
Beispiel und auf der resultierenden Fläche ein Normaler definieren und
diesen Normaler als die Orientierung von dem Punkt annehmen.
Hier haben wir aber sehr dünn besetzt die Punkte, deshalb kann man das
nicht so gut machen, aber man weiß aus der tektilen Sensorik die
Kraft, die auftritt, also das heißt diese Sensoren, die an den
Fingerspitzen, die liefern einen 3D-Kraftvektor, wo die Orientierung
von dem Kraftvektor auch mit dabei ist und diese Orientierung wird
dann als Orientierung von dem Kontaktpunkt hier angenommen.
Wenn wir hier diese 3D-Punktmengen haben, dann müssen wir jetzt in
diesen 3D-Punktmengen versuchen, irgendwelche Hypothesen zu
generieren, wie wir das Objekt greifen.
Und was wir hier in dieser Arbeit gemacht haben, wir versuchen
Flächenpaare zu finden, also Flächenpaare ähnlich zu dieser Arbeit mit
dem Early Cognitive Vision System, was wir in der Vorlesung greifen
und bekannte Objekte kennengelernt haben.
Wir versuchen Selflets, also Flächen, die gegenüberliegen, zum
Beispiel, die groß genug, die nicht so weit weg voneinander sind im
Vergleich zur maximalen Öffnung der Hand, die gegenseitig sichtbar
sind, die groß genug sind, damit man überhaupt die Fingerspitze drauf
tun kann, weil wenn ich kleinere Flächen nehme, dann kann ich
wahrscheinlich dort meine Fingerspitzen tun, aber ist der Griff
wahrscheinlich nicht so stabil.
Und basierend auf diesen Flächen hier oder Flächenpaare, die man
bekommt, kann man diese Flächenpaare filtern, also anhand von dem, was
ich gerade erwähnt habe, parallel, nicht weit weg voneinander,
gegenseitig sichtbar und eine Mindestgröße.
Und bekommt man dann so Hypothesen, also wir nennen sie Greif
-Affordancen, die sagen uns, nimm mal diese Fläche und diese Fläche,
um dieses Objekt zu greifen.
Oder nimm mal die Grüne hier und eine andere Grüne auf der anderen
Seite, die nicht dargestellt ist, um das Objekt zu greifen.
So und das, was ich gerade erwähnt habe, steht auf der Folie hier.
Das heißt, wir generieren für alle Flächenpaare diese Affordancen und
wir bewerten sie.
Also letztendlich sind das irgendwie Griffe und diese Griffe kann man
bewerten, wie gut, wie schlecht sie sind und wir filtern sie hier
mithilfe von einem Qualitätsmaß und S von F1 und F2, das heißt Fläche
1 und Fläche 2.
Und zwar anhand von diesen vier Kriterien, die ich erwähnt habe.
Und diese Funktion hier, also diese Qualitätsmaß hier, nehmen wir an,
dass es das Produkt von vier Funktionen oder Unterfunktionen ist, die
die vier Kriterien hier in dieser Pipeline beschreiben.
Also Parallelität, Mindestfläche dieser Flächen, gegenseitige
Sichtbarkeit und dann die Distanz.
Und wenn man diese Flächen hat, dann kann man mit den
trigonometrischen Beziehungen sogar die Annäherungsrichtung der Hand
auf das Objekt bestimmen.
Wenn ich weiß, das sind die zwei Flächen, die ich greifen will und ich
habe die normalen auf diesen Flächen, dann kann ich natürlich meinen
Annäherungsvektor hier, also diesen N-Vektor hier, bestimmen.
Und das ist dieses A-Vektor, also Approach Direction, Approach Vektor
auf das Objekt.
Wir wissen ja, jeder Griff ist definiert durch das Grasp Starting
Point und Annäherungsvektor und Orientierung der Hand relativ zum
Objekt.
Das heißt, wir können hier den Annäherungsvektor auf diese zwei
Flächen, da sieht man, da kommt man dann von oben und die Hand soll
auch entsprechend orientiert sein, damit man diesen Griff hier
ausführt.
Das ist hier eine Zusammenfassung und Beispiele, die wir gesehen
haben.
Das heißt, auf diese Art und Weise kann man tatsächlich Assoziationen
zwischen Objekten oder Objektkandidaten und Aktionen, also das sind
hier diese Flächenparty, die wir identifiziert haben, und Affordanzen
bzw.
Greifektionen, die notwendig sind, um das Objekt hier zu heben.
Und ich glaube, in dem Video wird man sehen, wie die Bewertung hier
von diesen Flächen aussieht und dass der Arm dann irgendwann mal, wenn
das Video hier sich bewegt, diese Annäherungsrichtung bestimmt und
dann das Objekt, wahrscheinlich muss man dann ab und zu nochmal
nachhaken oder noch einen Explorationsschritt ausführen, aber dann
basierend auf diesen generierten Hypothesen das Objekt greifen und
hochheben.
Okay, das heißt, das ist unser Beispiel, das wir gesehen haben.
Wir initialisieren das Feld hier, das sind all diese Punkte hier, die
wir hier gesehen haben.
Vielleicht habe ich etwas vergessen hier zu sagen, bei dem Beispiel.
Das ist die initiale Region, die wir explorieren und wenn man Punkte
hier exploriert, dann verschwinden diese anderen Punkte, die von der
Initialisierung vom Feld sind, weil wir kennen sie oder wir wissen,
dass dort ein Objekt liegt oder kein Objekt liegt.
Jetzt klar, man kann es auch rein mit Haptik machen, aber es macht
viel mehr Sinn, wenn man die visuelle Information, die man sowieso
hat, über die Vorderseite von dem Objekt nutzt, um die Exploration zu
beschleunigen.
Das heißt, wie können wir Vision und Haptik kombinieren?
Zum Beispiel hier nochmal, visuell wissen wir, wo das Objekt ist und
vielleicht wissen wir sogar die Punkte auf der Vorderseite.
Und da sieht man hier die Hand, ausgestattet mit drei tektilen
Sensoren, wie sie in dieses Feld reingeht und anfängt, die Seiten von
dem Objekt zu explorieren.
Und die Bereiche, in denen man exploriert hat, verschwinden diese
roten Punkte, die initial da waren, um die Region zu definieren.
Oder auf der anderen Seite sieht man hier ein weiteres Beispiel, wo
der Roboter diesen Tourgriff auch exploriert, mit dem Ziel natürlich,
jeden Tourgriff öffnen zu können, ohne dass man eine Greifplanung für
jeden spezifischen Tourgriff macht.
Und Tourgriffe sind eigentlich hervorragend geeignet für haptische
Exploration, weil die sind fest im Raum.
Das heißt, sie bewegen sich nicht.
Wenn wir jetzt hier ein Objekt explorieren, was ich gerade erzählt
habe, wenn wir seine Box hier explorieren wollen und wir brauchen eine
gewisse Kraft, damit wir überhaupt Kontakt spüren, weil die taktile
Sensorik, die man heute in der Robotik hat, die ist noch nicht so
sensitiv, dass man mit der kleinsten Berührung Kraftinformationen
bekommt.
Also wenn wir ein bisschen mehr drauf drücken, dann sieht man, dass
das Objekt sich verschiebt.
Das heißt, wenn ich den ersten Punkt an der Stelle registriere und ich
mache noch einen Griff, dann verschiebt sich das Objekt an die andere
Stelle, dann ist die komplette Registrierung von den Punkten im Eimer
und ich bekomme also keine korrekte Formschätzung von dem Objekt.
Aber Tour-Griffe sind bekannt, die sind fest im Raum, die bewegen sich
nicht, egal wie viel Kraft ich darauf ausübe und deshalb sind sie hier
super geeignet für diese Anwendung.
Hier sieht man noch ein besseres Beispiel.
Das ist der Initiale Bereich, in dem ein Objekt liegen könnte.
Das wird zunächst definiert und dann fängt die Hand an mit diesem
Explorationsprozess.
Die Bereiche, die hier besucht werden, verschwinden, die Punkte.
Und man sieht hier bei diesem sehr einfachen Objekt, dass das Objekt
fixiert am Tisch ist, damit die Registrierung der resultierenden
Exploration...
Also wir haben das geklebt, das Objekt ist geklebt am Tisch hier, der
kann sich nicht bewegen, damit man hier eine korrekte Registrierung
bzw.
Formschätzung von dem Objekt bekommt.
Wir haben noch ein weiteres Experiment, das zeigt, wie man visuelle
und haptische Informationen kombiniert, um mehr über Objekte zu
erfahren.
Und zwar, das sind zwei Beispiele.
Auf der einen Seite ist ein Joghurtbecher, das ist eine Kopie von dem
Deckel des Joghurtbechers und das ist ein modifizierter Joghurtbecher.
Also von oben sieht es gleich aus, aber natürlich hat es eine andere
Ausdehnung als ein Joghurtbecher.
Und jetzt soll der Roboter, das ist der Kopf von dem Roboter hier,
natürlich basierend auf visuellen Informationen im Bild sind alle
Objekte gleich.
Das sind alle Joghurtbecher.
Und nur durch die haptische Information, das ist die Hand angebracht
hier an einem Roboterarm, wird man jetzt hingehen zu diesen drei
Objekten, die man visuell hier detektiert.
Das sieht man vielleicht auf dem Monitor hier und merkt man auch, das
ist eigentlich zu tief hier, deshalb ist es nicht das Objekt, das ich
gerade suche.
Also es geht darum hier den richtigen Joghurtbecher zu identifizieren.
Hier, das ist die richtige Höhe vielleicht von dem Joghurtbecher und
das ist wirklich der Joghurtbecher.
Also es geht um Objekterkennung basierend auf visueller und haptischer
Informationen.
Und wir werden gleich sehen, dieser modifizierte Joghurtbecher, der
hat zwar die gleiche Höhe und sieht gleich aus von oben aus visueller
Sicht.
Und jetzt wenn wir es anfassen, dann merken wir, dass es ein bisschen
größer ist oder nicht die gleiche Form wie das andere Objekt und
deshalb wird das Objekt hier nicht gegriffen.
So, das ist was ich meinte mit der Erkennung von Objekten basierend
auf haptischer Informationen.
So, natürlich zurück zu den Ledermann-Explorationsstrategien, dass man
basierend auf Haptik auch etwas über Softness und Hardness, Weichheit
oder Härte von einem Objekt detektieren kann.
Das ist eine vorgegebene Greifposition hier, wo Alex hier dem Roboter
Objekte in die Hand gibt, zum Beispiel hier einen weichen Ball.
Kontaktinformation wird detektiert über Haptik, dann erhöht man den
Druck in den Aktuatoren, das heißt man quetscht so ein bisschen,
versucht ein bisschen den Ball zu quetschen.
Und wenn sich die Distanz zwischen den Fingerspitzen verändert hat,
dann ist es ein deformierbares Objekt.
Die Distanz können wir natürlich über die Kinematik der Hand messen,
also über die propriozeptive Information.
Und auf die Art und Weise kann man, wie gesagt, weiche, deformierbare,
von nicht deformierbaren Objekten detektieren oder unterscheiden.
So, nun habt ihr das letzte Mal die Arbeit von hauptsächlich David
Schiebner mit den Push-Aktionen, um Objekte visuell zu segmentieren.
Und da sehen wir hier, wie das Ganze jetzt zusammen spielt, und zwar
stoppe ich gerne hier.
Das heißt, das kennen wir aus der letzten Vorlesung, wir generieren
initiale Hypothesen, dann führen wir eine Push-Aktion, validieren wir
diese Hypothesen.
Natürlich können wir die Position schätzen, ist das Objekt greifbar.
Wenn es greifbar ist, dann versuchen wir unser Glück, ansonsten müssen
wir nochmal pushen und eine bessere Segmentierung von dem Objekt
bekommen.
Das ist der Vision Part, der Vision Teil.
Und hier beim Greifen natürlich braucht man vieles, also natürlich die
Annäherungsrichtung, wie man an das Objekt drankommt, wie man die Hand
schließt und ähnliches.
Und da sieht man hier eine Implementierung, wo die zwei Komponenten
hier eine Rolle spielen.
Das ist, was wir letzte Woche gesehen haben.
Wir wollen Zwieback hier greifen und das sind die initialen
Hypothesen.
Jetzt haben wir eine Push-Aktion, das haben nur diese Punkte hier
betrachten wir.
Nochmal eine Push-Aktion und da sieht man hier, dass das Objekt
eigentlich sehr gut segmentiert ist.
Noch eine dritte Push-Aktion, um das Objekt greifbar für den anderen
Arm zu machen, nach wie vor segmentierbar hier, wie man sieht vom
Rest.
Und jetzt sieht man hier, dass die haptische Information hier für
diese kleine Korrektur hier von dem Griff verantwortlich ist, um das
Objekt hier hochzuheben.
Die Leute, die in Robotik 3 waren letzte Woche, das ist jetzt ein
Beispiel, wo wir ein unbekanntes Objekt auf irgendeine Art und Weise
in die Hand genommen haben.
Aber wir kennen nur eine Ansicht von dem Objekt.
Und jetzt kann der Roboter anfangen, dieses Objekt in die Hand zu
rotieren und komplette Repräsentationen davon zu lernen.
So, aktuelles Rearbeiten aus diesem Jahr ist ein weiteres Verfahren
zur haptischen Exploration bzw.
zur Kombination von Vision und Haptik.
Natürlich für das Greifen von unbekannten Objekten.
Und die Frage, die sich ergibt, wenn wir heute so 3D-Sensoren, RGBD
-Kameras usw.
kriegen, so viele Punkte über die Objekte.
Und wir haben Methoden zum Beispiel zur Shape Completion von Objekten
kennengelernt, wo wir irgendwelche Symmetrieachsen und Supportflächen
von den Objekten bestimmen können und Punkte spiegeln, damit wir eine
gute Repräsentation von dem Objekt bekommen und eine gute Schätzung
von der Form oder der Überfläche, wo wir dann irgendeinen Greifplaner
drauf einsetzen und Griffe generieren.
Aber der Punkt ist, geht es nicht einfacher mit der haptischen
Exploration.
Also wenn wir jetzt hier diese Punkte von diesem Objekt hier haben,
sieht man die Punkte hier visualisiert.
Ich glaube jetzt der Roboter ist dabei, das Ganze zu greifen.
Das werden wir gleich noch genauer sehen.
Die Frage ist, wie viele eigentlich weitere Punkte brauche ich, um
eine bestimmte Erfolgsrate beim Liften, beim Hochheben oder Greifen
des Objekts zu erreichen.
Also damit man kein Shape Completion macht und Symmetrieachsen und
Supportflächen, das sind alle tolle Methoden, die kann man immer
wieder machen.
Aber wie viele weitere Punkte eigentlich sind hilfreich, um die
Erfolgsrate beim Greifen zu erhöhen.
Und das wollen wir ein bisschen gucken hier.
Also da sieht man hier, der Roboter, der eigentlich einen weiteren
Punkt identifiziert auf dem Objekt hier.
Also man hat hier die Punktwolke visuell und dann identifiziert er
einen weiteren Punkt.
Und dieser weitere Punkt, wie man hier gleich sehen wird, ist
unglaublich wichtig für die Generierung von Greifhypothesen.
Und kann ich vielleicht vorwegnehmen, dieser Punkt erhöht die
Erfolgswahrscheinlichkeit beim Greifen.
Dieser zusätzliche Punkt, den man durch Haptik zu den 10.000, die man
visuell hat, erhöht die Erfolgsrate beim Greifen vom Objekt um 5-10%.
Also sagen wir mal von 85% Wahrscheinlichkeit für Erfolgsrate zu 95%.
Nur ein Punkt.
Und das wollen wir ein bisschen genauer angucken.
Das heißt,
wie können wir die Informationsgewinn durch haptische Exploration über
Objekte erhöhen.
Hier ein paar Anforderungen, die man hat.
Wir müssen natürlich die Objektüberfläche schätzen auf eine sehr
dateneffiziente Art und Weise.
Also mit wenigen Daten, also mit sparsen Daten.
Das heißt, wir brauchen dateneffiziente Modelle für die
Überflächenschätzung, basierend auf den Punkten, die wir haben.
Zum zweiten, wir brauchen eigentlich einen Plan, wie wir diese
Explorationsektionen auch effizient durchführen können.
Und zwar nicht wie bei den Potentialfeldern, einfach nicht random.
Aber es hat eigentlich schon eine Prozedur, weil wir haben ja
Potentialfelder und die führen die Hand entlang der Überfläche des
Objekts.
Aber kann man das vielleicht effizienter machen?
Also können wir den Informationsgewinn maximieren, aber mit einem Auge
auf die Kosten, ohne dass wir uns zu viel bewegen oder explorieren
müssen?
Und zum zweiten, wie können wir pro Kontakt, also pro Berührung des
Objekts, so viel Information wie möglich erhalten?
Also nicht nur Kontaktpunkt, vielleicht auch die Orientierung und
Druck oder ähnliches.
Das heißt, wir müssen den Informationsgewinn pro Kontakt, pro Kosten
maximieren.
Und wir brauchen effiziente Modelle, um Überflächenschätzung von
Objekten zu bekommen.
Und da fangen wir mit dem ersten an.
Und zwar, wir haben nur ein paar Punkte hier von einem Objekt und wir
wollen eigentlich jetzt auf eine effiziente Art und Weise bestimmen,
was ist der next best touch.
Was ist der nächste beste Punkt, den ich berühren soll, damit ich den
Informationsgewinn maximiere über das Objekt.
So, deshalb next best touch for active perception.
Vielleicht kennen einige von euch das Problem next best view aus der
computer vision.
Also, was ist die nächste beste Blickrichtung, die mir mehr
Informationen über die Szene garantiert.
Was ist der nächste beste Punkt, den ich berühren soll, um die
Information über das Objekt zu maximieren.
In der Literatur werden Gauss-Prozess-Varianz-basierte Methoden
eingesetzt.
Natürlich versuchen alle die Informationen zu maximieren, aber diese
Methoden ignorieren die Kosten für den Pfad, den man zurücklegen muss
bei der Exploration.
Und da sieht man hier ein Beispiel, wenn man hier ist und will etwas
explorieren, dass der nächste Punkt, der exploriert werden soll, auf
der anderen Seite vom Objekt.
Das heißt, wenn ich nicht in der Nähe bleibe von dem Punkt, dann muss
man sich vorstellen, dass die Hand des Roboters, die eigentlich von
hier bis zu diesem nächsten Punkt auf der Unterseite gehen soll.
Und die Frage ist, ob das notwendig ist oder ob es nicht möglich ist,
diese Kosten, also Pfadkosten für die Exploration zu minimieren, zu
reduzieren, bei gleichzeitiger Maximierung des Informationsgewinns
über das Objekt.
Was wir entwickelt haben, wir haben eine Methode hier entwickelt,
2018.
Und das ist ein Papier, das für die Prüfung relevant ist, markiert
rot, nochmal hier die Betonung.
Wir führen eine Funktion, und zwar eine Information-Gain-Estimation
-Funktion.
Und mithilfe von dieser Funktion können wir auf der einen Seite die
Unsicherheit über Regionen, Bereiche, Punkte in der Szene minimieren,
die Pfadkosten minimieren und wir maximieren die Lokalität.
Das heißt, wir tendieren dazu, oder die Idee ist, wir können
eigentlich lokal bleiben.
Natürlich, wenn wir lokal bleiben und sagen, ja Bereiche, die sehr
weit weg sind, die interessieren uns nicht, dann können wir natürlich
solche langen Pferde hier, ich weiß nicht, ob ihr das verstanden habt,
dass diese Linie hier von oben hier bis nach unten geht.
Aber wenn wir lokal bleiben, dass wir sagen, von diesem Punkt hier
gehen wir maximal in einen bestimmten Bereich und explorieren wir,
dann haben wir natürlich weniger Zeit, brauchen wir weniger Zeit und
müssen wir weniger Strecke zurücknehmen.
So, das klingt alles sehr gut, aber wie macht man das eigentlich?
Also, in anderen Worten, wie formalisiert man diese Kriterien?
Und das ist nicht so trivial.
Da führt man wiederum so vier Funktionen, wie bei den Grasp
-Erfordernissen mit den Flächen.
Da haben wir vier Funktionen, die wir miteinander multipliziert haben,
damit wir die Greifhypothesen filtern und die beste Hypothese nehmen.
Und zwar, wir sagen, okay, wir haben die aktuelle Position, wo wir
sind und natürlich die normale, das R und Rn.
Also wir wissen, wo wir sind, gerade mit der Hand und wie der
Normalvektor.
Man sieht hier, das sind die Normalvektoren hier an diesen Punkten.
Dann, das ist ein potenzieller Punkt, wo wir hinwollen.
X, ja, also das ist unser Query und mit dem normalen Xn.
Und C sind alle Punkte, die wir bereits kennen.
Das heißt, wenn wir jetzt eine RGB-D-Kamera nehmen, dann kriegen wir
1000 Punkte, nehmen wir mal an.
Das sind unsere Cs.
Oder, wenn jetzt ein Punkt durch haptische Exploration dazukommt, dann
sind das 1100 usw.
Das sind unsere Cs.
Und so ein Paskelierungsvektor, den braucht man immer, aber jetzt
brauchen wir die hier im Detail nicht zu beschreiben.
Das heißt, wir haben ein C1, das den Informationsgewinn maximiert und
somit die Unsicherheit reduziert.
Und man sieht hier, das ist das Minimum über alle bekannten Punkte,
die wir kennen.
Über alle bekannten Punkte, die wir haben und kennen, suchen wir das
Minimum von diesem Ausdruck.
1 minus Exponent, Abstand zwischen dem potenziellen Next-Best-Target
minus C, also minus die Punkte, die wir erkennen.
Und das Ganze skaliert mit so einem Sigma.
Was bedeutet das?
Es bedeutet eigentlich, dadurch erreichen wir, wenn X gleich C ist,
dann haben wir hier ein 0 und dann haben wir 1 und dann ist es ein 0,
das Ganze.
Das heißt, wenn X ist ein Punkt, was wir schon exploriert haben, dann
ist X identisch mit C und deshalb haben wir hier 0 und e hoch 0 ist 1
und dann insgesamt bekommen wir eine 0.
Das heißt, dadurch erreichen wir, dass wir keine Punkte explorieren
oder nehmen, die wir bereits kennen.
So, der zweite Term, wir sollen lokal bleiben.
Also wir sollen es nicht erlauben, dass wir jetzt durch die Welt
reisen, von Japan nach Amerika und dann von Amerika nach Indien und so
weiter, sondern Japan, Korea, Russland und so weiter und so fort.
Also lokal bleiben eigentlich.
Und das ist wiederum so ein Term, das heißt, wir bevorzugen Ziele, die
nah sind an dem, was wir kennen.
Und deshalb natürlich hier der Abstand minus noch ein
Skalierungsfaktor Mu hier, der für uns die Schrittweite mehr oder
weniger definiert.
Also der Skalierungsfaktor Mu hier definiert für uns die Schrittweite,
wie weit wir gehen dürfen.
Dann was ganz wichtig ist für die Kosten von dem Pfad.
Wir müssen natürlich die Bewegung der Hand, aber auch die
Orientierung, weil die Orientierung der Hand ist auch ein Weg, den man
zurücklegen muss.
Eigentlich, wenn es um kleine Objekte geht, das sind mehr
Reorientierungen der Hand als irgendwie Bewegung der Hand oder des
Armes.
Deshalb die Länge von dem Pfad von dem aktuellen Punkt zu den
potenziellen Kandidaten hier.
Das ist unser Ziel 3 für die Position und für die Orientierung etwas
ganz komisches hier mit Sinus und Arcus Cousinus und so weiter und so
fort.
Also damit die Orientierung zwischen dem aktuellen Punkt und dem
Zielpunkt der Fahrt klein bleibt und die Orientierung zwischen den
Normalen auf der aktuellen Position R und der gewünschten oder
zielnormalen soll auch minimal werden.
Und die gesamte Funktion hier, diese Information Function, die ergibt
sich als Produkt von diesen vier Funktionen.
Für die Leute, die Interesse haben, die können natürlich die Details
nochmal im Paper nachlesen, aber das ist, was ich hier bereits erklärt
habe.
Dadurch haben wir Folgendes, wir können solche Situationen
eliminieren, das vergleiche ich immer mit diesen Graus-Prozess
-Methoden, wo man sowas hat bzw.
mit diesem neuen Verfahren, das wir jetzt hier entwickelt haben,
solche langen Pfade für die Exploration nicht hat.
Und da sieht man hier ein paar Beispiele, Exploration von einer Banane
zum Beispiel.
Wir kriegen Punkte, das soll nicht missverstanden werden, dass wir
jetzt diese ganzen Pfade explorieren, sondern wir kriegen diese Punkte
und diese Punkte verbinden wir miteinander auf eine Art und Weise.
Das heißt, wir müssen ja irgendwie Bewegung generieren, indem wir die
Punkte miteinander verbinden und hier mit Bezier-Kurven erfolgt das
Ganze.
Und man sieht hier bei Graus-Prozess-Methoden, dass wir sehr große
Schritte haben, aber bei EGIF haben wir kleinere Schritte.
Da sieht man hier den Weg, der zurückgelegt wird für die Exploration,
dass bei dieser Methode nicht über 200 hinausgeht mit einer
Exploration von über 80%, also fast 100% hier.
Während hier um 100% zu erreichen bei State-of-the-Art-Methoden muss
man fast 300cm Weg zurücklegen, um das hier zu erreichen.
So, genau, das ist ja klar, das sind so ein paar Ergebnisse, man
kriegt eigentlich mithilfe von diesem Verfahren so eine spiralförmige
Form von der Exploration.
Also das ist, wie man praktisch auf der Überfläche von diesem Objekt
springt, um diese Punkte zu bekommen.
Und das funktioniert auch nicht nur für diese einfachen Formen,
sondern da sieht man hier komplexe Formen.
Das ist der Ground Truth und das sind 117 orientierten Kontaktpunkten,
mit denen man diese Rekonstruktion von dem Objekt bekommt.
Genau, natürlich ist die Methode eine Kurven- oder
Flächenrekonstruktionsmethode, also mit 117 orientierten
Kontaktpunkten bekommt man dieses Ergebnis.
Bei der haptischen Exploration wird man nicht so lange warten.
Wir werden gleich sehen, wie viele Punkte notwendig sind.
So, wir haben einen Vergleich gemacht, also einen quantitativen
Vergleich, in dem wir 48 Objekte von der JLCMU Berkeley Object
Dataset, aber auch von der KIT Object Dataset, und da sieht man hier
die Ergebnisse.
Wichtig ist eigentlich die zurückgelegte Distanz hier.
Bei State-of-the-Art Methoden sind das 103, unsere Methode 78.
Und da sieht man, das ist hier eine Reduzierung um 22%.
Und der Fehler, also der RMSI bei der Rekonstruktion, konnte dadurch
auch um 20% verbessert werden.
Zusammenfassung, wir haben dateneffiziente Service-Modelle, also
Modelle, mit denen wir diese Überflächenschätzung machen.
Das sind die Implicit Shape Models.
Wir maximieren die Information pro Kosten und auch die Information pro
Kontakt.
Das sind die Gaussian Process Implicit Shape Models.
Ich weiß nicht, ob das jetzt in dem Papier steht, aber das ist eine
sehr elegante Methode, mit der man das tatsächlich machen kann.
Das heißt, die mit diesen Sparse Data arbeitet.
Wie maximieren wir die Information?
Das ist, was wir gerade beschrieben haben.
Und die Information Maximierung pro Kontakt bedeutet, dass wir sowohl
die Position als auch die Normalie benutzen.
Das heißt, man würde hier jetzt mithilfe von diesem Verfahren
hingehen, wenn das mein Objekt ist.
Ich exploriere dieses Objekt haptisch, ich generiere so ein Modell mit
den Punkten und Normalen und mithilfe von diesem Modell kann ich
tatsächlich Greifplanung machen und Greifphobothesen erzeugen.
Somit können wir eine Greifsynthese machen und die Frage ist, sind
diese Punkte hier oder diese Schritte oder diese Aktionen, die wir
ausgeführt haben, also wir haben gesehen vorher 117, um diese
Rekonstruktion zu machen.
Das heißt, ich muss 117 Next-Best-Touch-Aktionen durchführen, um das
zu bekommen.
Aber sind sie alle notwendig oder kommt man mit wenigen aus?
Und deshalb die Frage ist, wie viele Berührungen eigentlich notwendig
sind für das Greifen.
Das sind hier ein paar Objekte und die sind schlimme Objekte
eigentlich, ja, also auch visuell beziehungsweise die Form und die
sind flach und ähnliches.
Und Exploration bedeutet immer Zeit.
Es kostet Zeit, um den nächsten Punkt zu kommen, um dieses Modell oder
Überflächemodell zu erstellen, Greifplanung darauf zu machen und so
weiter und so fort.
Und deshalb die Frage, wie viele Berührungen notwendig sind für das
Greifen.
Und bei Greifen ist natürlich die Erfolgsrate zentral oder die
Wahrscheinlichkeit, dass ein generierter Griff erfolgreich sein wird,
extrem wichtig.
Und da sieht man hier, wenn wir bei diesen Objekten nur die tiefen
Informationen nehmen von einer RGBD-Kamera, dann haben wir zu Beginn
eine Erfolgschance von fast 90 Prozent.
Und der erste Touch, das ist der erste Berührungspunkt, was wir
hinzunehmen.
Und klar, diese Strategie, die wir entwickelt haben, die wird jetzt
keinen Punkt dort nehmen, in einem Bereich, wo wir viele Punkte
kennen, sondern das ist ein Punkt, was wirklich wichtig ist, um das
Objekt zu vervollständigen.
Klar, lokal und reduziert und Sicherheit und ähnliches.
Aber man sieht, dass die Erfolgsrate für das Greifen bei nur einem
Punkt hier um 5 Prozent erhöht.
Und so weiter und so fort sieht man hier eigentlich, dass die nächsten
Punkte gar nicht so viel bringen.
Natürlich, wahrscheinlich ab 10, 20 oder 30 wird die Erfolgsrate viel
größer sein.
Also, the first touch here is mass information.
Only one touch for robot experiments, was wir gemacht haben.
In diesen Experimenten, die ich euch jetzt gleich zeigen werde, mit
einem einzigen Kontakt konnten wir alle Objekte, die man hier, alle
diese 8, 9 Objekte, die da zu sehen sind, erfolgreich hochheben.
Und da sieht man hier, wie das Ganze funktioniert auf dem Roboter.
Also das ist die 3D-Punktwolke, die kommt ja von der Vision.
Und das ist jetzt der next target, also next best touch.
Und da sieht man hier, dass der Algorithmus einen Punkt auf dieser
Rückseite von diesem Akkuschrauber hier generiert.
Das heißt, wir fügen diesen Punkt hier zu unserem Modell und
fusionieren wir das mithilfe von dem Gaussian Process Implicit Shape
Models hier, kriegen wir ein neues Modell bzw.
Repräsentation von dem Objekt.
Und wenn wir das haben, dann können wir, ja es gibt ein paar Details
hier dazwischen, ein neuronales Netz, was die Griffie bewertet und nur
den besten Griff hier auswählt.
Und wenn man diesen besten Griff hier auswählt, dann kann man
tatsächlich basierend auf der visuellen Information und diesem
einzigen weiteren Kontaktpunkt durch die haptische Exploration diese
Objekte greifen.
Und das ist nicht nur für das hier, sondern für all diese Objekte, die
wir gesehen haben.
Ein Hammer, ein Aluprofil, Sprühflasche, der Cutter, Millimeter,
Messstab und ähnliches.
Genau, das ist eigentlich sehr erfreulich, weil natürlich, das ist
jetzt visu-haptik, steht ja, glaube ich, die ganze Zeit.
Das heißt, die erste Information kommt tatsächlich aus Vision, was wir
gerade sehen.
Und damit man von Anfang an die Erfolgsrate für das Greifen
verbessert, schaut man, wo ist der nächste Punkt, was ich vielleicht
hinzunehmen soll in meinem Modell.
Also wir nehmen den Punkt, damit wir das Modell über das Objekt besser
rekonstruieren können.
Und wenn wir dieses Überflächemodell haben, dann wissen wir, wir
können einen klassischen Greifplaner einsetzen, um diese Griffe zu
erzeugen.
Und in dem Beispiel, dieser Gruni-Griff ist der beste Griff von all
diesen Kandidaten, die ein Greifplaner erzeugt hat.
Und es wird tatsächlich mit Hilfe von einem tiefen neuronalen Netz
diese Bewertung der Griffe durchgeführt.
Genau, dann haben wir stillschweigend jetzt gesagt, so viel
Information pro Kontaktpunkt.
Und was stand auf der Folie?
Stand Position und Orientierung von den normalen.
Und das ist keine einfache Sache, immer so zu berechnen aus den Daten,
die man bekommt.
Deshalb haben wir vor drei Jahren, zwei Jahren eigentlich, angefangen,
Fingerspitzen -Sensoren zu entwickeln, die uns beides liefern.
Also die liefern uns Informationen über Druck und über Kontakt, aber
auch über die Orientierung, also lokale Orientierung einer Überfläche.
Das heißt, wir verwenden hier in der Fingerspitze, wie man sieht hier,
eine Sensorkombination, bestehend aus einem Drucksensor mit einem U,
damit wir die Orientierung der Überfläche bekommen.
Da sieht man hier, da gibt es auch so einen Kegelspring hier, eine
Kegelfeder, die erlaubt, dass dieser Sensor immer auf der Überfläche
liegt oder sich orientiert, wie die Überfläche ist.
Und mit Hilfe von dem kriegen wir hier diese Ergebnisse für die
Rekonstruktion von den Objekten.
Das heißt, nicht nur Schätzung der Orientierung aus irgendwelchen
benachbarten Punkten sollte man nicht machen bei haptischer
Exploration, weil man hat nicht so viele Punkte.
Und nicht Schätzung der Orientierung oder der Normalen basierend auf
Kraftinformation, weil man hat keine Kraftsensorik, die da misst.
Das sind keine Sachen, die man so leicht bekommt.
Und deshalb diese Kombination.
Natürlich ist das jetzt kein Sensor, den man einsetzt.
Das war ein Experiment bzw.
eine Untersuchung und wir werden in der Zukunft weiter hier machen und
schauen, wie man mithilfe von dieser Art von Sensorik auch die beste
Information für die haptische Exploration bekommt.
Falls jemand hier Interesse hat, zu einem Sensorkonzept mitzuarbeiten,
der soll sich melden.
Gibt es Fragen zu haptischer Exploration?
Genau.
Die Frage ist, was ist das Abbruchkriterium bei potenziellen
Feldmethoden?
Natürlich kann man die Anzahl der Punkte, die man generiert hat, das
ist die einzige oder die Länge des Pfads, den man abfährt oder die
Zeit.
Eigentlich die Zeit.
Man exploriert eine Weile, um zu schauen.
Man kann nicht ewig explorieren und schauen, was da passiert.
Würde ich zumindest so realisieren.
Weitere Fragen?
Gut, dann das Letzte.
Active Hearing.
Das ist natürlich nicht unser Thema, aber das ist auch eine aktive
Wahrnehmung.
Und Active Hearing bedeutet auch eigentlich Aktionen einsetzen, um die
Qualität von Audiosignalen zu verbessern.
Die Frage ist, wie sollen wir unseren Körper bewegen, um die Qualität
von Sound zu verbessern?
Und die wichtigen Fragestellungen sind natürlich wiederum in der
Technologie.
Was sind Filtermethoden oder Signalverarbeitungsmethoden für das
System, das Audio aufnimmt?
Und wie transformiert eigentlich die Umgebung dieses Signals zu einem
Receiver?
Und wie geht ein Roboter eigentlich mit dem eigenen Geräuschspegel?
Das ist eine aktuelle Arbeit von 2017, wo man tatsächlich mit Hilfe
von Feature-Extraktionsmethoden aus Audiosignalen eine Abbildung hat.
Wir haben ja zum Beispiel bei Greifen diese Modelle gelernt, wo wir
Feature -Grasp-Models gelernt haben.
Für Greifen und bekannte Objekte hier lernt man so eine Abbildung
zwischen Merkmalen von Audiosignalen und Position oder Location im
Raum.
Basierend darauf kann man natürlich wissen, woher das Signal kommt,
also die Lokalisierung des Signals.
Und kann man zum Beispiel den Kopf oder den Körper so hindrehen, dass
man die Empfangssensoren, also die Ohren in einem Roboter besser
ausrichtet zu der Quelle des Signals.
Weitere Forschungsfragen hier, wie gesagt, zum Beispiel, dass man die
Szene akustisch realisiert.
Wo kommt das meiste Geräusch her?
Das ist vielleicht für Vorlesungen interessant.
Beziehungsweise, was sind die Auffälligkeiten, die akustischen
Auffälligkeiten in einer Szene?
Genauso wie Visual Scene Understanding, hier Acoustic Scene
Understanding.
Das heißt, wie kann man diese Signale nutzen, um besser die Aktionen
von einem Roboter zu steuern, beziehungsweise zu generieren?
Und wie kann man die Informationen, also die akustischen Modelle der
Szene verwenden, zusammen mit der aktuellen Information, um die Quelle
von einem akustischen Signal zu lokalisieren?
Das ist natürlich sehr entscheidend.
Das heißt, damit man die Bewegungen von einem Roboter so macht, dass
er sich in Richtung des akustischen Signals orientiert oder dreht,
muss man natürlich wissen, woher das Signal kommt.
Deshalb hier Acoustic Source Localization, also woher das Signal kommt
und dann natürlich, wie kann man den Roboter dorthin bewegen.
Mehr will ich auf das Thema hier nicht eingehen, sondern ich will
damit auch dieses Kapitel hier abschließen, also Active Perception,
und hoffe, dass es euch Einblicke in dieses spannende Gebiet gegeben
hat.
Das ist ein sehr, sehr aktives Forschungsthema, wo nach wie vor
unglaublich viel zu tun ist, sowohl auf der konzeptuellen Seite als
auch auf der technologischen Seite, um diese Methoden der Active
Vision, Active Touch und Active Hearing tatsächlich auf einem Roboter
zu realisieren.
Für heute bedanke ich mich für die Aufmerksamkeit und bis nächste Woche.