Inverse Kinematik

Download Report

Transcript Inverse Kinematik

Inverse Kinematik
Proseminar:
How to make a PIXAR movie?
computer graphics & visualization
Inhalt
• Überblick & Motivation
• Grundbegriffe
– Kinematik, DOF, Hierarchisches Modell,
Vorwärtskinematik
• Inverse Kinematik
–
–
–
–
–
–
–
Einführung
Anwendungen
Pro/Contra
Linearer Lösungsansatz
Numerischer Lösungsansatz
Weitere Methoden
Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Inhalt
• Überblick & Motivation
• Grundbegriffe
– Kinematik, DOF, Hierarchisches Modell,
Vorwärtskinematik
• Inverse Kinematik
–
–
–
–
–
–
–
Einführung
Anwendungen
Pro/Contra
Linearer Lösungsansatz
Numerischer Lösungsansatz
Weitere Methoden
Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Überblick & Motivation
• Inverse Kinematik (IK) ist eine
Animationstechnik im Animationsprozess
• IK dient der Animation von Bewegungsabläufen
• IK vereinfacht die Erstellung von Animationen
für den Character Animator (CA)
• Ziel: der CA bringt nur das Schlussglied an die
gewünschte Position; die restlichen Glieder
werden automatisch mitgeführt
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Inhalt
• Überblick & Motivation
• Grundbegriffe
– Kinematik, DOF, Hierarchisches Modell,
Vorwärtskinematik
• Inverse Kinematik
–
–
–
–
–
–
–
Einführung
Anwendungen
Pro/Contra
Linearer Lösungsansatz
Numerischer Lösungsansatz
Weitere Methoden
Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Kinematik
• Teilgebiet der Mechanik
• Geometrische Beschreibung von Bewegungen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
DOF (Degrees of Freedom)
• Zu deutsch: Freiheitsgrad
• Charakterisierung der
Gelenke
• Maximum: 6 DOFs
–
–
–
–
–
–
1: links/rechts
2: vorne/hinten
3: oben/unten
4: link/rechts drehen
5: seitlich kippen
6: vorne/hinten kippen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
DOF (Degrees of Freedom)
1 DOF: Ellbogen
3DOF: Schulter
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Hierarchisches Modell
• Oftmals auch
kinematische Kette
genannt
• Herstellung einer
Baumhierarchie für die
einzelnen Glieder des
Objekts
• System aus starren
Körpern, die durch
Gelenke verbunden sind
• Mind. 3 Glieder
• Jedes Gelenk kann andere
DOFs besitzen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Vorwärtskinematik (FK)
• Given the angles at all of the robot's joints,
what is the position of the hand?
• Man bewegt die einzelnen Glieder, angefangen
beim obersten Glied in der Hierarchie, in die
gewünschte Position
•
• Probleme:
– aufwendig für der CA
– sehr schwierig umsetzbar bei komplexen
Bewegungen, z.B. Gehen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
FK - Beispielvideo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Inhalt
• Überblick & Motivation
• Grundbegriffe
– Kinematik, DOF, Hierarchisches Modell,
Vorwärtskinematik
• Inverse Kinematik
–
–
–
–
–
–
–
Einführung
Anwendungen
Pro/Contra
Linearer Lösungsansatz
Numerischer Lösungsansatz
Weitere Methoden
Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Einführung
• Herkunft aus der Robotik:
Wie bringt man den
Greifarm an die gewünschte
Zielposition?
• Umkehrfunktion der FK:
• Erleichtert die Arbeit für
den CA:
– möchte oftmals nur den
Endpunkt an einer
bestimmten Position haben
– die anderen Glieder sollen
sich realistisch anordnen
– IK wird auch für die Erzeugung
von Keyframes verwendet
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK - Beispielvideo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Anwendungen
• Robotik
– Industrieroboter
– „Roboterspiele“
• Computeranimation
– Animationsfilme
– Videospiele
• Medizin (Computer
Assisted Surgery)
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Pro/Contra
Pro IK
Contra IK
Schnell und intuitiv bedienbar
Oft keine bis mehrere Lösungen
Immense Reduzierung des
Arbeitsaufwands
Manchmal wird nicht die natürliche
Haltung des menschl. Körpers
erreicht
CA muss sich keine Gedanken über
die Winkelstelllungen der Gelenke
machen um das Objekt an das
gewünschte Ziel zu führen
Berechnungen teilweise sehr
rechenlastig
Geringer Einfluss des CA auf den
Bewegungsablauf
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Analytischer Lösungsansatz
• Nur in einfachen Fällen
möglich
– Ergebnis kann wiederverwendet
werden, jedoch fast
ausschließlich in Robotik
verwendet
– Schnell
– Liefert exaktes Ergebnis
Beispiel:
• 2 Freiheitsgrade
• Vorgabe der Endposition
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Analytischer Lösungsansatz
• Es existieren 2 Lösungen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerischer Lösungsansatz
•
•
•
•
Ausgangslage:
Linearisierung des Problems:
Korrekt bei kleinen Änderungen von
Idealfall: J nicht-singulär 
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerischer Lösungsansatz
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerischer Lösungsansatz
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerische Lsg: Jacobi-Matrix
• Darstellung der Abhängigkeit von mit
 Wie ändert sich die Position von , wenn
verändert wird
• ist die Endposition im Raum (3D-Vektor)
• J ist eine 3xN-Matrix
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerische Lsg: Jacobi-Matrix
• Für jeden DOF berechnen, wie sich e in
Abhängigkeit zum DOF verändern würde, wenn
dieser verändert wird
•  absolute Achse und Drehpunkt finden:
• r transformiert als Positionsa transformiert als Richtungsvektor
und
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerische Lsg: Jacobi-Matrix
• Anhand dieser Werte lässt sich berechnen, wie
sich verändern würde, wenn wir um diese
Achse rotieren
• Mit dieser Formel erhalten wir eine Spalte der
Jacobi-Matrix
• Weitere Spalten: über jeden DOF iterieren und
entsprechende Spalte in der Matrix berechnen
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerischer Lösungsansatz
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerische Lsg: J invertieren
•
•
•
•
Problem: J selten invertierbar
Lösung: Pseudoinverse oder Transponierte
Pseudoinverse
Transponierte:
– Funktioniert erstaunlicherweise sehr gut
– Ist viel schneller als J invertieren oder
Pseudoinverse bilden
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerischer Lösungsansatz
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – numerische Lsg: Terminierung
• 3 Kriterien für die Terminierung
– Es wurde eine Lösung gefunden
– Feststecken  Lokales Minimum
Lösungen:
•
•
•
•
Akzeptieren
Anderer Algorithmus
Zufällige Position für den e-Vektor
Fehlermeldung
– Zeit
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK – Weitere Methoden
• CCD (Cyclic Coordinate Descent)
– Aufteilung in 1 Freiheitsgrad-IK-Probleme und diese
analytisch lösen
• Lagrange Multiplikatoren
– Funktionsoptimierung durch Herausfinden des
Extremwerts einer Funktion h unter
Nebenbedingung g
• LPIK (Linear Programming IK-Solver)
– Minimierung der Summe der absoluten Werte
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
IK
Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization
Fragen?
Vielen Dank für Ihre Aufmerksamkeit
computer graphics & visualization
IK - Demo
Inverse Kinematik
Benedikt Hirmer
computer graphics & visualization