- Cinématique inverse
-
En infographie, en robotique, en chimie et surtout en animation, la cinématique inverse (souvent abrégée IK, de l'anglais inverse kinematics) est un procédé par lequel on peut déterminer les positions et rotations d'articulations d'un modèle afin d'obtenir une pose.
Le terme « cinématique inverse » renvoie au fait que l'étude cinématique se fait généralement à partir des paramètres des articulations, afin de déterminer l'évolution de la pose.
Sommaire
Utilisations
Par exemple, pour un modèle humain, on peut déterminer la torsion des poignets, des coudes, des doigts... automatiquement pour atteindre de l'index un objet. C'est une démarche relativement intuitive pour l'animateur, qui voit son travail simplifié, mais relativement complexe pour l'ordinateur. C'est également un élément fondamental en robotique, où on peut fixer le programme en termes d' objectifs, et déterminer par cinématique inverse le moyen de l'atteindre.
En chimie, et principalement dans l'étude des protéines, on cherche la forme géométrique la plus probable des molécules. C'est d'une importance capitale en médecine, puisque la forme des protéines influence leurs propriétés, et peut permettre l'étude de nouveaux médicaments exploitant cette géométrie. Certains logiciels de calcul partagé exploitent ces algorithmes dans ce but.
Principes
Les principes de la cinématique inverse sont les suivants :
- les membres sont des barres rigides, de longueur donnée, reliés entre eux par des articulations ;
- les articulations supportent une certaine torsion maximale, qui varie selon la direction ou la vitesse ;
- les mouvements sont supposés suffisamment réguliers - pour paraître naturels.
Mathématiquement, on obtient une équation dépendant de plusieurs variables. Dans l'exemple du bras humain, les paramètres seraient les différents angles formés par les articulations, et l'équation donnerait la distance entre l'index et l'objet à atteindre. On cherche à minimiser cette fonction, pour qu'il y ait contact entre l'index et l'objet. Dans l'extrême majorité des cas, des solutions analytiques n'existent pas : il faut utiliser des techniques d'optimisation non linéaire, ou l'algorithme de Levenberg-Marquardt. On peut éventuellement distinguer entre différentes positions possibles en affectant un « poids » plus important aux poses plus éloignées de celle qui est tenue - qualitativement, on effectue le moins de mouvements possibles.
Voir aussi
Articles connexes
Liens externes
- (en) Algorithmes de cinématique inverse ;
- (en) Cinématique inverse appliquée aux robots ;
- (en) HowStuffWorks.com Article Comment font les personnages de jeu pour bouger avec fluidité ? ;
- (en) Théorie de la cinématique inverse en 3D ;
- (en) Cinématique inverse appliquée aux protéines ;
- (en) Exemple simple de cinématique inverse utilisant le Jacobien.
Catégories :- Terme en animation
- Effets spéciaux
Wikimedia Foundation. 2010.