Physical simulation of muscles and bones
This paper presents a model used to animate a 3D facial mesh. The animation is entirely based on a physical system, thus no artistic skills are required to animate a face through morphing or rigging. The facial expressions are the result of the physical interaction between the different components o...
Збережено в:
Дата: | 2009 |
---|---|
Автори: | , , |
Формат: | Стаття |
Мова: | English |
Опубліковано: |
Інститут фізики напівпровідників імені В.Є. Лашкарьова НАН України
2009
|
Назва видання: | Оптико-електронні інформаційно-енергетичні технології |
Теми: | |
Онлайн доступ: | http://dspace.nbuv.gov.ua/handle/123456789/32234 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Цитувати: | Physical simulation of muscles and bones / Emanuel Dima, Corina Dima, Dan Cristea // Оптико-електронні інформаційно-енергетичні технології. — 2009. — № 1 (17). — С. 160-163. — Бібліогр.: 7 назв. — англ. |
Репозитарії
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-32234 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-322342012-04-15T12:16:47Z Physical simulation of muscles and bones Dima, Emanuel Dima, Corina Cristea, Dan Біомедичні оптико-електронні системи та прилади This paper presents a model used to animate a 3D facial mesh. The animation is entirely based on a physical system, thus no artistic skills are required to animate a face through morphing or rigging. The facial expressions are the result of the physical interaction between the different components of the system. The focus is on creating structures to accurately represent the muscles and the bones. The physical engine is essentially a massspring system, but it also supports some other types of structures, namely pressure cells and rigid bodies. 2009 Article Physical simulation of muscles and bones / Emanuel Dima, Corina Dima, Dan Cristea // Оптико-електронні інформаційно-енергетичні технології. — 2009. — № 1 (17). — С. 160-163. — Бібліогр.: 7 назв. — англ. 1681-7893 http://dspace.nbuv.gov.ua/handle/123456789/32234 en Оптико-електронні інформаційно-енергетичні технології Інститут фізики напівпровідників імені В.Є. Лашкарьова НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
English |
topic |
Біомедичні оптико-електронні системи та прилади Біомедичні оптико-електронні системи та прилади |
spellingShingle |
Біомедичні оптико-електронні системи та прилади Біомедичні оптико-електронні системи та прилади Dima, Emanuel Dima, Corina Cristea, Dan Physical simulation of muscles and bones Оптико-електронні інформаційно-енергетичні технології |
description |
This paper presents a model used to animate a 3D facial mesh. The animation is entirely based on a physical system, thus no artistic skills are required to animate a face through morphing or rigging. The facial expressions are the result of the physical interaction between the different components of the system. The focus is on creating structures to accurately represent the muscles and the bones. The physical engine is essentially a massspring system, but it also supports some other types of structures, namely pressure cells and rigid bodies. |
format |
Article |
author |
Dima, Emanuel Dima, Corina Cristea, Dan |
author_facet |
Dima, Emanuel Dima, Corina Cristea, Dan |
author_sort |
Dima, Emanuel |
title |
Physical simulation of muscles and bones |
title_short |
Physical simulation of muscles and bones |
title_full |
Physical simulation of muscles and bones |
title_fullStr |
Physical simulation of muscles and bones |
title_full_unstemmed |
Physical simulation of muscles and bones |
title_sort |
physical simulation of muscles and bones |
publisher |
Інститут фізики напівпровідників імені В.Є. Лашкарьова НАН України |
publishDate |
2009 |
topic_facet |
Біомедичні оптико-електронні системи та прилади |
url |
http://dspace.nbuv.gov.ua/handle/123456789/32234 |
citation_txt |
Physical simulation of muscles and bones / Emanuel Dima, Corina Dima, Dan Cristea // Оптико-електронні інформаційно-енергетичні технології. — 2009. — № 1 (17). — С. 160-163. — Бібліогр.: 7 назв. — англ. |
series |
Оптико-електронні інформаційно-енергетичні технології |
work_keys_str_mv |
AT dimaemanuel physicalsimulationofmusclesandbones AT dimacorina physicalsimulationofmusclesandbones AT cristeadan physicalsimulationofmusclesandbones |
first_indexed |
2025-07-03T12:45:45Z |
last_indexed |
2025-07-03T12:45:45Z |
_version_ |
1836629880907759616 |
fulltext |
5
EMANUEL DIMA
a
, CORINA DIMA
a
, DAN CRISTEA
a, b
PHYSICAL SIMULATION OF MUSCLES AND BONES
a
”Al. I. Cuza” University of Iaşi,
Faculty of Computer Science,
16, General Berthlot street, Iasi, Romania,
E-mail: dimae, gvrinceanu@info.uaic.ro
b
Romanian Academy – the Iasi branch,
Institute for Computer Science,
16, General Berthlot street, Iasi, Romania,
E-mail: dcristea@info.uaic.ro
Abstract. This paper presents a model used to animate a 3D facial mesh. The animation is entirely based on a
physical system, thus no artistic skills are required to animate a face through morphing or rigging. The facial
expressions are the result of the physical interaction between the different components of the system. The focus is
on creating structures to accurately represent the muscles and the bones. The physical engine is essentially a mass-
spring system, but it also supports some other types of structures, namely pressure cells and rigid bodies.
Keywords: 3D model, mass-spring system, animation.
INTRODUCTION
Creating realistic facial animations has always been a challenge in computer graphics. Traditionally,
animating a human-like character is considered a difficult task, since it requires a lot of talent and modeling
experience. We propose an anatomically based approach to the facial animation problem. This approach gives the
animator the possibility to control the facial expressions of the character using the muscles defined in the system. The
muscles are connected to each other, to the skin and to the skull. Their contraction induces the movement of the skin,
thus creating facial expressions of the avatar.
The goal of the project is to create a three-dimensional model of a human face, able to convey emotions
resembling in detail to human-like natural expressions to the users who interact with it. When created, an emotional
language will permit the translation of the parameters of the system into generally known emotions.
The possible applications of such a system are countless: creating avatars for different interactive
applications, that are able to read a text or carry a conversation; create 3D replicas of human beings and use them in
teleconferencing (so only the audio signal and the captured parameters are sent through the network); create artificial
tutors, that can teach lessons and show emotional feedback (nod their heads, gaze at the students, approve or
disapprove their actions); medical applications on which to study the new look of expressions after facial or mandible
surgeries and, of course, creating computer-generated characters that play a part in video games or movies.
This paper focuses on the mass-spring system that we used as a physical framework, and on the structure and
dynamics of the muscles and the bones. It is organized as follows: first, we make a tour among related work then we
describe the physical system. The next sections present the bone and muscle models and the last section gives the
conclusions.
RELATED WORK
There are different approaches to creating facial animations. They vary in the means they employ for
obtaining the animation and in the final result. The explanation for such a wide variety of animation techniques
is simple: creating state-of-the-art facial animation is difficult and expensive, both from an artistic and
computational point of view. Very complex animations, which take into consideration accurate simulation of
different anatomical parts of the human head usually involve huge computational load and could be cost
prohibitive. Therefore, most systems are focused on a specific goal and they include into the model only the
minimum resources that allow them to fulfill the goals, thus minimizing costs.
The most widely used method for creating facial animations is the morphing method. It implies having a
set of facial expressions of the model and a set of feature points. The animation is obtained by interpolating the
positions of these points between one facial expression and the other.
There is a standard for defining the facial expressions, called FACS (Facial Action Coding System).
EMANUEL DIMA, CORINA DIMA, DAN CRISTEA, 2009
ПРИНЦИПОВІ КОНЦЕПЦІЇ ТА СТРУКТУРУВАННЯ РІЗНИХ РІВНІВ ОСВІТИ З ОПТИКО-ЕЛЕКТРОННИХ ІНФОРМАЦІЙНО-
ЕНЕРГЕТИЧНИХ ТЕХНОЛОГІЙ
6
Paul Eckman developed it in 1978 [1]. FACS proposes a mapping between different movements and
contractions of the facial muscles and the name of the resulting facial expression. The state of several muscles at
a certain point in time is labeled as an action unit (AU). Each of these action units corresponds to a visible
change in the facial expression of the model. The original system included 46 AU. An example is AU 26, lid
tightener, created with the help of the Orbicularis Oris and Pars Palebralis muscles.
Nedel and Thalmann [2] proposed a simulation system where the forces inside a muscle are described
using the concept of an action line. An action line connects the origin of the muscle to its insertion point. The
action lines follow the external shape of the muscle. To add volume to the muscle, the action lines are
subsequently connected horizontally, using equally spaced ellipses. The resulting lattice is introduced into a
mass-spring system, and particles are considered at the intersections between the action lines and the horizontal
ellipses. To preserve the volume of the muscle during the contraction some extra springs are added, called
angular springs. For each pair of original springs, x0x1 and x1x2, two extra springs are added: one that connects
the ends of the original springs, x0x2, and one that connects the particle x1 with the middle of the x0x2 spring. The
interior of the muscle in not modeled.
Another muscular model was the one used by Kähler [3]. In his approach, a muscle is represented as a
bundle of fibers, each with a piecewise linear polygon as a control structure. Geometric shapes are attached to
the segments of this control polygon. The fibers can form sheet muscles by grouping, while the union of the
geometric shapes attached to the segments represents the muscle surface. This model supports two types of
contraction, a linear muscle contraction and a sphincter muscle contraction.
THE PHYSICAL SYSTEM
In order to simulate movement of the skin and the muscles in a physically correct manner, we need a system of
objects that observe some clearly defined physical laws. Our choice was to implement a mass-spring system, that is, a
system of mass particles connected by springs that observe Newton’s laws of motion and Hooke’s law of elasticity.
Each particle in the system has an identity, a position in a three-dimensional space (x, y, z), a mass (m) and a
velocity (v). The fact that the particles have identity is not directly used, but it implies that two particles with the same
position and mass are actually distinct. The mass of all muscle particles is the same, a parameter of the system; at the
initialization of the system, these masses as well as their initial positions have to be specified. The positions of the particles
are modified by the system during the animation, according to the laws of motion that take into account the velocity.
The springs (considered ideal) are characterized by an elasticity constant (k), a default length (lr) and an actual
length (l). Each spring connects exactly two particles. The elasticity constant and the default length are parameters of the
spring; the actual length is computed as the distance between the two particles. A spring acts upon its particles with an
elastic force proportional to the elasticity constant and the difference between its default and its actual length.
Although the model allows for a particle to be free (not connected to any spring), in our model all particles are
bound to one or more springs. Our model also allows two particles to be connected by more than one spring.
The mass-spring system has an initial default state, as defined by the current position of all the particles. The
system advances from one state to another according to the mathematical expressions of the physical laws that it
emulates. The new state is usually computed using numerical integration methods.
We use the velocity Verlet method [4], as it provides a good trade-off between speed and accuracy. It is a
second order integrator, usually used in molecular dynamics simulations, faster than the Runge-Kutta method [5] and
more accurate than the Euler integrator [5]. Moreover, it simplifies the process of introducing constraints in the movement
of the particles.
In our implementation, the advancement of the system from one state to another is called a tick. The actual tick
is detailed in two steps: first, all the elastic forces, created by the springs, are computed. At the end of this step, for each
particle, we know the net force of all the springs connected to that particle.
The second step consists of computing the actual movement of each particle, according to the Newton’s
equations of motion. The velocity of a particle is reduced by a percent representing the drag of the system. The
acceleration is computed using Newton's second law, as the ratio between the net force that acts upon the particle and the
mass of the particle.
In reality, to model realistically organic tissues more than simple mass-springs are necessary. For instance, when
a muscle is contracted, its volume remains approximately constant. Also, bones are rigid objects, and therefore forces
applied to them do not result in their deformation.
The muscle bulging behavior is simulated by the pressure cell model. A pressure cell is the equivalent
of a surface that encloses a volume filled with ideal gas [7]. We use this to simulate the behavior of an
anatomical cell, which maintains its volume disregarding the form that it takes. A gas-filled pressure cell does
not constrain the volume to be perfectly constant, but is a good approximation of it.
The surface of a pressure cell is represented by a triangular tessellation, where the vertices are represented
by particles. This surface should be closed as the volume of the pressure cell is computed based on it.
ПРИНЦИПОВІ КОНЦЕПЦІЇ ТА СТРУКТУРУВАННЯ РІЗНИХ РІВНІВ ОСВІТИ З ОПТИКО-ЕЛЕКТРОННИХ ІНФОРМАЦІЙНО-
ЕНЕРГЕТИЧНИХ ТЕХНОЛОГІЙ
7
The implementation uses the ideal gas law, expressed by the equation PV = nRT. P is the absolute
pressure of the gas, V is the volume of the gas, n is the number of moles of gas, R is the universal gas constant,
and T is the absolute temperature. Because we are simulating an isothermal process, it means that we can
compute the pressure inside a cell like this: P = P0 V0 / V, where P0 is the pressure in the cell in the initial state
(specified by the user), V0 is the initial volume and V is the volume of the cell in the actual state.
Once we know the pressure, we can easily compute the force that acts upon the particles, using the
formula: P = F / A (Pressure P is the force F over the surface area, A).
The bone movements are those of a rigid body. A rigid body consists of a collection of particles that
maintains its shape under rotation and translation. The actual implementation computes the torque (τ - the
rotational force) generated by the forces that act upon every particle in the rigid body. The torque generates a
change in the angular momentum (L) of the rigid, which is proportional to the angular velocity ω. The formula
that we use to find ω is L = I ω, where I is the moment of inertia and can be computed from the masses of the
individual particles [6].
BONE STRUCTURE
The physical structure of the bone is based on a three-dimensional object created in a modeling
application. The object is a mesh, a triangular tessellation of the surface of the bone. For each vertex of this mesh
we create a particle with a specified mass and the position of the vertex. All these particles define a rigid body. A
rigid body does not allow individual movements of its particles. Applying a force upon a particle of the rigid
body moves the whole rigid body. The distances between the particles that pertain to the rigid body do not
change when they interact with the other components of the system. This allows us to move the bone without
deforming its visual appearance, similarly to the way the bones move in reality.
The insertions that connect a bone with a muscle are springs, connecting particles from the rigid body
with the particles that define the muscle. When a muscle is contracted, it acts upon the springs in the insertion
and indirectly upon the bone, inducing its movement. For example, an action like opening the jaw can be
achieved by contracting the platysma muscle under the chin. Since this muscle connects the jaw and the top of
the spine, its contraction induces a rotation of the jaw in the vertical plane (Figure 1).
Fig. 1. Opening the jaw by contracting the platysma
MUSCLE STRUCTURE
Our muscle structure is based on two three-dimensional objects, created with a commercial modeling
application. The first one represents the surface of the muscle, in our case manually modeled based on
anatomical references. The second object is a three-dimensional poly-line that represents the contraction axis of
the muscle, specified by a human modeler. The muscle structure consists of a three-dimensional particle lattice
(particles connected by springs) that fills the inside of the muscle, having a featured subset of springs that are
oriented on the direction of the muscle contraction axis.
The generation process of this lattice starts from the poly-line. We consider several equally spaced
reference points on it. Each such point is contained in a plane that is perpendicular to the contraction axis. This
plane intersects the surface of the muscle, thus generating a planar polygon. The inside of this polygon represents
a muscle cross section that is perpendicular to the contraction axis in the corresponding reference point.
We then consider the cross section with maximum area as the main cross section. This cross section is
filled with a planar lattice of mass particles and springs, actually a tessellation made of equilateral triangles with
the area specified at the initialization. For each of the remaining cross sections, possibly having a different form
than the main one, we build an analogous lattice through a bi-dimensional transformation, keeping constant the
number of particles. Currently this transformation is based on radial similarity around the center of mass of the
cross section: this means that the ratio between the distance from this center to a particle location and the
distance from the center to the polygon outline is constant over all cross sections. Obviously, the lattices from
ПРИНЦИПОВІ КОНЦЕПЦІЇ ТА СТРУКТУРУВАННЯ РІЗНИХ РІВНІВ ОСВІТИ З ОПТИКО-ЕЛЕКТРОННИХ ІНФОРМАЦІЙНО-
ЕНЕРГЕТИЧНИХ ТЕХНОЛОГІЙ
8
the secondary cross sections are not regular anymore: the triangles become distorted.
The final step consists in connecting all the planar lattices through springs. Each cross section has the
same number of particles. Longitudinal springs link two corresponding particles located on consecutive cross
sections. By connecting with springs two triangles of consecutive cross sections a polyhedron is obtained. For
each one of these prisms we create a pressure cell in the physical system, which can be considered as the
equivalent of a muscular cell. Our muscle now consists of a set of cells, which helps keep its volume
approximately constant and generates internal resistance the same way real cells do. A contraction of the muscle,
always taking place on the direction of the poly-line axis, shortens the longitudinal dimension of the polyhedrons
and enlarges the triangles that form their bases. This determines the whole muscle to expand on the direction that
is perpendicular on the contraction, and enhances the realism of its movement (Figure 2).
Fig. 2. a) Relaxed muscle; b) Contracted muscle
CONCLUSIONS AND FUTURE WORK
We presented a physical engine suitable for simulating anatomical entities. The engine is a mass-spring
particle system, with rigid bodies and pressure cells simulation capabilities. The anatomical entities that we
focused on are the bones, modeled by rigid bodies; the muscles, modeled by springs and pressure cells, and the
skin and the insertions, modeled by springs only.
One of the problems in our simulations was the intersection between all these entities. When a muscle
moves it should bulge under it, not start entering the deepest layer of the skin. In the current physical system, the
muscles present such an undesirable behavior. The engine can be improved by adding collision detection and
response capabilities. Thus, some important details of the human mimics would become easy to simulate.
REFERENCES
1. Ekman Paul, Friesen V.Wallace, Hager C. Joseph, Facial Action Coding System Investigator's Guide. A Human Face,
2002.
2. Nedel Porcher Luciana, Thalmann Daniel, Real Time Muscle Deformations Using Mass-Spring Systems. Swiss
Federal Institute of Technology. Proceedings of the Computer Graphics International, 1998.
3. Kähler, K., "A Head Model with Anatomical Structure for Facial Modeling and Animation", Master's Thesis -
[Electronic Resource] – Access mode: http://www.gamasutra.com/education/theses/20050526/Dissertation_Kaehler.pdf.
4. Ercolessi, Furio, “The Verlet Algorithm”, A molecular dynamics primer - [Electronic Resource] – Access mode:
http://www.fisica.uniud.it/~ercolessi/md/md/node21.html.
5. Press, William H., Teukolsky, Saul A., Vetterling, William T., Flannery, Brian P., chap. Integration of Ordinary
Differential Equations in Numerical Recipes in C. The Art of Scientific Computing, second edition, Cambridge
University Press, 1992, pp. 710.
6. Eberly, David H., Game Physics, Elsevier, 2004.
7. Matyka Maciej, Ollila Mark, Pressure Model of Soft Body Simulation, - [Electronic Resource] – Access mode:
http://arxiv.org/pdf/physics/0407003.
Надійшла до редакції 10.01.2009р.
a) b)
|