HUMAN ACTION MODELING AND RECOGNITION FOR VIRTUAL ENVIRONMENTS POUR L'OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES PAR Luc EMERING lngenieur informaticien diplôme EPF de nationalité luxembourgeoise acceptee sur proposition du jury: Prof. D. Thalmann, directeur de thèse Prof. M. Bergarnasco, rapporteur Dr R. Boulic, rapporteur Prof. P. Coiffet, rapporteur Dr D. Floreano, rapporteur Prof. M. Kunt, rapporteur Lausanne, EPFL 1999
Abstract The goals of this work are the modeling and recognition of human actions for synthetic actors, basically humanoids. Combining both components allows exploring new communication channels between virtual and real worlds. Concerning the action modeling, we present a motion ititegratiot~fiamew~ork that permits the mixing and blending of heterogeneous motion generators issued from various animation techniques such as key-framing, motion capture, prtxedural, dynamics, heuristics based, sensor based and inverse kinematics. It is an Agetzt and Actionoriented framework providing real-tirne character animation. Activity properties such as action simultaneity and blending, automatic initialisation, motion-flow update schemes, agent attachments, and spatial coherence corrections, are treated in details. Conceming the action recognition, we developed an hierarchical model of human actions. An action is a posture, a gesture, constraints or a combination of thern. In order to achieve real-time performance of the action recognition we distinguish three layers of data: center of mass, end effectors and skeleton joints. By the means of a motion tracker system, the live participant is projected into the virtual environment. The autonomous inhabitants of the virtual environment use action recognition for analyzing the performer's actions and react through body expressions implemented with the motion-integration framework.
Version abrégée Les buis de ce travail de recherche sont la modélisation et la reconnaissance d'actions humaines pour des acteurs de syiiilièse. en particulier pour des humains virtuels. La combinaison de ces deux composantes permet d'explorer de riouvclles voies de communication entre le monde réel et des mondes virtuels. Eii cc qui concerne la modélisation d'actions, nous présentons un système d'intégration de mouvements qui pcniict tle niélanger et de fusionner des moteurs d'animation issus de diverses techniques d'animation telles que I'iriierpol;iiiori de postures clefs, la capture de mouvement, l'animation procédurale, la cinématique inverse et I'uiiirii;iiioii basée sur la dynamique, des heuristiques etlou des senseurs. Le système introduit le concept d'agetzts ei tl':\c~rioir.\. Il est optimisé pour I'animation en temps réel d'acteurs de synthèse. Nous traitons les car;icit.rihtiques de l'activité humaine telles que la simultanéité, le mélange et I'initialisation automatique tl'nciioii\. le flux de mise à jour des modèles de squelettes, les liens entre agents et la cohérence spatiale du iiiouvcnierit. ri ce qui concerne la reconnaissance d'actions, nous présentons un modèle hiérarchique de description d'actions Iiuiiiaiiich. Une action est une posture, un geste, une contrainte ou encore une combinaison de ces composantes. D;iiih le but de respecter des contraintes de temps réel, la reconnaissance d'actions exploite trois niveaux de donii6es: le centre de masse, les effecteurs et les degrés de libertés du modèle de squelette. A l'aide d'un système de capture de mouvement, le participant est intégré dans l'environnement virtuel. Les agents autonomes de l'environnent vinuel utilisent la reconnaissance d'action pour analyser l'activité du participant réel. Leurs coiiiporternents et réactions sont réalisés à l'aide du système d'intégration de mouvements.
Contents Acknowledgment... 5 Abstract... 7 Version abrégée... 9 Contents... 11 1. Introduction... 15 1.lMotivation... 15 1.2Contribution... 17 1.3 Document Structure... 17 1.4 List of Abbreviutions... 18 2. Virtual Reality peripherals... 19 2.1 Body motion capture... 19 2.2 Hand Motion Capture...-20 2.3 Virtual Reality Display system... 21 2.4 Manipulation Device... 22 3. State of the Art... 23 3.1 Animated environments... 23 3.1.1 IMPROV... 23 3.1.2 JACK... 24 3.1.3 Humarz Athletics... 24 3.1.4 L-systems... 25 3.1.5 Humun motion capture... 26 3.2 Interactive Environments... 26 3.2.1 ALIVE... 26 3.2.2 Virtuul PAT... 28 3.2.3 Conversutionul Charucters... 29 3.3Conclusion... 30
.... 4 Animation Framework 31 4.2 Virtual Humans... 32 4.2.1 Agents. Activity. Perception... 32 4.2.2 Human Models... 33. 4.3 Global Structure... 34 4.4Actiona... 35 4.4.1 Scope... 36 4.4.2 Priority modes... 38 4.4.3 Local Datahase... 39 4.4.4 Mixing... 40 4.4.5 Blended Mode... 42 4.4.6 Transitions... 44 4.5 Motion Flow Schemes... 45 4.6 Agent Attachment... 51 4.7 Spatial Coherence... 52 4.8 A utomatic parameter determination... 55 4.9 Floor-contact enforcement... 58 4.10 Action sequencing artefact... 60 4.IIActioncloning... 61 4.12Conclusion... 61 Action Synthesis... 63 5.1 Body-posture actions... 63 5.1.1 Re-initializing (SA- RESET)... 63 5.1.2 Key-fr-aming (SA-KEYFRAME)... 67 5.2 Body-gesture actions... 69 5.2.1 Positioning (SA-SPIN)... -69 5.2.2 Walking (SA- WALK)... 71 5.2.3 lmitating (SA-IMITATE)... 73 5.2.4 Breathing (SABREATHE)... 76... 5.2.5 Looking (SA- LOOK I 77 5.2.6 Falling (SA- FALL)... 78 5.3 End-effector actions... 79
5.3.1 In~~erse Kinematics (SA-INVKIN)... 79 5.3.2 Reaching (SA- REACH)... 82 5.4 Object inter-actions..,... 84 5.4.1 Object Grasping (SA-GRASP)... 85 5.4.2 Multi-Agent Object Grasping (SA- MGRASP)... 88 5.4.3 Carrying (SA- PASTE)... 95 5.5 Real-time motion capture... 97 5.5.1 Human motion capture (SA- HMC)... 97 5.5.2 Hand motion capture (SA- GLOVE)... 98 5.6 External provider actions... 99 5.6.1 Motion-import (SA-VLNET)... 100 5.7Conclusion... 102 6. Action Analysis... 103 6.1Motivation... 103 6.2 Application Fields... 104 6.3PreviousWork... 105 6.4 Recognition mode1... 106 6.4.1 Recognizahle Actions... 106 6.4.2 Relevant Recognition Data... 107 6.4.3 Action Primitives... 109 6.4.4 Action Database... 109 6.5ActionRecognition... 111 6.5.1 Recognition algorithms... 111... 6. 5.2 Recognition Pe@ormance 11 3 6.6Conclusion... 114 7. Implementation... 115 7.1Libraries... 115 7.2 Animation Testbed... 117 7.3Conclusion... 123... 8.1 Facial Expressions 125
8.2 Perceptions... 126 8.3 Real-time Shadows... 126 8.3.1 Object Flattening... 127 8.3.2 Object projection... 129 8.3.3 Results... 133 8.4Conclusion... 135 9. Case Studies... 137 9.1 Guided Walk4hrough... 137 9.2 Meet Mary at the virtual shop... 138 9.3 No Smoking, please... 140 9.4 Interactive fighting... 141 9.5Interactivedancing... 146 9.6Discussion... 150 9.6.1 Event 1 Action associations... 151 9.6.2 Reulistic behavior... 151 9.6.3 Need of Head Mounted Displuy (HMD)... 151 9.6.4 Time... 152 9.6.5 Systern setup... 152 9.6.6 Feedbuck... 152 Y. 6.7 User- Sensitiidy to details... -152 11. References... 155 12.1 Matrix and vector conventions... 161 12.2 Articulated chain modelling... 161 12.3 Joint DOF to Matrix transformation... 164 Color Illustrations... 165 Curriculum Vitae... 171