Bisherige Verhaltensforschung zum menschlichen Greifen beschränkte sich auf stark eingeschränkte Messungen in streng kontrollierten Szenarien. Unser Protokoll erlaubt eine wesentlich umfassendere Charakterisierung des komplexen naturalistischen Greifverhaltens. Bei dieser Technik werden detaillierte Karten der Kontaktflächen von Handobjekten aufgrund des mehrstelligen Greifens verwendet.
Auf diese Weise können wir untersuchen, wie Menschen Objekte mit einem noch nie dagewesenen Grad an Raffinesse greifen. Genaue Messungen der menschlichen Greiffähigkeit sind notwendig, um die motorische Kontrolle, die haptische Wahrnehmung und die Mensch-Computer-Interaktion zu verstehen. Diese Daten können in die Entwicklung von Robotergreifern und Prothesen für die oberen Gliedmaßen einfließen.
Den Auftakt demonstriert Kira Dehn, eine Doktorandin, die in meinem Labor ihre Masterarbeit schreibt. Positionieren Sie zunächst einen Arbeitsplatz mit einem Tracking-Volumen, das von Motion-Tracking-Kameras, die auf einem Rahmen um den Arbeitsbereich angeordnet sind, aus mehreren Blickwinkeln abgebildet wird. Bereiten Sie reflektierende Marker vor, indem Sie doppelseitiges Klebeband an der Basis jedes Markers anbringen.
Führen Sie Qualisys Track Manager (QTM) als Administrator aus. Platzieren Sie das L-förmige Kalibrierobjekt innerhalb des Tracking-Volumens. Klicken Sie im QTM im Aufnahmemenü auf Kalibrieren und warten Sie, bis sich ein Kalibrierungsfenster öffnet.
Wählen Sie die Dauer der Kalibrierung aus und drücken Sie OK. Schwenken Sie den Kalibrierstab für die Dauer der Kalibrierung über das Tracking-Volumen. Klicken Sie auf die Schaltfläche Exportieren und geben Sie einen Dateipfad an, um die Kalibrierung als Textdatei zu exportieren.
Akzeptieren Sie die Kalibrierung, indem Sie auf OK klicken. Um ein Stimulusobjekt zu erstellen, konstruieren Sie ein virtuelles 3D-Objektmodell in Form eines Polygonnetzes. Verwenden Sie einen 3D-Drucker, um eine physische Nachbildung des Objektmodells zu erstellen.
Um ein Stimulusobjekt vorzubereiten, bringen Sie vier nicht-planare reflektierende Marker an der Oberfläche des realen Objekts an. Platzieren Sie das Objekt innerhalb des Tracking-Volumes. Führen Sie im Projekt-Repository das angegebene Python-Skript aus.
Befolgen Sie die Anweisungen des Skripts, um eine einsekündige Erfassung der 3D-Position der Objektmarkierungen durchzuführen. Wählen Sie alle Markierungen des steifen Körpers aus. Klicken Sie mit der rechten Maustaste, und wählen Sie Steifen Körper definieren oder 6DOF und dann Aktueller Frame aus.
Geben Sie den Namen des steifen Körpers ein, und drücken Sie OK. Wählen Sie im Menü "Datei" die Option "In TSV exportieren" aus. Aktivieren Sie im neuen Fenster die Kontrollkästchen 3D, 6D und Skeleton in den Einstellungen für den Datentyp.
Aktivieren Sie alle Kontrollkästchen in den allgemeinen Einstellungen. Drücken Sie auf OK und dann auf Speichern. Öffnen Sie Blender und navigieren Sie zum Arbeitsbereich Scripting.
Öffnen Sie die angegebene Datei und klicken Sie auf Ausführen. Navigieren Sie zum Arbeitsbereich "Layout" und drücken Sie N, um die Seitenleiste umzuschalten. Navigieren Sie in der Seitenleiste zur Registerkarte Benutzerdefiniert.
Wählen Sie die obj-Datei aus, die mitregistriert werden soll, und klicken Sie auf die Schaltfläche Objekt laden. Wählen Sie die zuvor exportierte Trajektoriendatei aus, und geben Sie die Namen der Marker an, die den starren Objekten durch Semikolons getrennt zugeordnet sind. Geben Sie in der Markerkopfzeile die Linie in der Trajektoriendatei an, die die Spaltennamen der Daten enthält.
Wählen Sie als Nächstes die entsprechende Steifkörperdatei mit dem Suffix 6D aus und geben Sie den Namen des steifen Körpers an, der im vorherigen Schritt definiert wurde. Geben Sie in der 6D-Kopfzeile die Zeile in der Steifkörperdatei an, die die Spaltennamen der Daten enthält. Drücken Sie auf "Marker laden" und verschieben und drehen Sie das Markerobjekt oder das Objekt, um sie auszurichten.
Geben Sie eine Mesh-Ausgabedatei an, und klicken Sie auf Co-Registrierung ausführen, um eine obj-Datei auszugeben, die das co-registrierte Stimulus-Mesh enthält. Befestigen Sie 24 kugelförmige reflektierende Marker mit doppelseitigem Klebeband an verschiedenen Orientierungspunkten der Hand eines Teilnehmers. Platzieren Sie die Marker mittig auf den Fingerspitzen in den distalen Interphalangealgelenken, proximalen Interphalangealgelenken und Metakarpophalangealgelenken von Zeigefinger, Mittelfinger, Ringfinger und Kleinfinger.
Positionieren Sie für den Daumen je einen Marker auf der Fingerkuppe und dem basalen Karpalmittelhandgelenk und je ein Paar Marker auf dem Metakarpophalangeal- und Interphalangealgelenk. Platzieren Sie zum Schluss Markierungen in der Mitte des Handgelenks und auf dem Scaphotrapeziotrapezgelenk. Bitten Sie den Teilnehmer, seine Hand mit der Handfläche nach unten flach auf die Werkbank zu legen und die Augen zu schließen.
Legen Sie das Stimulusobjekt vor dem Teilnehmer auf die Werkbank. Während das QTM ausgeführt wird, führen Sie das angegebene Python-Skript im Projekt-Repository aus. Bitten Sie den Teilnehmer, die Augen zu öffnen und den Anweisungen des Skripts zu folgen, um einen einzigen Versuch des Teilnehmers aufzunehmen, der das Reizobjekt greift.
Wählen Sie die RH_FH Modelldefinition aus, und klicken Sie auf Öffnen. Drücken Sie auf Weiter, geben Sie einen Namen für das AIM-Modell ein, und drücken Sie OK. Drücken Sie abschließend auf Fertig stellen, um ein AIM-Modell für die Hand des Teilnehmers zu erstellen, mit dem Marker in aufeinanderfolgenden Versuchen desselben Teilnehmers automatisch identifiziert werden können.
Öffnen Sie innerhalb des QTM die Projekteinstellungen, indem Sie auf das Zahnradsymbol drücken. Navigieren Sie in der Seitenleiste zu Skeleton Solver und drücken Sie Laden, um eine Skeleton-Definitionsdatei auszuwählen. Stellen Sie den Skalierungsfaktor auf 100 % ein und klicken Sie auf Übernehmen.
Navigieren Sie zu TSV-Export, und aktivieren Sie die Kontrollkästchen 3D, 6D und Skeleton in den Datentypeinstellungen. Aktivieren Sie alle Kontrollkästchen in den allgemeinen Einstellungen. Klicken Sie auf Anwenden und schließen Sie die Projekteinstellungen.
Klicken Sie auf das Symbol "Erneut verarbeiten", aktivieren Sie dann die Kontrollkästchen "Skelette lösen" und "In TSV-Datei exportieren" und drücken Sie auf "OK". Öffnen Sie ein Befehlsfenster im Projekt-Repository und aktivieren Sie die Conda-Umgebung, indem Sie den angegebenen Befehl ausführen. Führen Sie dann den angegebenen Befehl aus und befolgen Sie die Anweisungen des Skripts, um für jeden Frame des Versuchs ein Handgitter zu generieren, das die aktuelle Handpose rekonstruiert.
Führen Sie für Schätzungen des Handkontaktbereichs den angegebenen Befehl aus, und befolgen Sie die Anweisungen des Skripts, um Schätzungen des Hand- und Objektkontaktbereichs zu generieren, indem Sie den Schnittpunkt zwischen den Hand- und Objektnetzen berechnen. In dieser Studie wurde die Dynamik des Griffs mit Hilfe von 24 sphärischen reflektierenden Markern aufgezeichnet, die an verschiedenen Orientierungspunkten der Hand angebracht waren. Modifikationen am vortrainierten Deep-Hand-Mesh-Decoder werden hier gezeigt.
Erstens, da das Netzwerk nicht auf bestimmte Teilnehmer trainiert wird, wird das generische ID-abhängige Mesh-Korrektiv verwendet, das mit dem vortrainierten Modell bereitgestellt wird. Des Weiteren wird das ID-abhängige Skelettkorrektiv mit Hilfe des QTM Skeleton Solvers abgeleitet. Es wird eine proportionale Skalierung der Hand mit der Skelettlänge angenommen und die Maschendicke gleichmäßig um einen Faktor skaliert, der sich aus der relativen Skalierung des Skeletts ergibt.
Die abschließende 3D-Hand-Mesh-Rekonstruktion der aktuellen Handpose im selben Koordinatensystem wie das 3D-verfolgte Objektnetz wird angezeigt. Gezeigt wird ein Video einer Hand mit verfolgten Punkten und einem gemeinsam registrierten Netz, die sich bei einem einzigen Griff zu einer 3D-gedruckten Katzenfigur nebeneinander bewegen. Ein einzelnes Bild zum Zeitpunkt des Hand-zu-Objekt-Kontakts von einem Griff zu einem 3D-gedruckten Croissant, zusammen mit den Handobjekt-Netzrekonstruktionen und den geschätzten Kontaktbereichen auf der Oberfläche des Croissants.
Das Objekt und die daran befestigten Markierungen müssen ordnungsgemäß mitregistriert werden. Es ist wichtig, sie gründlich aufeinander abzustimmen, da Abweichungen große Auswirkungen auf die Schätzungen der Kontaktregion haben können. Zusätzlich zu den Kontaktflächen bietet das Verfahren für jedes Keilgelenk Euler-Winkel.
Diese können verwendet werden, um zu untersuchen, wie sich Handposen bei mehrstelligen Griffen im Laufe der Zeit entfalten.