Contexte de la simulation des humains virtuels

Le domaine de la simulation, liรฉ ร  lโ€™envol des technologies informatiques, permet dโ€™envisager des cas de plus en plus complexes. Cette amรฉlioration continue des performances des simulations est bien entendu fondรฉe sur lโ€™augmentation des vitesses de calcul des machines, mais รฉgalement sur les raffinements successifs des algorithmes de simulation. La maquette numรฉrique, basรฉe sur ces technologies de lโ€™information, a permis de bouleverser la conception industrielle. Autrefois organisรฉe autour de revues de projets sur maquettes physiques, les mรฉthodes rรฉcentes de conception sโ€™appuient dorรฉnavant sur des prototypes virtuels. Lโ€™innovation en terme de simulation devient dรฉterminante. Elle fait appel, entre autres, aux techniques รฉmergentes dites de rรฉalitรฉ virtuelle. Ces simulations doivent reflรฉter au mieux les comportements des produits dans le monde auquel ils sont destinรฉs. Et cette constatation est dโ€™autant plus critique, que dans bien des cas le caractรจre temps-rรฉel des simulations est dรฉterminant. Les fortes potentialitรฉs du prototypage virtuel sont claires aujourdโ€™hui. Mais celui-ci ne deviendra une rรฉalitรฉ pleinement tangible en entreprise que lorsquโ€™il aura รฉtรฉ dรฉbarrassรฉ de toutes les contraintes qui y sont liรฉes pour le moment. Nous pouvons citer la prรฉparation des donnรฉes de lโ€™environnement que nous souhaitons simuler [DLCG05], mais รฉgalement les difficultรฉs de mise en ล“uvre de tous les cas de tests. Ainsi la mise en ล“uvre de tests permettant de vรฉrifier lโ€™interaction entre lโ€™utilisateur et le produit prรฉsente toujours des difficultรฉs liรฉes ร  la complexitรฉ des systรจmes en jeu. Les techniques autorisant ร  mettre en ล“uvre des mannequins virtuels permettant de tester la maquette numรฉrique, sont principalement issues des domaines du jeu vidรฉo et des effets spรฉciaux. Leurs problรฉmatiques technologiques sont trรจs proches de la notre et de maniรจre gรฉnรฉrale, la rรฉalitรฉ virtuelle bรฉnรฉficie รฉnormรฉment des avancรฉes de ces domaines trรจs dynamiques. Cette thรจse a pour objet dโ€™y apporter une contribution. Nos travaux ont รฉtรฉ envisagรฉs principalement pour des applications liรฉes ร  lโ€™ingรฉnierie mais les dรฉveloppements effectuรฉs pourront bรฉnรฉficier ร  tous les domaines intรฉressรฉs par lโ€™humain virtuel. Une des finalitรฉs de notre travail est de vรฉrifier, de maniรจre virtuelle et pendant sa conception, si le produit rรฉpond bien aux contraintes liรฉes ร  son interaction avec lโ€™utilisateur humain (ergonomie, accessibilitรฉ…). Notre รฉtude portera donc sur le dรฉveloppement dโ€™un systรจme temps-rรฉel dโ€™animation prenant en compte lโ€™interaction physique avec lโ€™environnement, de maniรจre naturelle et toutes ses implications en terme de stabilitรฉ, de contact et dโ€™รฉquilibre.

Modรจles dโ€™humains virtuels

Une des reprรฉsentations, parmi les plus simples, de lโ€™humain virtuel est dictรฉe par les techniques robotiques utilisรฉes pour lโ€™animation . Cโ€™est-ร -dire que nous pouvons voir lโ€™humain virtuel comme une structure polyarticulรฉe arborescente de solides, que nous appelons assez naturellement squelette. Une gรฉomรฉtrie en relation avec la topologie du corps humain [AMH02], est attachรฉe aux solides, ou os. Deux os sont sรฉparรฉs par une articulation.

Pour obtenir un meilleur aspect visuel (rendu 3D), nous pouvons modรฉliser lโ€™enveloppe extรฉrieure, ou peau de lโ€™humain. Les techniques ร  base de mailles, de NURBS, de subdivisions de surfaces [Rat03], [Kel98], sont particuliรจrement adaptรฉes ร  la modรฉlisation de surfaces organiques. Avec ce type de modรจles, des milliers de points paramรจtrent la surface qui reprรฉsente la peau du mannequin. La dimension du problรจme est ร  lโ€™heure actuelle beaucoup trop รฉlevรฉe pour รชtre rรฉsolue de maniรจre directe. Lโ€™idรฉe est donc de reparamรฉtrer la surface, grรขce au modรจle de squelette dรฉcrit auparavant, problรจme de dimension rรฉduite. Le mouvement est alors rรฉsolu sur le squelette et les mouvements du squelette sont appliquรฉs ร  lโ€™enveloppe [AMH02]. Cette technique est appelรฉe skinning et peut maintenant รชtre accรฉlรฉrรฉe par les cartes graphiques et leurs langages de programmation de shaders . Le skinning est beaucoup utilisรฉ dans les jeux vidรฉo, il est dโ€™ailleurs mis ร  profit sur les derniers dรฉmonstrateurs de nVidiar [Pha05]. Cโ€™est la mรฉthode que nous utiliserons pour le rendu – nous utilisons ร  ce titre le logiciel Virtoolsr qui implรฉmente lโ€™algorithme.

Le rรฉalisme peut รชtre poussรฉ encore plus avant. Les mannequins virtuels peuvent servir lors de crash tests virtuels. Pour obtenir des donnรฉes intรฉressantes les modรจles doivent รชtre particuliรจrement dรฉtaillรฉs [fSH05], leur topologie sera dictรฉe par les mรฉthodes de calcul utilisรฉes. Ces modรจles sont beaucoup plus complexes que ceux citรฉs prรฉcรฉdemment et sont loin dโ€™รชtre compatibles avec les contraintes temps-rรฉel รฉvoquรฉes par la suite.

Lโ€™animation de personnages virtuels dans la littรฉrature

Contrรดle du mouvement

Nous prรฉsentons ici des techniques dโ€™animation dโ€™humains virtuels (vus comme des structures polyarticulรฉes arborescentes de solides), dรฉjร  donnรฉes dans la littรฉrature. Nous dรฉcrivons dโ€™abord les bases mathรฉmatiques utiles ร  notre รฉtude. Nous abordons alors des mรฉthodes de contrรดle trรจs bas niveau, puis des mรฉthodes sโ€™appuyant sur ces couches basses.

Formalisme mathรฉmatique : groupes de Lie

Les considรฉrations qui suivent peuvent รชtre retrouvรฉes dans [PC04], ou [MLSS94]. Un cadre mathรฉmatique naturel pour lโ€™รฉtude des dรฉplacements des corps rigides (ou solides) est celui du groupe spรฉcial Euclidien SE(3). Le groupe spรฉcial Euclidien SE(3) est le produit semi-direct de R3 et du groupe spรฉcial orthogonal SO(3). Un รฉlรฉment de SE(3) est reprรฉsentรฉ par une matrice de transformation homogรจne.

Apartรฉ – SE(3) en deux mots
Concrรจtement lโ€™espace SE(3) est une modรฉlisation de lโ€™espace dans lequel nous vivons. Pour repรฉrer les positions des solides, on leur adjoint un repรจre dโ€™espace , dont la position est exprimรฉe dans SE(3) espace 6D. Trois des paramรจtres sont liรฉs aux translations, les trois autres รฉtant liรฉs ร  lโ€™attitude, ou orientation du solide. SE(3) est รฉgalement appelรฉ espace opรฉrationnel, ou espace de la tรขche.

Contrรดle haut niveau

Edition de mouvement
Les mรฉthodes dโ€™รฉdition de mouvement (motion editing en anglais) permettent de modifier des mouvements obtenus au prรฉalable. Ils pourront ainsi รชtre rรฉutilisรฉs dans des conditions diffรฉrentes ce celles dans lesquelles ils ont รฉtรฉ obtenus, ou transformรฉs dans le but de leur ajouter des mouvements secondaires… Nous distinguons deux grandes familles dโ€™utilisation : lโ€™adaptation de mouvements (motion adaptation) et le motion retargetting (terme anglais difficilement traduisible). La premiรจre permet de modifier le mouvement pour lโ€™adapter ร  de nouvelles conditions, dโ€™environnement notamment. La seconde permet de modifier le squelette sur lequel le mouvement est appliquรฉ.

Les premiรจres techniques dโ€™adaptation de mouvement utilisent des mรฉthodes issues du traitement du signal, sur les signaux des paramรจtres articulaires [BW95], [WP95] : filtrage, dรฉcomposition frรฉquentielle, dรฉcomposition temps-frรฉquence, interpolation, look-up tables… Elles permettent de modifier le mouvement directement sur les signaux articulaires. On peut accentuer la nervositรฉ du mouvement (en accentuant les hautes frรฉquences), au contraire rendre les mouvements posรฉs, ou mรฉlanger deux mouvements par interpolation… Ces mรฉthodes sont pour la plupart articulaires, aussi nous ne maรฎtrisons pas toujours parfaitement le sens de nos modifications et celles-ci peuvent amener ร  violer des contraintes. Aussi [GL98] introduit un algorithme permettant dโ€™effectuer des modifications sur le mouvement, tout en respectant certaines contraintes opรฉrationnelles. Grรขce ร  cette mรฉthode, nous pouvons, par exemple, modifier la position des mains alors que les pieds sont contraints ร  leur position initiale. La diffรฉrence avec la cinรฉmatique inverse est que lโ€™optimisation est faite sur toute la sรฉquence de mouvement (on parle dโ€™optimisation espace-temps). La diffรฉrence entre le mouvement initial et le mouvement rรฉsultant est minimisรฉe, tout en respectant les contraintes, ce qui permet de conserver les caractรฉristiques du mouvement initial (comme la dรฉmarche par exemple). Le mรชme auteur utilise la mรชme technique pour le motion retargetting [Gle98]. Dans ce cas on ne modifie plus les contraintes opรฉrationnelles identifiรฉes, mais le squelette sur lequel le mouvement est appliquรฉ. Cโ€™est-ร -dire que nous modifions le squelette tout en respectant des contraintes en position de repรจres de contrรดle.

Les mรฉthodes vues jusquโ€™ร  prรฉsent sont cinรฉmatiques, il existe รฉgalement des mรฉthodes dynamiques dโ€™รฉdition de mouvement [PW99], [SHP04]. Mieux, certaines permettent de rendre physiquement rรฉaliste un mouvement qui ne lโ€™รฉtait pas. Le principe du premier article [PW99] est de trouver le mouvement physique le plus proche du mouvement initial, les paramรจtres peuvent alors รชtre modifiรฉs et le mouvement final enfin reconstruit. Le problรจme est lourd dโ€™un point de vue calculs. Le mouvement initial est donc dโ€™abord appliquรฉ sur un squelette ร  la cinรฉmatique simplifiรฉe. Le mouvement physique le plus proche est ensuite recherchรฉ par un problรจme dโ€™optimisation (espace-temps) dont le critรจre est une distance entre le mouvement rรฉsultant et le mouvement initial, sous contrainte de respect de la dynamique. Le deuxiรจme article ( [SHP04] ) rรฉduit aussi la dimension de lโ€™espace des solutions, mais en faisant lโ€™observation que les mouvements sont souvent coordonnรฉs. Il postule grรขce ร  des observations biomรฉcaniques que quand une jambe bouge, le mouvement du bras opposรฉ est connu. Le mouvement est donc reparamรฉtrรฉ.

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres

Introduction
1 Contexte de la simulation des humains virtuels
1.1 Modรจles dโ€™humains virtuels
1.2 Lโ€™animation de personnages virtuels dans la littรฉrature
1.2.1 Contrรดle du mouvement
1.2.1.1 Formalisme mathรฉmatique : groupes de Lie
1.2.1.2 Contrรดle bas niveau
1.2.1.3 Contrรดle haut niveau
1.2.1.4 Humains virtuels interactifs
1.2.2 Spรฉcification du mouvement
1.3 Prototypage virtuel
1.4 Mise en place des prรฉmices dโ€™une architecture
1.4.1 Schรฉma fonctionnel de la simulation dโ€™un humain virtuel
1.4.2 Identification des รฉlรฉments constituants du contrรดle
1.4.2.1 Contrรดle dโ€™une tรขche dans lโ€™espace opรฉrationnel
1.4.2.2 Contrรดle dโ€™une tรขche interne
1.4.2.3 Contraintes physiques et biomรฉcaniques
1.4.2.4 Proposition dโ€™une architecture pour le bas niveau
1.5 Contributions scientifiques
2 Gรฉnรฉration des mouvements dโ€™un humain virtuel
2.1 La passivitรฉ : un guide de synthรจse pour la commande
2.2 Architecture
2.2.1 Dรฉtails de la simulation et des contrรดles externes et internes
2.2.1.1 Simulation physique
2.2.1.2 Intรฉgration numรฉrique
2.2.1.3 Contrรดle de tรขches externes
2.2.1.4 Contrรดle interne
2.2.2 Multi-tรขches conflictuel
2.2.2.1 Rรฉsolution de tรขches conflictuelles par pondรฉration
2.2.2.2 Rรฉsolution de tรขches conflictuelles par prioritรฉs
3 Gestion des contraintes unilatรฉrales
3.1 Solveur de contraintes unilatรฉrales
3.1.1 Gestion des contacts : รฉtat de lโ€™art
3.1.2 Solveur de contraintes unilatรฉrales par LCP
3.2 Contact et limites articulaires
3.2.1 Formulation du contact
3.2.2 Formulation des limites articulaires
3.3 Humains virtuels en รฉquilibre
3.3.1 Analyse de lโ€™existant
3.3.2 Intรฉgration de lโ€™รฉquilibre dans notre architecture
3.3.2.1 Rรฉsolution de lโ€™รฉquilibre par LCP : une premiรจre approche
3.3.2.2 Equilibre multi-contacts non-coplanaires
4 Ordonnancement de modes de commande
4.1 Transition de modes de commande
4.1.1 Mise en place des diffรฉrents modes
4.1.2 Ordonnancement
4.2 Intรฉgration
4.3 Applications et performances
4.3.1 Applications
4.3.1.1 Mouvements simples
4.3.1.2 Interaction avec une balle
4.3.1.3 Deux mannequins
4.3.1.4 Fonctionnalitรฉs composรฉes
4.3.1.5 Cas industriel
4.3.2 Performances
4.4 Perspectives
Conclusion

Lire le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiรฉe. Les champs obligatoires sont indiquรฉs avec *