TUTORIAL
MUSCULOSKELETAL SIMULATION : FROM MOTION CAPTURE TO MUSCULAR ACTIVITY IN LOWER LIMB MODELS
Nicolas Pronost and Anders Sandholm
Musculoskeletal simulation ? What is it ?
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
2
Musculoskeletal simulation ? What is it ?
Henry Gray, Anatomy of the human body, 1918
Musculo
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
3
Musculoskeletal simulation ? What is it ?
Sylvia S. Blemker, Stanford University, 2006
Musculo
Human anatomy MUSCULOSKELETAL SIMULATION
Musculoskeletal representation
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
4
Musculoskeletal simulation ? What is it ?
OpenSim, University of Stanford
Musculo
Human anatomy
Musculoskeletal representation
MUSCULOSKELETAL SIMULATION
TUTORIAL
Action lines
– 3DPH WORKSHOP – 2009.11.29
5
Musculoskeletal simulation ? What is it ? Musculo Skeletal
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
6
Musculoskeletal simulation ? What is it ? Musculo Skeletal
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
7
Musculoskeletal simulation ? pelvis
What is it ? Musculo Skeletal
l_hip
r_hip
vl2
l_knee
r_knee
vl3
l_ankle
r_ankle
vt4
l_subtalar
r_subtalar
l_mid_foot
r_mid_foot
l_toe
r_toe
Segments connected by joints and hierarchically organized
vt5 r_clav
vt6
r_hand
head_top l_hand
Rigid bodies with mass, inertia matrix and CoM
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
8
Musculoskeletal simulation ? What is it ? Musculo Skeletal Simulation
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
9
Musculoskeletal simulation ? What is it ? Musculo Skeletal Simulation means analysis
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
10
Musculoskeletal simulation ? What for ?
3DAH Marie Curie Project
OpenSim, University of Stanford
Analyze athletic performance
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
11
Musculoskeletal simulation ? What for ?
AnyBody Technology, Aalborg University
Analyze athletic performance Design ergonomically safe environments
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
12
Musculoskeletal simulation ? What for ?
3DAH Marie Curie Project
OpenSim, University of Stanford
Analyze athletic performance Design ergonomically safe environments Understand and/or treat movement disorders
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
13
Musculoskeletal simulation ? What you do with ?
Visualize complex movement patterns Test “what if” scenario Estimate data difficult to measure Identify cause-effect relationships
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
14
Outlines of the tutorial Objective : To perform a musculoskeletal simulation from A to … V
Acquisition of the data Definition of the model Inverse Kinematics solving Muscular activation estimation Validation of the simulation
Extra features
How to create a model ? Interactions with medical imaging Towards more visualizations Simulating tendon transfer surgery MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
15
Context Tools OpenSim
Open-source musculoskeletal simulation platform Based on SimTK (biological dynamics) Performs SCALE, IK, ID, RRA, CMC and FD Provided with validated musculoskeletal models GUI and command line based
Subject specific data Motion capture (crouch) with ground reaction forces EMG signals
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
16
STEP 1 : ACQUISITION OF THE DATA
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
17
Acquisition of the data
(1/3)
Motion capture
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
C. Nester, University of Salford, 2007
QUALYSIS
QUALYSIS
VICON
QUALYSIS
3D position of anatomical landmarks over time Skin markers vs. clusters vs. bone pins
18
Acquisition of the data
(1/3)
Motion capture
3DAH Marie Curie Project
3D position of anatomical landmarks over time Skin markers vs. clusters vs. bone pins
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
19
Acquisition of the data
(2/3)
Ground reaction forces
AMTI
6D (force + moment) kinetics reaction of the body To solve the inverse dynamics analysis (through the Newton’s laws of motion)
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
20
Acquisition of the data
(3/3)
Electromyography (EMG) signals
NORAXON
3DAH Marie Curie Project
As muscles contract, volt level electrical signals are created within the muscle that may be measured from the surface of the body
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
21
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
22
STEP 2 : DEFINING A MODEL
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
23
Loading a model
Start OpenSim Menu FILE >> Open Model… Select /TutorialData/GenericModel.osim Manipulate Menu bar, 3D view, Coordinates and Navigator panels
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
24
Scaling the model – Step 1 Scale factors are applied from ratios between markers distances in model and in mocap
Original model
Standing pose
MUSCULOSKELETAL SIMULATION
TUTORIAL
Scaled model
– 3DPH WORKSHOP – 2009.11.29
25
Scaling the model – Step 2 The virtual markers are moved to match the positions of the experimental markers
Scaled model
Standing pose
MUSCULOSKELETAL SIMULATION
TUTORIAL
Subject model
– 3DPH WORKSHOP – 2009.11.29
26
Scaling the model
Menu Tools >> Scale Model… Settings >> Load Settings… Select /TutorialData/Setup_SCALE.xml Run then Close
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
27
STEP 3 : INVERSE KINEMATICS
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
28
Inverse Kinematics Goal : to find the joint angles of the model that best reproduce the experimental kinematics of the subject’s motion Weighted least squares optimization solver with the goal of minimizing marker errors
q = joint angles , xiexp = experimental position of marker i xi(q) = virtual position of marker i
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
29
Inverse Kinematics
Menu Tools >> Inverse Kinematics… Settings >> Load Settings… Select /TutorialData/Setup_IK.xml Run then Close
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
30
STEP 4 : MUSCULAR ACTIVATION ESTIMATION
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
31
Muscular activation estimation Residual Reduction Algorithm (RRA)
OpenSim, University of Stanford
Dynamics inconsistency due to errors in kinematics and kinetics measurements and in rigid body modeling Additional “residual” forces and moments are added F + Fresidual = m . a Modification of the kinematics and the CoM to reduce Fresidual without significantly altering the simulation
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
32
OpenSim, University of Stanford
Effect of reducing residuals
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
33
Muscular activation estimation Computed Muscle Control (CMC) To compute a set of muscle excitations tracking the desired kinematics PD control law defines the desired accelerations Static optimization distributes the loads across actuators Forward dynamics conducts the simulation advancing in time Repeated until time is advanced to dt OpenSim, University of Stanford
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
34
Muscular activation estimation
Menu Tools >> Computed Muscle Control… Settings >> Load Settings… Select /TutorialData/Setup_RRA.xml Run then Close
Menu Tools >> Computed Muscle Control… Settings >> Load Settings… Select /TutorialData/Setup_CMC.xml Run then Close
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
35
STEP 5 : VALIDATION OF THE SIMULATION
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
36
Validation of the simulation Comparison against experimental data : EMG
right vastus medialis crouch motion
right soleus crouch motion
muscle activation from simulation MUSCULOSKELETAL SIMULATION
TUTORIAL
raw EMG
– 3DPH WORKSHOP – 2009.11.29
37
Post processing of EMG Electrical potential generated by muscle cells Measured in volt, about 90mV Signal need to be post–processed Noise Cross reading from other muscles Rectified
Filtering Box filtering
Can cancel out “real” signal
Kalman filter/smoother
More computational intense
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
38
Post processing of EMG
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
39
Simulation vs. EMG
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
40
HOW TO CREATE A MODEL ?
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
41
How to create a model ? We need Palpable bony landmarks 3D position (from mocap), definition of a coordinate system
Body parts Moment of inertia, mass, position of center of mass
The joints DoF, axis and center of rotation
Muscle and ligament attachment sites Origin and insertion (and via points) positions, fiber and tendon lengths, mass, pennation angle…
Bony constraints Warping points and bony contours
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
42
Example Klein Horsman dataset University of Twente, The Netherland [Klein Horsman, Koopman, Van der Helm, Poliacu Prosé, Veeger. Morphological muscle and joint parameters for musculoskeletal modelling of the lower limb, Clinical Biomechanics (22), pp 239-247, 2007]
Measurements performed on a right lower extremity of a male cadaver (age 77, height 1.74m, weight 105kg)
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
43
Datasets
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
44
Datasets 21 markers 4 body parts pelvis, femur, tibia, foot
58 muscles from 163 action lines 5 joints hip, knee, femur-patella, ankle subtalar
2 wrapping constraints Gastrocnemius around femur condyle Iliopsoas around the pelvis
104 via points MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
45
Validation of the model For musculoskeletal simulation use Technical part of formatting the data Compare simulation results with same motion and previous models experimental data (EMG)
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
46
INTERACTION WITH MEDICAL IMAGING
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
47
Interaction with medical imaging Benefit from the intensive use of medical images to create and validate models DT-MRI + fiber tracking
High resolution of joints
Cross sectional long-leg
Dynamic MRI MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
48
Interaction with medical imaging Benefit from the intensive use of medical images to create and validate models and simulations DT-MRI + fiber tracking
Fiber directions in model
High resolution of joints
Attachment points and FE simulations
Cross sectional long-leg
Attachment points and scaling validation
Dynamic MRI
validation of kinematics
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
49
Interaction with medical imaging MRI viewer in OpenSim Alignment using common markers Comparisons between tendon areas and action lines extremities
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
50
TOWARDS SCIENTIFIC VISUALIZATIONS
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
51
Towards more visualizations To help estimating results and tuning settings Scale Variation in factors, displacements in second inner step
IK Error over time or time-independent
CMC Magnitude of activation, reserve or residual forces
Validation Difference between activation and EMG patterns
To integrate external results Nodal displacements or pressure from FE simulations
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
52
Towards more visualizations
MUSCULOSKELETAL SIMULATION
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
53
Thank you for your attention References
3DAH Marie Curie Project EPFL – VRLAB Aalborg University – SMI OpenSim
[email protected]
MUSCULOSKELETAL SIMULATION
http://3dah.miralab.unige.ch http://vrlab.epfl.ch http://www.smi.hst.aau.dk https://simtk.org/home/opensim
[email protected]
TUTORIAL
– 3DPH WORKSHOP – 2009.11.29
54