ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

126
ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE SIMULATION THÈSE N o 0000 (1998) PRESENTÉE AU DÉPARTEMENT D’INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE POUR L’OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES PAR LUCIANA PORCHER NEDEL MSc. In Computer Science, Federal University of Rio Grande do Sul, Brésil de nationalité brésilienne Lausanne, EPFL 1998

Transcript of ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Page 1: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

ANATOMIC MODELING OF HUMAN BODIES USINGPHYSICALLY-BASED MUSCLE SIMULATION

THÈSE No 0000 (1998)

PRESENTÉE AU DÉPARTEMENT D’INFORMATIQUE

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE

POUR L’OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES

PAR

LUCIANA PORCHER NEDELMSc. In Computer Science, Federal University of Rio Grande do Sul, Brésil

de nationalité brésilienne

Lausanne, EPFL1998

Page 2: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2

“You will make nothing but confusion in yourdemonstration of the muscles and their positions,beginnings and ends, unless first you make a demonstrationof the fine muscles by means of threads; and in this way youwill be able to represent them one above another as naturehas placed them; and so you will be able to name themaccording to the member that they serve, that is, the moverof the point of the big toe, and of the middle bone, or thefirst bone, etc.

And after you have given these details you will show at theside the exact shape and size and position of each muscle;but remember to make the threads that denote the musclesin the same positions as the central lines of each muscle andin this way these threads will show the shape of the leg andtheir distance in rapid movement and in repose.”

Leonardo da Vinci (1452-1519)

Page 3: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3

Acknowledgments

First, I would like to thank my Thesis supervisor Prof. Daniel Thalmann for hisinvaluable guidance and support. Many thanks also to Dr. Ronan Boulic for his help,interest and collaboration during this research.

I would like to thank all the members of LIG for their collaboration, specially ThierryMichellod for his interest and dedication to the design of the human body, Walter Maurelfor his suggestions and our fruitful discussions, Olivier Paillet for the design of the BodyBuilder Plus interface, Jianhua Shen for the work on the development of Body Builder,Ronan Boulic, Ik Soo Lim and Marcelo Kallmann for the manuscript review, NathalieFarenc for the abstract’s translation to French and for the informations exchanged aboutOpen Inventor libraries, Selim Balcisoy and Mireille Clavien for their help with videoequipment and Tom Molet for the help and support with the use of Bodylib. I would liketo thank also the colleagues Joaquim Esmerado, Marcelo Kallmann, Nathalie Farenc,Soraia Musse, Elsa Schweiss, Cédric Delon, Tolga Çapin, Srikanth Bandi, Maja Jovovic,Christian Miccio, Amaury Aubel and Luc Emering for their constant encouragement onthe last days. A special thanks also to Josiane Bottarelli, the secretary of LIG, for heravailability and precious help.

I would like to thank also the staff of MIRALab, especially Prof. Nadia Thalmann fortheir collaboration and support.

Many, many thanks to my husband Niuton Zinn Severo for his invaluable support andlove and for the sacrifice of three years and a half of his own professional career to staywith me in Switzerland. I also extend my thanks to all my family, mainly my parents andsisters, for the encouragement and especially my mother for the hundreds of daily e-mailsthat have helped to reduce the distance…

I would like to thank some friends that were very near (in reality or virtually) during this3.5 years of “exile”: Val, Xuxu, Bruno, Rafa, Tila, Timo, Gérson, Lucianinha, Soraia,Milton, Dê Bande, Rogério, Nara, Paulo, Sílvia, Vera and Cléo. Finally a would like tothank all the friends in Lausanne for having, in same way, replaced my family: Paulo,Elsa, Rafael, Rebeca, Raquel, Carlinhos, Fátima, João, Arturzinho, Chiquinha, Leandro,Cristina, Luana, Liz, Viviane, Eytan, Pedro, Gabriel, Márcio, Rita, Mariana, André,Alexandre, Leni, Olivier, Aroldo, Soraia, Milton, Diógenes, Lucia, Igor, Ivan, José Paulo,Marcelo, Suzane, Pedone, Cecília, Joca, Nathalie, Manú, Nabih, Nezha, Amane, Kenza.

This work was supported by CAPES (Fundação Coordenação de Aperfeiçoamento dePessoal de Nível Superior), Brazil and by the Swiss National Foundation for ScientificResearch.

Page 4: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4

Abstract

The simulation of the human being has been an important research goal inComputer Graphics. Three main application classes justify this interest: the production offilms for entertainment; the simulation of situations where human beings are involved;and the development of virtual environments with the embedding of real-timerepresentation of human participants.

The first goal of our work is the improvement of the realism of human motion.Considering the complexity of the human body, we can say that the realism of motionneeds to be improved not only from the joint point-of-view, but also in relation to thebody deformation. We propose a method to simulate human beings based on anatomyconcepts, because we believe that the closer our model is from reality, the better will beour results. Using this approach we have developed our human representation method,divided into three layers: the rigid body conception from a real skeleton, the muscledesign and deformation based on physics concepts, and the skin generation.

Our skeleton model was designed in two levels. The first one consists in atopological tree structure with generic information about the joints, their degree offreedoms, their position, the limit angles of each articulation and so on. The second levelis the bones, that are attached to the joints for animation purposes. The global positions ofthe joints are defined based on the reconstructed three-dimensional skeleton while thelimits of the joint angles are fixed from the observation of this skeleton animation.

The muscle representation was also assembled in two levels. In the same way asthe skeleton, we have developed a structure to represent the muscle actions andattachment to the bones and another one to simulate the muscle shape. We present aphysically-based model to simulate fusiform muscles represented only by their externalsurfaces. The deformation is performed with the data coming from the muscle actionstructure and with the aid of a mass-spring model applied on the muscle surface.

The Body Builder Plus system is proposed to integrate the skeleton and themuscles. Our goal in developing this system is to allow the construction of anatomically-based humans, made exclusively of bones and reconstructed muscles. The combination ofbones and muscles with implicit surface primitives is also proposed in the system. A B-spline surface is used to simulate the skin covering all the body.

Page 5: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5

Résumé

La simulation de l’être humain est un important sujet de recherche en Infographie.Trois principales catégories d’applications justifient cet intérêt: la production de filmd’animation, la simulation de situations impliquant la présence d’êtres humains, et ledéveloppement d’environnements virtuels comportant la représentation des participantsen temps réel.

Le principal objectif de notre travail a été l’amélioration du réalisme dumouvement humain. Etant donné la complexité du corps humain, on peut dire que leréalisme du mouvement a besoin d’être amélioré non seulement du point de vue desarticulations mais aussi sur le plan de la déformation du corps. Nous proposons uneméthode basée sur des concepts anatomiques pour simuler les êtres humains en partantdu principe que, plus le modèle est proche de la réalité, meilleurs seront les résultatsobtenus. En utilisant cette approche nous avons développé notre méthode dereprésentation humaine, divisée en trois couches : la conception de la partie rigide ducorps à partir d’un squelette réel, la conception et la déformation des muscles basées surdes concepts physiques, et la génération de la peau.

Notre modèle de squelette a été conçu en deux parties. La première consiste enune structure arborescente topologique avec des informations génériques concernant lesarticulations, leurs degrés de liberté, positions , limites angulaires, etc. Le second niveauest composé des os qui sont attachés aux articulations à des fins d’animation. Unsquelette tri-dimentionel en image de synthèse a permis de définir les positions globalesdes articulations. Les limites des articulations ont été fixées à partir d’observations dusquelette en mouvement.

La représentation des muscles a également été définie en deux niveaux. De mêmeque pour le squelette, nous avons développé deux structures, une pour représenter lesactions des muscles et leurs attachements aux os et l’autre pour simuler la forme dumuscle. Nous présentons un modèle basé sur la physique pour simuler les musclesfusiformes modélisés simplement par leur surface externe. La déformation est produite àpartir des données provenant des actions des muscles et d’un modèle masse-ressortappliqué sur la surface du muscle.

L’application Body Builder Plus est proposée afin d’intégrer le squelette et lesmuscles. Notre objectif en développant ce système est de permettre, soit la constructionde corps humains basés sur l’anatomie à partir exclusivement d’os et de muscles, soit lacombinaison des os et des muscles avec des primitives de surface implicite. Une surfaceB-spline simule la peau sur tout le corps.

Page 6: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

6

Page 7: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

7

Contents

ACKNOWLEDGMENTS.................................................................................................3

ABSTRACT .......................................................................................................................4

RÉSUMÉ ............................................................................................................................5

CONTENTS .......................................................................................................................7

1. INTRODUCTION .......................................................................................................11 1.1. Motivation .............................................................................................................11

1.1.1. Importance and Relevance...............................................................................11 1.1.2. Problematics.....................................................................................................12 1.1.3. Applications .....................................................................................................12

1.2. Aims and Objectives.............................................................................................13 1.3. Organization .........................................................................................................15

2. REVIEW.......................................................................................................................17 2.1. Introduction ..........................................................................................................17 2.2. Human Body Modeling and Animation .............................................................17

2.2.1. Evolution of Human Animation ......................................................................17 2.2.2. Stick Figure Model ..........................................................................................18 2.2.3. Surface Models ................................................................................................18 2.2.4. Volume Models................................................................................................19 2.2.5. Multi-layered Models.......................................................................................20

2.3. Deformable Models ..............................................................................................24 2.3.1. Geometric Deformation Methods ....................................................................24 2.3.2. Physically-Based Methods...............................................................................29 2.3.3. Hybrid Methods ...............................................................................................35

2.4. Conclusion.............................................................................................................37

3. ANATOMICALLY-BASED SKELETON DESIGN ..............................................39 3.1. Introduction ..........................................................................................................39 3.2. BODY Structure Description ................................................................................39 3.3. Anatomic Template ..............................................................................................41 3.4. Review of the BODY Degrees of Freedom (DOF) .............................................43

3.4.1. DOFs of the Lower Body.................................................................................44 3.4.2. DOFs of the Upper Body: The Spine...............................................................46 3.4.3. DOFs of the Upper Body: Thorax and Arms...................................................49 3.4.4. Local Frame of the Hands................................................................................51 3.4.5. Local Frame of the Head..................................................................................51

Page 8: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

8

3.5. Why Representing Bones?...................................................................................52 3.6. Conclusion.............................................................................................................53

4. MUSCLE MODEL......................................................................................................55 4.1. Introduction ..........................................................................................................55 4.2. Muscles Physiology and Anatomy ......................................................................55

4.2.1. Structural Description ......................................................................................56 4.2.2. Activation and Contraction..............................................................................56 4.2.3. Types of Contraction........................................................................................58 4.2.4. Skeletal Muscle Architecture...........................................................................59 4.2.5. Tendons and Ligaments ...................................................................................59

4.3. Action Lines ..........................................................................................................60 4.3.1. Muscle Force Modeling ...................................................................................60 4.3.2. Our Approach...................................................................................................61

4.4. Muscle Shape Design............................................................................................63 4.4.1. Reconstructed Muscles ....................................................................................63 4.4.2. From Ellipsoids to Muscles .............................................................................66 4.4.3. Manual Shape Input .........................................................................................67 4.4.4. Resampling Method.........................................................................................67

4.5. Deformation Model ..............................................................................................69 4.5.1. Elasticity ..........................................................................................................70 4.5.2. Curvature and Torsion .....................................................................................71 4.5.3. Geometric Constraints .....................................................................................73

4.6. Motion Simulation................................................................................................74 4.6.1. Numerical Integration Through Time..............................................................74 4.6.2. Our Implementation.........................................................................................75

4.7. Some Details about the Implementation ............................................................77 4.7.1. How to Build a Deformable Muscle? ..............................................................77 4.7.2. The Parameters.................................................................................................794.7.3. The Data Structure ............................................................................................79

4.8. Animation Examples............................................................................................80 4.9. Conclusion.............................................................................................................83

5. BODY BUILDER PLUS, THE INTEGRATION TOOL ........................................85 5.1. Introduction ..........................................................................................................85 5.2. Overview ...............................................................................................................85

5.2.1. Volume Primitives ...........................................................................................86 5.2.2. The Extremities................................................................................................86 5.2.3. The Skin...........................................................................................................86

5.3. System Organization ............................................................................................89 5.3.1. Architecture......................................................................................................89 5.3.2. Data Structure ..................................................................................................90 5.3.3. The Motion Motor Algorithm..........................................................................91

5.4. How to Build an Anatomically-Based Body?.....................................................94 5.4.1. Skeleton Definition ..........................................................................................94 5.4.2. Adding Bones ..................................................................................................94 5.4.3. Creating Muscles .............................................................................................95

Page 9: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

9

5.4.4. Skin Generation ...............................................................................................96 5.5. Results and Discussion.........................................................................................97 5.6. Conclusion.............................................................................................................99

6. CONCLUSIONS........................................................................................................101 6.1. Introduction ........................................................................................................101 6.2. Contribution .......................................................................................................101 6.3. Potential Applications........................................................................................102 6.4. Future Work .......................................................................................................104

APPENDIX A: TEMPLATE DEFINITION FILES.................................................107 A.1. Template File (newton.tpl)................................................................................107 A.2. Joint Limits File (newton.jts) ...........................................................................110

BIBLIOGRAPHY..........................................................................................................113

Page 10: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

10

Page 11: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

11

1. Introduction

This chapter provides the motivation for this research, as well as its mainobjectives. The significance of the research on human modeling and animation ispresented, the difficulties and problems are discussed and some applications that justifythe investigations are listed. After the introduction on the area, aims and objectives areglobally presented. The organization for the subsequent chapters is also included in thelast section.

1.1. Motivation

1.1.1. Importance and Relevance

For years, modeling and animation of the human being has been an importantresearch goal in Computer Graphics. Early, humans were represented as simplearticulated bodies made of segments and joints with a kinematical model to simulatethem. Then, dynamic models have been used to improve the continuity and fluidity of themovement. But simple skeleton-based models are too limited for realistic humansimulation.

It’s inherent to the human being trying to simulate the nature as best as possible.Therefore, normally, the first objective on human work is to succeed in his research forthe perfection and the best way to dominate new things are try to reproduce it. It isexactly the case for the representation of human appearance and behavior; and the historyalready reveals a great amount of interest on this subject. Earlier, traditional techniqueslike clay sculpturing, hand drawing and painting were used for this purpose. With theadvent of technology, still photographs and movies came, which are more like copyingmechanisms limited to 2D reproductions. Now, with computers, we can perform the taskof synthesis and reproduction with much more creativity and precision both in 2D and3D.

For instance, simple skeleton-based models are limited for human picturesimulation when, in fact, a human body is a collection of complex rigid and non-rigidcomponents very difficult to model. Considering the complexity of the human structureand the fact that our eyes are specially sensitive to familiar things (e.g., our own image),people became very exacting concerning human simulation. Consequently, researchersbegin to use the human anatomy know-how to produce human models with more realisticbehavior.

Page 12: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

12 1. Introduction

1.1.2. Problematics

The problems involved on the simulation of human beings can be divided on twomajor levels: the creation of the human shapes (appearance); and the motion of the humanskeleton.

Modeling a human is a great challenge if we consider the numerous parts neededto compose a body. The first step is the basic structure modeling, the definition of thejoints, their positions, orientations and the geometric model that will describe the bodyhierarchy. After, we need to think about the body volume. There are different methods toimplement it (e.g. [Thalmann 96], [Scheepers 97], [Wilhelms 97]), but the idea is to finda way to simulate the presence of muscles, bones, organs, fat tissues and so on. On top ofthis, we can use a parametric surface to simulate skin. With these three elements we canreach a good representation of a body, but this is not enough. The simulation of the face,hair, hands, feet, eyes, teeth, lips, etc. is also essential for the modeling of a completehuman.

Simulate human motion is a complex task, essentially for two reasons: as themovement is rather intuitive, it is quite impossible to take into account all the linksinvolved in a simple movement, its natural balance and its multiple interactions with theenvironment. In fact, it happens because the coordination of all these factors occursunconsciously in reality and also because the complex articulations of the human bodyinvolve more than 200 degrees of freedom [Zeltzer 82]. The second reason relates thenature of human behavior. Each person has a unique way to be, to express his/herpersonality, to walk. Even if two people are similar in their physical aspects, they may bevery different in their behavior. To simulate this aspect, is a hard but necessary task inrealistic human body animation.

It is also important to consider the close relation between the model and itsanimation. The complexity of the model is related to the complexity of its animation. Inthis sense, the body model can take into account more data than the purely geometricones: physical properties such as mass, density, etc., or mechanical constraints such as themaximum angle of the articulations [Korein 82]. If these data are not associated to themodel, a lot of checks and corrections of the animation will be required. It is essential toplan this when starting to model the human body. In fact, these problems were earlydetected in the studies of choreography notation of Laban (1928) [Tost 88]. This type ofresearch is the basis of the human body modeling in computer animation [Badler79][Calvert 80].

1.1.3. Applications

Three main application classes justify this interest: the production of films forentertainment, didatic or publicity purposes; the simulation of situations where humanbeings are involved, like automobilistic engineering, robotics, ergonomic evaluations ofcomputer-based designs, medical applications, etc.; and for embedding real-timerepresentations of human participants into virtual environments.

Page 13: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

1.1. Motivation 13

On film productions, two different objectives can be fixed: the creation of acharacter and the reconstruction of a real person. The philosophy of development used onthe both cases are completely different. While on the first case, we are creating fictitiouscharacters, on the second one, real actors are reconstructed. One of the first examples ofthis technique can be seen in the film “Rendez-vous à Montreal” (1987) where MarilynMonroe and Humphrey Bogard were recreated [Thalmann 87]. Concluding, the maindifference between this two kinds of productions is that on the first case the work is veryflexible and creative and is difficult to analyze comparatively the results. For the otherhand, simulate known actors is a much more difficult task, because we need to reproducephysical characteristics as well as behaviors and almost all the people are able to judgethe results.

The simulation of real-life situations where humans are involved is being moreand more exploited lately, and their usefulness is undeniable. On engineering, we canexemplify with the analysis and simulation for virtual prototyping and simulation-baseddesign. On training, virtual humans can be used for skill development, team coordination,and decision making [Badler 97]. On ergonomics, the simulation of men at work arebecoming an important area of application. The medicine is one of the most interestingareas where we can use virtual humans simulation for orthopedic rehabilitation, aid tohandicap persons, clinical analysis of abnormal movement patterns [Calvert 1982],surgery simulations, and so on.

Computer Graphics right now has a strong trend to develop real-time applicationsand there is a need for virtual human actors in many applications. For example, thesimulation of virtual environments, where people can live and work in a virtual place forvisualization, analysis, training or just experience purpose. Efficient tele-conferencingusing virtual representation of participants can reduce transmission bandwidthrequirements. Thalmann et al. [Thalmann 95] illustrate a teleconferencing applicationwhere multiple participants from distant sites can share, move and act within the same 3Denvironment. On education, we have distance mentoring, interactive assistance andpersonalized instructions. On military causes, researches have been made on battlefieldsimulation with individual participants, team training and peace-keeping operations. Ongame industry, people are using real-time characters with actions and personality for funand profit.

A new challenge on the application of human being simulation is the interactionbetween agents and avatars, inserting real-time humans into virtual worlds with virtualreality. An agent is a virtual human figure representation created and controlled bycomputer programs while an avatar is a virtual human controlled by a live participant. Anexample of this kind of application is shown by Balcisoy and Thalmann [Balcisoy 97].

1.2. Aims and Objectives

Modeling and animation of a human figure can be divided into three main parts:face, body and hand. The face and hand need special attention because the problemsincluded in their modeling and animation are specific. In this work, we are speciallyconcerned by the human body aspect. Our first objective is the improvement of the

Page 14: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

14 1. Introduction

complexity and the realism of motion. But, realism of motion needs to be improved notonly from the joint point-of-view as for robots, but also in relation to the deformations ofbodies. For this reason, we propose the modeling of a body based on anatomic concepts.

Human body can be defined briefly as a composition of skeleton, muscles, fat andskin. To implement it, we have used a multi-layered model containing the skeleton layer,the intermediate layers to simulate the body volume (muscles, tendons, fat, veins and soon) and the skin layer. In order to complete this work, we have studied and designed eachcomponent of the model in separate, as outlined below where we present the main aimsand objectives of this thesis.

Investigation on skeleton modeling and anatomy concepts, looking for the best positionsand orientations to represent joints

The first component of our human model is the skeleton, composed by bonesattached with each other by joints. Our work started from two existing models: a three-dimensional skeleton composed by bones, but without movement nor any associated dataconcerning the articulations, and the basic skeleton structure developed at our lab andstressed by Boulic et al. [Boulic 91, 94]. This skeleton model is based in joints positionsand orientations and includes a topological tree structure to represent a vertebrate bodywith predefined mobility, but do not have bones associated.

Based on the data described above and in some anatomic concepts, we havestudied and developed a new human skeleton, using the model based in articulations torepresent our own humanoid. From the three-dimensional skeleton and accordingly withour studies on anatomy, we redefined the joints positions and orientations. Concerningthe visual aspect, we have added bones to the model, not only for esthetic purposes butalso because it is very useful. For example, the visualization of the skeleton duringanimation, allow the avoidance of forbidden postures, a tedious task when only based ona stick figure.

Investigation of an appropriate model to simulate muscular actions to generate humanbody deformation

The second layer of our multi-layered model consists of the volume primitivesused to represent muscles, tendons, fat, etc. We have concentrated our studies intomuscles representation and in our approach, they are designed on two levels: the muscleaction and the muscle shape deformation. To mechanically quantify the force that amuscle produces over a bone, we represent muscles by lines, called action lines. Themuscle deformation will depend of the alterations on the action lines length.

Study of deformation methods and muscles simulation to allow the development of amethod to simulate deformable muscles

Methods to represent non-rigid objects are an important research area in ComputerGraphics. Along the years, a lot of different methods have already been proposed tosimulate this kind of objects. These methods can be divided in three categories: particle

Page 15: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

1.2. Aims and Objectives 15

systems, geometric deformation methods and physically-based methods. Concerningstrictly the simulation of muscles deformation, we can identify three different approaches:biomechanical models, physically-based models and geometric models.

After the study of the great part of the generic deformation methods and musclesimulation models, we propose an alternative method to simulate muscles motion aiminggood visual results. That is, we are not attempting perfect simulation, but building anuseful tool to interactive applications. We have chosen a physically-based model becausewe believe we can obtain more fluid and realistic movements using the same principlesused in nature to accomplish it.

Integration of the skeleton and deformable muscles with an existing environment for bodymodeling

To integrate our joints-based skeleton, the bones, the muscles and the skin, wehave extended the Body Builder system [Shen 96], originally designed for deformablehuman bodies with a stick skeleton, muscles and fat tissues represented by metaballs, andthe skin represented by a B-spline surface. Our extended system, Body Builder “Plus”allows the construction of an anatomically-based model of humans, created entirely withbones and physically-based deformable muscles. Another feature of this new system is toallow the mixing of modeled deformable muscles with metaballs to represent part of themusculature and the fat tissues. The idea, in this case, is to use physically-based musclesto simulate only the most important muscles, concerning the external appearance.

1.3. Organization

In Chapter 2 we review the literature directly related and necessary to thedevelopment of this work. We present the researches on human body modeling andanimation, reviewing briefly the evolution of human animation and the most used modelsto simulate human bodies. Some methods to simulate deformable objects were classifiedand presented. The application of these techniques on muscle simulation were presentedas frequently as possible.

In Chapter 3 we present the definition and modeling of the skeleton. The basicskeleton structure we have used is briefly described, as well as the new anatomic templatewe have created. An exhaustive study about every joint was made, explaining thefunction of each joint and highlighting their new positions and orientations. Theusefulness of the bones is also presented.

In Chapter 4 we describe the work corresponding to the muscles, including someaspects about physiology and anatomy, the muscle shape design, the deformation modeland the motion simulation. Our muscle model is divided in two layers: the representationof the muscle action; and the deformation of the shape. We present our implementation ofaction lines and the method chosen to provide deformations. Some details about theimplementation are discussed as well as the animation examples are presented.

In Chapter 5 we present the integration of the skeleton with muscles and skininside a software designed to model human bodies. We provide an overview of the

Page 16: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

16 1. Introduction

system, highlighting mainly the skin model used to cover de body. Some details about theimplementation, like the system architecture, the data structure and the motion motoralgorithm are discussed. Finally, we present our results and the procedure to build ananatomically-based body using our integration tool.

In Chapter 6 we present the main contributions of this work, the potentialapplications and some possible future directions of this research.

Page 17: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

17

2. Review

2.1. Introduction

This chapter provides a brief review of the main existing methods for human bodymodeling and animation. As our aim is the development of a new human body model, weconsider that it is convenient to present the existent work in this area. We begin bypresenting briefly the evolution of human animation. Concerning the body modeling,important efforts have been developed to represent and deform human body shape. Thethree-dimensional models presented until now can be classified into four categories: stickfigures models, surface models, volume models and multi-layered models. From Section2.2.2 to 2.2.5 we describe these four categories classifying some existing systems.

Considering that our biggest interest in human modeling relates to the muscledeformation methods, we have fulfilled an exhaustive study on deformable models andmuscle simulation techniques. The result of this study is the classification of severaldeformation methods in three main categories: geometric, physically-based and hybriddeformation methods, in view of each category is even divided in sub-categories. Section2.3 summarizes these deformation methods (a complete version is available as a technicalreport [Nedel 97]) presenting as frequently as possible the applications of the techniquesto simulate muscles.

Finally, some concluding remarks are given.

2.2. Human Body Modeling and Animation

2.2.1. Evolution of Human Animation

There are two research directions in human modeling: the development of newmotion algorithms and the realism of the body shape. The research on human animationstarted in the seventies [Badler 79] with the representation of humans by stick figureswith only few articulations joining the segments animated by a kinematic model. Moreaccurate models was developed, with bodies composed by more joints and segments andimprovements on some intricate regions of the body, like the shoulder [Thalmann 91] andthe spine [Monheit 91].

To achieve more realistic movements, researchers introduced physically-basedmodels, and because humans do not act alone, they have also introduced behavioralmodels [Badler 92] to take into account the individuality of each character. Morerecently, the evolution of motion control models has made possible to take into account

Page 18: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

18 2. Review

the interactions between actors [Becheiraz 96], actors with the environment and actorswith real humans [Balcisoy 97]. Recent research includes also walking [Boulic 90],jumping [Arai 93], ballroom dances [Lake 91], etc. To conclude, the goal of all theseapplications is looking for realism of the desired motion.

2.2.2. Stick Figure Model

Systems using stick figure models consist of a hierarchical set of rigid segments(limbs) connected at joints. These models are called articulated bodies and may be moreor less complex, depending on the number of limbs and joints involved. Each joint canhave up to three degrees of freedom (DOF) and the model can be more or less complex,reaching more than 200 DOFs as the real human skeleton [Zeltzer 82]. The mainadvantage of the stick figure model is that the motion specification is very easy. It is onlynecessary to give for each joint a three-dimensional transformation matrix correspondingto its three DOFs. On the other hand, this kind of representation produces ratherunrealistic simulations. Its lack of volume makes the perception of the depth difficult andcauses ambiguities in the pictures. Several movements are impossible to represent, liketwists. An example of modeling and animation of a stick figure with 32 segments and 15joints (“Hipi” - from “Dream Flight”, 1982) is presented in Figure 2.1.

Figure 2.1: Hipi flying (from Dream Flight) [Thalmann 90]

2.2.3. Surface Models

Surface models are conceptually simple, containing a skeleton surrounded bysurfaces composed of planar or curved patches, simulating the skin. Several models havebeen developed since the sixties when Fetter [Fetter 82] introduced his first man modelcomposed of only seven segments. A second, more fully articulated man was introducedin 1969, then the third man and in 1981, the fourth man and woman, in which severallevels of complexity of the model were available. Other models are based onanthropometric data and presented by Dooley [Dooley 82].

Page 19: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.2. Human Body Modeling and Animation 19

The concept of Joint-dependent Local Deformation (JLD) operators has beenintroduced by Thalmann and Thalmann [Thalmann 87] and is based on specific localdeformation operators depending on the joint nature. These JLD operators control theevolution of surfaces and may be considered as operators on these surfaces. Each JLDoperator will be applicable to some uniquely defined part of the surface, which may becalled the domain of the operator. The value of the operator itself will be determined as afunction of the angular values of the specific set of joints that defines the operator. Figure2.2 shows an example of human character generated with JLD operators.

Figure 2.2: The virtual Marilyn, generated with JLD operators [Thalmann 90]

Komatsu proposes a model with a skeleton structure represented by a stick figurewith 14 joints, and free-form surfaces covering the skeleton, like a skin [Komatsu 88].Every part of this skin was defined by a set of biquartic Bézier surfaces, and all the partswere smoothly combined. Adjusting the surface control points according to the jointangles, bending, twisting and swelling can be simulated.

2.2.4. Volume Models

The volume models approximate the structure and the shape of the body with acollection of primitive volumes, such as cylinders [Evans 76][Potter 75], ellipsoids[Herbison-Evans 74], or spheres [Badler 78]. A few cylinders or ellipsoids can capturethe surface and longitudinal axis properties of many body parts, although the similaritiesare quite stylized, like cartoons. Those models were developed at the early of humananimation when graphic systems had very limited capabilities. They cannot producebetter results than surface models, and suffer from inadequate control mechanism of largeset primitives during the animation.

A recent and interesting example of human representation by the use of volumeprimitives was presented by Yoshimoto [Yoshimoto 92]. He proposes the use ofmetaballs, that consider the volume as a potential function and produce good and naturalresults, to create very realistic ballerinas. About 500 metaballs and some ellipsoids wereused to design the ballerina’s body and costume shown in Figure 2.3.

Page 20: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

20 2. Review

Figure 2.3: Ballerina made of metaballs [Yoshimoto 92]

2.2.5. Multi-layered Models

Recently, multi-layered models to represent human figures have been developed.In this approach, normally a skeleton is used to support intermediate layers that simulatethe body volume (bones, muscles, fat tissues and so on) and the skin layer. Sometimes aclothing layer can be also considered. A layer can be defined as a conceptual simulationmodel which maps higher level input parameters into lower level outputs. The animatorspecifies various constraint relationships between the layers and can control the globalmotion from a high level.

A good example of layered construction and animation of deformable charactersare presented by Chadwick et al. [Chadwick 89]. In their approach, the geometric skin isnot simply fitted to an articulated skeleton. This captures the fluid squash and stretchbehavior of the surface geometry by providing volumetric muscle bulging, dynamic fattytissue response, and creasing at the joint. A four layered model from high to low levelswas designed: the motion specification, referred to as the behavior layer in the system; themotion foundation, represented by an articulated skeleton layer; the shape transition,squash and stretch, corresponding to the muscles and fatty tissues layer; and the surfacedescription, surface appearance and geometry, corresponding to the skin and clothinglayer.

The skeleton layer provides the foundation for controlling the motion of thecharacter and is composed of a tree structure hierarchy of robotics manipulators, roboticsjoint-link parameters, joint angle constraints, and physical attributes. The muscle layer isadded on top of and attached to the skeleton hierarchy. The foundation for the muscle andfat are based on Free Form Deformations (FFDs) [Sederberg 86]. The control points ofthe deformations are constrained by the positioning (joint angles) and forces (jointtorques) applied to and by the underlying skeleton. Then, these deformations act to glue

Page 21: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.2. Human Body Modeling and Animation 21

and deform the geometric skin to the underlying skeleton. The skin layer represents theactual visible surface geometry to be rendered. Figure 2.4 shows an example of humancharacter generated using this layered approach.

Figure 2.4: Bragger Bones, a character designed by the Critter system [Chadwick 89]

The Body Builder system developed by Shen [Shen 95, 96], consists of a highlyeffective multi-layered approach for design and animation of realistic human bodies. Thislayered model is based on three levels, similar to those proposed by Chadwick et al.[Chadwick 89]. The first layer is composed by an articulated skeleton hierarchy with onlyarticulated line segments whose movements are pre-specified. It may be a dynamicskeleton governed by rigid body, physical simulations, or a geometric one, animated bykey-framing. The second layer is composed by volume primitives designed to simulatethe gross behavior of bones, fat and muscles. These primitives fall into two categories:blendable volume which will blend with other blendable volumes in the same group;unblendable volume which will not blend with other primitives. The volume primitives,arranged in an anatomically-based approximation, are attached to the proximal joints ofthe skeleton.

The third layer is the skin surface of the body which is automatically derived fromthe position and shape of the first and second layers. An implicitly surface defined byvolume primitives is sampled with ray-casting on semi-regular cylindrical grids. Thesesample points are used directly as cubic B-spline control points to smooth out the skinsurface. Individual B-spline patches are triangulated, and these triangular meshes arestitched together to connect different parts of the human body for final rendering andoutput. The Body Builder system is characterized by simple, efficient algorithms, andrealistic, robust deformations. The system provides an intuitive tool for animators toefficiently design a rich variety of human shapes. Figure 2.5 shows the various stages inthe construction of a layered human body model .

Page 22: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

22 2. Review

Figure 2.5: Stages in the construction of the human body model [Shen 96]

Scheepers et al. [Scheepers 97] presented an approach to human figure modelingsimilar to the one taken in artistic anatomy - by analyzing the relationship betweenexterior form and the underlying structures responsible for creating it, surface form andshape change may be understood and best represented. They considered the influence ofthe musculature on surface form and developed muscle models which react automaticallyto changes in the posture of an underlying articulated skeleton. The first layer of theScheepers’ model is the skeleton. They have developed a procedural model for skeletalsupport, implemented in AL [May 96], a procedural modeling and animation languagewith facilities for defining and manipulating articulated models.

Muscles are the second layer and were the first goal of this work. Ellipsoids wereused to represent muscle bellies because they consist of natural and convenient primitivesthat can be scaled along their three major axes to simulate bulging. Many skeletal musclesare fusiform and act in straight lines between their points of attachment. For thesemuscles, a simple model with relatively few parameters, called the fusiform muscle modelwas used. To simulate the shape of complex muscles that cannot be modeled with thestraight fusiform muscles, a generative approach in which any number of muscle belliesmay be positioned automatically was used, the so-called multi-belly muscle model.Implicit versions of the simple geometric modeling primitives are used to adjust thecontrol points of bicubic patch meshes representing the skin, the third layer of this model.This technique also allows the modeling of fatty tissue between the muscles and the skin -adjusting the radius of influence of the implicit functions allows different thickness offatty tissue deposits to be modeled. Figure 2.6 shows an example of musclereconstruction of the upper arm and torso.

The work developed by Wilhelms and Van Gelder [Wilhelms 97] describes a newmodeling and animation approach for animals and humans that is based on actual three-dimensional representations of individual body components. The body consists of fourtypes of materials: bones are rigidly embedded in segments; muscles are attached tobones; generalized tissue gives shape to regions where detailed bones and muscles are not

Page 23: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.2. Human Body Modeling and Animation 23

used, and for features such as eyes and nails; an elastic overlying triangle-mesh skin isattached to underlying tissues with anchors, but adjusts in response to forces fromneighboring skin vertices.

Figure 2.6: Example of Scheepers’ anatomy-based human model [Scheepers 97]

The skeleton and generalized tissues were modeled as triangle meshes orellipsoids. To model each muscle, a model based on a deformed cylinder was developed.Therefore, each muscle is a discretized, deformed cylinder whose axis is a curve thatproceeds from the midpoint of the muscle origins to the midpoint of the muscleinsertions. The skin is an elastic triangle-mesh surface that is attached to underlyingcomponents but can move relative to them; i.e., a separate, controllably loose layer overunderlying components. Animation involves repetition of the following steps: motionspecification at joints; reposition and deformation of the underlying componentsaccordingly to new positions; mapping of the skin vertices back to world space;application of the iterative relaxation algorithm, adjusting skin vertices to achieve theequilibrium of the elastic membrane forces. Figure 2.7 shows a monkey model with 85body segments, 156 bones, 52 muscles, 54 generalized components and a skin surfacecomposed of about 150,000 triangles.

Other multi-layered models were also developed but there are not stressed herebecause they do not present a direct application on humans modeling. However, theirconcepts can be used to model humanoid characters. Gascuel et al. [Gascuel 91], forexample, propose a general model using a rigid skeleton layer, deformable cylindersassociated with each link of the skeleton to model elastic flesh; and a third layer to modelthe propagation of deformations from one flesh primitive to the others. A geometric skinrepresented by a B-spline surface covers the deformable elements. A sophisticatedexample of layered model was presented by Terzopoulos and Waters to implement facialanimation [Terzopoulos 91]. In this model, an elastic solid simulation consisting of amass-spring lattice of depth three, is attached to a human skull model and deformed bymuscles which take the form of force constraints between points on the skin surface andthe underlying bone. The LEMAN system developed by Turner [Turner 93, 95] isstructured into four layers: skeleton layer, muscle layer, fat and connective tissue layer,

Page 24: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

24 2. Review

and skin layer. The skin surface was implemented as a simulation of a continuous elasticsurface discretized using a finite difference technique [Terzopoulos 87].

Figure 2.7: Anatomical components of a monkey in rest posture: skeleton(white), muscles (red), generalized tissue (purple), and skin (lower right)[Wilhelms 97].

2.3. Deformable Models

The representation of non-rigid objects is an important research area in ComputerGraphics. Along the years, a lot of different methods have been proposed to simulate thiskind of objects. Here, we divide these models in three categories: geometric methods,physically-based methods and hybrid deformation methods.

2.3.1. Geometric Deformation Methods

2.3.1.1. Global and Local Deformations of Solid Primitives

In the method presented by Barr [Barr 84], deformations are easily combined in ahierarchical structure, creating complex objects from simpler ones. The position andnormal vectors in the simpler objects are used to calculate the position and normal vectorsin the more complex forms. A characteristic of this method is the use of global and localdeformations as new hierarchical operations for use in solid modeling. A globaldeformation of a three dimensional solid is a mathematical function F which explicitlymodifies the global coordinates of points in the space. A local deformation modifies thetangent space of the solid.

Differential vectors in the substance of the solid are rotated and/or skewed andthese vectors are integrated to obtain the global position. Tangent and normal vectors onthe undeformed surface may be transformed into the tangent and normal vectors on the

Page 25: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 25

deformed surface. The algebraic manipulations for the transformation rules involve asingle multiplication by the Jacobian matrix J of the transformation function F.

Deformations allow the user to treat a solid as if it was constructed from a specialtype of topological putty or clay, which may be bent, twisted, tapered, compressed,expanded, and otherwise transformed repeatedly into a final shape. Figure 2.8.b shows ahierarchy of tapering, twisting, and bending by superimposing a bend on the object inFigure 2.8.a. The innovation behind this method is to alter the transformation while it isbeing applied to the object. Global deformations provide a small set of intuitivedeformation parameters which can be animated just like any other parameter in a key-frame animation system.

(a) (b)

Figure 2.8: (a) Twisting of a tapered primitive; (b) a bent, twisted,tapered primitive [Barr 84].

2.3.1.2. Free-Form Deformation (FFD)

This method, presented by Sederberg and Parry [Sederberg 86], proposes thedeformation of surface primitives of any type or degree, i.e., planes, quadrics, parametricsurface patches, or implicitly defined surfaces. The deformation can be applied eitherglobally or locally. Local deformations can be imposed with any desired degree ofderivative continuity and it is also possible to deform a solid model in such a way that itsvolume is preserved. A good physical analogy for FFD is to consider a parallelepiped ofclear, flexible plastic in which is embedded an object, or several objects, which we wishto deform. The objects are imagined to be flexible, so that it deforms along with theplastic that surrounds it.

Mathematically, the FFD is defined in terms of a tensor product trivariateBernstein polynomial. A local coordinate system on a parallelepiped region was imposed.Any point X has ),,( uts coordinates in this system such that

X = X0 + sS+ tT + uU

where

s =T ×U • (X − X0)

T × U • S,t =

S×U • (X − X0)

S×U • T,u =

S× T • (X − X0)

S× T •U

Note that for any point interior to the parallelepiped, 10 << s , 10 << t and 10 << u .

Page 26: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

26 2. Review

After the definition of the parallelepiped coordinates system, it is necessary toimpose a grid of control points ijkP . These form 1+l planes in the S direction, 1+m

planes in the T direction, and 1+n planes in the U direction. In Figure 2.9.a, 1=t ,2=m , and 3=n . The control points are indicated by small white diamonds, and the red

bars indicate the neighboring control points. Deformations are specified by moving the

ijkP from their undisplaced, latticial positions. Figure 2.9.b shows the 12 edges of the

parallelepiped mapped into Bézier curves, defined by the control points which initially lieon the respective edges. The six planar faces map into tensor product Bézier surfacepatches, defined by the control points which initially lie on the respective faces.

(a) (b)

Figure 2.9: (a) undisplaced control points; (b) control points in deformedposition [Sederberg 86].

Very successful 3D character animation can be achieved using FFDs to deform a3D character shape and animating it by using key-frame interpolation of the control pointpositions. Traditional effects such as squash-and-stretch, anticipation and follow-through,as well as certain types of emotional expressions can be accomplished this way. One ofthe limitations of the FFD is that it cannot perform general filleting and blending. LocalFFD forms a planar boundary with the undeformed portion of the object. To create anarbitrary boundary curve, one would have to begin with a FFD which is already in adeformed orientation, and then deform it some more. This would be quite costly.

To overcome the basic limitations of FFD, some extensions have been proposed.Mainly the Extended FFD [Coquillart 90], that extends the range of possible controllattice, no more restricting the control box to cubic forms. Direct manipulations withFFDs were presented by Hsu et al. [Hsu 92], giving the possibility to deform directly anobject. The AFFD (Animated Free-Form Deformation) was developed by Coquillart andJancène [Coquillart 91] and extends the FFD technique to animation. Kalra et al. [Kalra92] developed the Rational Free Form Deformation method (RFFD) to simulate facialmuscle actions and more recently, Moccozet and Magnenat-Thalmann [Moccozet 97]proposed the Dirichlet FFD method (DFFD) to simulate hands deformation.

Page 27: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 27

2.3.1.3. Energy Constraints Method

The energy constraints method [Witkin 87] consists of a simple but generalapproach to express and solve constraints on parameterized model hierarchies. Theconstraints are formulated as energy functions that are added to create a single scalarfunction of the parameters, and moved through the parameter space to minimize theenergy. A model hierarchy is a tree that defines the geometry of the model through acollection of mathematical functions. Such collection of functions is defined for each leafin the tree, and represents the combined effects of the primitive at the leaf and of all theoperators on the path from that leaf to the root. In general, each primitive or operatorpossesses some real-valued parameters, for instance the radius of a sphere, a translationvector, or the bend angle of a parameterized deformation.

This approach provides self-assembling models, whose parts move and deformparametrically from an initial configuration to another that satisfies the specifiedconstraints. Animated models, once assembled, may move in response to time-varyingconstraints while continuing to satisfy static ones. A wide range of constraints can beformulated as energy functions, and used to influence arbitrary model parameters.Similarly, new parameterized primitives and operators may be implemented withoutmodifying existing constraints. Energy functions are composed by addition. Then, thesolution to a system of constraints is the solution to a single equation, the sum of theenergy terms. Since the constraints are satisfied by moving through a curve in parameterspace, the initial constraint solving process can itself be animated, allowing the user toassist the solver in solving ambiguities and so on.

2.3.1.4. Axial Deformation (AxDf)

Lazarus and Coquillart [Lazarus 93] propose a deformation method where the userdefines a three-dimensional axis that can be positioned either inside or outside the object.This axis may have any shape, depending on the deformation desired and each point ofthe object is associated with a point Au on the axis. A local coordinate system is definedaround each point Au of the axis. The user changes the shape of the axis using traditionalinteractive curve-editing techniques, and the deformations applied to the axis areautomatically passed on to the object. In order to localize the deformed area, a zone ofinfluence is introduced to define the portion of the three-dimensional space to bedeformed. A generalized cylinder around the axis is proposed to define the deformedarea.

As the deformation is independent of the object to which it is applied, it can be re-used to deform any existing geometric model such as spline, polygonal or hierarchicalsurfaces. AxDf is very intuitive and fully interactive, it can easily be combined with otherdeformation techniques, such as FFD and be integrated into most general and interactivemodeling systems. Figure 2.10 illustrates this technique by a simple example. The leftside shows the sphere to be deformed as well as the axis used for defining thedeformation; a straight axis, in black has been designed. The right side shows the spheredeformed in a manner that is intuitively consistent with the motion of the axis visualizedin black.

Page 28: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

28 2. Review

Figure 2.10: Deforming a sphere [Lazarus 93]

2.3.1.5. A Metaballs Based Model

Implicit surface techniques offer the opportunity of modeling and animatingcomplex shapes at a fraction of the cost in data points of more common patchingtechniques. Implicit surfaces are typically defined by starting with simple building blockfunctions (called primitives) and by creating new implicit functions using the sum, min,or max of simpler functions. The final object is constructed by blending the primitives,and as they are moved and deformed, the resulting blended surface changes shape.

Some kind of implicit surfaces like metaballs [Nishimura 85], blobs [Blinn 82],convolution surfaces [Bloomenthal 91] or soft objects [Wyvill 86] have receivedincreasing attention in Computer Graphics. In the basic formulation proposed by Blinn,blobs are defined by a set of points ),,( iiii zyxP where each point represents the source of

a potential field. Each source is defined by a field function ),,( zyxFi that maps 3R to R

(or a subset of R). At a given point ),,( zyxP of the Euclidean space, the fields of all thesources are computed and added together, leading to a global field function ),,( zyxF .

This method follows desirable features: simple algorithms, nice deformations andgood efficiency. Figure 2.11 shows a leg composed by metaballs (representing muscles)in movement. The image was composed with the Body Builder, a system developed byShen [Shen 96] for interactive design of human bodies. To represent bones, muscles andfat tissues, they employ ellipsoids and ellipsoidal metaballs.

To exemplify the use of implicit surfaces to simulate muscles, we can mention thework of Wilhelms, who has presented in [Wilhelms 94] a new approach to animalmodeling and animation using individual bones and muscles, soft tissues and skin (aspresented previously in section 2.2.5). In this work, muscles are made of combinations ofthree ellipsoids (two tendons and one muscle between). More recently, this work wasextended and now, in her anatomically based model, muscles are represented bydeformable discretized cylinders [Wilhelms 97].

Turner has developed the LEMAN system [Turner 95] to construct and animatethree-dimensional characters based on the elastic surface layer model. Muscles weremodeled as deformable implicit surfaces (currently spheres, cylinders and super-ellipses).The muscle layer has been represented by deformable geometrical solid surfaces whichthe skin may not penetrate. The deformation of muscles was simulated by animatingparameters of the global deformations which can be tied to the joint angle values.

Page 29: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 29

Figure 2.11: Right leg in motion [Shen 96]

More recently, Scheepers et al. [Scheepers 97] present another anatomy-basedmodel of muscles. They consider the influence of the musculature on surface form anddeveloped muscle models which react automatically to changes in the posture of thearticulated skeleton. Muscle bellies were represented by ellipsoids and deformations wereprovided by scaling the three major axes of the ellipsoids, simulating compression andextension motion.

2.3.2. Physically-Based Methods

2.3.2.1. General Approach

In computer animation, physically-based modeling is a common approach tosimulate natural phenomenon. It combines physics and engineering disciplines withgeometric modeling in order to produce realistic-looking behaviors. Physically-basedsimulation necessarily involves geometrical and temporal discretizations of the theoreticalrelations describing the physical phenomena. The general procedure may therefore berepresented by a pipeline as shown in Figure 2.12.

Figure 2.12: The modeling steps in physically-based simulation

The main notions involved in a mechanical problem are action and motion. Inparticular, the mechanical state of a system may be described in terms of stress and strainvariables. Its dynamics may thus be fully described with an equation of motion relating

Page 30: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

30 2. Review

its state variables to those representing the involved actions. The general form of thisequation is given by the Virtual Work principle [Timoshenko 70]:

δ ˆ W acc = δ ˆ W int + δ ˆ W ext ,

where δ ˆ W acc is the virtual work due to the acceleration, δ ˆ W int the virtual work due to theinternal stress and δ ˆ W ext the virtual work due to the external actions.

This equation may then be solved in order to determine the state of the systemresulting from the applied actions. However, both state variables are involved in thisequation, so that it can not be solved without considering the constitutive relationships forrelating the stress to the strain. In the general case, there is a lack of solution methods sothat no solution can be carried out directly in analytic form from the continuous equationof motion. Spatial discretization of the system is thus required in order to approximate thecontinuous problem by a finite number of equations defined for the mesh nodes. Severalspatial discretization methods may be applied for this purpose. All however derive fromthe most general finite element method [Zienkiewicz 89]. For a general nonlinearviscoelastic material, the resulting discrete problem may be written in the tensorial formas:

L)UII(U,UM =+ ��� ,

where M is the nodal mass matrix, )UII(U, � is the nodal internal force vector, U is thenodal displacement vector, and L the nodal external force vector. The solution of thisequation is thus obtained in terms of the mesh node coordinates which approximate thecontinuous deformable system.

In the general case again, due to the general nonlinearities involved in theproblem, no solution method allows to carry out an analytic solution defining the systembehavior as a continuous function of time. It is therefore necessary to convert the equationinto incremental form, operating thus a temporal discretization, such that within each timeinterval the problem may be handled as linear. As a result, the time-continuous tensorialequation is replaced by a finite system of linear equations defined over respectiveintervals such that:

LUKUDUM ∆=∆+∆+∆ nnn��� ,

where nn UUL −=∆ +1 is the nodal displacement increment vector, nn LLL −=∆ +1 the

nodal external force increment vector, and MM ≡n , nD , nK the tangent mass, damping

and stiffness matrix, respectively.

Several incremental methods exist, allowing the incremental simulation of thebehavior [Maurel 98]. Hereafter are presented physically-based modeling approacheswhich may be applied for soft tissue simulation.

2.3.2.2. Biomechanical Modeling

According to Fung [Fung 72], soft tissues may be characterized as quasi-linearviscoelastic materials. Given its nonlinear form, such constitutive relationship must be

Page 31: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 31

applied in following the general procedure. The finite element modeling using the generalvirtual work principle together with a Newton-Raphson scheme is the most appropriate toachieve an accurate biomechanical simulation. Numerous nonlinear finite element modelshave been developed for soft-tissues simulation, mainly for lungs [Liu 78] [Pao 78][Vawter 80] [Karakaplan 80] [Lee 83] and ventricles [Janz 73, 74] [Christie 80, 82][Needleman 83] [Huang 90] [Huygue 91] [Taber 91, 91b]. An incremental dynamicanalysis has also been presented by Deng et al. [Deng 88] who developed a nonlinearthick shell model including a skin layer, a sliding layer and a muscle layer, to simulate theclosure of skin excisions on facial tissue. Usually, the constitutive tangent stiffness matrixis obtained by second order derivation of the strain energy function with respect to thestrain tensor.

Horowitz et al. presented an extended development of such incrementalformulation as they led for two and three-dimensional finite element heart musclemodeling with a fibrous constitutive model [Horowitz 88, 88b]. For an incompressibleventricular wall segment, the strain energy had been defined using a pseudoelasticfunction for the fibers in the form suggested by Lanir [Lanir 83]. The tangent elasticstiffness matrix had been derived from the stress increment. The resolution of theequilibrium was then performed using a finite element incremental-iterative modifiedNewton-Raphson scheme, in which the updating of the stiffness matrix was performedonly after each load increment. It was applied for finite element modeling of caninemyocardial strips [Horowitz 88, 88b].

2.3.2.3. Linear Finite Element Models

A general approach was proposed by Essa et al. for physically-based deformationapplying linear finite element description [Essa 93]. In this approach, they suggested toconsider the deformable body as a linear viscoelastic material. Larrabee et al. modeledskin as a linear elastic finite element membrane, with regularly spaced nodes connectedby linear springs to subcutaneous attachments, to simulate the effect of skin flap design[Larrabee 86]. Bro-Nielsen et al. [Bro-Nielsen 96] have also presented a linear finiteelement modeling approach, including computational improvements such as condensationtechniques, in order to achieve real-time surgery simulation. Pieper et al. [Pieper 92] useda linear model of skin to perform simple facial surgical simulation. In their approach,both the skull and skin surfaces extracted from CT images were mapped into cylindricalcoordinates, and a home-grown static displacement-based method was used to solve theelastic equilibrium equation. Gourret et al. [Gourret 89] applied finite elements toperform grasping simulation including deformations of the grasped objects and thefingers skin (Figure 2.13).

2.3.2.4. Models Based on Lagrange Equation

The first and most famous physically-based approach for realistic deformationsimulation in computer animation has been proposed by Terzopoulos et al. [Terzopoulos87]. In their approach, the deformable body was considered as an isotropic hyper-viscoelastic material such that the internal force vector derives from internal viscous andelastic potential energies, assuming a constant uniform mass density. With this method,

Page 32: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

32 2. Review

any kind of material behavior may be modeled as soon as the proper strain energyfunction is provided. Terzopoulos et al. [Terzopoulos 88] have also proposed the generalstrain energy function in the form of control continuity generalized spline kernelsallowing to model inelastic behaviors such as viscoelasticity, plasticity and fracture.

Figure 2.13: Grasping of a ball submitted to internal pressure [Gourret 89]

Following the theoretical formulation, the spatial discretization has been proposedin the form of the finite difference method, i.e. a grid discretization with linear finiteelement interpolation, leading to an equation of motion of the form:

extFUUKUDUM =++ )(��� ,

where U�� , U� and U are nodal acceleration, velocity and displacement vectorsrespectively; M and D are mass and damping diagonal matrix, K is the deformationdependent stiffness matrix, and extF the external nodal force vector. The nonlinearordinary differential system was then converted into a sequence of linear algebraicsystems by means of a finite difference time-discretization and was integrated throughtime using a semi-implicit integration procedure.

This dynamic model yields realistic animation of various deformable materials,such as elastic clothes, flexible metal bars or rubber, creating viscoelasticity, plasticityand fracture effects. Fractures are modeled by introducing discontinuities when the localdistortion exceeds a critic value (the points of possible fracture are preselected in the bodydescription). The model is fundamentally dynamic and responds in a natural way toapplied forces, constraints, ambient media, and impenetrable obstacles. Realisticsimulations are created by numerically solving their underlying differential equations, butcan be produced in real-time only for very simple objects. Figure 2.14.a illustrates a ballresting on a supporting elastic solid. The solid has a prescribed metric tensor, and theinternal elastic force interacts with the collision force to deform the solid. Figure 2.14.bpresents a net falling over an impenetrable obstacle in a gravitational field. The fibers ofthe mesh are subject to fracture limits based on the deformation in the material. When afiber stretches beyond the fracture limit it is broken by the fracture process which insertsa discontinuity. The yield limit is uniform over the mesh, which causes linear tears as onemight obtain with cloth.

Celniker and Gossard have proposed an approach for free form shape designingusing deformable curve and surface finite elements [Celniker 91]. Their approach is

Page 33: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 33

entirely based on Terzopoulos linear model, with the only difference that they used thefinite element discretization with squared interpolation function instead of the finitedifference discretization. Shape design may be interactively achieved by applying forceson the finite element mesh, and smoothness is automatically obtained from the underlyingphysically based model. Recently, Koch et al. applied this approach to surgical planningand prediction of human facial shape after craniofacial and maxillofacial surgery. Thefacial surface and inner structures (bones or muscles) were obtained from the patient’s CTor MRI data, and the effect of subcutaneous tissues was simulated by connecting thefinite element skin surface nodes with nodal springs to the skull.

(a) (b)

Figure 2.14: (a) Ball over a deformable solid [Terzopoulos 87]; (b) a netfalling over a spherical obstacle [Terzopoulos 88].

2.3.2.5. Particle Systems

Particle systems consist of a large number of mass points (particles) moving underthe influence of external forces such as gravity, vertex fields, and collisions withstationary obstacles. Each particle is represented by its position, velocity, acceleration,mass, and other attributes (e.g. color) and the whole of particles moves according toNewton’s laws of motion. Particle systems can be divided on: non-interacting particles,normally used to simulate natural phenomena including fire [Reeves 83] and waterfalls[Sims 90]; and interacting particles as the case of the mass-spring models and orientedparticles, used for example to simulate flocks of birds [Reynolds 87].

2.3.2.5.1. Mass-Spring Models

Many authors choose approaches which still use some dynamic laws but are notbased on any physical theory. Deformable objects are constructed by combining verysimple mechanical elements (such as elementary masses linked by springs and dampers),with the possible addition of purely geometric components. These models are animatedby integrating over time the differential equations of motion associated with eachelementary mass (particle) in the system. Miller used it to animate snakes and worms[Miller 88] and currently, a lot of variations of this method are being presented by otherauthors. Holton and Alexander [Holton 95] have presented the creation of a soft cellularstructure composed by a volumetric arrangement of mass-points and connectors that

Page 34: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

34 2. Review

forms an approximate tetrahedral tessellation. The model was created to simulate realisticviscoelastic deformation of a large array of tetrahedral node-connector systems in real-time applications such as virtual surgery simulation. Their model is essentially linear andthe priority in this case is speed.

Promayon et al. [Promayon 96] present a mass-spring deformation model toanimate a discretized object represented by points. Their goal is to simulate respiratorymovements realistically in order to create an educational and medical tool. In theirsystem, each node knows its neighbors and the surface of the object is defined by atriangular mesh. Physical dynamic descriptions are based on two basic notions: materialpoints and forces that induce movement. A mass is assigned to each contour point, anddynamic forces generate its movements.

The evolution of an object in the scene depends on the forces that act on its masspoints. Two types of forces are modeled: external forces (like gravity field) and internalforces. Internal forces allow to describe actual properties such as elasticity, motorfunctioning and compressibility. The evolution of the objects is determined by integratingthrough time the forces applied to each mass point. If no constraints are applied to masspoints, the evolution algorithm is classic. At each time step, the sum of forces iscomputed and the equations of motion integrated.

2.3.2.5.2. Oriented Particle Systems

Szeliski and Tonnesen [Szelinski 92] present a model of elastic surfaces based oninteracting particle systems. This can be used to split, join, or extend surfaces without theneed of manual intervention. The particles used have long-range attraction forces andshort-range repulsion forces and follow Newtonian dynamics. To enable the particles tomodel surface elements instead of point masses or volume elements, they have added anorientation to each particle's state. The state of each oriented particle is written as

),( ii Rp , where ip is the particle’s position and iR is a 3x3 rotation matrix which defines

the orientation of its local coordinate frame. The third column of iR is the local normal

vector in .

For surfaces whose rest (minimum energy) configurations are flat planes,neighboring particles would be expected to lie in each other’s tangent planes. In this co-planarity condition, the energy is proportional to the dot product between the surfacenormal and the vector to the neighboring particle. The co-planarity condition does notcontrol the “twist” in the surface between two particles. To limit this, a co-normalitypotential was introduced attempting to line up neighboring normals, much like interactingmagnetic dipoles. An alternative to surfaces which prefer zero curvature (local planarity)are surfaces which favor constant curvatures. This can be enforced with a co-circularitypotential which is zero when normals are antisymmetrical with respect to the vectorjoining two particles. This is the natural configuration for surface normals on a sphere.

The particles-based surface model can be used in a wide range of animationapplications, presenting results as good as the ones generated by the other physically-based deformable surface models (e.g., cloth draping, plastic surface deformations and

Page 35: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 35

tearing). One limitation of particle-based surfaces is that it is harder to achieve exactanalytic control over the surface shape. Figure 2.15 shows an examples of this technique.

Figure 2.15: Particle creation during stretching. As the ball pushes upthrough the sheet, new particles are created in the gaps between pairs ofparticles [Szelinski 92].

2.3.3. Hybrid Methods

2.3.3.1. The CORDIS-ANIMA Model

This model [Uhl 95] derives from the idea that it is not always necessary tosimulate the real physical structure of an object to reproduce its movement. The mostimportant is to build a “mechanical representation” of the animated objects. Thedeformable objects are described as elementary masses linked together by “conditionalconnections” such as damped springs, whose parameters can change through time.

Objects are modeled by agglomerating elementary spherical particles (as seen inFigure 2.16). Each agglomerate includes three successive layers of deformable material,characterized by the interaction laws between their particles: the kernel, formed by a fewlarge particles, represents the more rigid internal part of the object; the derm imitates thedeformable flesh. It is modeled by particles attracted by the kernel, but two by tworepulsive (these interaction laws produce a uniform distribution of the derm around thekernel); and the epiderm ensures the cohesion of the agglomerate. The attractiveinteraction law which is used, simulates the tension of the skin. All the interactionsbetween the agglomerate and the external world are treated at the epiderm level (except ifwe want to enable fractures).

Figure 2.16: Agglomerate

Page 36: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

36 2. Review

This method provides a unified treatment of interactions inside an object andbetween the object and the external world. Real-time animation is also possible, enablingdirect manual intervention of the user.

2.3.3.2. Mass-Spring with Volume Conservation

Promayon et al. [Promayon 96] have presented a mass-spring model (previouslydescribed in Section 2.3.2.5.1) including the volume conservation. As the general modelwas presented before, we will describe here just the volume conservation method.

Constraints can be applied to the deformable object by two means: localconstraints applied on a point (e.g. fixed or moving required positions); and globalconstraints, used when a set of mass points of an object has to verify a given constraintand it is the case for the constant volume constraint. Constraints can be considered asnon-quantified force components. For example, nailing a point at a position in space canbe considered as an elastic spring force between a geometric space point and a materialpoint with a stiffness that avoids any movement.

The constant volume constraint is specially very useful because it allows to modelincompressible objects, during the animation. A function that explicitly gives the insidevolume of an object was defined in order to use it as a constraint. Thus, the volume canbe kept exactly constant during deformation without using an iterative process, inopposition to Lagrangian approaches.

2.3.3.3. Pump It Up

An hybrid approach for soft tissue deformation has been proposed by Chen et al.[Chen 92]. In their approach, they have followed the linear finite element methodology aspresented in Section 2.3.2.3 and developed a linear finite element model of skeletalmuscle for computer animation, including a contraction process based on Zajac’s muscleforce model.

For simplification, the finite element analysis was performed on a prismaticbounding box embedding the muscle object (Figure 2.17.a), and the resulting deformationwas mapped onto the muscle following the free-form deformation principle (FFD)introduced by Sederberg and Parry [Sederberg 86] and presented in Section 2.3.1.2.Assuming contraction forces greater than the passive response in the physiological rangeof functioning, muscle was assumed to be an homogeneous, incompressible, linearisotropic material, and the contraction was simulated by applying biomechanically-basedloads on the mesh within an incremental process.

In an effort to apply the research results to making computer animation ofmuscled characters, it is necessary to be able to simulate non-isometric muscle action aswell. The geometry of a human biceps was digitized from an anatomically accurateplastic model. A finite element mesh was constructed and contraction forces applied tothe nodes. For this simulation, the biceps was attached at the shoulder, but the forearmend was left free. Activation causes the biceps to shorten; the forearm flexes inversekinematically to track the end of the muscle, as shown in Figure 2.17.b. The problem withthis method is that this is too expensive to be considered for interactive applications.

Page 37: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

2.3. Deformable Models 37

(a) (b)

Figure 2.17: (a) Chen's finite element mesh and contraction model; (b)biceps shortens upon activation, forearm motion is specified by inversekinematics [Chen 92].

2.3.3.4. Combining Physically-Based Models with Implicit Surfaces

Gascuel and Desbrun [Gascuel 96] have considered the use of implicit surfacesdefined as isosurfaces of a scalar field generated by a set of geometric primitives calledskeletons. A layered deformable object was defined by specifying a physically-basedmodel, rigid or deformable, that was used as the reference component of the object.According to the modeled objects, a rigid solid, an articulated structure made of severalsolids, a mass-spring network, or a particle system may be used for defining the referencecomponent. The second step on the definition of the layered object was the creation of animplicit surface that “coats” the reference component and follows its motion. Thissurface, called implicit layer of the object, was defined by specifying a set of skeletons

is , each of which being attached to one or several element(s) of the reference component,

and a set of field functions fi associated to each skeleton. For instance, point-skeletonsmay be attached to mass points or particles, skeletons made of line segments may bedefined by the segment joining two masses, and any skeletal primitive may be defined inthe local frame attached to a rigid solid.

During animation, motion and deformation of the reference componentimmediately turn into motion (and perhaps deformation) of the skeletons. This inducesmotion, deformation, and sometimes topological changes of the implicit surfacerepresenting the object.

This model approximates an elastic behavior, and is exact where the deformationis directed along the normal of the surface [Gascuel 93]. Collision and contact detectionand treatment are also provided.

2.4. Conclusion

This chapter summarizes the human modeling techniques in four main categories.Analyzing the results obtained by other authors, as well as their arguments justifying their

Page 38: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

38 2. Review

methods, we conclude that the most complete and adequate approach to model humanbodies for animation purposes are the multi-layered models. In fact, simulating all thefundamental parts that compose the human body, more realistic results can be achievedregarding model shape and animation results.

Most of the major techniques and approaches proposed for simulate genericdeformations were classified and presented. Advantages and problems of each approachwere highlighted ever than possible, as well as the applications on muscle simulation. Theanalysis of the methods presented here can guide the choice for one among the existingmodels, or the development of a new deformation approach combining different ideas,according to the specific goal.

Page 39: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

39

3. Anatomically-BasedSkeleton Design

3.1. Introduction

The human body can be briefly defined as a composition of skeleton, muscles, fatand skin. The skeleton is formed by bones (about 206 in total) attached with each other byjoints, and constitutes the foundation of all human surface form. The base of a skeleton isthe spinal column where the two pairs of limbs (arms and legs) and the head areconnected. We also use the term skeleton in computer animation, to designate a stickfigure representing the positions and orientations of the joints which make up thearticulated figure.

This chapter presents the modeling of our anatomically-based skeleton. Torepresent our stick made human model, we have used the basic skeleton structureproposed by Boulic et al. [Boulic 91, 94] and briefly described in Section 3.2. In order togenerate a new model based on an anatomic approach, joint positions and orientationswere defined. Section 3.3 explains how the model was composed and Section 3.4 reviewall degrees of freedom of the body, explaining the function of each joint and highlightingtheir new positions and orientations. Finally, in Section 3.5 we demonstrate theusefulness of the bones in our model. Section 3.6 summarizes the contribution of thiswork.

3.2. BODY Structure Description

The skeleton hierarchy is composed of articulated line segments whosemovements are described at the joints level. There are several ways to specify movementsat motion capture, using some tracking device as a tool.

Relating the implementation aspect, a BODY data structure maintains somegeneric information, including a topological tree structure for a vertebrate body withpredefined mobility. The hierarchical topology orientates the propagation of motion fromthe root to the terminal nodes. Each joint of a body is represented by one or more nodesof the tree, depending of the joint’s Degree of Freedom - DOF (joints have up to threeDOFs and each DOF corresponds to one node of the tree) and each node position isdefined locally in relation of its node parent in the hierarchy.

The skeleton_root is the entry point to the skeleton tree. It defines a coordinatesystem which is situated at the base of the spine and has: x axis (body lateral) pointing to

Page 40: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

40 3. Anatomically-Based Skeleton Design

the right side, y axis (body frontal) pointing to the front and z axis (body vertical)pointing to the head, as shown in Figure 3.1.a.

(a) (b)

Figure 3.1: (a) BODY coordinate system of the skeleton_root entry node;(b) scheme of the skeleton front view indicating the location of the joints[Boulic 94b].

Our simplified model of the human skeleton contains 31 joints with 62 DOFs (inFigure 3.1.b, a scheme of the skeleton front view with the respective joint names isshown). We do not represent neither the joints of the head, nor the facial animation. Thejoints of the hands are considered in the model but not mentioned in this work. Figure 3.2details the order in which their associated transformations are composed. This orderdefines implicitly an Euler angle sequence for each mechanical joint. Degrees of Freedomthat have the same center of rotations belong to the same mechanical joint. Their namesbegin with the same joint name as hip, knee, shoulder, etc.

To create a population and personalize a skeleton default, the concepts of BODYtemplate and BODY instance were developed. A template is able to define new positionsand orientations to the joints. It is very useful in the characterization of different humanactors, allowing at the skeleton level, the joints re-positioning and consequently, thereference for one or more BODY instances. The BODY instance can define a few highlevel normalization parameters to scale the BODY template. In the general case ofmultiple BODY sharing a common environment, there would be typically one BODYtemplate serving as a family model to the BODY instances, each of them holding adifferent set of normalization parameters (e.g. total height, frontal scaling, higher lateralscaling, lower lateral scaling and spine origin ratio). More information about the BODYcan be found in the BODYLIB Manual [Boulic 94b].

Page 41: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.2. BODY Structure Description 41

Figure 3.2: General topology of the skeleton without the hands

3.3. Anatomic Template

As mentioned before, the main goal of this work is to produce a human modelbased on anatomic principles. At the skeleton level we suggest the creation of a simplifiedbody with the joint positions defined anatomically. To accomplish it, we propose thedesign of a new human template defining new position and orientation for the joints. Butfinding the joints center location from the knowledge of external markers is a verydifficult task. Joints like the shoulder or the hip for example, are specially hidden withinthe flesh and complex bone structure (see Figure 3.3).

Page 42: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

42 3. Anatomically-Based Skeleton Design

(a) (b) (c) (d)

Figure 3.3: Body silhouettes with skeleton in front view ((a) female, (b)male), back view ((c) male), and side view ((d) male) [Thomson 64].

We propose the template definition by analyzing a three-dimensional realskeleton. From a realistic reconstructed human skeleton, we have carefully determinedthe best position for each joint between the bones, based on anatomic concepts andmotion observation. In Figure 3.4 we can see the skeleton with bony landmarkshighlighted, representing the positions of the joints. Figure 3.5 compares the newanatomic template with our old template, also designed at LIG. Essential differences canbe observed on the spine and especially on the shoulder level. The foot complex was alsocompletely redefined in our proposed skeleton.

Figure 3.4: Several views of the skeleton with the joint positions highlighted

Page 43: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.3. Anatomic Template 43

(a) (b)

Figure 3.5: Comparison between the two templates - the old one is on theleft and the new one on the right side: (a) front view and (b) intermediateview.

Concerning the shoulder, the fundamental difference is seen in the claviclepositions. In the old template these are almost in the same plane than the shoulder and thespine, while in the new one it is placed much more on the forward. The shoulder and thescapula were also changed. The new template have this two joints more distant thanbefore. On the arms, the concrete modification relates to the posture. In the new templatethe arms are a bit more open, to avoid the collision with the torso. On the spine, twogreater changes can be observed: the new position of the joint vl1, nearest the hip joints;and the curvature of the spine, in general. On the foot, the biggest change relates the ankleand the subtalar joints. Before, all the two joints had the same position while in the newtemplate they had been separated, corresponding to two different articulations, as inreality.

A standard posture for which all the joint angles are null, was also defined and canbe seen in Figure 3.4. In this posture, the body is standing up with dangling arms orientedsuch that the palmar surface of hand lies in the sagital plane with medial orientation. Alsoconcerning the joint angles, we have defined minimal and maximal limits for themovements, trying to avoid forbidden postures. The files describing the template(newton.tpl) and the joint limits (newton.jts) are available in Appendix A.

3.4. Review of the BODY Degrees of Freedom (DOF)

The higher number of kinematic Degrees of Freedom a joint can have is six (i.e.,three for rotation and three for translation) [Zajac 90]. However, for computationalreasons, we assume only the rotation DOFs. It is also important to note that, in the

Page 44: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

44 3. Anatomically-Based Skeleton Design

following presentation of each Degree of Freedom, the indication of anatomical plane ofmotion and axis of rotation is valid when we consider all the DOFs with their initialvalues, in other words, taking into account the body in their initial posture.

The skeleton_root is the entry node to the internal mobilities of the skeleton andthe default root of motion within the skeleton. As it is situated at the base of the spine, itis quite close to the center of mass for large classes of postures. That property makes it agood root of motion for numerous movements involving the whole displacement of thebody (walking, jumping, etc.).

3.4.1. DOFs of the Lower Body

We have chosen the same naming convention for the pelvic and spine mobilies:tilt (forward-backward motion in the sagital plane along a lateral axis - x BODY), roll(sideward motion in the frontal plane along a frontal axis - y BODY), and torsion(rotation along the vertical axis - z BODY).

3.4.1.1. The Pelvis

From the skeleton_root, the lower skeleton hierarchy first deals with theorientation of the pelvis with 3 rotational DOFs. Their center of rotation is the base of thespine, as shown in Figure 3.6.a. The order of the pelvic DOFs is (Figure 3.6.b and 3.6.c):pelvic_tilt , pelvic_torsion and pelvic_roll.

(a) (b) (c)

Figure 3.6: (a) Pelvis with centers of rotation, pelvic joint and the left andright hip joints (front views); (b) pelvic and hip axis of rotation (frontview) and (c) intermediate view.

Both legs have the same rotation convention for the rotation axis. For example, onthe hip joint a positive flexion angle at the right and left hip brings both legs to the frontof the body. A positive abduction angle at the right and left hip brings both legs to the leftside and a positive twisting angle rotates both legs to the right side. For this reason onlythe mobilities of one leg are described here and showed in the figures. The full DOFname is obtained by prefixing the DOF names by r_ for the right side and by l_ for theleft side.

Page 45: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.4. Review of the BODY Degrees of Freedom (DOF) 45

3.4.1.2. The Hip

The hip joint is a ball-and-socket joint. Almost the whole of the weight of theupper body is carried through this joint, so it must be strong enough to do not becomedislocated, or torn apart, when we jump down from a height. That is why the socket onthe side of the hip bone is very deep, making the joint very stable. The ball-and-socketjoint allows the leg to be moved in a number of directions. It can be moved forward byabout 40 degrees and backward by about 15 degrees. It can be moved outward to the sideby about 30 degrees and inward across the other leg by about 25 degrees. If the leg is firstbent upward, it can then be rotated in the hip joint outward to the side by about 90degrees and inward by about 70 degrees.

Three mobilities with mutually orthogonal axis of rotation are considered. Theorder of the hip DOFs is (Figure 3.6): hip_flexion (forward-backward motion in thesagital plane - x BODY), hip_abduct (sideward motion in the coronal plane - y BODY),and hip_twisting (along the thigh link axis - Figure 3.7.a). The center of rotation iswithin the proximal head of the femur (Figure 3.6.a and Figure 3.7.a).

(a) (b) (c)

Figure 3.7: (a) Right hip and right knee centers of rotation (viewed frombehind); (b) right knee and right ankle centers of rotation (viewed frombehind) and (c) right knee axis of rotation (front view).

3.4.1.3. The Knee

The knee joint is the largest joint in the body. This joint carries a great part of theweight of the body, and lies between the two longest bones in the body, the femur and thetibia. This joint is also easy to injure. The knee joint allows the shank to be moved by 140degrees forward and backward. When the knee joint is bent at right angles, it is alsopossible to swing the lower leg by about 45 degrees outward and about 30 degreesinward. Greater movements of the bones are resisted by the way the joint fits together, byligaments and by the patella. The patella prevents the femur from slipping forward off thejoint.

Page 46: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

46 3. Anatomically-Based Skeleton Design

Two mobilities with mutually orthogonal axis of rotation are considered. Theorder of the knee DOFs is (Figure 3.7.c): knee_flexion (forward-backward motion in thesagital plane (x BODY), and knee_twisting (along the shank link axis (Figure 3.7.b). Thecenter of rotation is slightly within the distal head of the femur (Figure 3.7.a and 3.7.b).

3.4.1.4. The Foot Complex

The foot is made up of several sets of bones. Immediately below the two bones ofthe shin are the seven bones of the ankle. Beyond these are the five long bones in the soleof the foot, known as the metatarsal bones. Each of the metatarsal bones leads to thephalanges of one of the toes. There are two phalanges in the great toe and three in theother toes, making a total of 26 bones in the foot.

The ankle joint allows a range of movements. When the foot is moved up ordown, the hinge joint between the ankle bones and the tibia moves. The movement ofrising up onto the ball of the foot takes place at the other hinge joint, between the anklebones an the long metatarsal bones in the sole of the foot.

We modeled the foot complex with four distinct joints, each bearing one Degreeof Freedom. We find successively the ankle, the subtalar, the mid-foot (or navicular), andthe toe (Figure 3.8.b and 3.8.c): ankle_flexion (rotation of the foot in the sagital plane - xBODY. By default, the unique Degree of Freedom is parallel to the knee flexion),subtalar (sideward orientation of the foot. By default, the unique DOF lies in the sagitalplane with 45o wrt the vertical), mid_foot (internal twisting of the foot - nearly y BODY),and toe_flexion (up and down rotation of the toe in the sagital plane (x BODY).

The center of rotations for the subtalar and the mid-foot are not easy to define. Atthe ankle, the center of rotation is under the head of the tibia (Figure 3.7.b and 3.8.b). Atthe subtalar, the center of rotation is under and slightly backward of the ankle center ofrotation. The mid_foot center of rotation is more or less half-way between the ankle andthe toe centers of rotation, while the toe center of rotation is slightly within the bonebefore the first big toe phalanx.

Three functional locations are provided by default to outline the main contactpoint of the foot with the supporting surface (they have the same orientation of theirparent node). These are (Figure 3.8.a and 3.8.b) the hell extremity attached to the subtalarjoint and the toe_base and toe_extremity attached to the toe flexion joint.

3.4.2. DOFs of the Upper Body: The Spine

The higher part of the body hierarchy begins with the spine, that is a particularlyinteresting and complex structure. It consists of 25 bony components: seven cervical,twelve thoracic and five lumbar vertebrae, and the sacrum with the coccyx.

The lumbar region, in the lower part of the back, contains five vertebrae. Theycarry the weight of all of the upper part of the body, and each lumbar vertebra is largeenough to take the strain. There is a disc of fiber, called the intervertebral disc, betweenthe body of one vertebra and the next. Each lumbar vertebra has a short, backward-facingspine that is shaped like a spade. There are no ribs in this part of the body. The lumbar

Page 47: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.4. Review of the BODY Degrees of Freedom (DOF) 47

vertebrae are attached to each other to allow them to be bent forward and backward onone another, but allow only a small amount of sideways bending or swiveling from sideto side.

Figure 3.8: The foot complex with the the centers of rotation of the ankle,subtalar, mid-foot and toe (a) (b); right foot complex axis of rotation,front downward view (c) and side view (d).

The twelve thoracic vertebrae lie in the chest region, and they are the vertebrae towhich the ribs are attached. The heart-shaped thoracic vertebrae gradually increase in sizedown the body. The first, uppermost, thoracic vertebra is the smallest, and the last,lowermost, is the largest. As on the lumbar vertebrae, there is a disc of fiber, called theintervertebral disc, between the body of one vertebra and the next. The spine, at the rearof the thoracic vertebrae, point backward and downward, and form the hard knobs thatcan be felt down the middle of the back. The connections between the thoracic vertebraeallow a swiveling movement from side to side, and a bending of the body to either side.

The neck region contains seven cervical vertebrae. On either side of each vertebraare small projections that enclose an opening. These projections are small ribs that havebecome fused on to the side of the vertebra. The spines at the rear of the cervicalvertebrae are quite short. The first two vertebrae, called the atlas vertebra and the axisvertebra, are unlike the other cervical vertebrae, because they are involved in themovements of the head upon the neck. The connections between the cervical vertebraeallow the neck to be bent forward, backward or to the side, and to be rotated from side toside.

Page 48: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

48 3. Anatomically-Based Skeleton Design

We modeled the spine with eight compound vertebrae (Figure 3.9 and 3.10)dispatched into three groups, not possessing the same mobilities: three lombar vertebraecannot have torsion; three thoracic vertebrae have limited or no tilt; and two cervicalvertebrae have all three rotational mobilities (torsion, tilt and roll). The name of thecompound vertebrae includes the first letter of the region it belongs to (l for lumbar, t forthoracic, and c for cervical).The first lumbar vertebrae sits on the pelvic sacrum. The lastcervical vertebrae (vc8) is under the atlas joint, corresponding to the little remainingdistance to the head root (Figure 3.9). The arms are attached to the spine through one ofthe three thoracic vertebrae (vt5).

Figure 3.9: Several views of the spine with eight compound vertebrae

Figure 3.10: The spine axis of rotation: (a) front view and (b) side view

Page 49: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.4. Review of the BODY Degrees of Freedom (DOF) 49

3.4.3. DOFs of the Upper Body: Thorax and Arms

The arm structure is attached to the spine as a child of the fifth compoundvertebrae. It includes similar mobilities with the leg when one considers them with thearm twisted such that the hand palm is looking backward (Figure 3.11). The names of theDOFs respect this structure similarity although the default position is slightly different.

Figure 3.11: Overview of the arms mobilities

Strictly speaking, the two clavicles DOFs (note: we use sometimes the latin wordclavicula instead of clavicle) and the two scapula DOFs are not part of the arm structure,they only initiate its articulated chain. The scapula joints are represented by an open chainand hold the same two Degrees of Freedom as the clavicle, but very close to the shoulderjoint (Figure 3.12).

Figure 3.12: Rotation axis of the shoulder complex

Page 50: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

50 3. Anatomically-Based Skeleton Design

3.4.3.1. The Shoulder Complex

The shoulder joint is the most complicated joint in the body. It is made up of threebones: scapula, clavicle and humerus. The joint itself is a ball-and-socket joint, the headof the humerus fitting into a socket in the outer edge of the scapula. The head of thehumerus is much larger than this socket on the scapula. Because of this, the shoulder jointis very flexible, allowing the arm to point in many directions.

We have chosen to represent the shoulder by three joints, with seven DOFs:clavicle (abduction and rotation); scapula (abduction and rotation); and shoulder (flexion,abduction and twisting).The order of the DOFs is (Figure 3.12): clav_abduct (rotation inthe coronal plane), clav_rotate (rotation in the horizontal plane), scap_abduct (rotationin the coronal plane), scap_rotate (opening of the scapula wrt the clavicle),shoulder_flexion (forward-backward motion in the sagital plane), shoulder_abduct(sideward motion in the coronal plane), and shoulder_twisting (self-rotation around theupper arm link). The centers of rotation can be determined from bony landmarks for theclavicle and the scapula. For the shoulder, the center of rotation is inside the head of thehumerus (Figure 3.13).

Figure 3.13: Center of rotation of the clavicle, scapula and shoulder articulations

3.4.3.2. The Elbow and the Wrist

The elbow joint lies where the humerus meets the two bones of the forearm, theradius and the ulna. This is a hinge joint. One of the two rounded surfaces at the end ofthe humerus fits into a deep socket at the end of the ulna, which is the bone that lies onthe same side of the forearm as the little finger. When the elbow is straight, a projection atthe end of ulna, called the olecranon process, fits against a hollow in the humerus andprevents the joint moving any further and dislocating. Dislocation occurs when the bonesin the joint are forced apart. The other rounded surface on the lower end of the humerusfits against a hollow in the upper end of the radius (which is the bone that lies on thesame side of the forearm, as the thumb).

The wrist joint lies in the area between the lower ends of the ulna and the radius,and the five long metacarpal bones of the palm of the hand. The wrist is made up of eightsmall bones, known as carpal bones. Despite the number of bones, the movements thatare possible in the wrist joint are strictly limited by the seventeen ligaments that connectthe bones to one another, and by the ten tendons that surround them. Therefore, it is onlypossible to move the hand on the wrist in two directions. It can be bent downward at the

Page 51: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.4. Review of the BODY Degrees of Freedom (DOF) 51

wrist by about 90 degrees and bent upward by about 80 degrees. The hand can be movedside to side on the wrist by about 50 degrees. The whole hand can also be twisted byturning the two bones of the forearm until they cross over one another.

Two Degrees of Freedom are considered for the elbow and two for the wrist. Theorder of the DOFs is (Figure 3.11): elbow_flexion (flexion-extension of the arm in thesagital plane), elbow_twisting (around the lower arm link), wrist_flexion (rotation of thehand in the coronal plane), and wrist_pivot (rotation of the hand in the sagital plane). Thecenters of rotation of the elbow and the wrist are shown in Figure 3.14.

Figure 3.14: Centers of rotation of the right elbow and the wrist joints:(a) ulna front view; (b) lower arm front view; (c) side view.

3.4.4. Local Frame of the Hands

The hand is made up of several sets of bones. Immediately beyond the two bonesof the forearm lie the eight bones of the wrist and beyond these, in the palm of the hand,are the five long metacarpal bones, each of which leads to the individual bones of thefingers and thumb, known as the phalanges. There are three phalanges in each finger andtwo in the thumb, making a total of 27 bones in the hand.

The hand frames are divided from the frame of the last degree of freedom of eacharm, namely the wrist_pivot. This local frame is oriented in a very similar way for bothhands (see Figure 3.15). It can be easily seen when the arms twist, so that both palms arefacing backward. The reason for this is to have a coherent representation of the articulatedchains when controlling a general quadruped (we want that the two legs and the two armsmove in the same direction when acting on the same DOF with the same value.

3.4.5. Local Frame of the Head

The convention for the head local frame is the following (Figure 3.16): the originlies at the top of the spine and the head frame is oriented like the skeleton frame. With theorigin convention it follows that the x axis roughly passes through the right ear (ear ringregion), the y axis through the tip of the nose and the z axis a bit behind the head top.

Page 52: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

52 3. Anatomically-Based Skeleton Design

(a) (b)

Figure 3.15: Right and left hands: (a) view side and (b) out side

(a) (b) (c)

Figure 3.16: (a) Front, (b) side and (c) back view of the head frame

3.5. Why Representing Bones?

Using the joints based structure described before, we have created a real skeleton.Bones are linked to the joints reference systems and modeled by triangle meshes definedlocally in relation to their parent joint. Our system is modeled with 73 bones, ignoring thehands and feet that are represented by complete sets of bones. Bones do not change shapeduring animation, but can change position in relation to each other.

Our main goal in representing bones is to permit the muscles attachmentdefinition. As explained in Chapter 4, skeleton muscles are fixed on the bones by theirextremity points, in general. But also esthetic purposes were considered. In fact, in someparts of the body, the skeleton contributes directly on the external appearance and shouldbe considered during the skin generation process. For example, on the lower part of thelegs, the elbow and some ribs, if we consider a slim person. Furthermore, parts of bonesthat appear not to create surface form in some postures do so in others.

Moreover, another reason pushed us to append the bone shapes in our model. Thevisualization of the skeleton during animation allows the avoidance of forbidden postures,a tedious and abstract task when only based on a stick figure. The definition of the limitangles for each joint became also more precise when using bones representation betweenarticulations. Figure 3.17 shows the skeleton while trying some interesting postures.

Page 53: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

3.5. Why Representing Bones? 53

Figure 3.17: Skeleton performing different postures

3.6. Conclusion

This chapter presented our anatomically-based skeleton. All the positions andorientations of the joints are described in details, justifying our work. We presented also a

Page 54: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

54 3. Anatomically-Based Skeleton Design

comparison between the new model with our old one. The addition of bones on theskeleton was illustrated, as well as their usefulness in the human modeling.

The main contribution of this chapter relates the design of a new human template.A skeleton based on anatomic concepts allows the performance of more correct motionand postures. The inclusion of three-dimensional bones provides the easiest design of newhuman bodies, as well as the muscles attachment.

Page 55: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

55

4. Muscle Model

4.1. Introduction

Among the anatomical systems that determine the skin shape, the musculature isthe most complex. Three kinds of muscles can be identified in the human body: skeletal,cardiac and smooth muscles. As our purposes involve the representation of the humanbody, more precisely the external appearance, we have modeled only skeletal muscles,referred in this work simply by muscles. Skeletal muscles are arranged side by side and inlayers on top of bones and other muscles. Located throughout the entire body, the skeletalmuscles makes up from 40 to 45% of the total body weight [Tolo NY].

In this chapter we describe all the aspects of this Thesis involving single muscles,that is, all the steps implicated in the conception of our muscle model. The process ofdesign and animation of muscles begins with the conception of the muscle shape. Thesecond step consists of a resampling technique that, when applied over a muscle shape,generates another topology to represent the same muscle that has been designed in asatisfying way. Finally, the line of force of the muscle is defined and the deformationgenerated, with base on a set of parameters. The problems and solutions proposed tointegrate the muscles with the skeleton level are presented in the Chapter 5.

Section 4.2 presents a brief description of the physiology and anatomy of muscles,useful to understand how the human musculature works. Section 4.3 summarizes theexisting models to simulate the muscle force and presents our own approach to solve thisproblem. Section 4.4 discusses the muscle shape design. We have considered and testedthree different methods to design muscles. Moreover, a method have been developed toresample the shapes of the muscles in a regular grid that matches our simulation needs.The physically-based deformation model is presented in Section 4.5 and our solution tosimulate motion in Section 4.6. Section 4.7 presents some important details about ourmuscle model as: how to build a muscle and which parameters to define. The establisheddata structure is also presented. Finally some examples are presented and thecontributions of this chapter are summarized.

4.2. Muscles Physiology and Anatomy

Muscles are a sort of soft tissues that possess specific contractile properties andfunction as flexible shortening actuators on the different components of the organism.Three kinds of muscles can be identified and distinguished depending on theirfunctionalities: striated or skeletal, cardiac, and smooth muscles. The skeletal muscles areconnected to bones through tendons, which are composed of bundles of fibers. While they

Page 56: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

56 4. Muscle Model

are responsible for the motion of the skeletal structure, smooth muscles act on organs andother soft tissues in order to accomplish physiological tasks. The heart is a particular kindof muscle that can be normally viewed as an organ itself with specific functions, that is,to pump blood and to irrigate the organism. However, all three kinds of muscles have, inspite of their different functions, approximately the same structural characteristics andmechanical properties [Fung 93].

4.2.1. Structural Description

At the high level, skeletal muscles consist of muscle cells and fibrous connectivetissues [Dawson 74]. The cells, which are elongated and shaped like cylinders, are calledmuscle fibers. A group of muscle fibers forms a bundle (also called fasciculi), and manyfascicles (bundles) together form a muscle head. Finally, one or more heads constitute acomplete muscle belly [Scheepers 96].

At the low level, we can define a muscle as a combination of many strands oftissue called fascicles. Each fascicle is composed of fasciculi which are bundles of fibers,themselves composed of parallel bundles of myofibrils. The myofibril is the basic fiber ofmuscle and can contract, relax, and elongate (lengthen). It consists of series of contractileunits, named sarcomeres, composed of arrays of actin and myosin myofilaments,arranged so as to form the contractile mechanism of muscle (this architecture is shown inFigure 4.1). The constitutive connective tissue in muscle can be divided into threestructural entities, the epimysium, which surrounds the center part of the muscle (alsocalled “belly”), the perimysium, which binds bundles of muscle fibers into individualfasciculi, and the endomysium, which surrounds each muscle fiber individually [Purslow89]. The whole of these tissue sheaths is called the fascia. It encloses the muscles, groupsor separates them into layers, and ultimately connects them at their ends by the tendons[Winter 90]. The tendons are actually continuations of these connective tissue sheaths thathold the muscle together.

4.2.2. Activation and Contraction

Muscles are connected to the spine by nerves. The connection between this twostructures is called neuromuscular junction. When an electrical signal crosses theneuromuscular junction, it is transmitted deep inside the muscle fibers. There, the signalstimulates the flow of calcium which causes the thick and thin myofilaments to slideacross one another. When this occurs, it causes the sarcomere to shorten, generatingforce. When billions of sarcomeres in the muscle shorten all at once it results in acontraction of the entire muscle fiber [Appleton 97]. Interestingly, a single muscle fibercan only contract maximally, the so-called all-or-nothing law of muscle contraction[Dawson 74]. To regulate the strength of contraction, a varying number of muscle fibersmust be activated. Muscle fibers are enable to vary the intensity of their contractionrelative to the load against which they are acting. The more muscle fibers that arerecruited by the central nervous system, the stronger the force generated by the muscularcontraction.

Page 57: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.2. Muscles Physiology and Anatomy 57

Figure 4.1: Muscle structure [Warwick 73]

As mentioned before, the sarcomere is the basic contractile unit of muscle,composed firstly by two types of filaments: myosin and actin. Both are elongatedpolymerized protein molecules, that have the ability to slide along each other. “Stacks” ofalternating myosin and actin rods give the appearance of the stripes and bands crossingthe muscle fiber, with the myosin filaments bridging the gaps between the ends ofadjacent actin filaments, as shown in Figure 4.2.a. The stripes running across the fiber areof varying widths. The space between adjacent ends of actin proteins is called the H-band.The length of the myosin rods determine the (anisotropic) A-band. The distance between

Page 58: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

58 4. Muscle Model

adjacent ends of the myosin rods is the (isotropic) I-band. The center of the I-band istransversed by the z-disk which penetrates the actin myofilaments in their centers andcontains the sarcoplasmic reticulum [Kroemer 90].

(a) (b)

Figure 4.2: (a) Striating bands of the sarcomere crossing the filaments;(b) appearance of a sarcomere within stretched, relaxed and contractedmuscle [Kroemer 90].

The only active action a muscle can take is to contract. Elongation is broughtabout by external forces that lengthen the muscle. By convention, one distinguishesbetween the resting length of the muscle, its elongated (stretched) and its contractedlength. These three conditions are shown in Figure 4.2.b [Kroemer 90]. In each case, thewidth of the A-band remains constant, while the H and I-bands get narrowed incontraction, but wider in stretch as compared to the resting state.

Muscle fibers are highly specialized for contraction. Each muscle fiber cancontract to about half its original length [Martin 85], and it can be stretched to about 1,6times before it rupture [Steindler 77].

4.2.3. Types of Contraction

The contraction of a muscle does not necessarily imply that the muscle shortens; itonly means that tension has been generated. Goldfinger [Goldfinger 91] identifies twotypes of contraction: isometric and isotonic. In isometric contraction, the musclecontracts or tenses without producing movement or undergoing a change in length,because the load on the muscle exceeds the tension generated by the contracting muscle.In isotonic contraction, the length of a muscle changes and the muscle producesmovement. Isotonic contractions are further divided into two types: concentriccontraction, in which the muscle decreases in length (shortens) against an opposing load,such as lifting a weight up; and eccentric contraction, in which the muscle increases inlength (lengthens) as it resists a load, such as pushing something down.

Page 59: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.2. Muscles Physiology and Anatomy 59

4.2.4. Skeletal Muscle Architecture

When muscle is considered as actuator, not only the contractile fibers areconcerned, but also the passive connective tissues which join them to the bones. In amuscle belly, the fibers are more or less equal in length and uniform in thickness[Kaufman 89]. They are arranged in parallel fashion between both tendons of origin andinsertion. However, they may appear oriented at an acute angle to the tendons, namedpennation angle [Zajac 89]. Different existing musculo-tendon configurations are shownin Figure 4.3.

Figure 4.3: Different musculotendon patterns [Cutts 93]

In the parallel arrangement, where muscle fibers are parallel to the long axis of themuscle, the extent of contraction is often more important than power. In muscles withpennate pattern, the muscle fibers are short relative to the length of the muscle. The rangeof movement of a muscle is determined by the arrangement of the muscle fibers withinthe muscle. Long fibers can support a greater range of movement, while short fibersproduce more power [Scheepers 96]. Fibers rarely run the whole length of the muscle,tending to be somewhat oblique to the muscle’s line of action. Contraction velocity andexcursion range are related to fiber length.

4.2.5. Tendons and Ligaments

Despite their respective mechanical properties and functions slightly different,tendons and ligaments show roughly the same material composition [Viidik 87]. Theprime constituent of these tissues, named collagen, represents among 75% dry weight inhuman tendon [Crisp 72]. The remaining weight is shared between elastin, reticulin, and ahydrophilic gel called ground substance [Fung 93b]. The tendon fascicles are organizedin hierarchical bundles of fibers arranged in a more or less parallel fashion.

Ligaments and tendons play a different role in the organism. The first onesconnect bones together, handle the stability of joints and restrict their ranges of motion,while the second ones transmit muscle forces to bones in order to move the skeleton

Page 60: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

60 4. Muscle Model

[Viidik 87]. We can then conclude that both of them work as links handling andtransmitting loads between the skeletal components [Maurel 98].

Tendons are designed to transmit loads with a minimum amount of energy lossand deformation and are required to stretch about 8% of their original length, beforebreaking [Alexander 90]. A strain of 4% is regarded as especially significant in tendonsand corresponds to the disappearance of fiber waviness [Crisp 72].

4.3. Action Lines

To mechanically quantify the force that a muscle produces over a bone, werepresent muscles by lines, regularly named action lines. The attachment of muscles tobones closer to the spine of the body is generally considered the origin while the otherone represents the insertion. Normally, the origin is the fixed point, and the insertion iswhere the muscle performs its action, but there is no formal rule about it. Most musclesare simply attached to two bones across a joint, and each bone may function as either thefixed point or the moveable one [Cody 90].

In our model, we represent a muscle in two levels: the action line and the muscleshape. Section 4.3.1 presents an overview of the main researches on muscle forcemodeling and in Section 4.3.2 we present our approach to solve this problem.

4.3.1. Muscle Force Modeling

The formulation of the equilibrium conditions of a rigid body system, rigorouslypresents a theoretical problem: the determination of the forces acting on bodies. As toweight forces and mass-inertial characteristics of the bodies, some data from cadaverspecimens and different techniques for estimation in the living human bodies can be used.However, many specialists assume that the muscle force acts along the straight line whichconnects attachment points of the muscle tendons. According to Seireg and Arvikar[Seireg 73], “the straight lines have to be chosen to represent the best approximation forlines of action in space of the muscular tensile forces”. This choice, although inadequateto describe the reality in many cases, aims to facilitate the analytical description of themodel. This approximation is not always correct from anatomical and mechanical pointsof view.

Another approach for the description of the muscle force line of action is themuscle centroid. According to Jensen and Davy [Jensen 75], “the centroid line is aqualitatively appealing way to represent a muscle as a single line”. The centroid-linesapplication for the analytical description of the models has a limitation due to the fact thatthey are calculated from cadaver specimens with strictly fixed joint angles and theiranalytical description does not exist. An intermediate approach is applied by Frigo andPedotti [Frigo 78], who use lines and arcs of circles to model the course of eleven majorlocomotor muscles, and by Pierrynowski and Morrison [Pierrynowski 83], modeling 47locomotor muscles, each one represented by an elastic thread connecting the origin andthe insertion point, and passing through one to four additional points. This approach is abalance between accuracy and simplicity. But it is used only for calculation of the lengthand velocity patterns; the choice of additional points is made from an anatomical point of

Page 61: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.3. Action Lines 61

view [Raikova 92]. In all cases, it is assumed that the line of action is representative ofthe muscle force at a cross-section.

The modeling of the muscle force direction by segments - straight and curvilinearsections [Toshev 89] - can be applied for the muscle force computation under quasistaticand dynamic conditions. The number and kind of muscle segments must be chosen notonly from anatomical considerations but also from mechanical ones, which are connectedwith the anatomical functions of the muscles.

In practice, some muscles have very broad attachments while some others dividein several bundles attached onto different bones. These may be modeled in dividing themuscles into several lines of action. The choice of the lines must be made on the basis ofanatomical and mechanical considerations [Högfors 87]. However, it was observed thatsmall changes in the directions or points of application of the forces can have large effectson the resulting moment vectors. For this purpose, van der Helm et al. have developed amethod to determine the number of muscle force vectors, capable of representing themechanical effect of muscles with large attachment sites, accounting for the form and sizeof the attachments as well as for the distribution of the fibers in the muscle [Helm 91].

4.3.2. Our Approach

In our approach to model the muscle forces, muscles can be represented by one ormore action lines, basically defined by an origin and an insertion point. These pointsrepresent the links between the muscles and the bones, sometimes also corresponding tothe extremities of the muscle shape. However, depending of the shape, position andcomplexity of the muscle, simple action lines are not enough to represent the forceproduced over the skeleton. For this reason, we have decided to represent the actions ofthe muscles not simply by a straight line, but by using polylines. To accomplish it wehave developed the concept of control points, whose objective is to guide the line,avoiding the intersection with the bones. An example of this kind of action line is shownin Figure 4.4. The Biceps Brachii is represented by two action lines (one for each of thetwo muscle heads), but one of them needs to use a control point. If we try to represent thisaction line by a straight line, the bone will be intercepted.

Other examples of intersection between bones and lines of action can be perceivedonly while animating the skeleton. It is exactly the case of the Triceps Brachii, forexample, that are represented by three action lines (one for each muscle head) attachingthe upper arm to the upper part of the lower arm. Figure 4.5 shows the definition of theaction line that represents the Triceps middle head. In Figure 4.5.a, we can see theskeleton of the arm with the defined action line when the muscle is in its rest position.Figure 4.5.b shown the arm contraction and the resultant action line, if it was defined by asimple straight line. We can see in the example, that if the action line is not correct, themuscle can contract during an extension action. Finally, Figure 4.5.c shows the correctsimulation of the Triceps action line, by using some control points.

Page 62: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

62 4. Muscle Model

Figure 4.4: The Biceps Brachii muscle and corresponding action lines

(a) (b) (c)

Figure 4.5: The Triceps Brachii middle head action representation: (a)bones of the arm and Triceps action line with the muscle in its rest

Page 63: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.3. Action Lines 63

position; (b) action line and muscle reaction during the arm contractionand with a straight action line; (c) correct simulation of the action line byusing additional control points.

Moreover, Figure 4.5 shows also an example of the muscle shape simulation andreaction to the arm motion. In these examples we can verify that the muscle belly is notattached to the bones by the origin and insertion of the action lines. It has its own originand insertion points, simulating in this way the presence of tendons. In order to simulatethe tendons we assume that the action line is, in fact, a thread linking two bones andcrossing some pulley, here represented by the control points. As described in Section4.2.5, tendons stretch just about 8% of their original length. For the sake of simplicity, wedefine the tendons by giving distances between the muscle boundaries and the action linesextremities. During the animation, this distances are kept constant.

4.4. Muscle Shape Design

To simulate muscle deformations we use a set of mass points linked by springsand organized in a way to ensure a correspondence between the action line and themuscle shape. We consider, for all the cases, that each muscle belly involves completelyan action line or a part of an action line. Each point that composes the surface of a muscleis arranged between two neighbors in the horizontal and two others in the verticaldirection, considering the action line of a muscle as the up reference. In this sense, we cansay also, that the extremities of the muscle shape have the same position of the actionlines extremities or, if we are using tendons, that they are placed on the action line.

Taking into account the limitations imposed by our deformation model, whichwas designed specifically to simulate fusiform muscles, we developed a resamplingmethod whose goal is the generation of simple and regular surface of the muscles. From amuscle form composed by triangles, this method is able to generate another muscle shapedesigned in a way to achieve our objectives. This method is well explained in Section4.4.4. The next sections present some techniques we use to design muscles, before theresampling.

4.4.1. Reconstructed Muscles

The tasks described here were involved in building tools for topological modeling,a module of the European ESPRIT project CHARM (Comprehensive Human AnimationResource Model) [CHARM 93]. The goal of the project was to develop a 3D human bodymodel (more specifically the upper limb) with interior details, allowing the physically-based movement and finite element deformation. The topological modeling part wasdeveloped by the University of Geneva (MIRALab), with the collaboration of the EPFL(Computer Graphics Lab) team. More details can be obtained in [Beylot 96].

The reconstructed muscles we have used in the simulation, consist of a surfacebased model fitted to the boundary of the medical image data coming from the VisibleHuman Dataset (VHD) [Ackerman 95]. The process of surface reconstruction had severalsteps: data preprocessing, labeling and interpretation, contour fitting, reconstruction andpostprocessing.

Page 64: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

64 4. Muscle Model

4.4.1.1. Visible Human Dataset

The Visible Human Dataset consists of the transverse CT and anatomicalcryosection images of a representative male and female cadaver at an average of onemillimeter intervals for the Visible Male and 1/3 of a millimeter for the Visible Female.Low resolution MRI frontal views are also provided, as well as two CT scans. They weretaken before and after the cadaver was frozen and are referred to as the fresh and thefrozen view, respectively. The fresh view provides a better contrast between muscle andfat tissues, but there are less slices and the slices are not equidistants, making the datadifficult to use. For the frozen view, inter-slice distance is 1 mm, and the size is 512 x512 pixels for a 480 x 480 mm field of view for most of the body (270 mm for the headand 400 mm for the neck).

The axial anatomical images are 2048 x 1216 pixels with each pixel defined by 24bits of color. The anatomical cross-section are also at 1 mm intervals. The pixel size ofthe image is 0.33 x 0.33 mm. The cryosection images contain significantly moreanatomical information than other imaging modalities, as these are high resolutioncolored images.

Though the VHD provides a complete volumetric coverage of the human body, itdoes not give information about its structure, leaving this task to the users.

4.4.1.2. Data Preprocessing

Before the use of VHD for labeling and reconstruction, several tasks need to beperformed. First, the images are converted to a single image format with 8 bits perchannel per voxel. The images for slices are then scaled and cropped around the region ofinterest, due to the memory size limitation. Each stack is described with its physical sizeand position relative to the original data set.

4.4.1.3. Labeling and Interpretation

The interpretation of cross sectional images through the human body obviouslyrequires specialized anatomical knowledge. The human body comprises more than 300skeletal muscles and despite the knowledge of these muscles as three dimensionalentities, it is not sufficient for identifying them in sectional images. Anatomists may bebest suited for reliably identifying all muscles of the human body, considering possibleanatomic variations. As far as the skeletal muscles are concerned, every individual ispresumed to have an average of about ten muscular variants [Fasel 94].

Anatomical cryosections are well suited for distinguishing muscles, even if thecontour of every individual muscle can not be clearly and easily identified. Besides thefact that conspicuous connective membranes within muscles should not be mistaken forintermuscular septa, connective tissue between two authentic muscle entities can be toothin for macroscopic visualization. In such cases, the different fiber orientations, leadingto slightly different colors on cross sections, can sometimes help in delineation. In othercases, the distinction made only with the slices is impossible. In those cases, the bordersbetween the muscles are arbitrarily traced based on anatomical experience. After the

Page 65: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.4. Muscle Shape Design 65

three-dimensional reconstruction, if the result is not acceptable, it is possible to return tothe problematic slices and improve the segmentation.

4.4.1.4. Contour Fitting

For exact fitting the contour of the organ on a slice, discrete snakes [Kass 87][Terzopoulos 91] were used. This allows the fitting of the contour to points of maximumcontrast close to the already defined rough contour. Even if snakes are quite useful whenanatomical information is visible, manual intervention is sometimes necessary due to thedifficulties in interpretation (as mentioned before).

4.4.1.5. Reconstruction and Postprocessing

Three-dimensional reconstruction is performed by joining the contours of allpertinent slices using the nuages [Geiger 93] software. Subsequently, in order to assembleall reconstructed elements (sometimes from different images modalities), somepostprocessing operations for matching [Elsen 93] are employed. A single global affinetransformation [Kerr 95] is obtained using a set of corresponding features between frozenCT stack and cryosections, and applied to each reconstruction from frozen CT.Alternatively, manual positioning of an object from frozen CT into the correspondingcryosection stack is also feasible. Figure 4.6 illustrates different elements reconstructedand assembled.

Figure 4.6: CHARM reconstructed muscled body

Page 66: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

66 4. Muscle Model

4.4.2. From Ellipsoids to Muscles

Another way we have conceived to design muscles is by using ellipsoids. Anellipsoid is an implicit surface defined by four parameters: weight (w ) and size (axislength of a2 , b2 and c2 along the principle directions). Its position and orientationrelative to the local frame of the attached joint are defined by six parameters: center( zyx OOO ,, ), and orientation (Euler angles zyx ϕϕϕ ,, in XYZ order). The points on the

primitive surface satisfy:

( ) ( ) ( )12

20

2

20

2

20 =−+−+−

c

zz

b

yy

a

xx

As our objective is the modeling of fusiform muscles, we ponder that the usage ofellipsoids could be a good approach to users without experience in design. Ellipsoids canbe easily designed only by changing the values of the variables a, b, and c. To allow it,we have developed a software to model muscled bodies and that consists basically of twowindows: one to design a new muscle; and the other with a skeleton, for integrationpurposes. The user is able to design an ellipsoid that is afterwards triangulated with theaid of an implicit surface polygonizer [Bloomenthal 94]. The second step is to define theaction line corresponding to the new muscle form. It is performed by pointing these twoextremities interactively over the ellipsoid. The third step consists in fixing this sameaction line over the skeleton on the second window, defining the location of the newmuscle over the body. Finally, this new muscle is definitely incorporated to the body. Anexample of a body designed with the aid of our software and composed only by ellipsoidsis shown in Figure 4.7.

Figure 4.7: Muscled body designed with ellipsoids

Page 67: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.4. Muscle Shape Design 67

4.4.3. Manual Shape Input

With the help of a designer, we studied separately the form and the behavior ofeach muscle, trying to model it accordingly to its biomechanically-based action line. Tobetter explain the process employed to design and deform muscles, we take again theexample of the Triceps Brachii muscle, a particularly complex muscle. The Tricepscorresponds to the fleshy mass placed on the back of the upper arm and that acts as anextensor muscle of the fore-arm. As its name implies, the Triceps is composed by threeheads, which are distinguished as the inner, the outer and the middle or long head. Theinner and the outer heads arise from the Humerus while the long head springs from theouter margin of the blade-bone, just below the shallow socket which receives the head ofthe Humerus. The other extremity of all the three heads are attached to the upper part ofthe Ulna.

The muscle shape is manually modeled using two different kind of data: acollection of pictures used on artistic anatomy and the corresponding action lines thatdescribe the actuation of the Triceps, as shown in Figure 4.8. Muscles are modeled bytriangle meshes that are subsequently resampled for deformation purposes.

To model the muscles we use the Sculptor software developed at MiraLab -University of Geneva. This software was conceived initially to design three-dimensionalheads. From a spherical surface, it is possible to model complex shapes only by movingthe surface points. These points can be moved in several ways, by groups or individually.Figure 4.9 shows a muscle body designed using this manual technique. We call “manual”because it depends quite exclusively of the designer ability, on the opposite of the twoother techniques described before.

4.4.4. Resampling Method

In order to resample muscles, we have developed a simple algorithm conceivedexclusively for fusiform shapes. As explained before, to satisfy the necessities of ourdeformation model, each point in the model surface should be placed accordingly withthe action line position. In which case, any design method presented in the latest sectionscan match our needs. To this end, we have developed a muscle editor where the user canconnect the reconstructed muscle to its respective action line, as well as to define thenumber of points desired on the new muscle after the resampling process.

To resample given dense irregular triangle meshes into regular grids (Figure 4.8.cshows an example of a resampled Triceps), the user needs to define the number of slicesperpendicular to the action line on the new muscle shape, as well as the number of pointsin each slice. Excepting the extremities, every slice has the same number of points. Thealgorithm goes through all the action line and, at each position of a new muscle sliceperforms the design of an imaginary circle. Lines are drawn in a star-shaped manner withthe origin on the intersection between the action line and the slice. For each line wecompute the outermost intersection point with the initial muscle. Each result point ofthese intersections will be a point over the new muscle surface.

Page 68: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

68 4. Muscle Model

(a) (b) (c)

Figure 4.8: The Triceps modeling process. The 3D muscle shape model(b) and its resampled version (c) is obtained from artistic anatomypictures (a down) and the action lines scheme (a up).

Figure 4.9: Muscled body manually designed

Page 69: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.4. Muscle Shape Design 69

In Figure 4.10 we can see a modeled muscle with four examples of resampledforms obtained by our editor.

Figure 4.10: Model of the internal part of the Triceps (with 2160 points)and the resampled models with respectively: 197, 182, 82 and 32 points.

Note that there is a loss of quality involved in the resampling process. Here wehave the same usual dilemma: presentation quality versus speed. As we are looking forreal-time deformations, our choice is speed. Muscles have a very complicated form whichis hard to reproduce. Furthermore, a lot of muscles are covered by others and all of themare covered by the skin. Then, to represent a global animation, we really do not need ahigh degree of accuracy in muscle shape representation.

Continuous level of detail and multi-resolution techniques [Certain 96][Lindstrom 96] have recently been studied to solve the conflicting requirements ofrepresentation quality and animation speed. In future work we intend to study theintegration of some multi-resolution methods in muscles presentation. For this, we areconsidering two kinds of multi-resolution: the spatial one, that aims to changeautomatically the degree of discretization of a muscle in function of its position inrelation to the others; and the temporal one, that changes the resolution according to theposition of the camera, during the visualization process.

4.5. Deformation Model

The problem of simulating deformable objects can be seen as a continuous systemin space and time. The first step to solve this system is to discretize the continuousequations in material coordinates, resulting in a large system of simultaneous ordinarydifferential equations. The shape of a body is determined by the Euclidean distancesbetween nearby points while the evolution of the object in the scene depends on the forcesacting on its points. The second step is the time discretization that generates the evolutionof the objects on time. More details can be found in Section 4.6.

Page 70: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

70 4. Muscle Model

In order to physically simulate the deformation of a muscle, we use mechanicallaws of particles. A particle is an object whose mass and not its size is of significance inthe analysis of its motion. This motion is represented by position changes of the center ofmass and since no rotation is expected, the distribution of mass is of no consequence. Inthe general sense, a particle has three Degrees of Freedom and its coordinates areconveniently represented by the displacements x, y, z in the direction of three fixedorthogonal axes X, Y, Z defining an inertial reference [Seireg 89].

The motion of a particle is defined by its nature and by the position of otherobjects and particles in its neighborhood. In our specific case, we have decided toconsider only the representation of muscle surfaces, in order to reduce calculations. Infact, we believe we can simulate muscle deformation without considering directly theirvolume characteristics. The surface is composed by a set of particles with mass density m.Their behavior is determined by their interaction with the other particles that define themuscle surface. In a correspondence with the geometric structure presented before, eachpoint of the mesh corresponds to a particle in the physical model.

The physical model presented here is based on the application of forces over allmass points that compose the mesh, generating new positions for them. Adding all theapplied forces, we obtain a resultant force for each particle on the deformable mesh. Forthe sake of simplicity, we have considered three different forces: elasticity force,curvature force and constraint force. Then, the resultant force in each particle i can becalculated as:

[ ] ),,,,(),,,,( 3210sconstraint

3210iiiiicurvatureelasticityiiiiiresult xxxxxfffxxxxxf ++= ,

where ix is the vector position of the particle i and 3210 ,,, iiii xxxx the positions of the

particles that compose its neighborhood.

Further, we present in detail the components involved on the resultant forceapplication over a particle, as well as the aspects involved in its definition and calculus.We would like to emphasize that we have used a vectorial representation of the forcesdescribed here.

4.5.1. Elasticity

To simulate elastic effects between the particles on the muscle mesh, we haveused some concepts from the Theory of Elasticity, specifically concerning linear springs.We suppose the connection between each particle and its four neighbors, with the use ofsprings, as you can see in Figure 4.11.

Considering the force produced by a linear spring (also knowing as Hooke’sspring) over a mass point as

[ ] jiijijsjiijspring uxxxxkxxfij

)()(),(00

−−−−= ,

where ijsk is the coefficient that indicates the degree of elasticity of a spring, ix is

position of the spring’s oscillating extremity and jx is the position of the fixed extremity.

Page 71: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.5. Deformation Model 71

0ix and

0jx are the positions of the extremities i and j while the spring is in the rest state

and jiu the oriented unit vector from j to i. In extension, we can define the elasticity force

as the sum of all forces exerted over the point ix by the springs connecting itself to its

four neighbors. Now we can represent the elasticity force over one particle, as follows:

∑=

=3

0

3210 ),(),,,,(j

jispringiiiiielasticity xxfxxxxxfiji

Figure 4.11: Elastic model of the muscle surface

We have designed two classes of springs: vertical and horizontal ones (bothdefined in relation to the muscle action line), where the horizontal springs areperpendicular to the action line. The difference between the two relates the specificationof their elasticity coefficients. Furthermore, we have two different degrees of elasticity: inwidth and height (always relating the muscle action line). We consider that the muscleheight is defined in the same direction of its action line. Figure 4.12 shows the minimalelasticity component of a muscle, composed by a spring and a damping module.

Figure 4.12: Minimal elasticity component

4.5.2. Curvature and Torsion

The force that determines the degree of bending and twisting of a muscle surfacewas named curvature and torsion force. As the elasticity force, this force is also calculatedfor each mass point over the surface as a function of its four neighbors.

The physical simulation of these effects was designed by employing another kindof linear spring, we have created and named angular springs. The difference betweenthese springs and the other ones used to simulate elasticity is the way they are attached.

Page 72: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

72 4. Muscle Model

Consider a mass point 0x with a neighborhood formed by 40

30

20

10 ,,, xxxx , as shown in

Figure 4.13. Each mass point 0x has two corresponding angular springs, one in the angle

defined by the vectors 100xx and 3

00xx , and the other one in the angle between 200xx and400xx .

Figure 4.13: Angular spring between the line segments 100xx and 3

00xx

The implementation of this kind of springs is done (consider the spring in Figure

4.13, placed in the angle between 100xx and 300xx ) by attaching a spring linking the point

0x with the mid-point of the line defined by the vector 30

10xx , when all the points are in

initial position, that is, with all springs in rest position.

As for the springs presented in Section 4.5.1, we can define the degree ofcurvature of a muscle in two dimensions. In order to implement this, we allow thespecification of curvature coefficients in the two orientations (horizontal and vertical),considering the muscle action line as the up reference. We can say that the horizontalsprings are the ones perpendicular to the action line (defined between a mass point and itsneighbors over the same muscle slice - see Figure 4.14.a) and the vertical springs, thesprings defined between each mass point and its neighbors on the upper and lower slices(see Figure 4.14.b).

As we have simulated muscles only by their surfaces, we do not have therepresentation of a volume, but a surface designing a muscle shape. Like any surfaceassembled by points linked to their neighbors by springs, it can twist and bend in anydirection, changing completely the expected final shape. With the use of angular springs,we succeeded in avoiding this kind of behavior, as shown in Figure 4.15, where wecompare a muscle compression with and without the use of angular springs.

Finally, we have realized that increasing the angular spring coefficients, we areable to control the muscle volume during deformation, that is, we do not need a post-processing step for this purpose. Obviously, this is not a method that mathematicallyguarantee the volume preservation. But it allows an efficient and quick way to providedifferent degrees of deformation to the same initial muscle shape, preserving the

Page 73: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.5. Deformation Model 73

homogeneity and guaranteeing some kind of volume control in processing time. In Figure4.24 we show an example of muscle compression with different curvature coefficients.

(a) (b)

Figure 4.14: Example of the definition of a horizontal angular spring (a)and a vertical one (b).

(a) (b) (c)

Figure 4.15: (a) Muscle in the rest position; (b) compressed musclewithout angular springs and (c) compressed muscle with angular springs.

4.5.3. Geometric Constraints

The geometric constraints were developed to improve the response to the differentconditions not formally explicit into our internal force model and that can be applied tosome specific points (local constraints), regions of muscles (zonal constraints) or to allthe muscle (global constraints). An example of local constraint is the movement of thepoints that attach the muscle to the bones. The movement of those points are function ofthe bones motion, that is, if you move your arm, the muscles attached at thecorresponding bones will also move. Different conditions can also result from a collisionbetween a muscle and another internal structure, as organs, bones, fat, etc. One way toimplement it can be by defining a zonal constraint. With all the body in the rest position,the user define the regions of the muscle that are in contact with another organ, bone or soon and apply the same constraint over all the particles comprise in the region. This

Page 74: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

74 4. Muscle Model

constraint can be, for example, the conservation of a kind of link between a muscleparticle and the surface of the other organ.

The implementation of the great part of the constraints force can be done by usinginverse dynamics. We specify the constraints actuating on a particle and calculate theforce necessary to compel the particle to obey these constraints. It can also be calledinduced force. Knowing the position where a particle i should be located, we apply aforce that minimize the distance by creating a point to point displacement. If ix is the

current particle position in Euclidean space and goalix its ideal position, a force f should be

applied to the particle i. This force f can gives a mean to handle animation control as thepath following or key-frame guiding. To accomplish it, at each time step, we need todefine a new

goalix on the path.

The methodology used to satisfy constraints, allows easily the inclusion of newones, without the need to modify the physical model. At this time, we are using thegeometric constraints only to move the attachment points of muscles.

4.6. Motion Simulation

As already mentioned, the model used to deform muscles is based on a particlesystem where the interactions between particles are modeled by springs. The movementsimulation is done by applying systems of motion equations over each particle of themodel. These systems rely on second-order differential equations derived from adefinition of elasticity as being the resistance to extension of a material, and viscosity asbeing resistance to a change in extension for a material [Holton 95].

We have used the Lagrange’s equations of motion as in [Terzopoulos 87]:

iexterniiiiiresultiiii fxxxxxfxxm =++ ),,,,( 3210��� γ

where iii xxx ��� ,, are respectively, the positions, velocities and accelerations of its mass

elements as function of material coordinates and time, iim γ, are the nodal mass and the

damping factor that dissipates the kinetic energy of the body’s mass elements,),,,,( 3210

iiiiiresult xxxxxf is the result force over the node i and iexternf is an external force.

The external force is balanced against the force terms on the left hand side of the equationdue to the deformable model. The first term represents the inertial force due to themodel’s distributed mass. The second term is the damping force due to dissipation andthe third term is the elastic force due to the deformation of the model away from itsnatural shape.

4.6.1. Numerical Integration Through Time

To create animations simulating the dynamics of elastic models, the ordinarydifferential equations of motion are integrated through time. We use a fourth orderRunge-Kutta method [Press 92] for this. We have chosen this method because it is morestable than Euler’s method while retaining an acceptable time of execution.

Page 75: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.6. Motion Simulation 75

The generic problem in ordinary differential equations can be, in fact, reduced tothe study of a set of N coupled first-order differential equations for the functions iy ,

Ni ,...,2,1= , having the general form

),,...,,()(

1 Nii yyxfdx

xdy = Ni ,...,1=

where the functions fi on the right-hand side are known.

There are many ways to evaluate the right-hand side ),( yxf that all agree to firstorder, but that have different coefficients of higher-order error terms. Adding up the rightcombination of these, we can eliminate the error terms order by order. That is the basicidea of the Runge-Kutta method. The fourth-order Runge-Kutta requires four evaluationsof the right-hand side per step h (see Figure 4.16) :

( )

)(6336

,

2,

2

2,

2

),(

543211

34

23

12

1

hOkkkk

yy

kyhxhfk

ky

hxhfk

ky

hxhfk

yxhfk

nn

nn

nn

nn

nn

+++++=

++=

++=

++=

=

+

Figure 4.16: Fourth-order Runge-Kutta method. In each step thederivative is evaluated four times: once at the initial point, twice at trialmid-points, and once at a trial end-point. From these derivatives the finalfunction value (shown as a filled dot) is calculated [Press 92].

The Runge-Kutta method treats every step in a sequence of steps in identicalmanner. Prior behavior of a solution is not used in its propagation. This is mathematicallyproper, since any point along the trajectory of an ordinary differential equation can serveas an initial point. The fact that all steps are treated identically also makes it easy toincorporate Runge-Kutta into relatively simple “driver” schemes [Press 92].

4.6.2. Our Implementation

In this section we demonstrate in detail the algorithm implemented to adjust theRunge-Kutta method to our specific problem. The four evaluations of the method are

Page 76: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

76 4. Muscle Model

represented here by four steps, considering the use of the following variables: ix is the

position, t

xi

∂∂

the velocity and t

xi2

2

∂∂

the acceleration vectors of the particle i ;

),,,,( 3210iiiiiresult xxxxxf is the function that calculate the resultant force exerted on the

particle i ; iγ is the damping factor of the particle i ; im is the nodal mass; h is the time-

step; and i

xα , i

xβ , are auxiliary variables used to save positions during the calculation

process. Figure 4.17 shown the four steps of the Runge-Kutta applied to our applicationneeds.

First step Second step

t

xh

t

x

t

x

t

xhxx

m

xxxxxf

t

x

t

x

t

x

t

x

iii

iii

i

iiiiiresulti

ii

ii

2

2

3210

2

2

2

2

),,,,(

∂∂⋅+

∂∂=

∂∂

∂∂⋅+=

=∂∂

∂∂−

∂∂=

∂∂

α

α

γ

t

xh

t

x

t

x

t

xhxx

m

xxxxxf

t

x

t

x

t

x

t

x

iii

i

ii

i

iiiiiresulti

i

i

ii

2

2

3210

2

2

2

2

),,,,(

∂∂⋅+

∂∂=

∂∂

∂∂⋅+=

=∂

∂∂−

∂∂=

∂∂

αα

αα

αααααα

ααα

γ

Third step Fourth step

t

x

t

x

t

x

t

x

t

x

t

x

t

xh

t

x

t

x

t

xhxxt

m

xxxxxf

t

x

t

x

t

x

t

x

iii

iii

iii

i

ii

i

iiiiiresulti

i

i

ii

2

2

2

2

2

2

2

2

3210

2

2

2

2

),,,,(

∂∂+

∂∂=

∂∂

∂∂+

∂∂=

∂∂

∂∂⋅+

∂∂=

∂∂

∂∂⋅+=

=∂

∂∂−

∂∂=

∂∂

αββ

αββ

βα

β

αααααβ

ααα

γ

∂⋅+∂

∂+∂

∂+∂∂=

∂∂

∂⋅+∂

∂+∂∂+=

=∂

∂∂−

∂∂=

∂∂

t

x

t

x

t

xh

t

x

t

x

t

x

t

x

t

xhxx

m

xxxxxf

t

x

t

x

t

x

t

x

iiiii

iiiii

i

iiiiiresulti

i

i

ii

2

2

2

2

2

2

3210

2

2

26

26

),,,,(

βα

βα

αααααα

ααα

γ

Figure 4.17: Runge-Kutta steps used on the muscle motion simulation

At each time step (or every few time steps) the resulting simulation data may berendered to create successive frames of the animation. About instability, such problemscan be minimized by the use of appropriate damping of the elastic and viscous forces in

Page 77: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.6. Motion Simulation 77

the system and by simulating time intervals at a much higher frequency than the visibleframe rate. This increases the accuracy of the approximation to a truly continuous model.

4.7. Some Details about the Implementation

4.7.1. How to Build a Deformable Muscle?

The process involved in the generation of our muscle model starts with thedefinition of the action line (Section 4.3) and the design of the muscle shape using one ofthe processes stressed in Section 4.4. We will describe now the required procedure tosimulate the muscle deformation, explaining how to build a deformable muscle.

The design of a new muscle and the definition of its behavior is not exactly aneasy task. We need to find intuitively the best set of deformation parameters, to apply thisparameters on a geometric shape and to test visually if they are suitable or not. For thispurpose, we have developed the software called mms (Muscle Model Simulator), whoseinterface (presented in Figure 4.18) is composed by two windows: one for thevisualization and the other containing the system options. The software was developedusing a SGI Impact workstation and Open Inventor for the interface and works by readinga file (<filename>.mms - see Figure 4.19 for an example) with a muscle shape and thesimulation parameters.

Figure 4.18: Muscle Model Simulator (mms) interface

.IV FILE NAME = triceps_longhead.ivTIME STEP FOR THE SIMULATION = 0.4DEGREE OF SUBDIVISION IN X = 8DEGREE OF SUBDIVISION IN Y = 7ELASTICITY CONSTANT (H) = 0.0ELASTICITY CONSTANT (V) = 5.0CURVATURE CONSTANT (H) = 0.0CURVATURE CONSTANT (V) = 5.0TOTAL MASS = 16.0DAMPING = 0.5LENGTH STEPSIZE = 0.5

Figure 4.19: Example of parameters file format (triceps_longhead.mms)

Page 78: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

78 4. Muscle Model

The user can then simulate interactively and in real-time the deformations of themuscle, by compressing or extending its action line with the aid of a slider. We allow amaximum of 30% compression and extension, indicating the possibility of a 60% changein the action line length. If the results are not convincing, the parameters file can beedited and loaded again. The user can maintain this loop as much as wanted. Figure 4.20shows an example of the use of mms while testing new parameters for the long head ofthe Triceps.

Concerning the other interface options, the user can choose exactly what he desireto see. Muscles can be shown as a set of shaded triangles, in wireframe, only by theparticles positions or can be invisible. In the same way, the action line (the yellow line onFigure 4.18) can be visible or not. The camera position can also be changed interactivelyby the user. The “Options” window allows yet the possibility to visualize some vectorsattached to muscle particles, representing each one the active elasticity, curvature andresultant forces (this feature can be very useful while choosing the good parameters).Thenumber of frames per second is shown intermittently and more time data are alsoavailable by clicking in the correspondent button.

Figure 4.20: Deformation tests of the Triceps long head. On the top, themuscle is presented on its rest state. The second line shows the extension.The third and fourth lines shows compression motion with differentcurvature coefficients.

Page 79: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.7. Some Details about the Implementation 79

4.7.2. The Parameters

The main parameters that the user needs to set to perform deformations are: twoelasticity coefficients, two curvature coefficients, the muscle mass and a damping factorused during the motion simulation. Figure 4.19 shows an example of parameters file.Concerning the coefficients, they consist of physical parameters used in the calculation ofelasticity and curvature forces (see Section 4.5.1. and 4.5.2). As we have designed twoclasses of springs, vertical and horizontal ones (both defined in function of the muscleaction line), we have also two elasticity coefficients, considering that the horizontalsprings are perpendicular to the action line. The same idea is applied over the curvaturesprings, where we can choose the degree of curvature in width and height, with verticaland horizontal springs. The muscle mass and the damping factor are used on the motiongenerator, better explained in Section 4.6. About the muscle mass, the user can define thetotal mass of the muscle that is subsequently divided by the number of particles thatconstitutes its surface.

Other parameters are also needed to perform simulation:

• .IV FILE NAME: Supply the name of the file containing the geometric description ofthe muscle. All the muscles are represented by a triangle set over an Open Inventor fileformat [Wernecke 94];

• TIME STEP FOR THE SIMULATION: The time step used on the numericalintegration through time equation. For more details, refers Section 4.6;

• DEGREE OF SUBDIVISION IN X and DEGREE OF SUBDIVISION IN Y: Theseparameters correspond to the geometric organization of the particles on the musclesurface. We consider the y axis parallel to the muscle action line and the x axisperpendicular. Then, the degree of subdivision in y indicates how many muscle sliceswe have while the degree of subdivision in x points how many particles we have oneach slice;

• LENGTH STEPSIZE: Parameter used on the action line animation. As mentioned inSection 4.7.1, we can simulate muscle deformation by changing interactively thelength of its action line with the aid of a slider. But the length variations can be verystrong depending of the velocity we move the slider, generating non-continuosdeformations. To anticipate this problem, this parameter was added. This guaranteesthat, regardless of the speed we move the slider, the changes on the action line lengthwill be always the same in each iteration.

4.7.3. The Data Structure

The data structure used to simulate muscles deformation is composed by two listsand two static structures and contains all the data concerning its geometric and physicalaspects. Each muscle is represented by one dods structure (a general structure to storedeformable objects data). A structure named mms (muscle model simulator data), storesmore general data about muscles which are not included on dods structure because it canbe shared by several different muscles. For the sake of simplicity and organization, lists

Page 80: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

80 4. Muscle Model

with the data relative to nodes and connectors are kept in separate. The contents of thesefour structures are presented below.

nodes list

• position;• velocity;• acceleration;• node mass;• pointer to all its connectors (elasticity springs);• pointer to its curvature springs.

connectors list

• pointers to its two constituent nodes;• module of the elasticity force exerted by the connector (spring);• connector rest length;• elasticity coefficient;• curvature coefficient.

mms structure: Muscle Model Simulation data structure

• name of the file containing the muscle shape description;• degree of subdivision in x and y;• mass density of the system;• damping factor to muscle animation;• elasticity coefficients read from the parameters file;• curvature coefficients read from the parameters file;

dods structure: Deformable Objects Data Structure

• muscle identifier name;• total number of nodes;• total number of connectors;• total number of curvature springs;• mass density of all the muscle;• pointer to mms structure;• pointer to nodes list;• pointer to connectors list;• pointer to curvature springs list (same structure of the connectors list);• pointer to the correspondent action line;• flag indicating if the muscle is in motion or not;• pointer to the attached joint (if the muscle is connect on a skeleton).

4.8. Animation Examples

As an example of our deformation method, we have simulated the motion of theBrachialis muscle, reconstructed from the images of the Visible Human Dataset (VHD).The Brachialis has the origin at the front of the lower half of the shaft of the Humerus

Page 81: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.8. Animation Examples 81

and the insertion at the front of the coronoid process of the Ulna. It is responsible for theflexion of the forearm and can be modeled by only one action line, between the ulna andthe Humerus. We assume all muscles designed are in a state of rest before the simulation.

In Figure 4.21 we can see a compression process of the Brachialis muscle. Wehave used a muscle composed by 50 mass-points and a compression rate of 30%.

Figure 4.21: Muscle compression sequence

In Figure 4.22 we have used the same parameters of the example shown in Figure4.21, but with a different movement. In this case, we have simulated an extension rate of30%.

Figure 4.22: Muscle extension sequence

Page 82: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

82 4. Muscle Model

In Figure 4.23, we have another example of compression. We have used exactlythe same parameters of the other two examples, but this time we have simulated thedeformation of the Brachialis with bones motion. Note that the compression rate is muchless significant than in the other examples. On the Figure 4.21 and 4.22 we have usedmore compression and extension rates than in reality. Exaggerating the motion, we canshow better the model behavior.

Figure 4.23: Bones motion with muscle contraction

In Figure 4.24, we present an example of muscle compression using differentcurvature coefficients. Figure 4.24.a presents the muscle on its rest state and Figure4.24.b, 4.24.c and 4.24.d shows the same muscle compressed at 20%. The differences inthe three images come from the curvature coefficients. We have used the same elasticitycoefficients on the three examples, but with different curvature coefficients. From Figure4.24.b to 4.24.d, we have increased the coefficient. As we have said before and can beverified in this example, by varying the curvature coefficients we can change the volumeof a muscle. The problem is to discover a set of parameters that achieves our needs.

(a) (b) (c) (d)

Figure 4.24: (a) muscle in the rest state; (b) 20% compression andcurvature coefficient equal to 1.0; (c) the same compression rate, but withcurvature of 5.0; (d) curvature of 10.0.

Page 83: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

4.8. Animation Examples 83

In Figure 4.25, three examples of muscle compression are presented. Thedeformation parameters are the same for all the three cases, changing only the elasticitycoefficients. Figure 4.25.a presents the muscle on its rest state while Figure 4.25.b, 4.25.cand 4.25.d show the same muscle compressed at 30%. From the left to right, we haveincreased the elasticity coefficients, then by observing the results we can conclude thatthe biggest is the elasticity coefficient, biggest will be the deformation results. Theanswer is in the relation between curvature and elasticity coefficients. Smallest are theelasticity coefficients, less resistance the springs will made and for consequence, greaterwill be the influence of the curvature springs on the deformation. To conclude, we canstate that, not only motion equations are important to achieve a realistic deformation butalso the relationship between all the deformation parameters.

(a) (b) (c) (d)

Figure 4.25: (a) muscle in the rest state; (b) 30% compression andelasticity coefficient equal to 0.5; (c) the same compression rate, but withelasticity of 1.0; (d) elasticity of 5.0.

Regarding the system performance, we have made some tests on a SGI Impactworkstation, with a MIPS R10000 Processor. The time per calculated image depends ofsome simulation parameters. Just to illustrate, for a simulation of a muscle with 82 masspoints, we have reached the performance of 16 images calculated on each second. Using amuch more simple muscle with only 17 mass points, the performance increases to 84images/sec.

4.9. Conclusion

This chapter presented in details our muscle model. Our solution to represent themuscle force by using action lines concepts have been stressed and corresponds to thefirst layer of the muscle model presented. Even if similar techniques have been used inBiomechanics research, it is not current in Computer Graphics applications. The mostknown methods developed to simulate anatomically-based humans [Scheepers 97][Wilhelms 97] did not present this kind of solution, using simpler techniques to attachmuscles to bones.

Page 84: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

84 4. Muscle Model

We have also presented three methods to design muscle shapes: the reconstructionmethod, the ellipsoids-based method and the manual shape modeling method. It isdifficult to identify the best method because it depends of the objectives we would like toreach. The most suitable method for our purposes (the construction of a human body to beused in animation applications) is the manual shape modeling method, because it givesmore freedom for the designer creativity and allows the design of different bodiesrelatively easily. The reconstruction method seems acceptable and realistic, but limited.At first, we depend on the presence of an anatomist to identify the boundaries betweenmuscles and other tissues and it is a very slow task. The method produces as a result, oneunique shape, corresponding to the “sliced” cadaver forms. In other words, to builddifferent bodies it is necessary to have the data set about more than one cadaver. Howeverit is a good method to use for medical applications where the anatomical correction of theforms are required. The ellipsoid method is also good but really very limited, because themuscles need to correspond always to ellipsoidal forms. But it is very useful and themodeling process is quite quick, comparing with the other two methods.

The main contribution of this chapter is finally, the simple physically-basedmethod to simulate muscles efficiently. As a particular contribution we have developedthe concept of angular springs to control the volume of muscles during the deformationprocess. The deformation looks natural and the movement continuous, as shown on theanimation examples. About the simulation speed, we consider it acceptable to be used inreal-time applications with only one muscle, but of course, it depends on which resolutionwe would like to reach.

Page 85: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

85

5. Body Builder Plus, theIntegration Tool

5.1. Introduction

To integrate our joints-based skeleton, the bones, the muscles and the skin, wehave extended the Body Builder system [Shen 96], originally designed for deformablehuman bodies with a stick skeleton, muscles and fat tissues represented by ellipsoids, andthe skin. Our extended system, Body Builder “Plus” allows the construction of ananatomically-based model of humans, created entirely with bones and reconstructedmuscles. A second objective is to mix the modeled deformable muscles described inChapter 4, with ellipsoids to represent some muscles and other fat tissues. The idea, inthis case, is to use physically-based deformable muscles to simulate only the muscles thatinfluence quite a lot on the human external appearance.

This chapter presents some important aspects about the integration tool developedby us. In Section 5.2 we present an overview of the system, describing briefly thecomponents initially developed in the original Body Builder system. Section 5.3 presentssome implementation aspects, like the system architecture, the data structure and themotion process pipeline. Section 5.4 describes step by step how to build a human bodywith our system, while Section 5.5 presents some results. Finally, the conclusions are alsosupplied.

5.2. Overview

The Body Builder Plus is an interactive human body modeling and deformationsystem developed on SGI workstations and based on a multi-layered model. The systemallows the design of three-dimensional animated human figures in an interactiveenvironment [Paillet 97]. Models may be animated by input motion sequences to thesystem or by changing a joint angle individually and interactively.

Concerning the model, it is divided into three layers: the skeleton, composed by atopological tree structure and the bones, as explained in Chapter 3; the volumetricprimitives, composed by ellipsoids and the muscles stressed in Chapter 4; and the skin,represented by a B-spline surface covering all the body. The head, feet and hands aremodeled separately and attached to the body afterwards.

Page 86: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

86 5. Body Builder Plus, the Integration Tool

5.2.1. Volume Primitives

In Body Builder Plus, the volume primitives are the pieces used to representmuscles, fat, organs and so on. We have used two kind of primitives, the physically-basedmuscles and the ellipsoids. Here we will explain shortly the use of the ellipsoids,integrated in the system by Shen [Shen 96]. They are divided into two categories:blendable volume which blends with other blendable primitives in the same group, andunblendable volume which do not blends with other primitives. For the sake of simplicity,we use only ellipsoids for unblendable primitives and isosurfaces with ellipsoidal densitydistribution for blendable primitives.

Each primitive can also be classified as deformable or not. Each deformableprimitive is associated with a reference joint, whose value dynamically determines thecenter, orientation and shape of that primitive. When the skeleton moves, all primitivesattached to their relevant joints undergo the joint hierarchy transformations as rigid bodymotions. Deformable primitives change also their state. In fact, each Degree of Freedomof a joint is defined by three angles: the minimum, the maximum and the current angle(initially corresponding to the default posture). We define parameters for the primitiveswhen the joint angle is on this three states and after, during the animation, theseparameters are interpolated. Figure 5.1 shows an example of using this kind of volumeprimitives, presenting two bodies represented with and without the skin. In fact, thedifference between blendable and unblendable primitives can be perceived only after theskin generation.

5.2.2. The Extremities

The body extremities (the head, the feet, the hands and the penis) are not treated indetail in Body Builder Plus. In fact, they are modeled separately and saved in individualfiles (<filename>.sm) containing triangular-mesh surfaces. The system reads the sm files[Kalra 97] and allows the user to position them interactively. The link with the body ismade at the skin level.

5.2.3. The Skin

To generate the skin covering all the bones and muscles, we use a surface sampledusing ray-casting on semi-regular cylindrical grids. These sample points are used directlyas cubic B-spline control points to smooth out the skin surface. Individual B-splinepatches are triangulated, and these triangular meshes are stitched together to connectdifferent parts of the human body for final rendering and output.

This approach takes advantage from the fixed topology of the human skeleton.Human limbs exhibit a cylindrical topology and the underlying skeleton provides anatural centric axis upon which a number of cross-sections can be defined. Each limb linkis associated with a number of contours (Figure 5.2.a). The cross-sectional skin contourscan automatically be extracted using the ray casting method. We cast rays in a star-shapedmanner for one contour, with ray origins sitting on the skeleton link. For each ray, we

Page 87: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.2. Overview 87

compute the outermost intersection point with the muscles and bones surrounding thelink. The intersection is a sample point on the cross-section contour (see Figure 5.2.b).

Figure 5.1: Example of a body composed by unblendable (upper bodies)and blendable primitives (lower bodies). Primitives are differentiated bytheir colors: green (unblendable) and yellow (deformable unblendable) inthe upper body, pink (blendable) and violet (deformable blendable) inthe lower body.

(a) (b)

Figure 5.2: (a) Cross-sectional plane orientation and (b) ray distribution [Shen 96]

Page 88: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

88 5. Body Builder Plus, the Integration Tool

To facilitate the manipulation, the body envelope was divided into seven parts, theso called skin pieces, each defined around a junction between two or more links whichcontains a group of joints. These are: front torso, back torso, hip, left leg, right leg, leftarm, right arm.

However, some postures could produce errors on the skin generation while usingthe method described above. An example is when a leg or an arm of a character isbended. Considering the arm example, our algorithm will generate the skin covering atthe same time (as an unique piece) the upper and lower part of the arm. Using the sameprinciple, we could also have a single piece of skin covering the two legs of the charactertogether. To solve this problem, we have decided to assign each primitive (a bone or amuscle) to a group. Each group will blend with primitives in its own group or in the rootgroup. Fifteen groups were defined covering whole body: upper_torso, lower_torso, hip,left_shoulder, right_shoulder, left_upper_arm, left_lower_arm, right_upper_arm,right_lower_arm, left_upper_leg, left_lower_leg, right_upper_leg, right_lower_leg,left_ankle, and right_ankle. Figure 5.3 locate all of these groups over the body.

Figure 5.3: Groups position over the body

Each primitive is assigned to a group according to its attachment to the skeleton.Some primitives, located on special positions (for example, a muscle covering a joint),can fall into several groups simultaneously, as they may have contributions to multiplegroups. To sample a contour, we only need to consider the primitives in its associatedgroup.

The skin generation method presented above is based on techniques developed byShen and described in [Shen 95, 96].

Page 89: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.3. System Organization 89

5.3. System Organization

5.3.1. Architecture

The Body Builder Plus (bb+) system is an application program based on severallibraries. In general we can say that it furnishes the interface functions and the motionmotor, while all the functions concerning the body modeling and motion, the muscles andellipsoids deformation, and the skin generation are provided by the libraries. Figure 5.4shows the system architecture and the libraries dependencies.

Figure 5.4: System architecture

The most important libraries called by bb+ are skinlib [Shen 98] and musclelib.Skinlib supports the deformation of the ellipsoids, the skin generation and all otherfunctions concerning the realistic deformation of actors. It provides also the reading ofthe model file (<filename>.M) and the generation of the output files. Musclelib providesall the functions about physically-based deformation of muscles and is called directly bybb+ and skinlib. Bodylib [Boulic 94b] is the library that maintains the topological treestructure for a vertebrate body with predefined mobility. It is responsible of the animationof the body, at the joints level. Scenelib [Boulic 94c] is a lower level library thatmaintains the general purpose hierarchy and allows multiple positioning of complexfunctional units. Smlib [Kalra 97] is the lowest level library we have and is responsible bythe triangle mesh surface manipulation. Facelib and handlib [Boulic 95] are responsiblerespectively of facial animation and hand deformation. The user interface was designedby using Open Inventor [Wernecke 94] library for bodies visualization and Motif for thewindows and two-dimensional interface design.

Concerning the system input, we need to consider two important data. The model(<filename>.M) and the motion files (<filename>.TRK). The motion file contains all the

Page 90: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

90 5. Body Builder Plus, the Integration Tool

information about body motion on the joints level, but the most important data set is onthe model file. This file contains all the data required to model a human body and can beedited manually or by using bb+ interactively. It is written in a standard ASCII formatand include the skeleton scaling parameters, skeleton template file, head/hands/feet/penissm file names, parameters of all primitives, definition of physically-based muscles andaction lines and bones specification.

The system output is made visually or by using a set of output files, allowing theintegration of the human figures with other applications. Body Builder Plus is able toexport human models in different formats: SM (<filename>.sm), Wavefront(<filename>.obj), Rayshade (<filename>.ray), Open Inventor (<filename>.iv) andcontours (<filename>.dat) for real-time animation [Thalmann 96].

5.3.2. Data Structure

Four main data structures are used in Body Builder Plus to save the data relative tohuman modeling, not considering the data structures used to simulate physically-basedmuscles deformation, that were described in Chapter 4, Section 4.7.3.

The skin is the most general data structure. It includes all the data needed to buildthe human figure skin. Every model specified in the model file (ellipsoid, bone, smsurface, physically-based muscle) is dynamically created during the reading phase of themodel file, and their pointers are stored in a list of instances associated to the skinstructure. Bb+ depends on this list to retrieves all the information to build the body meshfrom these models.

As explained above, all the models read from a model file are dynamicallycreated. This data is saved in another generic structure called model. The contents of themodel structure changes depending of the model type. The quadric structure wasconceived to store all the data concerning the ellipsoids and metaballs, including size,origin and deformation parameters. And finally, the action line structure makes a linkbetween the human model and the physically-based muscles. The main contents of thestructures mentioned here, are presented below.

skin structure

• actor name;• list of models instances;• pointers to the extremities data;• lists of non-blendable primitives per group;• lists of blendable primitives per group;• list of bones per group;• lists of physically-based muscles per group;• pointer to the underlying skeleton;• pointer to the body skin surface mesh;• pointer to the material indices list.

Page 91: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.3. System Organization 91

model structure

• model type: metaball (blendable), ellipsoid (non-blendable), sm surface or action line;• joint reference (parent);• model origin in the joint local coordinate system;• name of the sm surface file;• pointer to metaball data;• pointer to action line data;• list of associated groups it belongs.

quadric structure: Ellipsoids and metaballs data set

• type: metaball or ellipsoid;• initial origin position;• a, b, c: ellipsoid current size;• a0, b0, c0: initial ellisoid size;• amin, bmin, cmin, amax, bmax, cmax: deformation parameters;

action line structure

• muscle name;• pointer to the associated muscle data (dods structure);• lengths of the tendon origin and tendon insertion;• rotation angle of the muscle in turn of its action line;• pointer to the origin attachment point;• pointer to the control attachment point;• pointer to the insertion attachment point;• pointer to the next action line: used only if a muscle is composed by more than one

action line.

attachment point structure: consists of a sub-structure of action line structure

• normalized, global and local positions;• length of the action line segment;• pointer to the joint reference;• pointer to the next attached point: used only for control points.

5.3.3. The Motion Motor Algorithm

Currently, there are two ways to perform human motion. The first way consists inpicking a joint and changing interactively the value of this joint, while the second one isto read and execute the motion from an animation file. In both cases, the system detectsthe joints motion and enables the deformation of the volumetric primitives, the motion ofbones and the update of the action lines.

Each object in bb+ is represented globally and locally. For simplificationpurposes during the motion process, we consider the same global reference system for allthe human figure and several local reference systems, one for each Degree of Freedom ofthe body. Every object that composes a human body is attached to a joint reference and

Page 92: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

92 5. Body Builder Plus, the Integration Tool

represented in its local reference system (Figure 5.5 shows the organization of the bodycomponents on a tree structure). Then, when this joint moves, the object moves in thesame time, automatically. This is valid for bones, for the extremities (sm surfaces) and fornon-deformable primitives. In the case of deformable primitives and physically-basedmuscles, another procedure is yet necessary. Deformable primitives have their parametersinterpolated in the local reference system, while the physically-based muscles motion areguaranteed by updating the action lines.

Figure 5.5: Scheme of the body components organization

The action line is the lowest level in our muscle simulation system. We firstsimulate the action line motion and then, the muscle deformation. In this way, the musclecompression or extension depends directly on the action line. However, the finaldeformation depends also of other parameters, as shown in Chapter 4, Section 4.7.2. Infact, action lines are attached to bones that move accordingly with the joints. When a jointangle changes, bones move and consequently, muscles attached to these bones also moveon the same way.

The action line motion is produced in a module that, after each movement of theskeleton, detects which action lines are concerned and update these ends and controlpoints positions, calculating the new tendons location over the action line. To accomplishit, we maintain a list with pointers to all the segments of action lines and a flag for eachone indicating if it is in motion or not. If the action line changes during a joint motion,then the flag is set.

Page 93: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.3. System Organization 93

To enable the physically-based muscles deformation, the system maintains acallback function called 20 times per second. This function verifies if there are someaction line or muscle in motion. If one of the two conditions is satisfied, the muscledeformation procedure described in Chapter 4, Section 4.6.2, starts. A muscle will be“static” again, only when the motion of all the particles can be considered as non-representative (very small). Figure 5.6 shows the flow chart of the motion motordescribed here.

Figure 5.6: Motion motor flow chart

Page 94: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

94 5. Body Builder Plus, the Integration Tool

5.4. How to Build an Anatomically-Based Body?

Due the complexity of the system, the design of a new body in Body Builder Plusis produced on, at least, four steps.

5.4.1. Skeleton Definition

The first step is the definition of the skeleton characteristics. From a basic humantopology, it is possible to edit globally the limbs length in order to create an amount ofdifferent humans, with distinct sizes and proportions. Five normalized parameters areused to scale the standard skeleton template to accommodate variations in age, sex andrace [Boulic 94b]. Global scaling consists of an uniform scaling made along x, y, z toattain a given height). Frontal scaling is a specific scaling made along one independentdirection. High lateral scaling and low lateral scaling are proposed to differentiate thehigher body from the lower body (useful for generate characterization). Finally, spineorigin ratio express the ratio of spine origin height over the total height, while keepingthe same total height. Figure 5.7 demonstrates all the skeleton scaling general options,while Figure 5.8 furnishes an example of a skeleton instance definition, in a model file.

Figure 5.7: Skeleton scaling [Boulic 94b]

5.4.2. Adding Bones

The second step comprises the addition of the bones. Bones are represented bytriangle meshes and are previously stored in individual files. Their insertion in BodyBuilder Plus is made by editing the model file and by adding the related data. As shownin the example of Figure 5.9, each instance of a bone have a name, the joint name where

Page 95: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.4. How to Build an Anatomically-Based Body? 95

the bone is attached, the topology file name and the associated group (group concept anduse was explained in Section 5.2.3).

inst skeleton 1 {high 1749.790039 ,spine_ratio 1.000 ,high_lateral_scale 0.950 ,low_lateral_scale 1.000 ,frontal_ratio 1.000 ,gender male ,template “newton.tpl” ,

} ;

Figure 5.8: Extract of a model file with the definition of the skeleton instance

inst bone 5 {name “lhumerus” ,parent joint l_shoulder_twisting ,file “lhumerus.iv” ,group l_arm_upper l_shoulder ,

};

inst bone 40 {name “lfemur” ,parent joint l_hip_twisting ,file “lfemur.iv” ,group l_leg_upper left_ankle ,

};

Figure 5.9: Model file extract with the definition of two bones

We provide a data base with the great part of the human body bones, normalized.Before to integrate it in bb+, the user needs to scale all the bones, but this task can beaccomplished with the help of a little tool developed by us. Furnishing the positions ofthe two articulations that comprise a bone, it is scaled and saved in another topology file(using Open Inventor file format). We maintain also the scaled muscles to be used withthe skeleton structure described in the Chapter 3, but the user is free to change the baseskeleton or yet the bones form, by editing the old ones or by modeling new shapes.

5.4.3. Creating Muscles

The third step is the muscle creation. In our system, the user can defineinteractively the muscles action lines, saving the data in the model file. Muscle shapeswith deformation parameters are defined in an instance called mms (Muscle ModelSimulation data) and attached to the action line segments also interactively. Thedeformation parameters can be added by editing the model file or by reading it from amms file format.

In Figure 5.10 we can see an example of an instance model of the muscle type.Each muscle has a name, is associated to one or more groups and is defined by one ormore action lines. Each extremity of the action line is attached to a joint and have aposition defined in the reference joint local coordinate system. Each action line can be

Page 96: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

96 5. Body Builder Plus, the Integration Tool

related or not to a muscle shape by indicating the mms index (-1 if no muscle attached).Each mms instance contains the muscle shape file name and the parameters required toperform the deformation. The tendons length are furnished for each action line, as well asa rotation angle used to better adapt the muscle shape to the desired orientation over theskeleton. For more information on action lines or tendons, refers to Chapter 4, Section4.3.

inst model 297 {name “right_triceps” ,type muscle ,group r_arm_upper r_arm_lower r_shoulder ,origin joint r_clav_abduct position -52.0 117.0 -34.0 keyblob 10,insertion joint r_shoulder_abduct position -5.0 13.0 -13.0 keyblob 5,tendon_origin 0.0 ,tendon_insertion 36.0 ,mms 1 ,rotation 36.0 ,

origin joint r_clav_abduct position -52.0 117.0 -34.0 keyblob 10,insertion joint r_shoulder_abduct position -5.0 13.0 -13.0 keyblob 5,tendon_origin 42.0 ,tendon_insertion 158.0 ,mms 2 ,rotation 180.0 ,

origin joint r_clav_abduct position -52.0 117.0 -34.0 keyblob 10,insertion joint r_shoulder_abduct position -5.0 13.0 -13.0 keyblob 5,tendon_origin 15.0 ,tendon_insertion 120.0 ,mms 3 ,rotation 57.0 ,

} ;

inst mms 1 {file “triceps_Lportion.iv” ,degree_of_subdivision_on_x 10 ,degree_of_subdivision_on_y 5 ,elasticity_horizontal 0.0 ,elasticity_vertical 5.0 ,curvature_horizontal 0.0 ,curvature_vertical 5.0 ,total_mass 20.0 ,damping 0.5 ,

} ;

Figure 5.10: Extract of a model file with the definition of a complex muscle

5.4.4. Skin Generation

The fourth step of the process is the skin generation and it is made automaticallyby Body Builder Plus. We can also consider another intermediate step, if the user desires

Page 97: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.4. How to Build an Anatomically-Based Body? 97

to model a part of the body by using ellipsoids. This procedure is in the same level of themuscles definition step and could be made interactively.

5.5. Results and Discussion

On Figure 5.11, we can see an example of a body composed by metaballs and twophysically-based deformable muscles to simulate the Biceps Brachii, covered by the skin.

Figure 5.11: Body design with metaballs and physically-based deformable muscles

Figure 5.12 shows the current state of our work in designing real muscles for therepresentation of a complete human body. The upper line shows our skeleton with themuscles represented by their action lines while the lower line presents the resampledbones we have designed for the moment. Our current model is composed of 31 joints with

Page 98: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

98 5. Body Builder Plus, the Integration Tool

62 degrees of freedom, 73 bones, 33 muscles (represented by 105 fusiform muscles parts)and 186 action lines. In Figure 5.13 the muscles are identified.

Figure 5.12: Muscled body

Page 99: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

5.5. Results and Discussion 99

Figure 5.13: Muscles identification

Figure 5.14 shows an example of elbow flexion performed by a body composed ofbones and some muscles, specifically the Biceps Brachii and the Triceps Brachii.

Figure 5.14: Elbow flexion with muscles deformation

5.6. Conclusion

This chapter has described a tool developed to design and animate human bodiesusing the anatomically-based model presented in Chapters 3 and 4. In this approach,bones are attached to joints and muscles are represented by two layers: the action linesand the volumetric forms geometrically represented by triangle meshes. The use ofimplicit primitives are also considered and used to model muscles, organs and fat tissues,

Page 100: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

100 5. Body Builder Plus, the Integration Tool

as well as sets of triangle meshes are used to represent the extremities (head, feet, handsand penis).

We have presented some points about the system organization, emphasizingmainly the aspects involving the bones and physically-based muscles, that represent thereal contribution of this work. A kind of high level user manual was presented in Section5.4, with the objective of showing all the steps included in the generation of a virtualbody. The work of modeling a complete human body composed mainly of physically-based muscles are yet in progress, but our first results were presented in Section 5.5.

Page 101: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

101

6. Conclusions

6.1. Introduction

This chapter summarizes the work developed in the previous chapters. We presentan overview of our contribution, as well as some potential applications of our research.Finally, some future possibilities of improvement in our human model is also exposed.

6.2. Contribution

As said before, the human body can be simply defined as a composition ofskeleton, muscles, fat and skin. To implement a human representation model, we havepresented a multi-layered approach containing the skeleton layer, intermediate layers tosimulate the body volume (muscles, organs, fat, and so on) and the skin layer. In order toaccomplish this task, each component of the model has been studied and designedseparately. Our contribution to the human modeling research area is outlined below.

Design of a skeleton based on anatomic concepts

With the aid of a structure based on articulations, we have studied and designed anew anatomically-based human skeleton. From a three-dimensional skeleton andaccordingly with our studies on anatomy and some practical experiments, we haveredefined all the joints positions and orientations and described every one in detail.Concerning the visual aspect, we have added bones to the model. Our main contributionto this topic is the design of a new human template. A skeleton based on anatomicconcepts allows the performance of more correct motion and postures, while the inclusionof three-dimensional bones provide the muscles attachment base. The easiest design ofnew human bodies and the avoidance of forbidden postures, a tedious task when onlybased on a stick figure, are also advantages acquired with the visualization of the bones.

Simulation of the muscle force by the use of action lines

Considering the second layer of our model (volume primitives), we haveconcentrated our efforts on muscles representation. Our approach has conceived in twolevels: the muscle action and the muscle shape deformation. To mechanically quantify theforce that a muscle produces over a bone, we represent muscles by polylines, calledaction lines. We have developed a technique to represent action lines, where each muscleis composed of one or more action lines and each action line by two attachment pointsand zero or more control points. Tendons are defined over the action line.

Page 102: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

102 6. Conclusions

Similar techniques have been proposed in Biomechanics research works but it isnot current in Computer Graphics applications. Even the most known methods developedto simulate anatomically-based humans [Scheepers 97] [Wilhelms 97] did not present thiskind of solution, using simpler techniques to attach muscles to bones. Looking for therecycling of sets of action lines over any human skeleton, all the action lines of themuscles are saved in their normalized form. The normalization is made in function of thelimbs length.

Development of a mass-spring system to simulate deformable muscles

We have proposed an alternative method based on Physics concepts to simulatemuscles in interactive applications. We have chosen a physically-based approach becausewe believe we can obtain more fluid and realistic movements if we use the sameprinciples used in nature. For sake of performance, we apply our mass-spring model onlyon the muscle external surface, generating a problem of volume control. To solve thisproblem we have developed the concept of angular springs, that control the volume ofmuscles during the deformation process, without the need of a post-processing step.

Conception of an integration tool to anatomically-based body modeling

We have extended an existing system dedicated to body modeling, to consideralso the bones and physically-based muscles. Body Builder Plus allows the constructionof anatomically-based humanoids created entirely with bones and physically-baseddeformable muscles. However, another possibility can be to mix the modeled deformablemuscles with metaballs representing part of the musculature and the fat tissues. The idea,in this case, is to use physically-based muscles to simulate only the most importantmuscles, concerning the external appearance. In Body Builder Plus, bones are attached tojoints and muscles are represented by two layers: the action lines and the volumetricforms geometrically represented by triangle meshes.

From a comparison between the muscles modeling by using action lines andphysically-based muscles or by using metaballs, we conclude that the method we haveproposed is more intuitive and depends of less parameters than the metaballs method toperform deformation.

6.3. Potential Applications

The work we have developed in human modeling can be used at least for twomajor groups of applications: entertainment and medicine. Concerning entertainmentapplications, we can use Body Builder Plus either to reconstruct real actors or to createnew models. The models produced by us can be animated inside the system or mixedwith others. As our system provides the output of the models in several file formats, it iseasy to integrate our results in commercial softwares, as the Iris Wavefront animationsystem, for example.

The medicine is one of the most fecund areas where we can use virtual humanssimulation. Examples could be in orthopedic rehabilitation, aid to handicap persons,clinical analysis of abnormal movement patterns, surgery simulations, and so on. The fact

Page 103: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

6.3. Potential Applications 103

that we are using a model based on anatomic and physics concepts encourage the researchof applications in this area. During the development of this Thesis, we have collaboratedin two European medical projects, the ESPRIT Project CHARM and the BIOMEDproject MIAS. For more information about CHARM, see the project official home page -http://ligwww.epfl.ch/~maurel/CHARM/.

The objective of the CHARM project was to develop a Comprehensive HumanAnimation Resource Model allowing the three-dimensional reconstruction of the humanbody from medical images. Dynamic simulation of its complex musculoskeletal structureincluding the simulation of muscular contraction and the finite elements deformation ofthe soft tissues, were also an objective of the project. Our participation in this project wasin the sense of producing intermediate muscle simulations. Final deformations wasgenerated by using finite element method, but we have realized that the calculus took somuch time and results were not immediate. We have then proposed the use of our muscledeformation model in an intermediate step. New body postures are defined and theanimation of the bones are produced with our mass-spring model applied over themuscles. If the result is pleasant, a final animation is generated, this time using finiteelements method to produce deformation.

The developments achieved in CHARM constitute an initial step for furtheradvances in research and open ways for future work. The developed models could beused for medical education, as well as clinical applications like surgical simulation.Orthopaedists and Sport Scientists consider the developments in CHARM as offeringinsights with no precedent in the complex kinematics of the articulations and in theunknown neuromuscular control strategies.

Concerning the MIAS project (Minimally Invasive Articular Surgery), it aims thedevelopment of technologies for obtaining miniaturization and enhancement of reality inarthroscopy, in order to fulfill widely perceived and real requirements of the surgeon. Themain requirements of most surgeons using MIS (Minimally Invasive Surgery) techniquesare: to have access to more effective surgical tools which replicate as closely as possiblethe dexterity of the surgeons hand; to achieve a restoration of the sensory (primarilyvisual and tactile) information that, previously available by open sky surgery, was missedwith MIS. MIAS project aims to provide solutions in a specific, but clinically veryimportant (and with very important industrial background) field, such as arthroscopysurgery. The specific aims of MIAS project are to develop an enhanced reality system tohelp surgeons to use in a fully integrated and effective manner multidimensional data(images, forces, planned procedures) and to develop new and more effective miniaturisedtools for the execution of accurate and safe surgical procedures on human joints byarthroscopy.

Finally, in MIAS project we aim at the development of a tool to allow thesimulation of surgeries in real-time. The idea is to use this tool for applications ineducation. Our contribution for this project is an hybrid deformation model to simulatecartilagenous tissues. In fact, during an arthroscopy, serious injuries can be caused by thecontact between the tools and the cartilages. Providing the simulation of the elasticreaction of this kind of tissues while touched by the tools, we can aid to prevent possibleinjuries.

Page 104: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

104 6. Conclusions

We have mentioned here two examples of applications that use the conceptspresented in this Thesis, but is not difficult to imagine a lot of other potentialapplications. Examples of the use of our entire skeleton could be easy founded inorthopedics and sportive medicine.

6.4. Future Work

Future research subjects can be easily found taking this work as the base.Improvements can be previewed in the skeleton level, in muscle simulation and also atthe integration level. Some ideas are proposed bellow.

Inclusion of level of detail in the skeleton definition

At this time, the skeleton structure we are using is fixed. As an extension wepropose a more flexible structure. Depending on the application, it could be possible tochoose how many joints the user would like to have. For example, we could have morejoints to represent the spine providing more realistic movement, or less than we havetoday, depending of several factors: the distance from the actor to the camera, themovement performed or the kind of application involved.

The modeling and simulation of other muscle forms

As said before, right now the only muscle form we are able to simulate is thefusiform muscles. Methods to simulate muscles represented by more than one action lineor simply muscles with different forms, like the ones showed in Figure 4.3 (Chapter 4)could be developed. This work will allow better simulations of several important muscles,as the Trapezius and the Pectoralis Major for example, both localized on the upper torso.

Automatic specification of curvature and elasticity coefficients

One of the hardest task involved in the simulation of mass-spring systems is theparameters specification, and with our muscle model it is not different. Finally, it is avery empirical task and we can take much time to define the ideal parameters for eachsituation. Some research in this area is suitable, looking for methods to specifyautomatically these parameters. A suggestion could be the use of force feedback devicesto provide the interface with the user. A research in the relation between these parameterscould also conduct to interesting solutions.

The use of multiresolution during muscle deformation

The use of multiresolution techniques has been a good solution to performanceproblems and is extremely adapted to the problematic of muscles representation. Twokinds of multiresolution can be considered: the spatial one, that aims at changingautomatically the degree of discretization of a muscle in function of its position inrelation to the others; and the temporal one, that changes the resolution according to theposition of the camera during the visualization process.

Page 105: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

6.4. Future Work 105

Improvements on the integration tool interface

This improvement does not correspond exactly to a new research subject, butcould be an interesting and useful work if made with the aid of a designer. The softwareBody Builder Plus presented in Chapter 5 was designed to allow the integration of bonesand muscles with metaballs and skin. Our goal was not to provide a final user application,but we think we are not far from that. Integrating all the steps involved in the fashion ofan anatomically-based human body, we can arrive in a short term on a suitable finalapplication.

Page 106: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

106 6. Conclusions

Page 107: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

107

Appendix A: TemplateDefinition Files

A.1. Template File (newton.tpl)BODY{DEFAULT version 2{newton /* BODY name */0 /* orientation_mode */0 /* handling_mode */1749.790039 /* total_height */newton.jts /* jointfile */}

TEMPLATE{SKELETON{DEFAULT version 2{991.672302, /* virtual_floor to average_position */[2.418400, 2.418400, 2.418400], /* spine orientation at SKELETON_t root*/

[-101.871582, 73.919609, -4.117652], /* spine_origin to right thigh origin */[-101.871704, -73.919426, -4.117520], /* spine_origin to left thigh origin */[-0.010300, -0.011734, -1.693214], /* right thigh orientation */[0.010300, 0.011731, -1.693214], /* left thigh orientation */[0.000000, 0.000000, 411.953033], /* right thigh to knee origin */[0.000000, 0.000008, 411.953064], /* left thigh to knee origin */[-1.212595, -1.176865, -1.189832], /* right knee orientation */[-1.229885, -1.197653, -1.174996], /* left knee orientation */[0.000046, 0.000008, 401.475861], /* right knee to ankle origin */[0.000061, -0.000023, 401.475830], /* left knee to ankle origin */[-1.502421, -0.540924, -0.547279], /* right ankle orientation */[-1.503301, -0.541231, -0.547102], /* left ankle orientation */[21.616852, -43.874802, 4.394569], /* right ankle to subtalar origin */[21.616806, -43.874752, -4.394562], /* left ankle to subtalar origin */[2.418400, 2.418400, 2.418400], /* right subtalar orientation */[2.418400, 2.418400, 2.418400], /* left subtalar orientation */[-2.738144, 68.604851, 76.277702], /* right subtalar to mid_foot origin */[2.738144, 68.604843, 76.277702], /* left subtalar to mid_foot origin */[-0.613944, -0.613944, -1.482191], /* right mid_foot orientation */[-0.613944, -0.613944, -1.482191], /* left mid_foot orientation */[-19.281097, -11.464905, 76.574196], /* right mid_foot to toe origin */[-19.281090, 11.464890, 76.574219], /* left mid_foot to toe origin */[-1.472331, -1.396776, -1.006739], /* right toe orientation */[1.892547, 0.000000, 0.000000], /* left toe orientation */[-4.744949, 2.643600, -40.459183], /* right subtalar to heel_extr origin */[4.745026, 2.643600, -40.459175], /* left subtalar to heel_extr origin */[-8.021149, -21.235008, -4.490200], /* right toe to toe_base origin */

Page 108: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

108 Appendix A. Template Definition Files

[-21.627743, -6.892395, -4.490200], /* left toe to toe_base origin */[66.296280, -18.495390, 17.362267], /* right toe to toe_extr origin */[-14.980485, 67.177818, 17.362259], /* left toe to toe_extr origin */

[0.455816, 100.406921, 0.000000], /* spine_origin to vertebra 2 */[-23.889797, 63.973267, 0.000000], /* vertebra 2 to vertebra 3 */[-30.142960, 92.790527, 0.000000], /* vertebra 3 to vertebra 4 */[-6.816246, 98.814453, 0.000000], /* vertebra 4 to vertebra 5 */[0.000000, 31.044636, 113.963257], /* vertebra 5 to vertebra 6 */[11.624201, 59.974854, 0.000000], /* vertebra 6 to vertebra 7 */[4.741905, 43.754150, 0.000000], /* vertebra 7 to vertebra 8 */[0.000000, 25.239624, -0.916649], /* vertebra 8 to head_origin */[126.061958, 87.529907, 2.161572], /* vertebra 8 to vision_origin */[0.000000, -1.570796, 0.000000], /* vision orientation */[18.479637, 184.440308, 0.000000], /* virtual floor to head_top */

[19.424742, 83.896637, 77.841187], /* vertebra 5 to right clav origin */[-19.425478, 83.896667, 77.841187], /* vertebra 5 to left clav origin */[-1.285471, -1.145968, -1.483492], /* right clav orientation */[0.118648, -2.025823, -2.071134], /* left clav orientation */[136.570251, -0.000023, -0.000122], /* right clav to scap origin */[0.000038, 136.570282, -0.000122], /* left clav origin to scap origin */[-1.456047, -0.189408, 0.167290], /* right scapular orientation */[0.190635, 1.435479, -0.164896], /* left scapular orientation */[50.670410, 0.000000, 0.000000], /* right scap to shoulder origin */[0.000015, 50.670532, -0.000031], /* left scap to shoulder origin */[-0.011693, -0.136994, -0.111902], /* right shoulder orientation */[-2.020111, -2.260689, -0.131137], /* left shoulder orientation */[0.000004, 0.000061, 281.141296], /* right shoulder to elbow origin */[0.000031, -0.000122, 281.141113], /* left shoulder to elbow origin */[-0.038254, 2.006382, 2.330884], /* right elbow orientation */[-0.038175, 2.324522, 2.004682], /* left elbow orientation */[0.000092, -0.000687, 242.189331], /* right elbow to wrist origin */[0.000031, -0.000261, 242.189270], /* left elbow to wrist origin */[-1.057000, -1.300000, -1.057000], /* right wrist orientation */[1.057000, -1.300000, 1.057000], /* left wrist orientation */[12.312910, 70.473083, 0.171967], /* right wrist to hand center */[-12.367798, 70.458801, 0.836884], /* left wrist to hand center */[0.000000, 0.000000, 0.000000], /* right hand center orientation */[0.000000, 0.000000, 0.000000], /* left hand center orientation */}RIGHT_HAND{[15.217391, 0.000000, 1.086957], /* wrist to pinky metac. origin */[1.210000, 1.106000, 0.904000], /* metac_pinky_fl orientation */[86.413040, -0.434783, -5.880435], /* metac_pinky_fl to pinky_fl1 origin */[-0.156000, -0.410000, 0.030000], /* pinky_fl1 orientation */32.608696, /* pinky_fl1 to pinky_fl2 origin */19.565216, /* pinky_fl2 to pinky_fl3 origin */19.565216, /* pinky_fl3 to extrema origin */

[1.194000, 1.143000, 0.972000], /* metac_ring_fl orientation */[95.543480, -2.173913, -5.326087], /* metac_ring_fl to ring_fl1 origin */[-0.208000, -0.160000, 0.149000], /* ring_fl1 orientation */40.217392, /* ring_fl1 to ring_fl2 origin */27.173912, /* ring_fl2 to ring_fl3 origin */26.086956, /* ring_fl3 to extrema origin */

[97.173912, -18.369564, -6.413043], /* middle to middle_fl1 origin */[-0.201000, -0.056000, -0.142000], /* middle_fl1 orientation */48.913044, /* middle_fl1 to middle_fl2 origin */29.347826, /*rightmiddle_fl2 to middle_fl3 origin */22.826086, /* middle_fl3 to extrema origin */

[-5.434783, 0.000000, 0.000000], /* wrist to index metac. origin */[95.326080, -26.413042, -22.608694], /* metac_index_fl to index_fl1 origin */[-0.195000, 0.206000, -0.177000], /* index_fl1 orientation */

Page 109: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

A.1. Template File (newton.tpl) 109

43.478260, /* index_fl1 to index_fl2 origin */23.913044, /* index_fl2 to index_fl3 origin */21.739130, /* index_ext to extrema origin */

[-25.760870, 25.108696, -28.369566], /* wrist to thumb origin */[-1.004000, -1.499000, -0.944000], /* thumb_piv orientation */[0.490000, -0.207000, 0.581000], /* thumb_fl1 orientation */43.478260, /* thumb_fl1 to thumb_fl2 origin */35.869564, /* thumb_fl2 to thumb_fl3 origin */30.434782, /* thumb_fl3 to extrema origin */}LEFT_HAND{[-15.217391, 0.000000, 1.086957], /* wrist to pinky metac. origin */[0.950000, 1.450000, 1.273000], /* metac_pinky_fl orientation */[86.413040, -0.434783, 5.880435], /* metac_pinky_fl to pinky_fl1 origin */[0.156000, 0.410000, 0.030000], /* pinky_fl1 orientation */32.608696, /* pinky_fl1 to pinky_fl2 origin */19.565216, /* pinky_fl2 to pinky_fl3 origin */19.565216, /* pinky_fl3 to extrema origin */

[1.008360, 1.397000, 1.239000], /* metac_ring_fl orientation */[95.543480, -2.173913, 5.326087], /* metac_ring_fl to ring_fl1 origin */[0.208000, 0.160000, 0.149000], /* ring_fl1 orientation */40.217392, /* ring_fl1 to ring_fl2 origin */27.173912, /* ring_fl2 to ring_fl3 origin */26.086956, /* ring_fl3 to extrema origin */

[97.173912, -18.369564, 6.413043], /* mmiddle to middle_fl1 origin */[0.201000, 0.056000, -0.142000], /* middle_fl1 orientation */48.913044, /* middle_fl1 to middle_fl2 origin */29.347826, /*rightmiddle_fl2 to middle_fl3 origin */22.826086, /* middle_fl3 to extrema origin */

[5.434783, 0.000000, 0.000000], /* wrist to index metac. origin */[95.326080, -26.413042, 22.608694], /* metac_index_fl to index_fl1 origin */[0.195000, -0.206000, -0.177000], /* index_fl1 orientation */43.478260, /* index_fl1 to index_fl2 origin */23.913044, /* index_fl2 to index_fl3 origin */21.739130, /* index_ext to extrema origin */

[25.760870, 25.108696, -28.369566], /* wrist to thumb origin */[-1.589000, -1.064000, -1.333000], /* thumb_piv orientation */[-0.490000, -0.207000, -0.581000], /* thumb_fl1 orientation */43.478260, /* thumb_fl1 to thumb_fl2 origin */35.869564, /* thumb_fl2 to thumb_fl3 origin */30.434782, /* thumb_fl3 to extrema origin */}RIGHT_FOOT{[14.000000, 0.000000, 1.000000], /* wrist to pinky metac. origin */[1.210000, 1.106000, 0.904000], /* metac_pinky_fl orientation */[79.500000, -0.400000, -5.410000], /* metac_pinky_fl to pinky_fl1 origin */[-0.156000, -0.410000, 0.030000], /* pinky_fl1 orientation */30.000000, /* pinky_fl1 to pinky_fl2 origin */18.000000, /* pinky_fl2 to pinky_fl3 origin */18.000000, /* pinky_fl3 to extrema origin */

[1.194000, 1.143000, 0.972000], /* metac_ring_fl orientation */[87.900002, -2.000000, -4.900000], /* metac_ring_fl to ring_fl1 origin */[-0.208000, -0.160000, 0.149000], /* ring_fl1 orientation */37.000000, /* ring_fl1 to ring_fl2 origin */25.000000, /* ring_fl2 to ring_fl3 origin */24.000000, /* ring_fl3 to extrema origin */

[89.400002, -16.900000, -5.900000], /* mmiddle to middle_fl1 origin */[-0.201000, -0.056000, -0.142000], /* middle_fl1 orientation */

Page 110: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

110 Appendix A. Template Definition Files

45.000000, /* middle_fl1 to middle_fl2 origin */27.000000, /*rightmiddle_fl2 to middle_fl3 origin */21.000000, /* middle_fl3 to extrema origin */

[-5.000000, 0.000000, 0.000000], /* wrist to index metac. origin */[87.699997, -24.299999, -20.799999], /* metac_index_fl to index_fl1 origin */[-0.195000, 0.206000, -0.177000], /* index_fl1 orientation */40.000000, /* index_fl1 to index_fl2 origin */22.000000, /* index_fl2 to index_fl3 origin */20.000000, /* index_ext to extrema origin */

[-23.700001, 23.100000, -26.100000], /* wrist to thumb origin */[-1.004000, -1.499000, -0.944000], /* thumb_piv orientation */[0.490000, -0.207000, 0.581000], /* thumb_fl1 orientation */40.000000, /* thumb_fl1 to thumb_fl2 origin */33.000000, /* thumb_fl2 to thumb_fl3 origin */28.000000, /* thumb_fl3 to extrema origin */}LEFT_FOOT{[-14.000000, 0.000000, 1.000000], /* wrist to pinky metac. origin */[0.950000, 1.450000, 1.273000], /* metac_pinky_fl orientation */[79.500000, -0.400000, 5.410000], /* metac_pinky_fl to pinky_fl1 origin */[0.156000, 0.410000, 0.030000], /* pinky_fl1 orientation */30.000000, /* pinky_fl1 to pinky_fl2 origin */18.000000, /* pinky_fl2 to pinky_fl3 origin */18.000000, /* pinky_fl3 to extrema origin */

[1.008360, 1.397000, 1.239000], /* metac_ring_fl orientation */[87.900002, -2.000000, 4.900000], /* metac_ring_fl to ring_fl1 origin */[0.208000, 0.160000, 0.149000], /* ring_fl1 orientation */37.000000, /* ring_fl1 to ring_fl2 origin */25.000000, /* ring_fl2 to ring_fl3 origin */24.000000, /* ring_fl3 to extrema origin */

[89.400002, -16.900000, 5.900000], /* mmiddle to middle_fl1 origin */[0.201000, 0.056000, -0.142000], /* middle_fl1 orientation */45.000000, /* middle_fl1 to middle_fl2 origin */27.000000, /*rightmiddle_fl2 to middle_fl3 origin */21.000000, /* middle_fl3 to extrema origin */

[5.000000, 0.000000, 0.000000], /* wrist to index metac. origin */[87.699997, -24.299999, 20.799999], /* metac_index_fl to index_fl1 origin */[0.195000, -0.206000, -0.177000], /* index_fl1 orientation */40.000000, /* index_fl1 to index_fl2 origin */22.000000, /* index_fl2 to index_fl3 origin */20.000000, /* index_ext to extrema origin */

[23.700001, 23.100000, -26.100000], /* wrist to thumb origin */[-1.589000, -1.064000, -1.333000], /* thumb_piv orientation */[-0.490000, -0.207000, -0.581000], /* thumb_fl1 orientation */40.000000, /* thumb_fl1 to thumb_fl2 origin */33.000000, /* thumb_fl2 to thumb_fl3 origin */28.000000, /* thumb_fl3 to extrema origin */}}}}

A.2. Joint Limits File (newton.jts)JOINT_LIMITS{DEFAULT version 2{[-978.000000, 0.000000, 978.000000], /* tr_vertical */

Page 111: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

A.2. Joint Limits File (newton.jts) 111

[-978.000000, 0.000000, 978.000000], /* tr_lateral */[-978.000000, 0.000000, 978.000000], /* tr_frontal */[-9.424782, 0.000000, 9.424782], /* rt_body_turn */[-4.712391, 0.000000, 4.712391], /* rt_body_roll */[-3.141593, 0.000000, 3.141593], /* rt_body_tilt */[-0.400000, 0.000000, 0.750000], /* pelvic_tilt */[-0.400000, 0.000000, 0.400000], /* pelvic_torsion */[-0.500000, 0.000000, 0.940000], /* pelvic_roll */

[-1.570797, 0.000000, 1.570797], /* r_cp_pelvic_roll */[-1.570797, 0.000000, 1.570797], /* r_cp_pelvic_torsion */[-1.570797, 0.000000, 1.570797], /* r_cp_pelvic_tilt */[-1.570797, 0.000000, 0.785398], /* r_hip_abduct */[-1.570000, 0.000000, 2.000000], /* r_hip_flexion */[-1.570797, 0.000000, 1.570797], /* r_hip_twisting */[-2.600000, 0.000000, 0.100000], /* r_knee_flexion */[-1.100000, 0.000000, 1.100000], /* r_knee_twisting */[-1.500000, 0.000000, 0.600000], /* r_ankle_flexion */[-0.600000, 0.000000, 0.600000], /* r_ankle_subtalar */[-0.261799, 0.000000, 0.261799], /* r_mid_foot */[-1.308998, 0.000000, 1.308998], /* r_toe_flexion */

[-1.570797, 0.000000, 1.570797], /* l_cp_pelvic_roll */[-1.570797, 0.000000, 1.570797], /* l_cp_pelvic_torsion */[-1.570797, 0.000000, 1.570797], /* l_cp_pelvic_tilt */[-0.785398, 0.000000, 1.570797], /* l_hip_abduct */[-1.570000, 0.000000, 2.000000], /* l_hip_flexion */[-1.570797, 0.000000, 1.570797], /* l_hip_twisting */[-2.600000, 0.000000, 0.100000], /* l_knee_flexion */[-1.100000, 0.000000, 1.100000], /* l_knee_twisting */[-1.500000, 0.000000, 0.600000], /* l_ankle_flexion */[-0.600000, 0.000000, 0.600000], /* l_ankle_subtalar */[-0.261799, 0.000000, 0.261799], /* l_mid_foot */[-1.308998, 0.000000, 1.308998], /* l_toe_flexion */

[-0.500000, 0.000000, 0.300000], /* vl1_tilt */[-0.250000, 0.000000, 0.250000], /* vl2_roll */[-0.450000, 0.000000, 0.300000], /* vl2_tilt */[-0.300000, 0.000000, 0.300000], /* vl3_roll */[-0.250000, 0.000000, 0.174533], /* vl3_tilt */[-0.300000, 0.000000, 0.300000], /* vt4_roll */[-0.200000, 0.000000, 0.200000], /* vt4_torsion */[-0.100000, 0.000000, 0.150000], /* vt4_tilt */[-0.250000, 0.000000, 0.250000], /* vt5_roll */[-0.400000, 0.000000, 0.400000], /* vt5_torsion */[-0.400000, 0.000000, 0.400000], /* vt6_roll */[-0.400000, 0.000000, 0.400000], /* vt6_torsion */[-0.300000, 0.000000, 0.300000], /* vt6_tilt */[-0.400000, 0.000000, 0.400000], /* vc7_roll */[-0.450000, 0.000000, 0.450000], /* vc7_torsion */[-0.300000, 0.000000, 0.500000], /* vc7_tilt */[-0.400000, 0.000000, 0.400000], /* vc8_roll */[-0.500000, 0.000000, 0.500000], /* vc8_torsion */[-0.700000, 0.000000, 0.700000], /* vc8_tilt */

[-0.200000, 0.000000, 1.000000], /* l_clav_abduct */[-0.500000, 0.000000, 0.300000], /* l_clav_rotate */[-0.087266, 0.000000, 0.650000], /* l_scap_abduct */[-0.523599, 0.000000, 0.523599], /* l_scap_rotate */[-1.000000, 0.000000, 1.450000], /* l_shoulder_abduct */[-1.500000, -0.087266, 3.141594], /* l_shoulder_flexion */[-2.000000, 0.000000, 1.570000], /* l_shoulder_twisting */[-0.500000, 0.087266, 2.500000], /* l_elbow_flexion */[-1.000000, 0.000000, 1.000000], /* l_elbow_twisting */[-1.570797, 0.000000, 1.570797], /* l_wrist_flexion */[-0.650000, 0.000000, 0.650000], /* l_wrist_pivot */

Page 112: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

112 Appendix A. Template Definition Files

[-1.000000, 0.000000, 0.200000], /* r_clav_abduct */[-0.300000, 0.000000, 0.500000], /* r_clav_rotate */[-0.650000, 0.000000, 0.087266], /* r_scap_abduct */[-0.523599, 0.000000, 0.523599], /* r_scap_rotate */[-1.450000, 0.000000, 1.000000], /* r_shoulder_abduct */[-1.500000, -0.087300, 3.141594], /* r_shoulder_flexion */[-1.570000, 0.000000, 2.000000], /* r_shoulder_twisting */[-0.500000, 0.087300, 2.500000], /* r_elbow_flexion */[-1.000000, 0.000000, 1.000000], /* r_elbow_twisting */[-1.570797, 0.000000, 1.570797], /* r_wrist_flexion */[-0.650000, 0.000000, 0.650000], /* r_wrist_pivot */[-978.000000, 0.000000, 978.000000], /* virtual_floor */}}

Page 113: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

113

Bibliography

[Ackerman 95] Ackerman, M. J. The Visible Human Project, http://www.nlm.nih.gov,1995.

[Alexander 90] Alexander, R. McN. And Ker, R. F. “The Architecture of Leg Muscles”,In: Multiple Muscle Systems, Biomechanics and MovementOrganization, edited by J. M. Winters and S. L-Y. Woo, New York:Springer-Verlag, 1990.

[Appelton 97] Appleton, B. Stretching and Flexibility - Everything you never wantedto know, document available via the World Wide Web from thefollowing URL:“http://www.enteract.com/~bradapp/docs/rec/stretching/”, 1997.

[Arai 93] Arai, K. “Keyframe Animation of Articulated Figures Using PartialDynamics”, Models and Techniques in Computer Animation, edited byMagnenat-Thalmann and Thalmann, Springer-Verlag, 1993.

[Badler 78] Badler, N., O’Rourke, J. and Toltzis, H. “A human body modellingsystem for motion studies”, Movement Project Rep., no 13, Departmentof Computer and Information Science, University of Pennsylvania, July1978.

[Badler 79] Badler, N. and Smoliar, S. “Digital representations of humanmovement”, ACM Computer Survey, v. 11, March 1979.

[Badler 92] Badler, N. “Graphical Behavior and Animated Agents”, In: AdvancedTechniques in Human Modeling, Animation, and Rendering (CourseNotes #17), ACM SIGGRAPH, July 1992.

[Badler 97] Badler, N. “Virtual Humans for Animation, Ergonomics, andSimulation”, In: IEEE Workshop on Non-Rigid and Articulated Motion,Puerto Rico, June 1997.

[Balcisoy 97] Balcisoy, S. and Thalmann, D. “Interaction between Real and VirtualHumans in Augmented Reality”, In: Proceedings of ComputerAnimation’97, IEEE Computer Society Press, p. 31-38, 1997.

[Barr 84] Barr, A. H. “Global and Local Deformations of Solid Primitives”,Computer Graphics, v 18, n. 3, p. 21-30, July 1984.

[Becheiraz 96] Becheiraz, P. and Thalmann, D. “The Use of NonverbalCommunication Elements and Dynamic Interpersonal Relationship for

Page 114: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

114 Bibliography

Virtual Actors”, In: Proceedings of Computer Animation’96, IEEEComputer Society Press, p. 58-67, June 1996.

[Beylot 96] Beylot, P., Gingins, P. ,Kalra, P., Thalmann. N., Maurel, W., Thalmann,N. and Fasel, J. “3D Interactive Topological Modeling using VisibleHuman Dataset”, In: EUROGRAPHICS’96, v. 15, n. 3, p. C-34-C-44,1996.

[Blinn 82] Blinn, J. F. “A Generalization of Algebraic Surface Drawing”, ACMTransactions on Graphics, v. 1, n. 3, p. 235-256, 1982.

[Bloomenthal 91] Bloomenthal, J. and Shoemaker, K. “Convolution Surfaces”,Computer Graphics, v. 25, n. 4, p. 251-256, July 1991.

[Bloomenthal 94] Bloomenthal, J. “An Implicit Surface Polygonizer”, In: GraphicsGems IV, edited by P. S. Heckbert, Academic Press Inc., p. 324-349,1994.

[Boulic 90] Boulic, R., Thalmann, D. and Magnenat-Thalmann, N. “A GlobalHuman Walking Model with Real-Time Kinematic Personification”,The Visual Computer, v. 6, n. 6, p. 344-358, December 1990.

[Boulic 91] Boulic, R. and Renault, O. “3D Hierarchies for Animation”, In: NewTrends in Animation and Visualization, Edited by Nadia Magnenat-Thalmann and Daniel Thalmann, John Wiley & Sons ltd., England,1991.

[Boulic 94] Boulic, R., Huang, Z., Magnenat-Thalmann, N. and Thalmann, D.“Goal-Oriented Design and Correction of Articulated Figure Motionwith the Track System”, Computer and Graphics, v. 18, n. 4, p. 443-452, 1994.

[Boulic 94b] Boulic, R., Çapin, T., Huan, Z., Molet, T., Shen, J., Magnenat-Thalmann, N. and Thalmann, D. “Human Data Structure & ParallelIntegrated Motion - Specialized Hierarchy for a General VertebrateBody - User Reference Manual”, Report of the ESPRIT Project 6709 -HUMANOID, EPFL, Lausanne, Switzerland, 1994.

[Boulic 94c] Boulic, R., Çapin, T., Huang, Z., Molet, T., Shen, J., Kalra, P.,Moccozet, L., Werner, H. M., Magnenat-Thalmann, N. and Thalmann,D. “General Purpose Hierarchy - User Reference Manual”, report of theESPRIT Project 6709 - HUMANOID, EPFL, Lausanne, Switzerland,1994.

[Boulic 95] Boulic, R., Çapin, T., Huang, Z., Kalra, P., Lintermann, B., Magnenat-Thalmann, N., Moccozet, L., Molet, T., Pandzic, I., Saar, K., Schmitt,A., Shen, J. and Thalmann, D. “The HUMANOID Environment forInteractive Animation of Multiple Deformable Human Characters”,EUROGRAPHICS’95, 1995.

[Bro-Nielsen 96] Bro-Nielsen, M. and Cotin, S. “Real-time Volumetric DeformableModels for Surgery Simulation using Finite Elements and

Page 115: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Bibliography 115

Condensation”, Computer Graphics Forum, v. 15, n. 3, p. C-57-C-66,August 1996.

[Calvert 80] Calvert, T., Chapman, J. and Patla, A. “The integration of objective andsubjective data in the animation of human movement”, ComputerGraphics, v. 14, n. 3, July 1980.

[Calvert 82] Calvert, T., Chapman, J. and Patla, A. “Aspects of the kinematicsimulation of the human movement”, IEEE Computer Graphics andApplications, November, 1982.

[Celniker 91] Celniker, G. and Gossard, D. “Deformable curve and surface finite-elements for free-form shape design”, Computer Graphics, v. 25, n. 4, p.257-266, July 1991.

[Certain 96] Certain, A., Popovic, J., DeRose, T., Duchamp, T., Salesin, D. andStuetzle, W. “Interactive Multiresolution Surface Viewing”, ComputerGraphics, New Orleans, ACM SIGGRAPH, 1996.

[Chadwick 89] Chadwick, J. E., Haumann, D. R. and Parent, R. E. “LayeredConstruction for Deformable Animated Characters”, ComputerGraphics, v. 23, n. 3, p. 243-252, July 1989.

[CHARM 93] CHARM, Esprit Project 9036 - Part I: Technical Annex, 1993.

[Chen 92] Chen, D. T. and Zeltzer, D. “Pump It Up: Computer Animation of aBiomechanically Based Model of Muscle Using the Finite ElementMethod”, Computer Graphics, v. 26, n. 2, p. 89-98, July 1992.

[Christie 80] Christie, G. W. and Medland, I. C. “A static finite strain, finite elementstress analysis of bioprosthetic heart valves”, In: InternationalConference On Finite Elements in Biomechanics, University ofArizona, 1980.

[Christie 82] Christie, G. W. and Medland, I. C. “A Non-linear finite element stressanalysis of bioprosthetic heart valves”, Finite Elements inBiomechanics, R. H. Gallagher, B. R. Simon, P. C. Johnson and J. F.Gross, John Wiley & Sons, p. 153-179, 1982.

[Cody 90] Cody, M. D. J. “Visualizing Muscles - A New Ecorché Approach toSurface Anatomy”, University Press of Kansas, 1990. 231 p.

[Coquillart 90] Coquillart, S. and Jancène, P. “Extended Free-Form Deformation: ASculpting Tools for Geometric Modeling”, Computer Graphics, v. 24, n.4, p. 187-196, August 1990.

[Coquillart 91] Coquillart, S. and Jancène, P. “Animated Free-Form Deformation: AnInteractive Animation Technique”, Computer Graphics, v. 25, n. 4, p.23-26, July 1991.

[Crisp 72] Crisp, J. D. C. “Properties of tendon and skin”, In: Biomechanics: ItsFoundations and Objectives, Y. C. Fung, New York: Prentice-Hall,1972.

Page 116: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

116 Bibliography

[Cutts 93] Cutts, A. “Muscle physiology and electromyography”, In: Mechanics ofHuman Joints: Physiology, Pathophysiology, and Treatment, edited byV. Wright and E. L. Radin,, New York: Marcel Dekker, 1993.

[Dawson 74] Dawson, H. L. Basic Human Anatomy, 2nd edition, Appleton-Century-Crofts, New York, 1974.

[Deng 88] Deng, X. Q. “A finite element analysis of surgery of the human facialtissue”, New York, Columbia University, 1988.

[Dooley 82] Dooley, M. “Anthropometric Modeling Programs - A Survey”, IEEEComputer Graphics and Applications, v. 2, n. 9, p. 17-25, November,1982.

[Elsen 93] Elsen, P. A., Pol, E. J. D. and Viergener, M. A. “Medical ImageMatching - A Review with Classification”, IEEE Engineering inMedicine and Biology, v. 12, p. 26-39, 1993.

[Essa 93] Essa, I., Sclaroff, S. and Pentland, A. “Physically based modeling forgraphics and vision”, In: Directions in Geometric Computing, R.Martin, Information Geometers Ltd., p. 161-218, 1993.

[Evans 76] Evans, S. M. “User’s guide for the programs of combiman”, ReportAMRLTR-76-117, University of Dayton, Ohio, 1976.

[Fasel 94] Fasel, P. G. and Terrier, F. “Three-dimensional reconstruction of alevator claviculae muscle”, Surg. Radiol. Anat., v. 16, p. 303-305, 1994.

[Fetter 82] Fetter, W. A. “A Progression of Human Figures Simulated byComputer Graphics”, IEEE Computer Graphics and Applications, v. 2,n. 9, p. 9-13, November 1982.

[Frigo 78] Frigo, C. and Pedotti, A. “Determination of muscle length duringlocomotion”, Biomechanics VI-A, edite by E. Asmussen and K.Jorgensen, Baltimore: University Park Press, p. 355-360, 1978.

[Fung 72] Fung, Y. C. “Stretch-Strain history relations of soft tissues in simpleelongation”, Biomechanics: Its foundations and objectives, Y. C. Fung,N. Perrone and M. Anliker, NJ, Prentice Hall, 1972.

[Fung 93] Fung, Y. C. “Skeletal muscle”, In: Biomechanics: MechanicalProperties of Living Tissues, Berlin: Springer-Verlag, 1993.

[Fung 93b] Fung, Y. C. “Bioviscoelastic solids”, In: Biomechanics: MechanicalProperties of Living Tissues”, Berlin: Springer-Verlag, 1993.

[Gascuel 91] Gascuel, M.-P., Verroust, A. and Puech, C. “A Modelling System forComplex Deformable Bodies Suited to Animation and CollisionProcessing”, The Journal of Visualization and Computer Animation, v.2, n. 3, p. 82-91, 1991.

[Gascuel 93] Gascuel, M.-P. “An implicit formulation for precise contact modelingbetween flexible solids”, Computer Graphics, Proceedings ofSIGGRAPH’93, p. 313-320, August 1993.

Page 117: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Bibliography 117

[Gascuel 96] Gascuel, M.-P. and Desbrun, M. “Deformable models for virtual realityand animation”, In: Computer Science Postgraduate Course in VirtualReality, course notes, EPFL, Lausanne, Switzerland, September 1996.

[Geiger 93] Geiger, B. “Three Dimensional Modeling of Human Organs and ItsApplication to Diagnosis and Surgical Planning”, PhD. Thesis, INRIA,France, 1993.

[Goldfinger 91] Goldfinger, E. Human Anatomy for Artists: The Elements of Form,New York: Oxford University Press, 1991.

[Gourret 89] Gourret, J. P., Magnenat-Thalmann, N. and Thalmann, D. “Simulationof Object and Human Skin Deformations in a Grasping Task”,Computer Graphics, v. 23, n. 3, p. 21-30, July 1989.

[Helm 91] Van der Helm, F. C. T. and Veenbaas, R. “Modeling the mechanicaleffect of muscles with large attachment sites: Application to theshoulder mechanism”, Journal of Biomechanics, v. 27, p. 1151-1163,1991.

[Herbison-Evans 74] Herbison-Evans, D., “Animated cartoons by computers usingellipsoids”, In: Proceedings of 6th Australian Computer Conference, p.811-823, 1974.

[Högfors 87] Högfors, C., Sigholm, G. and Herberts, P. “Biomechanical model of thehuman shoulder - I. Elements”, Journal of Biomechanics, v. 20, p. 157-166, 1987.

[Holton 95] Holton, M. and Alexander, S. “Soft Cellular Modeling: A Technique forthe Simulation of Non-rigid Materials”, Computer Graphics:Developments in Virtual Environments, R. A. Earnshaw and J. A.Vince, England, Academic Press Ltd., p. 449-460, 1995.

[Horowitz 88] Horowitz, A., Sheinman, I., Lanir, Y., Perl, M. and Sideman, S.“Nonlinear incompressible finite element for simulating loading andunloading of cardiac tissue - Part I: Two dimensional formulation forthin myocardial strips.” Journal of Biomechanics Engineering, v. 110,p. 57-62, 1988.

[Horowitz 88b] Horowitz, A., Sheinman, I. and Lanir, Y. “Nonlinear incompressiblefinite element for simulating loading and unloading of cardiac tissue -Part II: Three dimensional formulation for thick ventricular wallsegments”, Journal of Biomechanics Engineering, v. 110, p. 62-68,1988.

[Hsu 92] Hsu, W., Hughes, J. F. and Kaufman, H. “Direct Manipulation of Free-Form Deformations, Computer Graphics, v. 26, n. 2, p. 177-184, July1992.

[Huang 90] Huang, X., Black, M. M., Howard, I. C. and Patterson, E. A. “A two-dimensional finite element analysis of a bioprosthetic heart valve”,Journal of Biomechanics, v. 23, p. 753-762, 1990.

Page 118: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

118 Bibliography

[Huyghe 91] Huygue, J. M., van Campen, D. H., Arts, T. and Heethaars, R. M. “Atwo-phase finite element model of the diastolic left ventricle”, Journalof Biomechanics, v. 24, p. 527-538, 1991.

[Janz 73] Janz, R. F. and Grimm, A. F. “Deformation of the diastolic leftventricle: I. Nonlinear elastic effects”, Biophysics Journal, v. 13, p.689-704, 1973.

[Janz 74] Janz, R. F., Bruce, R. K. and Moriarty, T. F. “Deformation of thediastolic left ventricle: II. Nonlinear geometric effects.” Journal ofBiomechanics, v. 7, p. 509-516, 1974.

[Jensen 75] Jensen, R. H. and Davy, D. T. “An investigation of muscle lines ofaction about the hip: a centroid line approach vs the straight lineapproach”, Journal of Biomechanics, v. 8, p. 103-110, 1975.

[Kalra 92] Kalra, P, Mangili, A., Magnenat-Thalmann, N. and Thalmann, D.“Simulation of Facial Muscle Actions Based on Rational Free FormDeformations”, Computer Graphics Forum (EUROGRAPHICSConference), v. 2, n. 3, p. C-59 - C-69, September, 1992.

[Kalra 97] Kalra, P., Moccozet, L., Werner, H. M., Boulic, R. Huang, Z., Shen, J.,Magnenat-Thalmann, N. and Thalmann, D. “Interactive Construction of3D Human Shapes - Surface Manager - User Reference Manual”, reportfor the ESPRIT project 6709 - HUMANOID, University of Geneva,Geneva, Switzerland, 1997.

[Karakaplan 80] Karakaplan, A. D., Bienek, M. P. and Skalak, R. “A mathematicalmodel of lung parenchyma.”, Journal of Biomechanics Engineering, v.102, p. 124-136, 1980.

[Kass 87] Kass, M., Witkin, A. and Terzopoulos, D. “Snakes: Active ContourModels”, International Journal of Computer Vision, v. 1, n. 4, p. 321-331, 1987.

[Kaufmann 89] Kaufmann, K. R., an, K. N. and Chao, E. Y-S. “Incorporation of themuscle architecture into the muscle length-tension relationship”,Journal of Biomechanics, v. 22, p. 943-948, 1989.

[Kerr 95] Kerr, J., Ratiu, P. and Sellberg, M. “Volume Rendering of VisibleHuman Data for an Anatomical Virtual Environment”,http://www.eai.com/dhuman/paper/paper.html, 1995.

[Komatsu 88] Komatsu, K. “Human Skin Model Capable of Natural Shape Variation”,The Visual Computer, v. 3, n. 5, p. 265-271, 1988.

[Korein 82] Korein, V. and Badler, N. “Techniques for generating the goal-directedmotions of articulated pictures”, IEEE Computer Graphics andApplications, November 1982.

[Kroemer 90] Kroemer, K. H. E., Kroemer, H. J. and Kroemer-Elbert, K. E.Engineering Physiology - Bases of Human Factors/Ergonomics, 2nd

edition, New York: Van Nostrand Reinhold, 1990.

Page 119: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Bibliography 119

[Lake 91] Lake, R. and Green, M.K. “Dynamic Motion Control an ArticulatedFigure Using Quaternion Curves”, In: First Conference on CAD andGraphics, Hangzhou, 1991.

[Lanir 83] Lanir, Y. “Constitutive equations for fibrous connective tissues”,Journal of Biomechanics, v. 16, p. 1-12, 1983.

[Larrabee 86] Larrabee Jr, W. F. and Galt, J. A. “A finite element model of skindeformation. III. the finite element model”, In: Laryngoscope'96, 1986.

[Lazarus 93] Lazarus, F., Coquillart, S. and Jancène, P. “Interactive AxialDeformations”, INRIA: Institut National de Recherche en Informatiqueet Automatique, Rapport de Recherche no. 1891, Rocquencourt, France,April 1993.

[Lee 83] Lee, G. C., Tseng, N. T. and Yuan, Y. M. “Finite element modeling oflungs including interlobar fissures and the heart cavity”, Journal ofBiomechanics, v. 16, n. 9, p. 679-690, 1983.

[Lindstrom 96] Lindstrom, P., Koller, D., Ribarsky, W., Hodges, L. F., faust, N. andTurner, G. A. “Real-Time, Continuous Level of Detail Rendering ofHeight Fields”, Computer Graphics, SIGGRAPH’96, New Orleans,ACM SIGGRAPH, 1996.

[Liu 78] Liu, J. T. and Lee, G. C. “Static finite deformation analysis of the lung”,Journal Engineering Mech. Div., ASCE 104: (EMI), p. 225-238, 1978.

[Martin 85] Martin, A. H. Introduction to Human Anatomy, New York: Thieme-Stratton Inc., 1985.

[Maurel 98] Maurel, W., Wu, Y., Magnenat-Thalmann, N. and Thalmann, D.“Biomechanical Models for Soft Tissue Simulation”, (ESPRIT basicresearch series), Springer Press, 1998. 173 p.

[May 96] May, S. F., Carlson, W., Phillips, F. and Scheepers, F. “AL: A languagefor procedural modeling and animation”, Technical Report OSU-ACCAD-12/96-TR5, ACCAD, The Ohio State University, December1996.

[Miller 88] Miller, G. “The motion of snakes and worms”, Computer Graphics, v.22, n. 4, p. 169-177, August 1988.

[Moccozet 97] Moccozet, L. and Magnenat-Thalmann, N. “Dirichlet Free-FormDeformations and their Application to Hand Simulation”, In: ComputerAnimation’97, p. 93-102, Geneva, Switzerland, June 1997.

[Monheit 91] Monheit, G. and Badler, N. “A Kinematic Model of the Human Spineand Torso”, IEEE Computer Graphics and Applications, v. 11, n. 2, p.29-38, March 1991.

[Nedel 97] Nedel, L. P. “A Survey of Deformable Models and a PreliminaryImplementation Proposal”, BIOMED - MIAS Project Report, June1997.

Page 120: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

120 Bibliography

[Needleman 83] Needleman, A., Rabinowitz, S. A., Bogen, D. K. and McMahon, T. A.“A finite element model of the infarcted left ventricle”, Journal ofBiomechanics, v. 16, p. 45-58, 1983.

[Nishimura 85] Nishimura, H., Hirai, M., Kawai, T. et. al. “Object modeling bydistribution function and a method of image generation.”, Transactionsof IECE J68, v. D, n. 4, p. 718-725, 1985.

[Paillet 97] Paillet, O. and Shen, J. Body Builder User Manual, ÉcolePolytechnique Fédérale de Lausanne, Computer Graphics Lab., internalreport, 1997.

[Pao 78] Pao, Y. C., Chevalier, P. A., Rodarte, J. R. and Harris, L. D. “Finiteelement analysis of the strain variations in excised lobe of caninelung.”, Journal of Biomechanics, v. 11, p. 91-100, 1978.

[Pieper 92] Pieper, S. D. “CAPS: Computer-Aided plastic surgery”, MIT, 1992.

[Pierrynowski 83] Pierrynowski, M. R. and Morrison, J. B. “Length and velocitypatterns of the human locomotor muscles”, Biomechanics IX-A, editedby D. A. Winter, R. W. Norman, R. P. Wells, K. C. Hayes and A. E.Patla, Champaign: Human Kinetic Publishers, IL, v. 5A, p. 33-38, 1983.

[Potter 75] Potter, T. E., Willmert, K. D., “Three-dimensional human displaymodel”, Computer Graphics, v. 9, n. 1, p. 102-110, 1975.

[Press 92] Press, W. H., Teukolsky, S. A., Vetterling, W. T. and Flannery, B. P.Numerical recipes in C - The Art of Scientific Computing - SecondEdition, Cambridge University Press, 1992. 994 p.

[Promayon 96] Promayon, E., Baconnier, P. and Puech, C. “Physically-BasedDeformations Constrained in Displacements and Volume”, ComputerGraphics Forum, v. 15, n. 3, p. C-155-C-164, August 1996.

[Purslow 89] Purslow, P. P. “Strain induced reorientation of an intramuscularconnective tissue network: implications for passive muscle elasticity”,Journal of Biomechanics, v. 22, p. 21-31, 1989.

[Raikova 92] Raikova, R. “A general approach for modelling and mathematicalinvestigation of the human upper limb”, Journal of Biomechanics, v. 25,p. 857-867, 1992.

[Reeves 83] Reeves, W. T. “Particle Systems: a Technique for Modeling a Class ofFuzzy Objects”, ACM Transactions and Graphics, v. 2, n. 2, p. 91-108,April 1983.

[Reynolds 87] Reynolds, C. W. “Flocks, Herds, and Schools: A distributed behavioralmodel”, Computer Graphics, v. 21, n. 4, p. 25-34, July 1987.

[Sederberg 86] Sederberg, T. W. and Parry, S. R. “Free-Form Deformation of SolidGeometric Models”, Computer Graphics, v. 20, n. 4, p. 151-160,August 1986.

Page 121: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Bibliography 121

[Scheepers 96] Scheepers, C. F. Anatomy-Based Surface Generation for ArticulatedModels of Human Figures, PhD Thesis, Advisor: Dr. Richard E. Parent,The Ohio State University, 1996.

[Scheepers 97] Scheepers, F., Parent, R.E., Carlson, W.E. and May, S.F. “Anatomy-Based Modeling of the Human Musculature”, ”, In: Computer GraphicsProceedings, p. 163-172, 1997.

[Seireg 73] Seireg, A. and Arvikar, R. J. “A mathematical model for evaluation offorces in lower extremities of the musculoskeletal system”, Journal ofBiomechanics, v. 6, p. 313-326, 1973.

[Seireg 89] Seireg, A. and Arvikar, R. Biomechanical Analysis of theMusculoskeletal Structure for Medicine and Sports, HemispherePublishing Corporation, 1989.

[Shen 95] Shen, J. and Thalmann, D. “Interactive Shape Design Using Metaballsand Splines”, In: Proceedings of Eurographics Workshop on ImplicitSurfaces’95, Grenoble, France, p. 187-196, 1995.

[Shen 96] Shen, J. “Human Body Modeling and Deformations”, PhD thesis, ÉcolePolytechnique Fédérale de Lausanne, 1996. Advisor: Prof. DanielThalmann

[Shen 98] Shen, J., Nedel, L. P. and Thalmann, D. Body Builder Programmer’sGuide, internal report, EPFL, Lausanne, Switzerland, 1998.

[Sims 90] Sims, K. “Particle animation and rendering using data parallelcomputation”, Computer Graphics, v. 24, n. 4, p. 405-413, August1990.

[Steindler 77] Steindler, A. Kinesiology of the Human Body, 5th edition, Charles C.Thomas, Springfield, IL, 1977.

[Szelinski 92] Szelinski, R. and Tonnesen, D. “Surface Modeling with OrientedParticle Systems”, Computer Graphics, v. 26, n. 2, p. 185-194, July1992.

[Taber 91] Taber, L. A. “On a nonlinear theory for muscle shells: Part I -Theoretical development”, Journal of Biomechanics Engineering, v.113, p. 56-62, 1991.

[Taber 91b] Taber, L. A. “On a nonlinear theory for muscle shells: Part II -Application to the beating of the left ventricle”, Journal ofBiomechanics Engineering, v. 113, p. 63-71, 1991.

[Terzopoulos 87] Terzopoulos, D., Platt, J., Barr, A. and Fleischer, K. “ElasticallyDeformable Models”, Computer Graphics, v. 21, n. 4, p. 205-214, July1987.

[Terzopoulos 88] Terzopoulos, D. and Fleisher, K. “Modeling Inelastic Deformation:Viscoelasticity, Plasticity, Fracture.”, Computer Graphics, v. 22, n. 4, p.269-278, August 1988.

Page 122: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

122 Bibliography

[Terzopoulos 91] Terzopoulos, D. and Waters, K. “Techniques for Realistic FacialModeling and Animation”, In: Computer Animation’91, edited byMagnenat-Thalmann, N. and Thalmann, D., Springer-Verlag, Tokyo, p.59-74, 1991.

[Thalmann 87] Magnenat-Thalmann, N. and Thalmann, D. “The Direction of SyntheticActors in the Film Rendez-vous à Montréal”, IEEE Computer Graphicsand Applications, v. 7, n. 12, p. 9-19, 1987.

[Thalmann 90] Magnenat-Thalmann, N. and Thalmann, D. Computer Animation:Theory and Practice - Second Revised Edition, Computer ScienceWorkbench, Springer-Verlag, Berlin, 1990.

[Thalmann 91] Magnenat-Thalmann, N. and Thalmann, D. “Complex Models forAnimating Synthetic Actors”, IEEE Computer Graphics andApplications, v. 11, n. 5, p. 32-44, September 1991.

[Thalmann 95] Thalmann, D., Çapin, T., Magnenat-Thalmann, N. and Pandzic, I.“Participant, User-Guided and Autonomous Actors in the Virtual LifeNetwork VLNET”, In: Proceedings of International Conference onArtificial Reality and Tele-Existence’95”, Conference on VirtualReality Software and Technology’95 ICAT/VRST’95, Japan, 1995.

[Thalmann 96] Thalmann, D., Shen, J. and Chauvineau, E. “Fast Realistic HumanBody Deformations for Animation and VR Applications”, In: ComputerGraphics International Proceedings, p. 166-174, 1996.

[Thomson 64] Thomson, A. A Handbook of anatomy for art students, Doverpublications, Inc., New York, 1964.

[Timoshenko 70] Timoshenko, S. P., Goodier, J. N. Theory of Elasticity, 3rd editionAuckland, NZ: McGraw-Hill, 1970.

[Tolo NY] Tolo, V. “Skeletal muscles, joints, and fascial structures”, In: The JohnsHopkins Atlas of Human Functional Anatomy, edited by G. D.Zuidema, 2nd edition, The Johns Hopkins University School ofMedicine, p. 9-17, No Year.

[Toshev 89] Toshev, E. Y. and Raikova, R. T. “Segment-lines modeling of humanelbow joint drive”, In: XII International Congress of Biomechanics,University of California, Los Angeles, 1989.

[Tost 88] Tost, D. and Pueyo, X. “Human body animation: a survey”, The VisualComputer, v. 3, n. 5, p. 254-264, March, 1988.

[Turner 93] Turner, R. “Interactive Construction and Animation of Layered ElasticCharacters”, PhD Thesis, École Polytechnique Fédérale de Lausanne,Switzerland, 1993. Advisor: Daniel Thalmann

[Turner 95] Turner, R. “Constructing and Animating Layered Elastic Characters”,In: Proceedings of Computer Graphics International’95, p. 185-203,1995.

Page 123: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Bibliography 123

[Uhl 95] Uhl, C., Luciani, A. and Florens, J.-L. “Hardware architecture of a real-time simulator for the CORDIS-ANIMA system: physical models,images, gestures, sounds”, Computer Graphics: Developments inVirtual Environments, R. A. Earnshaw and J. A. Vince, England,Academic Press, p. 421-434, 1995.

[Vawter 80] Vawter, D. L. “A finite element model for macroscopic deformation ofthe lung”, In: Finite Elements in Biomechanics, R. H. Gallagher, B. R.Simon, P. C. Johnson and J. F. Gross, John Wiley & Sons, 1980.

[Viidik 87] Viidik, A. “Properties of tendons and ligaments”, In: Handbook ofBioengineering, edited by R. Skalak and S. Chien, New York:McGraw-Hill, 1987.

[Warwick 73] Warwick, R. and Williams, P. L., Gray’s Anatomy, 35th British edition,Philadelphia: W. B. Saunders, 1973.

[Wernecke 94] Wernecke, J. The Inventor Mentor - Programming Object-Oriented 3DGraphics with Open Inventor - Release 2, Addison-Wesley PublishingCompany, 1994.

[Wilhelms 94] Wilhelms, J. “Modeling Animals with Bones, Muscles, and Skin”,Baskin Center for Computer Engineering and Information Sciences,University of California, Santa Cruz, CA, 1994.

[Wilhelms 97] Wilhelms, J. and Van Gelder, A. “Anatomically Based Modeling”, In:Computer Graphics Proceedings, p. 173-180, 1997.

[Winter 90] Winter, D. A. “Muscle mechanics”, In: Biomechanics and Motor of theHuman Movements, 2nd edition, New York: Wiley, 1990.

[Witkin 87] Witkin, A., K. Fleischer, and Barr, A. “Energy Constraints onParameterized Models”, Computer Graphics, v. 21, n. 4, p. 225-232,July 1987.

[Wyvill 86] Wyvill, G., McPheeters, C. et. al. “Data Structure for Soft Objects”,The Visual Computer, v. 2, n. 4, 1986.

[Yoshimoto 92] Yoshimoto, S. “Ballerinas Generated by a Personal Computer”, TheJournal of Visualization and Computer Animation, v. 3, p. 85-90, April1992.

[Zajac 89] Zajac, F. E. “Muscle and tendon: properties, models, scaling andapplication to biomechanics and motor control”, In: CRC CriticalReviews in Biomedical Engineering, v. 17, p. 359-411, edited by J. R.Bourne, Boca Raton: CRC Press, 1989.

[Zajac 90] Zajac, F. E. and Winters, J. M. “Modeling Musculoskeletal MovementSystems: Joint and Body Segmental Dynamics, MusculoskeletalActuation, and Neuromuscular Control”, In: Multiple Muscle Systems:Biomechanics and Movement Organization, p. 121-148, edited by J. M.Winters and S. L.-Y. Woo, Springer-Verlag, 1990.

Page 124: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

124 Bibliography

[Zeltzer 82] Zeltzer, D. “Motor control techniques for figure animation”, IEEEComputer Graphics and Applications, November, 1982.

[Zienkiewicz 89] Zienkiewicz, O. C. and Taylor, R. L. The finite element method, 4th

edition London: McGraw-Hill, 1989.

Page 125: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

Curriculum VitaeLuciana PORCHER NEDELBrazilian citizenBorn in July 18th , 1967Marital Status: marriedAddress: Av. Cel. Massot, 520 apto. 1018 bl. C - Cristal

Porto Alegre - RS - Brazil CEP 91.910-530 +55-51-332-6740

E-mail: [email protected]: http://ligwww.epfl.ch/nedel.html

Education:

Master of Science (Computer Science), March 90 to June 93Federal University of Rio Grande do Sul, Porto Alegre, BrazilThesis: Simulation of Deformable Objects Based on Dynamic Analysis

Post Graduation (Virtual Reality), May 96 to May 97Swiss Federal Institute of Technology, Lausanne, SwitzerlandThesis: A Proposal for a New Human Template with Interactive Muscles Animation

Bachelor (Computer Science), March 85 to August 89Pontifícia Universidade Católica do Rio Grande do Sul, Porto Alegre, BrazilThesis: Intelligent Manufacturing Interface System

Experience:

Research Assistant (November 94 ~ present)Computer Graphics Lab. (DI-LIG)Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland

Research Assistant (January 93 ~ October 94)Computer Science DepartmentFederal University of Rio Grande do Sul, Porto Alegre, Brazil

Teaching Assistant (March 90 ~ July 94)Universidade Luterana do Brasil, Canoas, Brazil

Selected Publications:

1. Nedel, Luciana Porcher and Thalmann, Daniel. “Modeling and Deformation of the Human Body Usingan Anatomically-Based Approach”, In: Proceedings of Computer Animation’98, p. 34-40,Phyladelphia, USA, June 1998.

2. Nedel, Luciana Porcher and Thalmann, Daniel. “Real Time Muscle Deformations Using Mass-SpringSystems”, In: Proceedings of Computer Graphics International (CGI’98), p. 156-165, Hannover,Germany, June 1998.

Page 126: ANATOMIC MODELING OF HUMAN BODIES USING PHYSICALLY-BASED MUSCLE

56 Bibliography