Cinématique inverse 1392117 30054999 2008-05-27T16:56:03Z VolkovBot 198153 robot Ajoute: [[ru:Риг]] {{Ébauche|robotique|chimie|animation}} 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. ==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 terme d' ''objectifs'', et déterminer par cinématique inverse le ''moyen'' de l'atteindre. En [[chimie]], et principalement dans l'étude des [[protéine]]s, 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 paraitre naturels. [[mathématiques|Mathématiquement]], on obtient une [[équation]] dépendant de plusieurs variables. Dans l'exemple du [[bras humain]], les paramètres seraient les différents [[angle]]s formés par les [[articulation]]s, et l'équation donnerait la [[distance]] entre l'index et l'objet à atteindre. On cherche à minimiser cette [[fonction (mathématique)|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 de [[programmation 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=== * [[Infographie]] ; * [[Algorithme de Levenberg-Marquardt]] ; * [[Pseudoinverse]] ; * [[Jacobien]]. ===Liens externes=== * {{en}} [http://freespace.virgin.net/hugo.elias/models/m_ik2.htm Algorithmes de cinématique inverse] ; * {{en}} [http://www.learnaboutrobots.com/inverseKinematics.htm Cinématique inverse appliquée aux robots] ; * {{en}} [http://entertainment.howstuffworks.com/question538.htm HowStuffWorks.com Article ''Comment font les personnages de jeu pour bouger avec fluidité ?''] ; * {{en}} [http://www.euclideanspace.com/physics/kinematics/joints/index.htm Théorie de la cinématique inverse en 3D] ; * {{en}} [http://cnx.org/content/m11613/latest/ Cinématique inverse appliquée aux protéines] ; * {{en}} [http://diegopark.googlepages.com/computergraphics Exemple simple de cinématique inverse utilisant le Jacobien]. {{Portail|robotique|chimie|animation}} [[Catégorie:Terme en animation]] [[Catégorie:Effets spéciaux]] [[de:Inverse Kinematik]] [[en:Inverse kinematics]] [[es:Cinemática Inversa]] [[nl:Inverse kinematica]] [[pl:Kinematyka odwrotna]] [[pt:Cinemática Inversa]] [[ru:Риг]] [[zh:逆运动学]]