+ All Categories
Home > Documents > Human body animation: a survey

Human body animation: a survey

Date post: 20-Apr-2023
Category:
Upload: independent
View: 0 times
Download: 0 times
Share this document with a friend
11
Human body animation a survey D. Tost and X. Pueyo Departament de M6todes Informfitics (ETSEIB), Universitat Polit6cnica de Catalunya, Avenue Diagonal 647, E-08028 Barcelona, Spain A survey of human body animation is pre- sented dealing with its geometrical repre- sentation, motion control techniques and rendering. A classification of human body animation systems is presented according to different criteria. The human body movement notations are described and the different existing geo- metric models of the body and the face are analised and compared. The body and face control motion tech- niques are presented and discussed, as well as human body motion in its environment. Finally, the different problems of human body rendering are presented. Key words" Computer animation - Hu- man body Geometric models - Motion control 254 1 Introduction Human body animation is one of the most chal- lenging goals of computer animation. In some ways, it can be considered as a step further in the long evolution of the research of one of man's mythical preoccupations. This is the starting point for very different disciplines, such as arts, robotics and medicine, in man's attempt to create a figure similar to himself. In this sense, one part of the research of human body animation, the description of the body and its movements, is common to others fields (Calvert et al. 1982). On the other hand, its applications are multiple and also extend to very different ma- teria (Herbison-Evans 1982). In the next section a brief resume of these applications is given. Human body animation is however, a very compli- cated task: the human body is of irregular shape, difficult to model (Magnenat-Thalmann and Thai- mann 1985a). In addition, the specification and computation of its movements are not trivial be- cause its complex articulations involve more than 200 degrees of freedom (Zeltzer 1982). Finally hu- man body animation must deal with two specific problems: as human motion is rather intuitive, it is almost impossible to take into account all the links involved in a simple movement, its natural balance and its multiple interactions with the envi- ronment, because the coordination of all these fac- tors occurs unconsciously in reality. (Badler and Smoliar 1979a). The other specific problem is re- lated to the nature itself of human behavior: what makes two persons, similar in their physical aspect, so different? Finding computerizable expressions of human personality is a hard but necessary task in realistic human body animation (Bergeron and Lachappelle 1985). A complete process of animation can be divided into three parts: - Human body modellization - Specification and computation of the move- ments - Rendering: shading and hidden surfaces re- moval In the following sections a classification of human body animation is given and then, the different techniques involved in these three steps of the pro- cess of animation are reviewed separately. 2 Classification of human body animation systems A classification of human body animation systems is proposed (Table 1) that applies also for com- The VisualComputer(1988) 3:254-264 Springer-Verlag 1988
Transcript

Human body animation a survey

D. Tost and X. Pueyo

Departament de M6todes Informfitics (ETSEIB), Universitat Polit6cnica de Catalunya, Avenue Diagonal 647, E-08028 Barcelona, Spain

A survey of human body animation is pre- sented dealing with its geometrical repre- sentation, motion control techniques and rendering. A classification of human body animation systems is presented according to different criteria. The human body movement notations are described and the different existing geo- metric models of the body and the face are analised and compared. The body and face control motion tech- niques are presented and discussed, as well as human body motion in its environment. Finally, the different problems of human body rendering are presented.

K e y words" Computer animation - Hu- man body Geometric models - Motion control

254

1 Introduction

Human body animation is one of the most chal- lenging goals of computer animation. In some ways, it can be considered as a step further in the long evolution of the research of one of man's mythical preoccupations. This is the starting point for very different disciplines, such as arts, robotics and medicine, in man's attempt to create a figure similar to himself. In this sense, one part of the research of human body animation, the description of the body and its movements, is common to others fields (Calvert et al. 1982). On the other hand, its applications are multiple and also extend to very different ma- teria (Herbison-Evans 1982). In the next section a brief resume of these applications is given. Human body animation is however, a very compli- cated task: the human body is of irregular shape, difficult to model (Magnenat-Thalmann and Thai- mann 1985a). In addition, the specification and computation of its movements are not trivial be- cause its complex articulations involve more than 200 degrees of freedom (Zeltzer 1982). Finally hu- man body animation must deal with two specific problems: as human motion is rather intuitive, it is almost impossible to take into account all the links involved in a simple movement, its natural balance and its multiple interactions with the envi- ronment, because the coordination of all these fac- tors occurs unconsciously in reality. (Badler and Smoliar 1979a). The other specific problem is re- lated to the nature itself of human behavior: what makes two persons, similar in their physical aspect, so different? Finding computerizable expressions of human personality is a hard but necessary task in realistic human body animation (Bergeron and Lachappelle 1985). A complete process of animation can be divided into three parts: - Human body modellization - Specification and computation of the move-

ments - Rendering: shading and hidden surfaces re-

moval In the following sections a classification of human body animation is given and then, the different techniques involved in these three steps of the pro- cess of animation are reviewed separately.

2 Classification of human body animation systems A classification of human body animation systems is proposed (Table 1) that applies also for com-

The Visual Computer (1988) 3 : 254-264 �9 Springer-Verlag 1988

, ~ ~ , ~ 7 ~ ~,

Table 1. Classifications o f h u m a n body animat ion systems

1) Historical: - compute r assisted an imat ion - compute r model led animat ion

2) According to the appl icat ion: p roduc t ion of commercia l or en ter ta inment films industrial or scientific s imulat ions

3) According to the d imension o f the system : 2D or 3D 4) According to the model o f the h u m a n body

- stick figures - surface models - volume models

5) According to the mot ion model : - kinematic - dynamic

6) According to the movements specification - guiding - p rog ram level - task level

puter animation in general (Pueyo and Tost 1987). Many criteria of classification can be given, inter- dependent and all of them related to the capabili- ties of the hardware of the systems in which they are implemented. Some of the topics of this classifi- cation will be treated in the next sections and some don't need further explanations (Pueyo and Tost 1987, submitted) so, in this section, we will only concentrate on the first two topics.

litical). Two different objectives can be fixed in a film: the creation of a character or the "'recon- struction" of a real person, either dead or alive. The philosophy of one and the other case are rath- er different. An example of these two possibilities are the two films of Mira Laboratory: "Eglantine" (1986) and "'Rendez-vous a Montreal" (1987). In the first one Eglantine is a ficticious character whereas in "Rendez-vous a Montr6al" two real actors are modelled (Magnenat-Thalmann and Thalmann 1987). The second application is the simulation of situa- tions in which human being is involved: in natural or industrial processes, useful in engineering (ro- botics, detection of collisions, crash simulations, ergonometry), medicine, choreography. . .etc . The objectives in one or the other systems are quite different: in the first one the artistic qualities of the pictures are very important, the animation is generally pre-designed by the animator in such a way that all the unknowns are solved before creat- ing the film whereas, in the second one, the actions are not predicted by an operator but by equations. In Table 2 there is a non-exhaustive list of possible applications of human body animation.

Table 2. A few references o f h u m a n body animat ion applica- tions

"'Computer assisted animat ion" versus "modelled animat ion"

The so called "'Computer Assisted Animation" based on the traditional methods of animation us- ing the computer to facilitate some tedious tasks such as the edition and the painting, must be differ- entiated (Magnenat-Thalmann and Thalmann 1985a) from the "modelled animation "', in which, instead, a model of the body is generated. The problems of modelling and most of the animation techniques presented in the next sections do not apply to the first system.

The applications of human body animation

It is possible to distinguish two main applications of human body animation. The first one is the production of films for entertainment (cartoons), didactic or publicity purposes (commercial or po-

Films

- Fo r art and enter ta inment : " H U N G E R " (Nat ional Fi lm Board Canada 1974), " R E N D E Z V O U S A M O N T R E A L " ( M I R A L a b 1987)

Fo r educat ion (Herbison-Evans 1982) (Paras Kaul 1986)

S I M U L A T I O N S

- Aeronaut ic /Automobi l i s t ic engineering: * Crash simulation programs, head-on automobi le col-

lisions (Willmert 1982) (Fet ter 1982) * Detect ion of collisions: head-on automobi le collisions

(Badler et al. 1980) (Dooley 1982) - Robot ics :

* Visualization o f mechanisms or robots in movement (Laugier and Per t in-Troccaz 1986) (Haddad and Coues- son 1986).

- Ergonomics : * Visualization o f the posi t ion of a man at work (Kingsley

et al. 1981) - Medical , surgery

* Recons t ruc t ion o f h u m a n brain. (Brewster et al. 1984) (Farell et al. 1985)

* Clinical analysis o f abnormal movement pat terns (Calvert et al. 1982)

- Choreography : * Simulat ion o f ballets with the computer (Herb ison-Evans

1982) (Savage and Officer 1978)

255

3 Modellization

The first step in human body animation is generat- ing (editing) the body and storing it using a geo- metric model to describe its elements, and struc- tured in some way in order to define relationships between the different elements. Modelling a human body, as explained above, must deal with several specific problems due to its complexity, and, first of all, some parts of the body must be differentiated because of their special problematic: the hands, and the face (Platt and Badler 1981). In this section we will consider sepa- rately the face from the rest of the body. It is important to keep in mind the close relation that exist between the model and its posterior ani- mation (Parke 1982), It is its possible movements that define a part of the body as an individual entity of the model: for instance, if the face re- mains steady, it is not necessary to consider the mouth or the eyes as separate elements, all the face can be modelled as a rigid surface in which eyes and mouth are only irregularities. In each case, the complexity of the model will be related to the complexity of its animation. In this sense, associated to the model it is sometimes nec- essary to define: - a schematic representation, in order to compute

the movements (Luciani and Cadoz 1986) - a simplified geometric model with a less accu-

rate description of the object than the actual geometric model (Chuang and Entis 1983), in order to speed up the preliminary tests or when details are not assessed, in quick motions or specific visualizations (Fetter 1982).

Because of the relation between the model and the motion specification, the modellization of the body can take into account more data than the purely geometric ones: physical properties such as mass, density.. .etc. (Armstrong e ta l (1986a), or me- chanical constraints such as the maximum angle of the elbow or the knees articulations (Korein and Badler 1983). Adding this information to the geometric model allows more realistic motions but supposes generally a higher computation cost of the animation. On the other hand, if these data are not associated to the model, more checks and corrections of the animation will be necessary. It is a first choice that must be made when modelling the human body. These problems were guessed at very early in the studies of choreography notation of Laban (1928)

(Hutchinson 1970). As this research constitutes in most cases the base of the modellization of the human body in computer animation (Badler et al. 1979; Calvert et al. 1986), we will next expound briefly on its principles.

3.1 Human body notations

There are two main approaches to the description of the body and its movements. The first one is based on a "skeletal" representation of the human body as a set of limbs and joints (see Sect. 3.2). This approach includes the Labanotation and the Eschkol-Wachmann notation (Eschkol and Wach- mann 1958) that are similar in their principles but describe the body in two different ways. In the first case the movements are associated to the joints that constitute the main entity of description, and in the second case they are associated to the limbs, each of them related to a longitudinal axis. In Labanotation (Hutchinson 1970) five different modes of description are defined: the direction signs and the revolution signs, that indicate a trans- lation and a rotation, respectively, of the joint, the facing signs that indicate an orientation of the joint, the contacts signs, and finally the shape signs that describe movements that describe some shape, sweeping a volume in the space (typically some arm movements). In the Eschkol-Wachmann notation, the movement is specified in terms of the angles given around an axis of the model or a position assumed by a limb. The Effort~Shape notation is, as opposed to the previous two, based instead on a " muscular" mod- el of the body (Badler et al. 1979a) and attempts to specify the dynamic characteristics of the move- ments: tension flow, weight, time.., etc. The differences between these two classes of nota- tions are important: on the one hand, the imple- mentation of a '~ skeletal" description is easy and allows simple specifications of the movements, on the other hand, a '~ muscular" decription takes into account physical properties such as mass, force.. . and is consequently more realistic but, as explained above, more complex (Armstrong et al. 1986a). Another notation the "Benesh Notation" must be mentioned although its use is less frequent than the other two (Benesh 1956).

256

3.2 The body

The human body can be structured in three levels: the skeleton, the net of the muscles and the envoi- vent surface of the skin. Most of the systems base their modellization on this "ana tomic" structure and generate a geometric model articulate in a sim- ilar way to the skeleton (Steketee and Badler 1985; Cachola and Shrack 1986; Magnenat-Thalmann and Thalmann 1985a), a sculptured surface model similar to the skin (Fetter 1982) or a mixed model dealing with both levels, skeleton and skin (Arm- strong et al. 1986a). Other systems try instead to model the human body as a collection of primitive volumes as spheres , ellipsoids or cylinders (Badler etal . 1979b), (Herbison-Evans 1978). All these systems present several advantages and disadvantages as we will next discuss.

3.2.1 The stick figures models

Most of the systems use the so-called "stick figure models" that consist of a hierarchical set of rigid objects (limbs) connected at joints, forming an arti- culated body. This model is based on the same principles as those of Labanotation, but can be more complex, depending on the number of limbs and joints involved. Each node can have three de- grees of freedom and the model can be made more complex reaching more than 200 degrees of free- dom of the real human skeleton (Zeltzer 1982). This kind of model can be easily stored in a com- puter as a tree structure where the links are repre- sented by nodes and the joints by arcs (Cachola and Shrack 1986). This modellization allows the definition of modular models formed by sub-trees as "arm-trees" , "leg-trees"... etc. This can be use- ful in order to test separately the different parts of the body. The input of the data, in each case, to configure the model can be done either with a graphic editor, more or less specialized, or using the Labanota- tion, as in the SFU (Calvert et al. 1982). In this system whose application is mainly biomechanical research (analysis of abnormalities and disfunc- tions in motion) a special editor system has been developed, associating to each symbol of labanota- tion an alfanumeric command which serves in both the process of modellization and the specification of movements (Smoliar and Weber 1977).

The main advantages of the stick figure model is that the specification of movement is very easy: it is only necessary to give for each joint a three- dimensional transformation matrix corresponding to its three freedom degrees. Further, Korein and Badler from the University of Pennsylvania, stud- ied the kinematic of the articulated structures, find- ing single planar or three-dimensional chains of links throughout the structure. The kinematic con- straints associated to these chains can suffice to determine the strategy of the movement by only specifying the goal of the motion and without hav- ing to define all the degrees of freedom (Korein and Badler 1983). Other studies of kinematic of the model also work in the sense of simplifying the specification of movement (Calvert et al. 1982) (Wilheims 1986). Another more specific approach to this problem is that of modelling legged figures (Girard and Maciejewski 1985). In PODA system, the kinematics of redundant limbs is analysed in order to model and animate figures with multiple legs. The major drawback of these systems is, that they produce rather unrealistic visualizations. Their lack of volume makes the perception of the depth difficult and consequently causes ambiguities in the pictures. Some movements such as special rota- tions can't be understood. In Magnenat-Thalmann and Thalmann (1985a) the process of modelling (and animating) a stick f igure" Hip i" (from ~ Dream flight ", 1982) formed by 32 segments and 15 joints is described.

3.2.2 The surface models

Instead of the internal structure of the body, the skeleton, it is possible to model its external shape, the skin. This can be done by constructing a sur- face made up of planar or curved patches. The input of data in this kind of model supposes a tedious task of entering the significant points or vertices that configure the surface. Generally a net of lines is drawn in a real person or a mane- quinn and each node (vertex) of the net is entered with a digital pencil (Bergeron and Lachappelle 1985). Between the vertices, either planar surface patches or sculptured surface patches can be com- puted. The advantage of the curved patches is that they model the skin in a smoother, more realistic form, whereas, a great number of planar patches are needed to model smooth curvatures. The draw-

257

%omp er back of the curved patches is, instead, that their computation is more expensive and their rendering too. The number of patches is, in any case a fundamen- tal factor in this relation quality of the picture/cost. Several studies have been done, specially those of Fetter (Fetter 1982). His First, Second and Third man form an evolution from a model of 30 seg- ments to one of 1000 segments. A good solution in order to get benefits of this dichotomy, is that proposed in his Fourth man and woman, in which several levels of complexity of the model (different number of patches) are available depending on the position of the figure in relationship to the camera (closer or farther). In Dooley (1982) a comparative study of well known surface models of the human body: Boeman (Boing Corporation), Sammie (University of Nothinham), Combiman (Aero- spacial Medical Research Center),. . .etc. is pre- sented. The main problem with the surface model is that the specification of movements is almost impossi- ble. Generally mixed models use a skeleton model in order to specify the movements and a surface model around it, in order to give a volumetric, realistic shape. In the surface, a few movable seg- ments are defined while the others remain steady but in the boundaries of the patches some singular- ities can be produced. Some movements of the skeleton (opening and clothing arms) cannot be followed in the joints by a rigid envolvent surface because intersections between surface elements or "separat ions" of some parts of the body would occur (Badler and Smoliar 1979a). The surface should be a model with some properties of elastici- ty in order to be deformated (Armstrong et al. 1986 a). Catmull (1975) modellized a hand in which the shape of the fingers is deformated in the move- ments.

3.2.3 The volume models

Finally the third model is that which approximates the structure and the shape of the body with a collection of elemental primitives of volumes: ellip- soids, spheres or cylinders. Cylinder models pres- ent several singularities in the joints which make them less interesting. The spheres and ellipsoids models, instead, present several advantages and very few drawbacks. First of all they solve the problem of the inconsis-

tent appearence of stick figures models. On the other hand, benefiting from the geometric proper- ties of the sphere and the ellipsoids, particular solu- tions to the hidden surface computation can be found (Herbison-Evans 1978, 1982; Badler et al. 1982) which make visualization (see Sect. 5) easy and quick. For some practical applications, such as the col- lision detections (Badler et al. 1979b), or the chor- eography (Herbison-Evans 1982), they seem to be the best solution of the modellization. When real- ism is required, in film production for instance, they cannot compete with surface models. As in the former case, the volume model can be combined with a skeleton model in order to facili- tate the specification of movements (Badler et al. 1980).

3.3 The face

The face modellization involves all the problems mentioned below, but as its shape is specially irreg- ular and the movements associated to it (mainly of expression and speaking) are rather complex, its difficulties are greater. Special descriptions similar to Labanotation have been developed for the human face. The FACS (Facial Action Coding System) (Ekman and Frie- sen 1978) describes almost all the possible move- ments of the face, and is the base for defining the principal parameters in the modelling of faces. Few works have been published about facial mo- dellization. The most important one is perhaps the paper of Parke (1982). In his system, Parke model- lizes the face as a set of surface patches but taking into account some characteristic parameters of mo- dellization. The number and the shape of the patches is pre-fixed and, particularly, the number of the patches is bigger in the problematic regions (eyes, mouth. . ) . Two types of parameters are con- sidered: the expression parameters and the confor- mation parameters. The conformation parameters are chosen when modelling the face and are con- cerned with measurements such as nose length, eyes separation, forehead width. . , etc. They define the face at a "neut ra l" state. The expressive pa- rameters, variable, are not concerned with the shape of the face but with its possible movements: mouth opening, pupile dilation.., etc. Another important paper about face modellization is that of Platt and Badler (1981) which considers

258

a modellization of the three anatomic levels of the face: bones, muscles and skin. The skeletal level is modelled as a rigid surface under the deformable surface of the skin. Muscles are represented as the intermediate level between those two. Correspon- dances are established between the points of the surface of the skin and the points of the surface of the skeleton, related one to another by arcs pass- ing through a set of intermediate points that simu- late muscles. This complex modellization allows a real simulation of the facial movements.

4 Motion

The generation of human body motion has several specific problems (Badler etal . 1980) already stated in Sect. 1. However, control motion tech- niques used in this field of computer animation are not exclusively suitable for it but employed in other computer animation areas. In this section we present the different types of human body com- puter generated motions based on a previous pre- sentation of general purpose control motion tech- niques.

4.1 Control motion techniques

A computer generated image is defined by a set of parameters describing:

- the structure of the scene, the objects and their attributes

- the position of the observer (camera position and camera state)

- the position of the light sources and their attri- butes

As stated in Sect. 1, computer animation is at- tained varying the values of some or all these pa- rameters and recording the images obtained for successive values of the parameters. Given that, these changes may start at different moments and have different behaviours: they must be synchro- nized. Three models of movements exist that can be, in a first step, classed as k inemat ic models and dynam- ic models . Kinematic models produce motion from positions, speeds and accelerations (easies), where- as dynamic models describe motion by a set of forces and torques from which kinematic data are derived. In order to be able to apply dynamic mod- els, objects to be animated must be defined using

mechanical elements. These are of two types : mate- rial (masses) and joints (rods, springs). Most of the currently operative computer anima- tion systems use kinematic models which are less computer time consuming than dynamic models and more intuitive to use. On the other hand, dy- namic models are useful to describe complex and quick movements that could be painstaking and even impossible to model with kinematic tech- niques. Independently of the model of movements they adopt, systems can be classified according to the specification of movements they allow. Three dif- ferent tools may be available to the animator: - G U I D I N G (Key frame and interpolation): in

these systems the animator defines a set of frames giving the parameters that define them and intermediate frames are generated by inter- polation, as explained in Sect. 3.

- P R O G R A M L E V E L ( languages) ." in which the animator specifies the motion algorithmically.

- T A S K L E V E L ( M o t o r p r o g r a m hand l ing ) : where high level commands perform predefined or computable movements.

From the animator point of view each of these three definition modes present several advantages and inconveniences but the fundamental criteria should be the simplicity of their use. Motor handling systems, friendlier to use allow the animator to obtain a complete product quickly. The major drawback of these systems is their accu- racy, because the user has no control of the motion of individual elements. Furthermore, the animator often needs new motions not yet defined or com- putable so that a computer scientist must help him to implement the necessary tools. The main advantages of key-frame systems are that no computer science knowledge is needed at all and that the animator may control the motion at any level of detail. Their main drawback is that specifying a complex movement requires a large amount of data to be given by the animator. This may be highly painstaking and in some cases pract- ically impossible. Finally the use of programming languages is a powerful tool that provides the possibility of con- trolling the motion of any element or set of ele- ments offering different levels of abstraction. The problem of these systems is that they need com- puter science instructed users and that some move- ments are sometimes very difficult to specify algor- ithmically.

259

Because of the different advantages and disadvan- tages of each motion controlling technique, com- puter animation systems often provide different possibilities of specifying motion (Bergeron 1985). For example, the key frame based system may be supported by a script defining relations between elements whose motion affects one another (Chuang 1983). On the other hand, programming languages and motor handling based systems (Zeltzer 1985) sometimes use key frame facilities either to specify some special movements or to de- fine new motors.

4.1.1 Guiding systems Key frame systems consist in defining a set of key- frames and generating intermediate pictures be- tween two successive key-frames by interpolation (Burtnik and Wein 1971). This technique can be extented to the use of a sequence of forces and torques to be applied in successive time spaced scenes. VIRYA system (Willheims 1986) (Will- heims and Barsky 1985) allows the use of both techniques (kinematic and dynamic) combining them. In the simplest key frame systems, the interpola- tion between key frames (in-betweening) is per- formed linearly in space but may be non-linear in time in order to accelerate and decelerate mo- tion. More evolved systems allow the animator to apply mathematically defined movements between key-frames or to describe path curves (Chuang and Entis 1983). If the animated objects's elements are rigids, defining all singular points like vertices at each key frame is enough, but for non-rigid ob- jects, different types of interpolation are employed (Magnemat-Thalmann and Thalmann 1985a) to derive the shape of the object between key frames from in-betweened singular points and key frame data. A special guiding system, sometimes used in com- bination with in-betweening, is the so-called Ro- toscopy which consists in tracking real motions and entering the data of the film in the computer. A well known system based on rotoscopy is the "Graphical Marionet te" (Ginsberg 1983) in which scripting-by-enactment is allowed. Another man- ner of inputing data is, instead of filming, getting the data directly using electrogonyometers (Calvert et al. 1982). This method also allows getting dy- namic data (tension.. .) , useful in the research of human body modellization.

4.1.2 Program level systems

Computer animation programming languages are usually extensions of general purpose languages in- cluding new tools to help the animator's task. These are essentially specific control structures (Reynolds 1985; Marino et al. 1985), data abstrac- tion (Magnenat-Thalmann and Thalmann 1983a, b; Reynolds 1985) and parallel programming facil- ities (Reynolds 1985; Marino etal . J985). The former are basically special kinds of loops where each iteration is associated to a frame. Data ab- straction allows the instanciation of objects pro- vided by their own motion. Finally, parallel facili- ties help the synchronisation of movements. The script concept (description of a sequence) ap- pears at different levels in these languages and their environments : - Control structures that are loop statements

producing a frame after each iteration and con- trolling the motion of a sequence.

- Lists of commands to be applied to a specific object.

- Complete programs or procedures controlling the production of a sequence or the whole film.

- High level commands using procedures de- signed with a computer animation language.

4.1.3 Task level systems

As explained above, task-level systems are those in which the user only has to activate a " m o t o r " that produces motion. These motors are in fact programs which may be of two types depending on the system: - those that execute predefined movements by

means of an animation language (Magnenat- Thalmann and Thalmann 1985c).

- those that generate motion from some input data (Luciani and Cadoz 1986; Thalmann and Magnenat-Thalmann 1986; Zeltzer 1982; Rids- dale et al. 1986; Drewery and Tsotsos 1986).

In the first case, the animator executes commands activating for a specific period of time an element (camera, actor . . ) provided with a pre-defined mo- tion. So the main inconvenience of these systems is the restriction of movement imposed by the set of existing programs. In the second type the user specifies either an external action to be applied to the object, or a set of facts to be combined with a set of predefined rules in order to obtain the desired motion.

260

4.2 Human body motion features and types

The different techniques presented in the previous section are used to control human body motion. As we will see in the following, each method is specially suitable for a specific type (or set of types) of human movement according to its characteris- tics, even if all movements may be, in principle, attained using any of the techniques. Because of the high complexity of natural human body mo- tion synthetisation, this is one of the areas of com- puter animation where rotoscopy is more widely employed (Ginsberg and Maxwell 1983). Both, kinematic and dynamic approaches are used in this area. In the second case, two important considerations must be taken into account:

- Human body structure has more than 200 de- grees of freedom (McGhee 1976), that is an important drawback from the point of view of the time consuming cost. But only a subset of these degrees of freedom are involved in many movements (Zeltzer 1982).

- "The linkage structure of the human body is not as complicated as the systems studied in mechanical engineering" (Armstrong etal . 1986a).

Most of the human body animation systems com- pute motion based on a skeleton structure (Burtnik and Wein 1976; Zeltzer 1982; Korein et al. 1982; Marino et al. 1985). Often they use biomechanics and don't model muscles and nervous systems. Even though a volume or surface model exists in the system, a skeletal representation is usually as- sociated with it. Computer animation of articulated structures such as human bodies has a clear relationship with ro- botics. In Korein et al. (1982) authors present the different methods used in this area to solve the goal achievement problem. The paper concludes that the choice of a method is different for com- puter animation and robotics. This is specially due to the problems associated with highly redundant linkages appearing in the former that have no known solutions using the more suitable method for robotics. In human body computer animation there are three different types of movement with their specif- ic problems :

- Body motion in its environment. - Articulations motion (legs, arms,...).

- - Facial motion (eyes and mouth).

As we stated in the beginning of this section, each of these movements is attained with more or less difficulty depending on the technique choosen to describe it.

4.2.1 Body motion in its environment

This type of motion includes two different aspects: - How does the body move (path, speed,. . .) in

order to achieve a specific goal (Zeltzer 1982; Magnenat-Thalmann and Thalmann 1987; Drewery et al. 1986).

- How does the actor move to attract the specta- tor's attention (Ridsdale et al. 1986).

Both problems are usually solved using task level systems. Papers dealing with them present analo- gies (path planning, collision detection,.. .) and dif- ferences between human body animation and ro- botics (Zeltzer 1982), and knowledge-based sys- tems (Ridsdale et al. 1986; Drewery et al. 1986; Magnenat-Thalmann et al. 1986). In Zeltzer's sys- tem there is a hierarchical description of the figure motion starting at the top level from the task de- scription (e.g., " run over the soccer ball and kick it"). From this description, the system extracts a set of movements (e.g. walking, running, grasp,.. .) that are performed by procedures called motor programs which use primitive motion procedures (local motor programs). Both, motor programs and local motor programs, may be parametrized in order to easily obtain variations of a given movement. Knowledge-based systems produce motion from a high level description of the movement (e.g., "exit the room") plus a set of restrictions (e.g., "run- ning", "passing near the table". Motion is then derived from a set of rules giving physiology, ha- bits, scene,.., information, and lower level motion descriptions. The user interacts with the system either using a menu and image elements selection (Ridsdale et al. 1986) or using a programming languages (Mag- nenat-Thalmann et al. 1986; Drewery et al. 1986). These are usually based on general purpose pro- gramming languages used in artificial intelligence like P R O L O G (Magnenat-Thalmann et al. 1986).

4.2.2 Articulations motion

In order to move the articulated structure of the human body, the three motion specification tech-

261

niques presented in Sect. 4.1 are used to deal with different types of movement. Even though guiding is used to specify any type of movement (Burtnik et al. 1976; Wilheims 1986; Reeves 1981), it is specially suitable to specify fine detail motions (Ridsdale et al. 1986) like the move- ment of hands. The high interactivity of guiding systems allows to obtain more natural movements. Both, kinematic and dynamic approaches are used (Wilheims 1986, Wilheims and Barsky 1985). On the other hand, intermediate frames are computed either using path specification of some points or by means of cubic splines (Burtnik and Wein 1976; Wilheims 1986; Ridsdale et al. 1986). As stated in Sect. 4.1 program level systems (Mag- nenat-Thalmann and Thalmann 1983 a, b; Marino et al. 1985) offer powerful tools like specialised control structures and data abstraction. These tools allow synchronising movements and para- metrisizing them. Such characteristics permit us to specify complex motions that would be painstaking to obtain in guiding systems. Finally, global motions concerning several related parts of the body may be controlled using task level systems which allow trading off explicit con- trol of low level motions. Two different approaches are used. In Korein and Badler (1982) authors present techniques to obtain goal-directed motion and discuss the criteria used to choose a specific method based on a robotics background. Arm- strong et al. (1986a) use dynamic analysis and present a usefull user interface allowing the anima- tor to easily find the appropiate force and torques to produce the desired motion.

4.2.3 Facial motion

Whereas muscles may be neglected in the produc- tion of other human movements, they must be taken into account for facial animation (Platt and Badler 1981). Facial motion involves eyes (eye- brows, eyelids, eye bulbs) and mouth, and pro- duces important shape deformations. In order to produce these movements, there are two approaches (Parke 1982). A first technique is based on a set of animator's introduced (either di- gitalising from real models (Bergeron and Lachap- pelle 1985) or not) images (actually 3-D models) that are interpolated either linearly or using curved smoother fitting methods (Parke 1972; Bergeron

262

and Lachappelle 1985). In the second approach facial images are obtained from their elements and element relationships parametrisation, usually based on muscle behavior knowledge (Fahlander 1985). Motion may then be reached by either inter- polating key frames (Fahlander 1985, Parke 1985) or varying parameters procedurally (Parke 1982). Parameter variation is attained in different ways (rotating, scaling,...) depending on the type of mo- tion to be produced. Parametrisation is also used for facial motion in the recent film "Rendez-vous a Montreal" produced by Magnenat-Thalmann and Thalmann (Magnenat-Thalmann and Thai- mann 1987).

5 Rendering

This aspect of computer animation may be divided, as usual, in hidden line/surface removal problems and shading, texture mapping, antialiasing .... (Pueyo and Tost 1987a). Hidden lines/surfaces are usually removed using well known techniques (Ridsdale et al. 1986). Both, human body volume and surface models are in most cases rendered after obtaining a polihedral approximation to which Gouraud or Phong smoothing methods are often applied (Fetter 1982; Parke 1972; Magnenat-Thalmann and Thalmann 1987; Badler et al. 1979b). To render volume mod- els (specially for those composed of specific types of quadrics) some specialised algorithms are often employed (Wilmert 1982; Badler et al. 1979b). From the realistic appearance of the human body, no specific references exist once hidden surfaces have been removed. Even though, problems have been enumerated skin and hair rendering are prob- ably the must important. When human faces are visualised using Gouraud or Phong algorithms, its appearance may be too smooth (specially for men) (Magnenat-Thalmann and Thalmann 1987). An interesting feature of a realistic human image would be the possibility of changing the skin's color depending on the feeling of the actor or as a result of an external action. Hair is usually simu- lated by texture mapping but the results are quite unrealistic. A possible solution to this problem would be to model hair using particle systems (Reeves 1983).

6 Conclusions

A review of the principal techniques involved in human body computer animation has been ifer- ated. From our study we conclude that the research in human body modellization leads to the defini- tion of multi-level models, as similar as possible to the real structure of the body, taking into ac- count kinematic and dynamic constraints. Several problems must still be solved such as the efficient modellization of the skin with a deformable, con- tinuous surface, and a good coordination between the three levels of modellization. The different features of each motion control tech- nique advise their combination, as earlier stated (Zeltzer 1985), in order to make use of the advan- tages of all the techniques. Most of the current research in this area is developed in dynamic analy- sis and artificial intelligence in order to obtain more natural movements of the human body inter- acting with the system in a natural way. Facial motion and rendering are also interesting research areas because they have a number of problems still open.

Acknowledgement. We wish to thank Prof. Pere Brunet for his helpful advice and various observations during the elaboration of this paper. This work was supported in part by a grant from the CIRIT of the Generalitat de Catalunya.

References

Armstrong W, Green M (1985) The dynamics of articulated rigid bodies for the purposes of animation. The Visual Com- puter 1(4): 231-240

Armstrong W, Green M, Lake M (1986a) Near real time con- trol of human figure models. Graphics Interface 1986

Armstrong W, Green M (1986b) Dynamics for animation of characters with deformable surfaces. Graphics Interface 1986

Arya K (1986) A functional approach to picture manipulation Comput Graph Forum, vol 3

Badler N, Smoliar S (1979a) Digital representations of human movement. ACM Comput Surv, vol 11. (March 1979)

Badler N, O'Rourke J, Toltzis H (1979b) A spherical represen- tation of a human body for Visualizing Movement. Proc IEEE, vol 67, No 10 (October 1979)

Badler N, O'Rourke J, Kaufman B (1980) Special problems in human movement simulation. Proc Siggraph 80

Benesh R (1956) An introduction to bensh dance notation. A and D Black London

Bergeron P (1985) Techniques for animating characters. Sig- graph 1985, Tutorial notes

Bergeron P, Lachappelle P (1985) Control of facial expressions and body movements in the computer generated animated short Tony de Peltrie

Brewster L, Trivedi S, Tuy H, Udupa J (1984) Interactive surgi- cal planning, IEEE Comput Graph Appl (March 1984)

Burtnik N, Wein M (1976) Interactive skeleton techniques for enhancing motion dynamics in key frame animation. Com- mun ACM, (October 1976)

Cachola D, Shrack G (1986) Modelling and animating 3-D articulated Figures. Graphics Interface 1986

Calvert T, Chapman J, Patla A (1980) The integration of objec- tive and subjective data in the animation of human move- ment. Comput Graph, vol 14, No 3 (July 1980)

Calvert T, Chapman J, Patla A (1982) Aspects of the kinematic simulation of the human movement. IEEE Comput Graph Appl (November 1982)

Catmull R (1975) Computer display of curved surfaces. Pro- ceedings IEEE Conf Comput Graph, Pattern Recog Data Struct

Chuang E, Entis G (1983) A 3-D shaded computer animation step by step. Proc Intergraphics 1983

Dooley M (1982) Anthropometric modeling programs - A sur- vey. IEEE Comput Graph Appl (November 1982)

Drewery K, Tsotsos J (1986) Goal directed animation using english motion commands. Graphics Interface 1986

Ekman P, Friesen W (1978) Facial action coding system. Cos- ulting Psychologist Press, Palo Alto, CA

Eshkol N, Wachmann R (1958) Movement notation. Weiden- feld and Nicholson, London

Fahlander O (1985) Moving picture synthesis at Linkoping University. Comput Graph Forum, vol 4, No 4

Farell E, Yang W, Zapulla R (1985) Animated 3-D CT imaging. IEEE Comput Graph Appl (December 1985)

Fetter W (1982) A progression of human Figures Simulated by computer graphics. IEEE Comput Graph Appl (No- vember 1982)

Ginsberg C, Maxwell D (1983) Graphical marionette. Proc Sig- graph 1983

Girard M, Maciejewski A (1985) Computational modeling for the computer animation of legged figures. Proc Siggraph 1985, vol 19, no 3

Haddad M, Couesson T (1986) Simulation graphique des mou- vements d'un robot. Proc CESTA 1986

Herbison-Evans D (1978) NUDES 2 a numeric utility display- ing ellipsoid solids, version 2. Proc Siggraph 1978

Herbison-Evans D (1982) Real-time animation of human figure drawings with hidden lines omitted. IEEE Comput Graph Appl (November 1982)

Hutchinson A (1970) Labanotation. Theater Arts Book, New York

Kingsley E, Schofield A, Case K (1981) SAMMIE a computer aid for Man-Machine Modelling. Proc Siggraph 1981

Korein V, Badler N (1983) Techniques for generating the goal- directed motions of articulated pictures. IEEE Comput Graph Appl (November 1982)

Laugier C, Pertin-Troccaz J (1986) Couplage d'un syst6me de simulation de robot avec un terminal de synthese d'images. Proc CESTA 1986

Luciani A, Cadoz C (1986) Utilization de mod61es m6caniques et g6ometriques pour la synth6se et le controle d'images anim~es. Proc CESTA 1986

Magnenat-Thalmann N, Thalmann D (1983a) The u s e of high level 3-D graphical types in the MIRA animation system. IEEE Comput Graph Appl 1983

Magnenat-Thalmann N, Thalmann D (1983b) The u s e of 3-D abstract graphical types in computer graphics and anima- tion. Proc Intergraph 1983

263

Magnenat-Thalmann N, Thalmann D (1985a) Computer ani- mation : theory and practice. Computer Science Workbench. Springer-Verlag, Berlin Heidelberg New York Tokyo

Magnenat-Thalmann N, Thalmann D (1985b) Three dimen- sional computer animation: more an evolution problem than a motion problem. IEEE Computer Graph Appl (Oc- tober 1985)

Magnenat-Thalmann N, Thalmann D (1985c) Miranim : an ex- tensible director-oriented system for the animation of realis- tic images. Proc Eurographics 1985

Magnenat-Thalmann N, Thalmann D (1987) Tutorial on com- puter animation. Eurographics Spanish Chapter (June 1987)

Marino G, Morasso P, Zaccaria Z (1985) A language for ani~ mation of actors and objects: NEM. Proc Eurograph 1985

Paras Kaul J (1986) Une simulation informatisfie des mouve- ments du T'ai Chi Ch'uan. Proc CESTA 1986

Parke F (1972) Animation of faces. Proc ACM (annual confer- ence), vol 1

Parke F (1975) A model for human faces that allows speech synchronised animation. Comput Graph, Pergamon Press

Parke F (1982) Parametric models for facial animation. IEEE Comput Graph Appl (November 1982)

Platt S, Badler N (1981) Animating facial expessions. Comput Graph, vol 15, no 3 (August 1981)

Phong B (1976) Illumination for computer generated pictures Commun ACM, vol 18, no 6 (June 1976)

Pueyo X, Tost D (1987a) A survey of computer animation. Internal research report DMI087. Universitat Potitecnica de Catalunya

Ridsdale G, Hewitt S, Calvert T (1986) The interactive spezifi- cation of human animation. Graphics Interface '86

Reeves W (1981) Inbetweening for computer animation utiliz- ing moving points constraints. Computer Graph, vol 15, no 3 (August 1981)

Reeves W (1983) Particles systems: a technique for modelling a class of fuzzy objects. Proc Siggraph 1983

Reynolds C (1985) Computer animation with scripts and actors. Siggraph 1985, Tutorial Notes

Savage GJ, Officer JM (1978) CHOREO an interactive com- puter model for dance. Int 1 J Man-Machine Studies, vol 10

Smoliar S, Weber L (1977) Using the computer for a semantic representation of Lananotation. In: Lusignan S (ed) Com- puting and the humanities. North JS University of Waterloo press

Steketee S, Badler N (1985) Parametric keyframe interpolation incorporating kinetic adjustment and phrasing control. Proc Siggraph 1985, vol 19, no 3

Thalmann D, Magnenat-Thalmann N (1986) Artificial Intelli- gence in three-dimensional computer animation. Comput Graph Forum, vol 5, no 4 (December 1986)

Wilheims J, Barsky B (I 985) Using dynamic analysis to animate articulated bodies such as humans and robots. Graphics Interface 1985

Wilheims J (1986) Vyria: a motion control editor for kinematic and dynamic animation. Graphics Interface 1986

Willmert K (1982) Visualizing human body motion simulations. IEEE Comput Graph Appl (November 1982)

Zeltzer D (1982) Motor control techniques for figure animation. IEEE Comput Graph Appl (November 1982)

Zeltzer D (1985) Towards an integrated view of 3-D computer animation. Graphics Interface 1985

264


Recommended