Equation Chapter 1 Section 1
Trabajo Fin de Grado
Grado en Ingeniería de las Tecnologías Industriales
Implementación del protocolo de Newington
Modificado en OpenSim.
Autor: Gabriel Manuel López Morallón
Tutores: Juana Mayo Núñez y Joaquín Ojeda Granja
Dep. de Ingeniería Mecánica y Fabricación
Escuela Técnica Superior de Ingeniería
Universidad de Sevilla
Sevilla, 2016
II
III
Implementación del protocolo de Newington Modificado en OpenSim.
Trabajo Fin de Grado
Grado en Ingeniería de las Tecnologías Industriales
Implementación del protocolo de Newington
Modificado en OpenSim.
Autor:
Gabriel Manuel López Morallón
Tutores:
Juana Mayo Núñez
Joaquín Ojeda Granja
Departamento de Mecánica y Fabricación
Escuela Técnica Superior de Ingeniería
Universidad de Sevilla
Sevilla, 2016
IV
V
Implementación del protocolo de Newington Modificado en OpenSim.
Trabajo Fin de Grado: Implementación del protocolo de Newington Modificado en OpenSim.
Autor: Gabriel Manuel López Morallón
Tutores: Juana Mayo Núñez y Joaquín Ojeda Granja
El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros:
Presidente:
Vocales:
Secretario:
Acuerdan otorgarle la calificación de:
Sevilla, 2016
El Secretario del Tribunal
VI
VII
Implementación del protocolo de Newington Modificado en OpenSim.
A mi familia, amigos y profesores.
VIII
IX
Implementación del protocolo de Newington Modificado en OpenSim.
Agradecimientos
Aún me cuesta procesar lo rápido que he llegado hasta aquí. De aquel chico que tomó la decisión de
irse de su casa por lo que consideraba que era mejor para su futuro han pasado solo cinco años. Cinco años
llenos de momento increíbles y experiencias que nunca olvidaré y que me han curtido como persona. Por
supuesto ha habido momentos de debilidad, donde las cosas no iban como uno quería, pero esto es la vida y
hay que enfrentarse a estas situaciones, convencerse a uno mismo de que si vale para lo que uno lucha, que no
te equivocaste al tomar la decisión difícil.
No obstante no habría podido estar donde estoy sin todas las personas maravillosas que me
acompañan todos los días y a las que gracias a ellos soy la persona en la que me he convertido. Por ello:
Gracias Mamá por estar siempre ahí, por tus consejos, por tus risas, por tu alegría de vivir, por
preocuparte por mi hasta llegar a ser pesada, por darme más amor del que incluso puedo recibir. Te quiero por
encima de todo, creo que ya lo sabes.
Gracias Papá por enseñarme el camino de la exigencia, por mostrarme que nunca hay que
conformarse, por luchar por ser mejor, por tu liderazgo, por tu forma de ser, por tu sabiduría. Ojalá algún día,
alguien vea en mi lo que yo siento cuanto estoy contigo, alguien al que me gustaría parecerme de mayor. Te
quiero.
Por último pero no menos importante, el pequeño de la familia, mi hermano. Gracias por tus
cipolleces, por nuestros piques, por nuestras peleas de Pressing-Catch. Porque mi vida sin ti no sería lo que es,
porque te quiero también. Que estas líneas te motiven en este camino nuevo que has escogido, que trabajando
se llega al final, que no te rindas. Siempre me tendrás a tu lado pase lo que pase.
Aunque sin ellos no estaría aquí, no podría olvidarme de mi día a día en Sevilla. Las que son mi
segunda y tercera mamá. Mi abuela y mi tita. Gracias de corazón por todo lo que habéis hecho estos años por
mí, por acogerme como a un hijo y tratarme como si fuera tal, por vuestro cariño, por buscar lo mejor para mí
siempre, gracias de corazón por estar ahí, os quiero muchísimo. Ojalá algún día pueda devolveros la mitad de
todo lo que me habéis dado, de verdad.
No obstante, durante la carrera no he estado solo, muchas personas son partícipes de que yo
esté aquí hoy. Algunas de ellas han aparecido recientemente, y me han dado más de lo que hubiese imaginado.
Otras han surgido durante el camino, compañeros de sufrimientos y de alegrías, amigos de verdad. Para todas
las personas que han estado, que han aparecido en mi vida durante esta etapa o han permanecido en ella,
gracias de corazón por todo.
Gabriel Manuel López Morallón
Sevilla, 2016
X
XI
Implementación del protocolo de Newington Modificado en OpenSim.
Resumen
El protocolo de Newington modificado, tal y como refleja el título de este proyecto, consiste en la
colocación de un número específico de marcadores en unas posiciones anatómicas concretas. En particular,
este modelo trabaja con el menor número posible de marcadores necesarios para modelar el cuerpo humano.
Sus usos más conocidos residen en procedimientos desarrollados para, a través de estos marcadores, poder
reconstruir el cuerpo humano y obtener modelos virtuales que simulen el movimiento humano, como es el
caso del Plug In Gait.
En el presente proyecto sin embargo, dicho protocolo se aplica a un modelo de tren inferior
desarrollado en OpenSim, un software de libre adquisisión que permite numerosos estudios del cuerpo
humano. El origen de este estudio reside en un sujeto en particular que hará las funciones de modelo base y el
cual será reconstruido a partir de los datos obtenidos por el Doctor Joaquín Ojeda Granja en los laboratorios de
la Escuela Superior Técnica de Ingeniería de la Universidad de Sevilla.
Una vez nuestro sujeto se encuentre representado en el modelo virtual de OpenSim, mediante la
herramienta de escalado se comprobará si nuestro modelo es satisfactorio. A continuación se plantea el
problema de Cinemática Inversa, mediante el cual se estudiarán los ángulos obtenidos durante un ciclo de
marcha completo. Los resultados obtenidos mediante este programa son verificados y comparados con los
obtenidos a través del protocolo de reconstrucción del cuerpo humano Plug In Gait, el cual, mediante el
método del GOM (Global Optimization Method), establece una serie de restricciones cinemáticas entre los
distintos segmentos de nuestro modelo.
XII
XIII
Implementación del protocolo de Newington Modificado en OpenSim.
Prefacio
La motivación de este proyecto, como se describe en el título del mismo, es la implementación del
protocolo de Newington modificado en el software de simulación del movimiento humano OpenSim,
desarrollado por la Universidad de Stanford en 2006. Esta tecnología se dirige fundamentalmente a cuestiones
relacionadas con la ciencia del movimiento y se centra en áreas críticas de la rehabilitación medicinal. Lo que
se pretende conseguir posteriormente es la comparación de los resultados cinemáticos de un ciclo de marcha
completo mediante este protocolo de reconstrucción a través de Matlab y de OpenSim.
Si el resultado de este proyecto fuera satisfactorio, y ambos resultados fueran similares, facilitaría la
obtención de resultados posteriores, y con ellos, una posible disminución del tiempo de respuesta al
tratamiento que debería administrarse al sujeto en cuestión. OpenSim nos da la oportunidad de trabajar con
una interfaz gráfica que sirve de apoyo a las evaluaciones que se pueden llevar a cabo en los diferentes
estudios anatómicos corporales. Además cuenta de reconocimiento internacional y al tratarse de un software
libre permite la interacción de usuarios de todo el mundo, facilitando respuestas y soluciones a los problemas
que se platean.
1
Implementación del protocolo de Newington Modificado en OpenSim.
Índice
Agradecimientos IX
Resumen XI
Prefacio XIII
Índice 1
Índice de Tablas 3
Índice de Figuras 5
1 Introducción. Antecedentes Históricos. 7 1.1. Historia de la Marcha Humana (Human Gait) 8 1.2. Historia de los Métodos de Análisis 10
2 Objetivos del proyecto 13
3 El programa: OpenSim 15 3.1. Capacidades 16 3.2. Resumen del proceso de trabajo de OpenSim 16
3.2.1 Importación de datos experimentales 17 3.2.2 Escalado 17 3.2.3 El Problema Inverso 17 3.2.4 Cinemática Inversa 18 3.2.5 Dinámica Inversa 18
4 Modelo original 19 4.1. Cambio de coordenadas 23
4.1.1 Adquisición de datos 25 4.2. Cálculo de las coordenadas de OpenSim 27
4.2.1 Singularidad de la Rodilla 31
5 Escalado 35 5.1. Disposición de los archivos: 36 5.2. Funcionamiento del Escalado 37
5.2.1 Escalado basado en mediciones 38 5.3. Funcionamiento del Escalado (Scale Tool) 39
5.3.1 Joaquin3_Setup_Scale.xml 40
6 Cinemática Inversa 43 6.1. Disposición de archivos 44 6.2. Cambios en el código. Definición de articulaciones. 44 6.3. Funcionamiento de la Cinemática Inversa 46
6.3.1 Error en los marcadores 46 6.3.2 Error en las coordenadas 47 6.3.3 Ecuación ponderada de mínimos cuadrados 47 6.3.4 Como usar la herramienta de la Cinemática 48
2
7 Resultados 53
8 Conclusiones y Trabajos Futuros 65
9 Bibliografía 67
10 Anexo A 69
3
Implementación del protocolo de Newington Modificado en OpenSim.
ÍNDICE DE TABLAS
Tabla 1 Definición de la localización anatómica del conjunto de marcadores. (Ojeda Granja, 2012) 21
Tabla 2 Coordenadas de los marcadores en OpenSim. 29
Tabla 3 Coordenadas de los centros de las articulaciones en OpenSim. 29
Tabla 4 Factores de Escalado para los distintos segmentos. 42
4
5
Implementación del protocolo de Newington Modificado en OpenSim.
ÍNDICE DE FIGURAS
Figura 1.1 Motu Animalium, Borelli 1680 8
Figura 1.2 Ciclo completo de la marcha humana. 9
Figura 1.3 Fotografía secuencial, Muybridge 10
Figura 3.1 Esquema del Problema Inverso resuelto en OpenSim 17
Figura 3.2 Coincidencia de los marcadores experimentales con los marcadores del modelo durante la toma
dinámica. 18
Figura 4.1 Posición anatómica de los marcadores en el cuerpo humano. 20
Figura 4.2 Modelo de trabajo de OpenSim. 22
Figura 4.3 Referencias en las articulaciones en OpenSim 23
Figura 4.4 Orientación de los ejes de Coordenadas en Vicon y OpenSim. 23
Figura 4.5 Orientación de los ejes para el pie en Vicon y en OpenSim. 24
Figura 4.6 Información contenida en el fichero Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat en
Matlab. 25
Figura 4.7 Información obtenida para la articulación de la rodilla derecha 26
Figura 4.8 Información del archivo de Matlab correspondiente a Model >> markerMODEL >> PEL 26
Figura 4.9 Localización de los centros de masas y articulaciones por defecto en el modelo de OpenSim. 27
Figura 4.10 Cálculo de la distancia del centro de coordenadas al marcador 28
Figura 4.11 Localización de las coordenadas en el fichero Joaquin3_MarkerSet.xml. 30
Figura 4.12 Configuración de los marcadores definidos en el en el archivo MarketSet. 30
Figura 4.13 Localización de las coordenadas en archivo Joaquin3_simbody.osim. 31
Figura 4.14 Situación de la rodilla por defecto en la configuración de OpenSim. 31
Figura 4.15 Situación por defecto de la rodilla en OpenSim. 32
Figura 4.16 Situación modificada de los grados de libertad de la rodilla. 32
Figura 4.17 Situación de los marcadores y centros de las articulaciones para nuestro modelo. 33
Figura 4.18 Correspondencia de los marcadores virtuales con los marcadores experimentales 34
Figura 5.1 Archivos de Entrada y Salida en el Escalado 35
Figura 5.2: Marcadores experimentales y virtuales. 37
Figura 5.3 Ventana inicial de la herramienta de Escalado (Scale Tool) 39
Figura 5.4 Scale Tool con los archivos necesarios para el Escalado. 40
Figura 5.5 Definición del par de marcadores que definen el segmento <thigh> 41
Figura 5.6 Resumen del procedimiento de Escalo realizado por OpenSim. 41
Figura 6.1 Archivos de Entrada y Salida en la Cinemática Inversa. 43
6
Figura 6.2 Definición del grado de libertad de rotación respecto al eje Y (Rotación de la Rodilla) 45
Figura 6.3 Características del grado de libertad 45
Figura 6.4 Definición de la articulación <subtalar_r>. 46
Figura 6.5. Ventana de la herramienta que realiza la Cinemática Inversa 48
Figura 6.6. Ventana de la Inverse Kinematics Tool tras ejecutarse el archivo de configuración 49
Figura 6.7 Representación del Ciclo de Marcha en OpenSim. 50
Figura 6.8 Resultado de la Resolución de la Cinemática Inversa 50
Figura 7.1 Ángulos de flexión, abducción y rotación de la Cadera Derecha durante un ciclo de marcha. 53
Figura 7.2 Ángulos de flexión, abducción y rotación de la Rodilla Derecha durante un ciclo de marcha. 54
Figura 7.3 Ángulos de flexión, abducción y rotación del Tobillo Derecho durante un ciclo de marcha. 55
Figura 7.4 Ángulos de flexión, abducción y rotación de la Cadera Izquierda durante un ciclo de marcha.
56
Figura 7.5Ángulos de flexión, abducción y rotación de la Rodilla Izquierda durante un ciclo de marcha. 57
Figura 7.6 Ángulos de flexión, abducción y rotación del Tobillo Izquierdo durante un ciclo de marcha. 58
Figura 7.7 Ángulos de flexión para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un
ciclo de marcha. 59
Figura 7.8 Ángulos de abducción para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un
ciclo de marcha. 60
Figura 7.9 Ángulos de rotación para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un
ciclo de marcha. 61
Figura 7.10 Ángulos de flexión para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante un
ciclo de marcha. 62
Figura 7.11 Ángulos de abducción para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante
un ciclo de marcha. 63
Figura 7.12 Ángulos de rotación para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante un
ciclo de marcha. 64
7
Implementación del protocolo de Newington Modificado en OpenSim.
L
1 INTRODUCCIÓN. ANTECEDENTES HISTÓRICOS.
A Biomecánica es la ciencia que estudia el movimiento de los seres vivos y las fuerzas que
intervienen . Mediante el análisis del movimiento humano se obtiene información cuantitativa sobre
la mecánica del sistema músculo-esquelético humano durante la ejecución de un determinado
movimiento o actividad física.
Los orígenes de la biomecánica se remontan a la época griega, aunque el primer tratado científico
sobre la Biomecánica aparece en el año 1680 con la publicación de De Motu Animalium por Borelli (Figura 1).
En ella, se estudia el movimiento del ser humano y de los animales aplicando el principio de la palanca,
además de describir la relación entre el sistema muscular y el esquelético. Borelli relató la longitud y la
variación de volumen que los músculos experimentan durante el movimiento, no solo en los seres humanos,
sino también en mamíferos, peces, aves e insectos. Hoy en día es considerado como el padre de la
Biomecánica.
A man who stops advertising to save money is like a
man who stops a clock to save time.
- Henry Ford -
8
Figura 1.1 Motu Animalium, Borelli 1680
En la actualidad, la Biomecánica se trata de una ciencia emergente que está experimentando un rápido
desarrollo debido a sus múltiples aplicaciones. Para tratar tan variados campos, esta disciplina se sirve de
conocimientos propios de la ingeniería, mecánica, anatomía, fisiología… etc.
Uno de los principales intereses de la Biomecánica, como se ha comentado anteriormente, reside en el
estudio del movimiento de los distintos segmentos que componen el cuerpo humano, así como su movimiento
global, las fuerzas mecánicas que realizan los músculos para ello, los pares que se producen en las
articulaciones y la energía que se consume a lo largo del movimiento.
Dentro de los campos que abarca la Biomecánica en el presente trabajo se tratará temas relacionados
con el estudio de la marcha humana, analizando resultados de protocolos de reconstrucción del cuerpo humano
a través de nuevas herramientas.
1.1. HISTORIA DE LA MARCHA HUMANA (HUMAN GAIT)
La marcha humana es un fenómeno complejo para cuya descripción se requiere no sólo del
conocimiento de los movimientos cíclicos que ejecuta el organismo, sino también de cuestiones tales como las
fuerzas de reacción entre los pies y el suelo, las fuerzas y momentos articulares, los requerimientos energéticos
y los mecanismos de optimización adoptados, así como la secuencia e intensidad de actuación de los diferentes
músculos involucrados.
La posición erguida del ser humano es intrínsecamente inestable, al contrario de lo que ocurre con los
mamíferos cuadrúpedos. Ello exige un mayor control neuronal y condiciona su desarrollo completo a un largo
proceso de aprendizaje (hasta 7-9 años) (Beck, 1981). Durante los primeros años de su infancia, el ser humano
aprende a caminar de forma natural, experimentando con su cuerpo hasta alcanzar un estilo propio. Pese al
carácter individual de este proceso, las semejanzas entre sujetos distintos son tales que puede hablarse de un
9
Implementación del protocolo de Newington Modificado en OpenSim.
patrón característico de marcha humana normal, así como de las modificaciones que dicho patrón experimenta
debido a la influencia de diversos factores, intrínsecos o extrínsecos al sujeto, y, sobretodo, bajo determinadas
situaciones patológicas o de déficit funcional (Murray, 1964, 1969, 1970, 1971, 1984 y 1985).
En primer lugar, factores como la edad, el sexo, la altura y la complexión del sujeto modifican
significativamente su patrón normal de marcha (Merrifield, 1971). El estado de ánimo influye igualmente
sobre él. Puede decirse que la manera de andar de cada individuo es intrínseca a él, como si de sus facciones o
de sus huellas dactilares se tratase.
En segundo lugar, existen otros factores, ajenos o externos al individuo, que repercuten de manera
muy apreciable en la marcha. La velocidad de progresión es uno de los más importantes (Andriacchi et al.,
1977; Winter, 1991), sin olvidar el tipo de suelo, el calzado (peso, altura del tacón, etc.), la inclinación de la
superficie, la carga acarreada por el sujeto, etc.
Por último, la marcha humana puede verse afectada por numerosas patologías incidentes sobre
cualquiera de los sistemas en ella involucrados. De ahí la importancia de su estudio en traumatología, cirugía
ortopédica, rehabilitación, otorrinolaringología y neurología. El análisis de la marcha de un individuo ayuda al
diagnóstico de patologías del aparato locomotor, del oído interno y del sistema nervioso central, siendo
también aplicable a la evaluación y seguimiento de tratamientos de dichas patologías así como, en su caso, a su
rehabilitación posterior (Messier, 1992).
Figura 1.2 Ciclo completo de la marcha humana.
Los estudios más clásicos correspondientes a la marcha humana fueron realizados en el siglo pasado,
poseyendo en la actualidad un valor testimonial bibliográfico conseguido con recientes reediciones de los
mismos (Braune y Fischer, 1987; Weber y Weber, 1992). Sin embargo, los estudios más extensos y
estructurados sobre la marcha humana, tanto normal como patológica han sido realizados por Inman (1981),
Gage (1990), Winter (1991), Perry (1992) y Whittle (1992), estudio que han servido de base para la
presentación sobre la marcha de sujetos tanto normales como sujetos con patología.
El análisis de la marcha es la medida, descripción y evolución de aquellos parámetros pensados para
caracterizar la locomoción humana. A través de estos análisis, datos cinemáticos y dinámicos son adquiridos y
analizados para proporcionar información que describa características fundamentales y que finalmente es
interpretada por médicos especialistas para realizar una evaluación. La aplicación clínica del análisis de la
marcha permite al médico evaluar cuantitativamente el grado en el que se ve afectado por el desorden ya
diagnosticado, por tanto dicho análisis no es una herramienta de diagnóstico, sino una herramienta de
10
evaluación, la cual se pretende mejorar en el presente proyecto. Ejemplos de la actual utilización del análisis
clínico de la marcha incluyen: la evolución de la locomoción en casos de parálisis cerebral para ayudar en la
determinación de una operación quirúrgica u ortopédica apropiada, la evaluación del desarrollo de desórdenes
neuromusculares como el Parkinson o distrofias musculares, así como la cuantificación de los efectos de
operaciones quirúrgicas a través de la comparación pre y postoperatoria del sujeto.
1.2. HISTORIA DE LOS MÉTODOS DE ANÁLISIS
Con la invención de la fotografía se produjeron grandes avances en el estudio de este ámbito. Un
ejemplo de ello es el caso del fotógrafo inglés Eadweard Muybridge, el cual ideó la forma de hacer
rápidamente numerosas fotografías seguidas colocando varias cámaras que enfocaban un objeto en
movimiento y que accionaría una tras otra, con un intervalo de tiempo determinado, sujetando al mismo
tiempo todas las cuerdas de dichas cámaras. De este modo obtuvo una sucesión de fotografías secuencial que
permitió observar detalles del movimiento que hasta el momento no habían podido ser apreciables.
Posteriormente, realizó numerosos experimentos que le permitieron tomar más de 100.000
exposiciones de personas y animales en movimiento. En “Animal Locomotion” describe las técnicas de la
fotografía aplicadas al análisis de la marcha humana.
Figura 1.3 Fotografía secuencial, Muybridge
Tiempo después, un médico, fisiólogo e inventor francés llamado Marey, perfeccionó en 1882 la
“escopeta fotográfica” inventada por Jules Janssen ochos años antes, para solventar la falta de precisión de
Muybridge a la hora de conseguir imágenes de pájaros. Sin embargo pronto abandonó su escopeta y en ese
mismo año inventó una cámara de placa fija cronomatográfica que colocó dentro de una cabina de madera, la
cual corría sobre raíles. A este invento lo denominó el “ferrocarril fotográfico”, que se deslizaba paralelamente
11
Implementación del protocolo de Newington Modificado en OpenSim.
al sujeto que destacaba sobre una pantalla negra. Con esta técnica obtuvo diagramas que reflejaban las
trayectorias de la cabeza, el hombro, la rodilla y el tobillo en el plano sagital. Para realizar dicho experimento,
solía vestir a las personas con trajes negros ajustados y sobre ellos marcaba unas líneas blancas para seguir
mejor los movimientos de las distintas partes del cuerpo en cada fase del ciclo de la marcha. Ya en 1873,
empleó un sistema para el estudio de la marcha, registrando las reacciones de apoyo y la duración del contacto
pie-suelo mediante métodos neumáticos (J.P. Paul, 1998). Marey empleó un zapato provisto de una cámara de
aire dinamométrica unida a un cilindro con el que realizaba registros para conocer las presiones ejercidas sobre
el suelo durante la marcha.
El final de la II Guerra Mundial supuso un impulso en el conocimiento de la locomoción humana y es
que gracias a la creación de los primeros laboratorios de Biomecánica, así como al análisis del movimiento
humano, se llevaron a cabo numerosos estudios que ayudaron, entre otros, a los veteranos de guerra y
concretamente y dentro de este marco, a los amputados (J. Sánchez-Lacuesta, 1993).
Dicho avance en el campo de la biomecánica supuso que en ese mismo año del final de la guerra, se
describieran los parámetros cinemáticos de la marcha por parte de Eberhast e Inman, pertenecientes a la
Universidad de California. Los cuales aportaron datos sobre la rotación e inclinación de la pelvis y el tronco
mediante la utilización de un equipo de cinematografía con el que grababan a los sujetos caminando de frente
y de perfil (J.P. Paul, 1998).
Así pues, podemos concluir que en este último siglo, las técnicas de análisis de la marcha han
experimentado un gran avance debido a la utilización de equipos de medición más precisos y a la introducción
de la simulación por ordenador. En la actualidad, los sistemas de captura de movimiento incluyen video
convencional, cámaras de infrarrojos y láser o sistemas de emisión acústicos. Por lo general, los laboratorios
también están equipados con placas de fuerza piezoeléctricas, que se utilizan para medir las reacciones de
apoyo del pie-suelo. Por otra parte, las nuevas aplicaciones de las tecnologías de sensores (más precisos y
fiables) están encontrando su camino en la biomecánica: sensores EMG para medir la activación muscular,
giroscopios para medir la velocidad angular de los segmentos corporales, goniómetros para medir el
desplazamiento angular de las articulaciones, los sensores para medir el progreso del paciente, monitorizando,
etc (Vilà, 2012). Todas estas tecnologías proporcionan una gran cantidad de información que se puede utilizar
para mejorar los análisis dinámicos.
12
13
Implementación del protocolo de Newington Modificado en OpenSim.
2 OBJETIVOS DEL PROYECTO
El objetivo del presente trabajo consiste en la recreación de protocolo de marcadores de Newington,
en su versión modificada, mediante el programa OpenSim, haciendo uso de un modelo 3D. La idea inicial
consiste en la implementación de una serie de marcadores establecidos en posiciones anatómicas definidas en
el modelo multicuerpo que ofrece este programa, de software gratuito y desarrollado por la Universidad de
Stanford en 2006. Partiendo de los datos específico del tren inferior de un sujeto en particular, recogido
mediante un sistema de cámaras infrarrojas y el programa VICON, se modelará dicho sujeto a través del
código de OpenSim y se someterá a un estudio cinemático.
En el capítulo 3 de este proyecto, se introducirá el programa OpenSim, sus principales características
y usos. Se muestran las amplias posibilidades de este software que además de ser libre y poder ser utilizado
por cualquier usuario que presente interés, se encuentra reconocido internacionalmente. Cuenta también con
un gran número de modelos de simulación propios de diversos estudios en el que pueden participar
investigadores de cualquier parte del mundo.
Sin más preámbulo, conviene establecer algunas de las ideas que impulsaron este estudio. El
programa OpenSim, entre muchas de sus características, tiene un método de funcionamiento particular, el cual
sin embargo se modificará en este trabajo según nuestros intereses. OpenSim parte de la base de un modelo
genérico de referencias desconocidas sobre el cual se llevan a cabo, a través de diversas herramientas, una
serie de procedimientos para que este intente asemejarse lo mejor posible al sujeto particular bajo estudio. No
obstante la idea de partir de un modelo desconocido no es agradable por lo que se plantea un modelo de
propiedades conocidas como origen del proyecto. Los datos del sujeto han sido facilitados por el Doctor
Joaquín Ojeda Granja, cotutor de este proyecto.
“When you talk, you are repeating what you already
know. But if you listen, you may learn something new.”
14
Así pues, en el capítulo 4, se describe el proceso de creación del modelo, llevado a cabo en OpenSim,
a partir de la información obtenida previamente en los laboratorios del Departamento de Ingeniería Mecánica
de la Universidad de Sevilla mediante el mencionado programa VICON, a través del cual, se obtiene una serie
de información tratada posteriormente y que representará la base de nuestro modelo. Para comparar ambos
modelos será necesario realizar modificaciones en este. Una de ella cosiste en modificar el número de
segmentos que componen el tren inferior. Para ello, se alteran las relaciones cinemáticas entre los distintos
sólidos que componen el pie de manera que se mueva como un único sólido. Asimismo, tanto la rodilla como
el tobillo se encuentran definidos por defecto en OpenSim mediante un par rotacional, el cual será sustituido
por pares esféricos añadiendo los consiguientes grados de libertad.
En el capítulo 5, se lleva a cabo el proceso del Escalado. Pese a que su utilidad convencional reside en
asemejar el modelo virtual de OpenSim al modelo real a través de la información obtenida de VICON, en este
estudio su finalidad es comprobar la correcta reconstrucción del modelo, es decir, si los cambios realizados en
el modelo por defecto de OpenSim han sido satisfactorios y nuestro modelo inicial se corresponde con el
sujeto real.
Posteriormente al proceso de Escalado, en el Capítulo 6, se lleva a cabo un estudio de la Cinemática
del modelo. Partiendo de nuevo de datos provenientes de una captura dinámica en el laboratorio, se realiza el
problema inverso al movimiento de manera que somos capaces de obtener las variaciones de los diferentes
ángulos de las articulaciones con el paso del tiempo. El tiempo establecido bajo estudio se define como un
ciclo completo de la marcha humana.
En el Capítulo 7 se muestran los diferentes ángulos resultantes de la resolución del problema de
Cinemática Inversa y su representación a lo largo de un ciclo completo de marcha. Puesto que se trabaja con
un modelo de tren inferior compuesto por 7 segmentos (pelvis, ambos muslos, ambas espinillas y ambos pies),
las gráficas harán referencia a las articulaciones de las caderas, rodillas y tobillos. Se realiza un análisis de los
resultados frente a los mismos ángulos obtenidos por un procedimiento similar, implementado mediante
Matlab y que sigue el protocolo Plug in Gait.
Finalmente en el Capítulo 8, se realizarán unas conclusiones realizadas a partir de comparar los
resultados obtenido con los resultados de un proceso similar realizado a partir del programa Matlab. Se añaden
además futuros trabajos de interés y posibles estudios que pudieran desarrollarse a partir de este.
15
Implementación del protocolo de Newington Modificado en OpenSim.
M
3 EL PROGRAMA: OPENSIM
Odelos de sistema músculo-esquelético humano permiten estudiar la coordinación
neuromuscular, analizar el rendimiento atlético así como estimar las cargas músculo-
esqueléticas. OpenSim es un software de libre distribución que permite al usuario
construir, intercambiar y analizar modelos computables del sistema humano, así como realizar
simulaciones dinámicas del movimiento.
Desde la emisión de este producto, se ha trabajado con él en multitud de disciplinas y
aplicaciones, incluyendo investigaciones biomecánicas, el diseño de maquinaria medicinal,
rehabilitaciones y ortopedias, investigaciones para la neurociencia, análisis ergonómicos y diseño de
instrumental aplicado al deporte, animación computacional, investigaciones robóticas, biología y
educación. En OpenSim el modelo músculo-esquelético consiste en cuerpos rígidos segmentados
conectados mediante uniones que simulan nuestras articulaciones. Los músculos actúan sobre estas
generando fuerzas y produciendo el movimiento. Una vez el modelo es creado, OpenSim permite a los
usuarios estudiar los efectos de la geometría en los músculos y en el esqueleto, la cinemática de las
articulaciones, así como las propiedades de la relación músculo-tendón sobre las fuerzas y las
articulaciones que los músculos pueden producir.
El software proporciona una plataforma en la que la comunidad biomecánica puede construir una
biblioteca de simulaciones que pueden ser intercambiadas, testadas, analizadas y mejoradas a través de
una colaboración multi-institucional. La parte principal del software está escrita en lenguaje C++,
mientras que la interfaz gráfica de usuario está escrita en Java.
“En nuestro crecimiento es importante comprender que la
competencia que nos convertirá en mejores es con nosotros mismos.”
16
3.1. CAPACIDADES
OpenSim nos permita la posibilidad de numerosas actuaciones. Se puede acceder a ellas
completándose tutoriales y siguiéndose la guía de usuario. Algunas de las más útiles y las utilizadas en el
presente trabajo son presentadas a continuación:
- Tomas imágenes de los modelos músculo-esqueléticos y realizar animaciones con ellos.
- Representar gráficamente los resultados de los análisis.
- Escalar el tamaño de tu modelo músculo-esqueléticos.
- Realizar análisis mediante Cinemática Inversa para calcular los ángulos que se producen en
las articulaciones desde la posición de los marcadores.
- Realizar análisis mediante Dinámica Inversa para calcular los momentos que se producen
desde los ángulos de las articulaciones y las fuerzas externas.
- Generar futuras simulaciones dinámicas del movimiento.
- Analizar simulaciones dinámicas.
OpenSim está disponible para su descarga desde Simtk.org. Una vez seguido el enlace, será
necesario registrase como miembro de Simtk. Posteriormente para descargar el programa se podrá seguir
el enlace clicando aquí. En la página web se explican con detalle los pasos para conseguir instalar dicho
programa.
3.2. RESUMEN DEL PROCESO DE TRABAJO DE OPENSIM
Uno de los objetivos prioritarios del programa OpenSim es proporcionar una plataforma común
donde crear o compartir modelos del sistema músculo-esquelético. Así, el primer paso de cualquier
análisis, es un modelo en OpenSim. El archivo de un modelo de OpenSim representa la dinámica de un
sistema de cuerpos rígidos y articulaciones sobre las que actúan las fuerzas que producen el movimiento.
Dicho archivo está compuesto de los componentes correspondientes al sistema físico, lo que incluye
miembros del cuerpo, articulaciones, fuerzas, restricciones y controladores. A continuación se presentan
con una breve descripción algunos de las diferentes aplicaciones que presenta este programa aunque,
algunas de ellas como es el procedimiento de la Dinámica Inversa no se recoja en este estudio.
17
Implementación del protocolo de Newington Modificado en OpenSim.
3.2.1 Importación de datos experimentales
En este trabajo, como puede ser el caso de otros o de futuros a partir de este, se usará OpenSim
para analizar un serie de datos experimentares recogidos en el laboratorio, que supondrán el punto de
partida del presente proyecto. Dichos datos, obtenidos en el Laboratorio de Mecánica de la Escuela
Superior de Ingeniería de la Universidad de Sevilla mediante el programa Vicon, incluyendo:
- Trayectorias de marcadores y ángulos de articulaciones de la captura del movimiento.
- Información de las fuerzas, en particular fuerzas de reacción del suelo, medidas a través de
unas plataformas de esfuerzos, por las que se camina durante el experimento.
- Electromiografía.
3.2.2 Escalado
Si se usa un modelo genérico de la biblioteca de modelos propia de OpenSim, el siguiente paso es
escalar el modelo para que concuerde con los datos experimentales recogidos para el sujeto a tratar. Esto
es realizado funcionalmente por la herramienta de escalado (Scale Tool) de OpenSim. El propósito de
escalar un modelo músculo-esquelético genérico es modificar la antropometría y las dimensiones físicas
de manera que concuerde antropomórficamente con el sujeto particular. El escalado es uno de los pasos
más importantes para resolver el los problemas de Cinemática Inversa y Dinámica Inversa porque dichos
problemas son sensibles a la precisión del paso del escalado. En OpenSim, el escalado ajusta tanto las
propiedades de la masa (el tensor de masa y el de inercia) como las dimensiones de los segmentos del
cuerpo.
3.2.3 El Problema Inverso
OpenSim permite solucionar el problema de Dinámica Inversa, usando para ello el movimiento
experimental medido del sujeto y las fuerzas para generar la cinemática y las cinéticas del modelo
músculo-esquelético. De manera esquemática se puede ver en la siguiente imagen:
Figura 3.1 Esquema del Problema Inverso resuelto en OpenSim
18
3.2.4 Cinemática Inversa
La herramienta en OpenSim que realiza la Cinemática Inversa (IK por su terminología en inglés,
Inverse Kinematics), encuentra un conjunto de coordenadas generalizadas (ángulos de articulaciones y
posiciones) para el modelo que mejor armonicen con las cinemáticas recogidas experimentalmente para el
sujeto particular.
Las cinemáticas experimentales, que tienen como objetivo la Cinemática Inversa, pueden incluir
posiciones experimentales de los marcadores, así como los valores de las coordenadas generalizadas
(ángulos de las articulaciones). Esta herramienta recorre el movimiento para cada intervalo de tiempo y
calcula el valor de la coordenada generalizada que posiciones el modelo en la posición que mejor
concuerde con la colocación de los marcadores experimental así como los valores de coordenadas para
cada intervalo de tiempo. Matemáticamente, se expresa la mejor concordancia como aquella que tenga el
menor error cuadrático, cuya solución minimice tanto los errores del posicionamiento de los marcadores
como de las coordenadas.
Figura 3.2 Coincidencia de los marcadores experimentales
con los marcadores del modelo durante la toma dinámica.
3.2.5 Dinámica Inversa
La Dinámica es el estudio del movimiento y de las fuerzas y momentos que se producen en dicho
movimiento. La herramienta con la que se realiza la Dinámica Inversa (ID por su terminología en inglés,
Inverse Dynamics) determina las fuerzas generalizadas (p.ej. fuerzas netas o esfuerzos de torsión) que
causan un movimiento en particular, y sus resultados pueden ser usados para entender como los músculos
actúan durante el movimiento. Para determinar estas fuerzas y movimientos internos, las ecuaciones del
movimiento son resueltas con fuerzas externas y aceleraciones dadas (estimadas a partir de la segunda
derivada de los ángulos y las posiciones respecto al tiempo). Las ecuaciones del movimiento son
automáticamente formuladas usando la descripción cinemática y las propiedades de la masa de un modelo
músculo-esquelético en SimbodyTM. Finalmente no se llevará a cabo este estudio en el presente trabajo.
19
Implementación del protocolo de Newington Modificado en OpenSim.
4 MODELO ORIGINAL
Una de las primeras premisas que se decidieron a la hora de encauzar este proyecto, fue la creación de
un modelo de partida de OpenSim que sería considerado como punto de partida de la investigación. Existía la
posibilidad de partir de uno de los modelos que trae OpenSim para la realización de pruebas y tutoriales, sin
embargo, ante el desconocimiento del modelo que toma OpenSim como modelo base, es decir, como
referencia la longitud de los distintos miembros del cuerpo humano, la localización de los centros de las
articulaciones…etc., se decidió partir de un modelo fijo y conocido.
Por tanto el modelo que actuará de guía y origen para este trabajo serán una serie capturas, tanto
estáticas como dinámicas realizadas por el Doctor y Profesor Joaquín Ojeda, cotutor de este proyecto y que
amablemente ha cedido para su tratamiento. De este modo uno de los primeros desafíos será trabajar la
información de las capturas que se han obtenido mediante el programa Vicon e intentar implementarla en
nuestro modelo de OpenSim de manera que coincidan en el mayor grado posible.
Dentro de la información facilitada y que es relevante para nuestro proyecto podemos destacar la
localización en el espacio de los marcadores, así como de las de los centros de coordenadas de todas las
articulaciones bajo estudio. Como se ha comentado previamente, el presente trabajo tiene como objeto de
estudio un modelo de tren inferior, el cual se encuentra formado por 7 segmentos: la pelvis y ambas piernas,
compuestas por tres sólidos cada una de ellas (muslo, tibia y pie).
Por otro lado, se trabaja con un protocolo de marcadores para el cuerpo humano basado en una
configuración de marcadores específica, denominada Newington. Una de las principales características de este
método es que parte del menor número de marcadores posibles para reconstruir la figura del cuerpo humano.
Al contar con una menor cantidad de marcadores que otros, se facilita el movimiento del sujeto durante la
toma de datos.
Los sistemas de análisis del movimiento tridimensionales se utilizan para valorar de forma objetiva la
cinemática articular durante la realización de las más variadas tareas motoras. Su área de aplicación se
extiende a campos tan diversos como la práctica clínica e investigación de patologías asociadas al aparato
locomotor, la ergonomía, la biomecánica deportiva o la animación en la industria cinematográfica y de
Solo aquellos que se arriesgan a ir demasiado lejos,
pueden descubrir hasta dónde pueden llegar
T.S Eliot (1888 - 1965)
20
videojuegos (Egret CI, 2005). Muchos de estos sistemas son sistemas optoelectrónicos que registran, por
medio de cámaras de luz infrarroja, el movimiento de marcadores reflectantes situados sobre la superficie del
cuerpo. El movimiento tridimensional de cada uno de los marcadores es reconstruido a partir de sus
coordenadas bidimensionales en cada fotograma, coordenadas recogidas simultáneamente por cada cámara. A
través de un modelo biomecánico definido previamente, el sistema convierte este movimiento en el
movimiento de las distintas articulaciones consideradas en dicho modelo. En general, los ángulos articulares
así calculados pueden verse afectados por diversas fuentes de error, más o menos minimizables (MacWilliams
BA, 2005). En concreto, los errores cometidos por la incorrecta colocación de los marcadores continúa siendo
una de las asignaturas pendientes de este tipo de sistemas de medición y, probablemente hoy en día, el mayor
contribuyente individual a la variabilidad de los resultados en el análisis de la marcha (Baker R, 2006).
Figura 4.1 Posición anatómica de los marcadores en el cuerpo humano.
Newington se trata de un modelo compuesto por 16 marcadores reflectantes dispuesto a lo largo del
los miembros inferiores del cuerpo: su colocación se determina en relación a la posición de los huesos como se
indica en la imagen. Los marcadores se unen directamente a la piel con un adhesivo de doble cara. Cada
marcador tiene una posición anatómica definida, la cual queda recogida en la siguiente tabla.
21
Implementación del protocolo de Newington Modificado en OpenSim.
LASI Placed directly over the left anterior superior iliac spine
RASI Placed directly over the right anterior superior iliac spine
LPSI Placed directly over the left posterior superior iliac spine
RPSI Placed directly over the right posterior superior iliac spine
RKNE/LKNE Placed on the lateral epicondyle of the right/left knee
LTHI/RTHI Place the marker over the lower lateral 1/3 surface of the thigh
LANK/RANK Place on the lateral malleolus
LTIB/RTIB Placed over the lower 1/3 of the shank
LTOE/RTOE Placed over the second metatarsal head
LHEE/RHEE Placed on the calcaneous
Tabla 1 Definición de la localización anatómica del conjunto de marcadores. (Ojeda Granja, 2012)
No obstante, para comprender el funcionamiento y el proceso de trabajo que se ha llevado a cabo, es
necesario conocer la forma de procesar y las relaciones que establece OpenSim entre los diferentes segmentos
que componen el cuerpo humano. Los miembros que componen el cuerpo humano poseen una estructura en
forma de árbol. Esto significa que cada miembro se encuentra referenciado al anterior en la cadena, es decir, se
trabajará con coordenadas relativas. Para ver las relaciones existentes entre los distintos sólidos y las
articulaciones que los relacionan se muestra un esquema se dichas relaciones.
22
Figura 4.2 Modelo de trabajo de OpenSim.
Siguiendo el esquema que nos proporciona OpenSim, se puede observar cómo el segmento toes_r
(que corresponde a los dedos del pie derecho) se une mediante la articulación mtp_r al calcn_r (hueso del
calcáneo del pie derecho), que a su vez va unido a talus_r, se encuentra referido a la tibia_r y se mueve
respecto a ella mediante la articulación del tobillo ankle_r, y así sucesivamente.
Como se puede observar en la Figura 4.2 para cada articulación existe un miembro padre y un
miembro hijo cuyas coordenadas dependerán de él. Por tanto cada segmento se definirá por su centro de
coordenadas cuyas coordenadas vendrán definidas por sus coordenadas locales referidas al centro de
coordenadas del segmento padre.
23
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 4.3 Referencias en las articulaciones en OpenSim
4.1. CAMBIO DE COORDENADAS
Conociendo la manera de trabajar de OpenSim, sabemos cómo debemos actuar, pero también los
primeros inconvenientes. En primer lugar, Vicon, el programa utilizado para la captura de datos del sujeto de
estudio, trabaja con unos ejes de coordenadas distintas a los ejes con los que trabaja OpenSim. Es por eso, que
antes de realizar cualquier modificación en la información del código de OpenSim ésta debe de ser coherente
respecto al sistema de referencia donde se trabaja.
Figura 4.4 Orientación de los ejes de Coordenadas en Vicon y OpenSim.
24
El proceso que se llevará a cabo para poder obtener información válida para OpenSim será
multiplicar los valores de las coordenadas que obtengamos del fichero de Matlab por una matriz de
transformación del tipo:
𝑀𝑎𝑡𝑇𝑟𝑎𝑛𝑠𝑓 = [1 0 00 0 −10 1 0
]
Un detalle que habrá que tener en cuenta y que podría inducir a errores en el procedimiento, el
comportamiento distinto con el que se trata al solido del pie en el programa Vicon, donde los ejes de
coordenadas no corresponden con los del resto de los sólidos de nuestro cuerpo (Ojeda Granja, 2012).
Figura 4.5 Orientación de los ejes para el pie en Vicon y en OpenSim.
De manera que para transformar la orientación de los ejes para que la información sea válida en
nuestro modelo de OpenSim, será necesario multiplicar los vectores de coordenadas para el pie por un segunda
matriz de transformación de forma:
𝑀𝑎𝑡𝑇𝑟𝑎𝑛𝑠𝑓2 = [0 1 00 0 −1
−1 0 0]
25
Implementación del protocolo de Newington Modificado en OpenSim.
4.1.1 Adquisición de datos
Los datos que facilitados como origen para el trabajo provienen, como se mencionó en los comienzos
de este capítulo, del programa Vicon. Cuando se realiza la captura tanto estática como dinámicamente, se
exporta un archivo .c3d a partir del cual introduciendo dicho fichero en un programa Matlab, desarrollado por
el Departamento de Ingeniería Mecánica de la Universidad de Sevilla, exporta un archivo denominado
Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat que permite una visual y un tratamiento mejor de la
información de la captura.
Figura 4.6 Información contenida en el fichero
Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat en Matlab.
Coordenadas de las articulaciones
La primera decisiones que se han tomada será colocar en nuestro modelo de OpenSim los centros de
las articulaciones en la posición lo más parecida posible a la posición que se encuentran en el modelo real. Esta
información se encuentra disponible en el mencionado Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat
abriendo la estructura MODEL >> JOINT. Dentro de Joint se encuentra la información referida a todas las
articulaciones que se encuentran bajo nuestro estudio, las cuales son:
- RAJC, Right Ankle Joint Center (Centro de la Articulación del Tobillo Derecho)
- LAJC, Left Ankle Joint Center (Centro de la Articulación del Tobillo Izquierdo)
- RKJC, Right Knee Joint Center (Centro de la Articulación de la Rodilla Derecha)
- LKJC, Left Knee Joint Center (Centro de la Articulación de la Rodilla Izquierda)
- RHJC, Right Hip Joint Center (Centro de la Articulación de la Cadera Derecha)
- LHJC, Left Hip Joint Center (Centro de la Articulación de la Cadera Izquierda)
26
A continuación a modo de ejemplo se muestra la información que contiene la RKJC:
Figura 4.7 Información obtenida para la articulación de la rodilla derecha
Como se observa en la imagen, cada articulación contiene varios campos que muestran las diferentes
característica poseen. El ‘type’, cuyo valor es spheric, define la rodilla como un par esférico. Los siguientes
dos campos, ‘parent’ y ‘child’, corresponden por su parte a los segmentos padre e hijo que intervienen en el
movimiento de articulación, en este caso RTHG hace referencia al muslo, mientras que RSHA lo hace a la
espinilla. Por último, las dos últimas filas de la estructura, parentVec y childVec, contienen las coordenadas
según los ejes de coordenadas de Vicon, desde la posición de centro de gravedad de cada segmento (padre o
hijo) al centro de la articulación.
Fruto de esta definición nos damos cuenta que el proceso de traslado de información no será trivial, ya
que analizando los datos del archivo Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat, nos damos cuenta
que cada sólido del cuerpo humano tiene su origen de coordenadas locales su propio centro de masas,
situación que no sucede en OpenSim.
Para paliar esta situación que se ha planteado, nos hemos ayudado de la posición de los marcadores,
información de la que disponemos gracias a la captura estática realizada por el programa Vicon y que
podemos manejar desde el fichero de Matlab. Buscando en MODEL >> modelMARKER, encontramos los 7
segmentos que componen nuestro tren inferior bajo estudio. En cada uno se encuentra las coordenadas locales
de los marcadores asociados a cada sólido con respecto a su centro de masas.
Figura 4.8 Información del archivo de Matlab correspondiente a
Model >> markerMODEL >> PEL
27
Implementación del protocolo de Newington Modificado en OpenSim.
Como se puede ver en la figura superior, que para el caso de la pelvis, representada por PEL, se
encuentran los cuatro marcadores que están referidos a ella, además del PSI, al que no prestaremos atención ya
que tiene unas utilidades que no entra dentro de los objetivos de este trabajo.
4.2. CÁLCULO DE LAS COORDENADAS DE OPENSIM
Como se ha comentado con previamente, los datos de partida de la posición de los marcadores, están
referidos al centro de masas del solido al que vienen asociados. En OpenSim, sin embargo, la posición de los
marcadores virtuales de nuestro modelo viene referida respecto al centro de coordenadas de cada segmento,
que en ningún caso coincide con el centro de masas del mismo.
Figura 4.9 Localización de los centros de masas y articulaciones por defecto en el modelo de OpenSim.
Conociendo entonces el vector que va desde el centro de masas al marcador y del centro de masas al
centro de coordenadas de cada segmento, somos capaces de calcular la distancia en forma de vector del centro
de coordenadas al marcador. De esta manera el marcador virtual se encontrará en la misma posición que el
marcador experimental colocado en el sujeto de estudio.
28
Análogamente, sabiendo el vector que va desde el centro de masas al centro de coordenadas y el vector que va
desde el centro de masas al centro de la articulación, somos capaces de calcular el vector entre el centro de
coordenadas y el centro de la articulación. Gráficamente:
Figura 4.10 Cálculo de la distancia del centro de coordenadas al marcador
El vector que nos interesa es resultado de la suma del menos vector que va desde el centro de masas al
origen de coordenadas más el vector que va desde el centro de masas al marcador, obteniéndose así un vector
[x, y, z] que refleja la distancia entre el origen de coordenadas y el marcador. Para el cálculo del vector hasta
el centro de la articulación el procedimiento es totalmente análogo.
Una vez, se ha definido el proceso de cálculo de las coordenadas, falta definir el centro de
coordenadas de la pelvis, que aunque no afectará al resultado final del estudio, es necesario como punto de
partida del cálculo. Se ha establecido, siguiendo el criterio por defecto de OpenSim en el punto medio de los
marcadores LASI y RASI.
En un principio, se planteó la posibilidad de cambiar los centro de coordenadas de los segmentos de
OpenSim, de manera que coincidieran con los orígenes de coordenadas que establece el programa Vicon, lo
que sin embargo resultó demasiado tedioso y acarreo números problemas en las siguientes etapas del proceso
de estudio. Posteriormente, se llegó a la conclusión de que este paso no era estrictamente necesario para
alcanzar nuestros objetivos y que no alteraría los resultados finales. Se consensuó por tanto dejar los centros de
coordenadas en las posiciones por defecto de los segmentos y referir la localización de los marcadores a estos
puntos.
Una vez se han aclarado todos los puntos conflictivos, para evitar el cálculo de las coordenadas en
OpenSim para cada sujeto que esté bajo estudio, se ha desarrollado un pequeño programa de Matlab, el cual
obtiene la información, de manera automática, de un archivo.mat definido por el usuario y calcula de forma
rápida tanto las coordenadas de los marcadores como las de los centro de las articulaciones. Se pude consultar
el archivo en el anexo A de este documento.
29
Implementación del protocolo de Newington Modificado en OpenSim.
Las coordenadas, tanto de los marcados como de los centros de las articulaciones de nuestro sujeto, se
recogen en las tablas que se presentan a continuación:
Tabla 2 Coordenadas de los marcadores en OpenSim.
Tabla 3 Coordenadas de los centros de las articulaciones en OpenSim.
Cabe recordar que los valores que recogen estas tablas son coordenadas locales, referidas cada una al
segmento padre del que dependen.
30
Una vez estos puntos se definen, se implementa la información en OpenSim. Para ello se hará en dos
ficheros distintos. Los datos de los marcadores se modifican en el archivo definido como
Joaquin3_MarkerSet.xml.
Figura 4.11 Localización de las coordenadas en el fichero Joaquin3_MarkerSet.xml.
Se observa en el código, en el caso del marcador RASI, cómo éste se encuentra referenciado a la
pelvis (y por consiguiente a su centro de referencia) en la sección <body>, mientras que las coordenadas se
sitúan en el campo <location>. Una vez renombrados los marcadores y asignadas sus correspondientes
coordenadas, el conjunto de variables del archivo definas debe quedar:
Figura 4.12 Configuración de los marcadores definidos en el en el archivo MarketSet.
31
Implementación del protocolo de Newington Modificado en OpenSim.
Por otro lado se ha modificado la posición de los centros de las articulaciones. Para esto se parte del
archivo que contiene el modelo de OpenSim, en nuestro caso el archivo Joaquin3_simbody.osim
Figura 4.13 Localización de las coordenadas en archivo Joaquin3_simbody.osim.
En la figura superior, imagen correspondiente al inicio del código del segmento que representa al
fémur en el modelo, se puede observar algunas de las características del mismo. En primer lugar se observa
propiedades del sólido como son la localización del centro de masa y las distintas inercias. En este punto del
trabajo no se realizan modificaciones en estos campos, si bien para realización del estudio de la dinámica sería
necesario.
Nuestro interés como se ha ido comentando a lo largo de este capítulo, reside en el posicionamiento de
los centros de las articulaciones. Dicha información la encontramos en la sección <location in parent>, que
viene acompañada del cuerpo padre, <parent_body> y de la orientación de los ejes en el segmento.
4.2.1 Singularidad de la Rodilla
Aunque el cambio de coordenadas parece un proceso trivial, encontramos algunas
particularidades como es el caso de las rodillas. Como se observa en la figura posterior, la definición
del campo <location in parent> viene como [0 0 0], siendo como referencia centro de coordenadas del
fémur, por lo que este valor resulta contradictorio.
Figura 4.14 Situación de la rodilla por defecto en la configuración de OpenSim.
32
La respuesta a este inconveniente para poder implementar la localización de la rodilla, reside
en las líneas inferiores de la configuración de la rodilla.
Figura 4.15 Situación por defecto de la rodilla en OpenSim.
Como se observa en la imagen, dentro de la definición de los grados de libertad, se observa como en
las dos primeras traslaciones encontramos una función spline, la cual traslada la tibia respecto a la pelvis a una
posición relacionada con la situación del fémur.
Puesto que la configuración de este tipo de función es algo complejo y se escapa del proceso de
estudio de este trabajo, se modifica ambas funciones por constante de valor 0, pudiéndose a continuación
modificar el campo <location in parent> con las coordenadas del archivo de Matlab de manera que
corresponda con nuestro sujeto de estudio.
Figura 4.16 Situación modificada de los grados de libertad de la rodilla.
33
Implementación del protocolo de Newington Modificado en OpenSim.
Realizando los cambios oportunos, es decir, introduciendo las coordenadas reflejadas en las Tablas 1y
2 en los campos mencionados y ejecutando el archivo en OpenSim, se obtiene un modelo cuyo resultado es el
reflejado en la siguiente figura.
Figura 4.17 Situación de los marcadores y centros de las articulaciones para nuestro modelo.
Lo más llamativo del resultado, son los espacios vacíos que aparecen en las articulaciones de la pelvis
y de ambas rodillas, sin embargo, no se trata de ningún error en el modelo y es simplemente un detalle visual
fruto de la modificación de los parámetros comentados anteriormente. Esto sucede como consecuencia de que
los distintos huesos que conforman el modelo por defecto de OpenSim tiene unas dimensiones predefinidas y
sus centros de rotaciones se encuentran definidos conforme a ellas, de manera que para obtener un modelo que
se asemejase al real, se debería cambiar la longitud de los diferentes miembros.
No obstante, como dicho aspecto no afecta al objetivo y resultado de este estudio, no se abordará
dicha causa, proponiéndose como trabajo posterior a la realización del presente proyecto.
La posición correcta de los marcadores se abordará en el siguiente capítulo, pero para evitar alguna
incoherencia perceptible, se ha comparado el modelo con la posición de os marcadores en el laboratorio.
34
Figura 4.18 Correspondencia de los marcadores virtuales con los marcadores experimentales
35
Implementación del protocolo de Newington Modificado en OpenSim.
L
5 ESCALADO
A herramienta de escalado (se hará referencia de ahora en adelante mediante su terminología en
inglés, Scale Tool) modifica la antropometría de un modelo de manera que concuerde con un sujeto
particular lo más posible.
El escalado es típicamente utilizado para comparar marcadores experimentales con los marcadores
virtuales localizados en el modelo. A parte de escalar el modelo, la Scale Tool puede ser usada para ajustar la
localización de los marcadores virtuales de manera que se aproximen mejor a los datos experimentales.
Figura 5.1 Archivos de Entrada y Salida en el Escalado
Solo aquellos que se arriesgan a ir demasiado lejos,
pueden descubrir hasta dónde pueden llegar
T.S Eliot (1888 - 1965)
36
5.1. DISPOSICIÓN DE LOS ARCHIVOS:
Subject01_Setup_Scale.xml: Es el archivo de instalación par la Scale Tool. Contiene la configuración y
hace referencia a otros archivos que incluyen configuraciones adicionales. Estos otros archivos son:
o Gait2354_Scale_MarkerSet.xml: Se trata se la configuración de los marcadores para la
Scale Tool. Contiene una configuración de marcadores colocados en los segmentos del
cuerpo del modelo.
o Gait2354_Scale_Task.xml: Son las instrucciones para realizarla Cinemática Inversa en la
Scale Tool. Además de escalar el modelo, la Scale Tool mueve los marcadores virtuales
(referidos a los situados en la WorkFrame de OpenSim) de manera que sus posiciones
cuadren con la localización de los marcadores experimentales. Para esto es necesaria la
solución de un problema de Cinemática Inversa. Este archivo contiene como se ha
mencionado anteriormente instrucciones (es decir una especificación de qué marcadores
virtuales y experimentales deberían estar emparejados durante la solución de la Cinemática
Inversa) y los respectivos pesos de los marcadores.
o Gait2354_Scale_MeasurementSet.xml: Se trata de un conjunto de medidas para la
herramienta de escalado. Contiene parejas de marcadores experimentales, cuya distancia
entre ellos es usada para escalar el modelo músculo-esquelético genérico.
Dos archivos son necesarios por la herramienta de escalado para su correcto funcionamiento:
Subject01_static.trc: Aquí se encuentran las trayectorias de los marcadores para la captura estática. Una
captura estática suele ser datos del sujeto en una posición estática conocida durante varios segundos. Las
trayectorias de los marcadores suelen estar en coordenadas globales.
Gait2354_simbody.osim: Es el modelo músculo-esquelético de OpenSim. Normalmente dicho modelo
será escalado de manera que concuerde con la antropometría del sujeto.
También es posible añadir un fichero opcional:
Subject01_static.mot: se trata de valores de coordenadas experimentales generalizadas (ángulos de
articulaciones) de una captura obtenida por unos aparatos alternativos de captura del movimiento o
algoritmos especializados. Se pueden especificar el peso de las coordenadas, si los ángulos son conocidos
a priori. El peso de las coordenadas son relativos y determinan cómo de ‘bien’ un ángulo de articulación
compatibiliza con un ángulos específico.
37
Implementación del protocolo de Newington Modificado en OpenSim.
5.2. FUNCIONAMIENTO DEL ESCALADO
El escalado se basa en una combinación de distancias medidas entre las posiciones en x-y-z y factores
manualmente especificados de escala. La localización de los marcadores normalmente es obtenida usando un
equipo de captura del movimiento, el cual, como se ha mencionado anteriormente, ha sido realizado mediante
el programa Vicon, utilizando una serie de cámaras infrarrojas y cuyo uso ha sido facilitado por el
departamento de Mecánica de la Universidad de Sevilla.
Para un modelo genérico sin escalar, tiene un conjunto de marcadores virtuales localizados en las
mismas posiciones anatómicas que los marcadores experimentales. En el escalado por mediciones, las
dimensiones de cada segmento del cuerpo en el modelo son escaladas conforme la relación existente entre las
distancias entre los marcadores virtuales y las distancias entre los marcadores experimentales.
Existe la posibilidad de definir unos factores de escala manuales, que podrían obtenerse de otros
análisis antropomórficos, y podrían usarse como una alternativa al escalado basado en mediciones, el cual se
ha comentado anteriormente, para cualquier segmento corporal. Sin embargo para los propósitos de este
trabajo nos basaremos únicamente en el escalado por medición y no requeriremos del manual.
Una vez las dimensiones de los segmentos han sido escaladas de manera que representen las del sujeto
con la máxima precisión posible, la Scale Tool permite mover algunos o todos los marcadores virtuales en el
modelos para que coincidan con las posiciones de los marcadores experimentales.
Figura 5.2: Marcadores experimentales y virtuales.
38
La posición de los marcadores experimentales son medidas con un equipo de captura del movimiento
(azul oscuro). Los marcadores virtuales se encuentran en su correspondiente anatómico. Las distancias entre
los marcadores experimentales (ei) en relación a las correspondientes entre los marcadores virtuales (mi) son
usadas para calcular los factores de escala.
5.2.1 Escalado basado en mediciones
En este procedimiento de escalado, los factores de escala son determinados comparando las distancias
entre los marcadores del modelo virtual y los experimentales colocados en el laboratorio. Esta información se
proporciona en el archivo TrialStatic.trc. Cada factor de escala se calcula usando una o más parejas de
marcadores definidos en el código que se muestra posteriormente.
Para clarificar el proceso que se lleva a cabo, supóngase dos pares de marcadores, p1:{RASI, RKNE}
y p2:{LASI, LKNE}. La distancia entre los marcadores del par 1 en el modelo (m1) es calculada colocando el
modelo en su configuración por defecto (todos los ángulos de articulaciones en sus valor por defecto, como
vienen especificados en el archivo .osim original). La distancia entre los marcadores experimentales del par 1
(e1) se calcula teniendo en cuenta cada intervalo de la información dada por el archivo.trc, cogiéndose una
media proveniente de todos los intervalos dados en un rango de tiempo. El factor de escala aplicado al par 1
será s1=e1/m1. Si los marcadores se encontrasen más alejados en el archivo.trc que en el modelo esto indicaría
que el segmento o los segmentos en el modelo que reflejan la realidad son demasiado pequeños. El factor de
escala general es resultado de la media de los factores de escala calculados a partir de todos los de los pares
(p.ej. s= (s1+s2)/2 en este caso debido a que hay un factor de escala respecto al par 2). Este factor de escala
general puede ser usado luego para escalar cualquier segmento, a lo largo de cualquier combinación de los ejes
X, Y y Z.
Puesto que en el actual trabajo se pretende partir de un modelo conocido, esta parte del proyecto no
tiene mayor finalidad que comprobar si la realización de nuestro modelo y su configuración de marcadores se
ha realizado de manera coherente a los datos que se obtuvieron de programa Vicon.
Al ser el modelo original nuestro sujeto particular, los resultados del escalado para cada miembro
deberían resultar alrededor de la unidad. Esto significaría que los marcadores virtuales se encuentran en la
misma posición de los del modelo experimental y que la longitud de los segmentos corporales son las mismas
que las de nuestro sujeto, es decir que el resultado de s1=e1/m1 sea igual o parecido a 1.
39
Implementación del protocolo de Newington Modificado en OpenSim.
5.3. FUNCIONAMIENTO DEL ESCALADO (SCALE TOOL)
Para acceder a la Scale Tool de OpenSim:
En primer lugar se selecciona Tools >> Scale Model en la barra del menú principal
En segundo lugar, se necesita el modelo se quiere escalar. Este modelo vendrá definido por el archivo
Joaquin3_Setup_Scale.xml. En dicho archivo se dispone la información necesaria para realizar el
escalado, además de incluir las direcciones de otros ficheros participan en el proceso. Estos archivos y
la información que contiene se pueden observar al principio de este apartado.
Figura 5.3 Ventana inicial de la herramienta de Escalado (Scale Tool)
La Scale Tool se encuentra controlada por una ventana que contiene tres pestañas. En primer lugar, la
pestaña Settings especifica los parámetros relacionados con la información del sujeto, el modelo genérico, y
sobre cómo el modelo debe ser escalado, es decir, contiene los archivos a los se hace referencia.
Posteriormente, la pestaña Scale Factors especifica los factores de escala para cada segmento. Finalmente, la
pestaña Static pose Weights especifica los pesos de los marcadores y de los ángulos de las articulaciones para
solucionar el problema de la Cinemática Inversa para la captura estática. La solución de la Cinemática Inversa
para la captura estática localiza la posición de los marcadores virtuales de manera que coincidan con la
posición medida de los marcadores en el sujeto.
Acto seguido se pincha en la pestaña Load… y buscamos el archivo Joaquin3_Setup_Scale.xml
mencionado anteriormente. El cuadro de diálogo debe quedar de la siguiente forma:
40
Figura 5.4 Scale Tool con los archivos necesarios para el Escalado.
Se puede observar que efectivamente se rellenan los campos:” Add markers from file”, en el que debe
de encontrarse el archivo que sitúa los marcadores en el modelo; “Marker data for measurements” y “Marker
data for static pose” donde debe figurar el archivo .trc de la captura estática realizada en el laboratorio.
Posteriormente se presionará el botón ‘Run’, y se comienza el escalado.
5.3.1 Joaquin3_Setup_Scale.xml
En este archivo podemos encontramos 4 secciones principales: parámetros de ejecución; parámetros
específicos del sujeto (p.ej. masa, altura, edad); propiedades del escalado; y las propiedades de la localización
de los marcadores.
Se va a centrar la atención en la tercera de estas secciones, las propiedades del escalado. En este
campo se definirán los marcadores que servirán de referencia para cada segmento corporal de manera que
asemeje lo máximo posible el modelo virtual al experimental. Este paso se antoja fundamental en los procesos
de escalado y unos malos resultados podrían condenar cualquier estudio llevado a cabo.
Para definir cada pareja de marcadores se modifican el campo para cada segmento denominado
<MarkerPairSet>. Cada campo podrá contener la información de tanto pares de marcadores como se estime
necesario. Normalmente, como podría ser el caso del muslo, se toma como referencia tanto la información
proveniente de los marcadores situados en el muslo derecho como en el izquierdo.
41
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 5.5 Definición del par de marcadores que definen el segmento <thigh>
Como se puede observar en la Figura 5.5 para el segmento <thigh> se definen para el miembro
derecho los marcadores RTHI, RKNE, LTHI Y LKNE. A continuación OpenSim realiza una media
comparando ambas distancias con sus respectivos pares de marcadores en el modelo real.
Para comprobar los resultados obtenidos, OpenSim realiza lo cálculos anteriormente explicadosy los
muestra numéricamente mediante la ventana ‘Message’. Para el modelo creado, el archivo
Joaquin3_simbody.osim, el resultado del escalado es el siguiente:
Figura 5.6 Resumen del procedimiento de Escalo realizado por OpenSim.
42
A la hora de evaluar los resultados del escalado es importante prestar atención tanto a los resultados
que proporciona OpenSim sobre el error residual entre marcadores y el error máximo. En las recomendaciones
comentadas en la página oficial de OpenSim:
En general el error máximo entre marcador experimental y virtual ha de ser inferior a 2cm, el cual
en nuestro caso cumple dicha condición ampliamente siendo este de 3 mm aprox.
El error residual entre marcado debe ser típicamente inferior a 1 cm y nuestro modelo es de 1mm.
Seguidamente, como se observa en la imagen, para cada segmento corporal OpenSim toma tantos
pares de marcadores como se estime necesario. Así para el sólido que representa la pelvis se toma como
referencia la posición de los marcadores LPSI Y RPSI. Para el caso del muslo serán dos pares de marcadores,
RTHI Y RKNE, referidos al muslo derecho y LTHI y LKNE referidos al muslo izquierdo. Análogamente al
muslo se trabaja para la espinilla y para el pie.
El resultado del escalado es por tanto el siguiente:
Segmento Corporal Factor de Escala
Pelvis 1,0038
Muslo (Thigh) 1,00012
Espinilla (Shank) 1,00798
Pie (Foot) 0,999892
Tabla 4 Factores de Escalado para los distintos segmentos.
Sin embargo, el escalado realizado en este trabajo podría no considerarse como un escalado al uso
porque el objetivo del mismo difiere del que para normalmente se aplica. Mientras que su uso se centra en,
como se ha mencionado ya en multitud de ocasiones, asemejar los segmentos del modelo virtual al real del
laboratorio, en el presente estudio su finalidad no es otra que reflejar el buen hacer que se ha llevado cabo en la
creación de nuestro modelo original.
Recordamos que la idea de partir de un modelo original conocido, es comenzar de una base fiable, de
la que se conoce toda la información para su desarrollo. Por tanto los resultados de este escalado no harán otra
cosa que comprobar la correcta colocación tanto de los centros de las articulaciones como de la posición de los
marcadores.
Como se observa en la tabla de resultados, los factores de escala aparecen con valores entorno a la
unidad lo que refleja, como se ha mencionado anteriormente, que el modelo virtual diseñado se asemeja al
real.
43
Implementación del protocolo de Newington Modificado en OpenSim.
L
6 CINEMÁTICA INVERSA
A herramienta que realiza la Cinematica Inversa (IK por su terminología en inglés, Inverse
Kinematics) de OpenSim trabaja sobre cada intervalo de los datos experimentales y las posiciones que
mejor coinciden con los marcadores experimentales y coordinan las informaciones para cada
secuencia temporal. De este modo calcula la mejor coincidencia de posición que minimiza la suma de los
errores cuadráticos de los marcadores y/o de las coordenadas. Para precisar aún más los resultados de la
Cinemática Inversa es necesario usar herramientas como la Optimización Estática (Static Optimization), el
Algoritmo del Reducción Residual (Residual Reduction Algorithm) y el Control del Calculo Muscular
(Computed Muscle Control). Dichas mejoras no serán implementadas y se proponen para futuras
investigaciones.
Figura 6.1 Archivos de Entrada y Salida en la Cinemática Inversa.
“Smiling is the best way to face any problem, to
crush every fear and to hide every pain.”
44
Los tras archivos que son necesarias de especificar para la resolución del problema de Cinemática
Inversa son:
- El modelo donde la Cinemática Inversa va a ser aplicada
- Los pesos de los marcadores y de las coordenadas que serán usados
- Las capturas dinámicas específicas con las que trabajarla Cinemática Inversa
6.1. DISPOSICIÓN DE ARCHIVOS
Los principales archivos necesarios para la resolución de la Cinemática Inversa son:
Joaquin3_simbody.osim: Este archivo contiene el modelo específico basado en el sujeto de estudio
que se ha generado en OpenSim con la herramienta de escalado mencionada anteriormente.
Trial11.trc: Contiene las trayectorias de los marcadores experimentales obtenidas durante la captura
dinámica de datos durante un determinado tiempo que permita el estudio de nuestro intereses.
Joaquin3_Setup_IK.xml: Este archivo alberga el peso de cada marcador. Como en la Scale Tool, los
pesos de los marcadores pueden variar y determinan como de preciso el marcador debe coincidir con
los experimentales (es decir, un mayor peso significara un menor error entre la posición del marcador
virtual y el experimental).
Trial11.mot (opcional): Contiene valores experimentales de las coordenadas generalizadas (Ángulos
de las articulaciones) de una captura obtenida por otro tipo de mecanismos de capturaa de movimiento
o a través algoritmos específicos. En nuestro caso, este archivo se obtuvo por este segundo método, tal
y como explica Martin Sosa, Ezequiel (Martin Sosa, 2015)
Joaquin_IK.mot: Se trata de un archivo de salida que contiene las trayectorias de las coordenadas
generalizadas calculadas a través de la Cinemática Inversa
6.2. CAMBIOS EN EL CÓDIGO. DEFINICIÓN DE ARTICULACIONES.
Previo paso a la descripción del funcionamiento de la Cinemática Inversa, es necesario realizar
algunas modificaciones en el código principal de nuestro modelo. Estos cambios vienen motivados por
intereses propios del estudio y hacen referencia a las articulaciones de la rodilla y del tobillo. Como se ha
comentado a lo largo de todo el trabajo, se busca reflejar el modelo real lo máximo posible en OpenSim. Sin
embargo durante la captura de datos que se realiza a través del programa VICON, se define un modelo en el
cual las articulaciones de la rodilla y del tobillo vienen definidas como pares esféricos.
45
Implementación del protocolo de Newington Modificado en OpenSim.
Desafortunadamente en el código de OpenSim no ocurre lo mismo. Para el caso de la rodilla, esta se
encuentra definida mediante un par de rotación en el eje Z, obviando los demás grados de libertad referidos a
los otros giros. Para solventar dicho obstáculo se definirán estos dos grados de libertad (respecto a los ejes X e
Y) manualmente. Para definir nuevos grados de libertas se debe añadir una nueva sección en <CoordinateSet>,
y se define el nombre que aparecerá posteriormente en la interfaz de OpenSim. Dentro de esta sección se
pueden aclarar el tipo de par que es (de rotación en este caso) y el rango de movimiento que tiene (siempre
expresado en radianes).
Figura 6.2 Definición del grado de libertad de rotación respecto al eje Y (Rotación de la Rodilla)
A continuación es necesario, definir el eje principal de rotación <axis> y el tipo de movimiento que
lleva a cabo definido en la sección <function>.
Figura 6.3 Características del grado de libertad
Análogamente a como se ha definido el ángulo que representa la rotación de la rodilla, se actúa con el
ángulo de abducción. La única diferencia significativa será que el eje de rotación de este movimiento será
respecto al eje X, de coordenadas [1 0 0].
La situación del tobillo es algo más delicada. El pie, al contrario que ocurre en VICON, se encuentra
definido por tres sólidos: talus, calcáneus y toes. Como se pudo comprobar en la Figura 4.2 Modelo de trabajo
de OpenSim., estos se encuentran relacionados a través de varias articulaciones. Al no tratarse de un sólido
único su movimiento se divide por las diferentes articulaciones que lo componen de manera que se asemeje al
movimiento real.
Sin embargo, al igual que ocurrió con la rodilla esta definición no nos conviene en nuestro estudio por
lo que se modifica el pie de manera que figure como un único sólido y que los tres grados de libertas asociados
a las tres rotaciones del par esférico se encuentren referidos a la articulación del tobillo, en este caso situada en
el sólido “talus”.
Para definir el pie como un sólido único, se propone como solución anular los movimientos relativos
entre los diferentes segmentos que lo componen. De esta manera, aun sin ser un sólido único, su
comportamiento sería como tal. Por tanto nuestro objetivo serán las articulaciones definida como “mpt_angle”
y “subtalar_angle” definiéndolas con un valor = constante que se prolongue a lo largo del tiempo.
46
Figura 6.4 Definición de la articulación <subtalar_r>.
La modificación del código se realiza en la sección denominada <SpatialTransform> y dentro de cada
grado de libertad, tanto en las tres rotaciones como en las tres translaciones se define en el campo <function>
una constante de valor 0.
Análogamente se procede con la articulación “subtalar” consiguiéndose de esta manera definir el pie
de manera que se comporte con un sólido único sin movimiento relativo entre sus partes. Posteriormente de la
misma manera que se ha procedido con la rodilla se le incluirán los tres grados de rotación al cuerpo “talus”,
obteniendo de este manera un modelo similar al que reconstruye VICON durante las capturas de los
marcadores.
6.3. FUNCIONAMIENTO DE LA CINEMÁTICA INVERSA
La herramienta de la Cinámica Inversa trabaja a través de cada intervalo de tiempo del movimiento y
calcula los valores de las coordenadas generalizadas que posicionan al modelo en la postura en la que mejor
coincidan los marcadores experimentales y los valores de coordenadas para ese intervalo de tiempo.
Matemáticamente, la mejor coincidencia es aquella que presente menor error cuadrático y cuya solución
minimice tanto el error de los marcadores como de las coordenadas.
6.3.1 Error en los marcadores
El error en los marcadores es la distancia entre el marcador experimental y el correspondiente en el
modelo cuando este es posicionado usando las coordenadas generalizadas calculadas mediante la Cinemática
Inversa. Cada marcador tiene un peso asociado a él, especificando con que precisión debe ser el error
minimizado.
47
Implementación del protocolo de Newington Modificado en OpenSim.
6.3.2 Error en las coordenadas
Un error en coordenadas es la diferencia entre el valor de una coordenada experimental y el valor de la
coordenada calculado con la IK.
El valor de una coordenada experimental puede ser varias cosas; la primera, pueden ser los ángulos de
una articulación obtenidos por medio de un sistema de captura de movimiento; otra posibilidad puede ser que
ese valor haya sido calculado por medio de otro tipo de algoritmo alternativo al IK; y el último tipo puede ser
mediante técnicas especializadas en medidas, las cuales llevan una técnica distinta de medición. El usar valores
de coordenadas experimentales es algo opcional, ya que OpenSim puede resolver la IK utilizando solamente
los correspondientes marcadores.
OpenSim puede diferenciar entre dos tipos de coordenadas: fijas (prescribed) variables (unprescribed).
Las coordenadas fijas son un tipo de coordenadas generalizadas, cuya trayectoria es conocida, y no se utilizará
la IK para calcularla. Normalmente se suelen utilizar en aquellas coordenadas generalizadas en las que se está
muy seguro de que el valor que tienen es el correcto.
Una coordenada variable (unprescribed) es aquella cuyo valor se calcula usando la herramienta IK.
Haciendo uso de su nombre, estas coordenadas son las únicas que pueden variar, y son aquellas que se utilizan
para realizar la ecuación de mínimos cuadrados que soluciona el IK. Cada coordenada variable que se compara
con una coordenada experimental debe tener asociado un peso a ella, este peso especificará la intensidad con la
que se minimiza el error de coordenadas.
6.3.3 Ecuación ponderada de mínimos cuadrados
A la hora de llevar a cabo la Cinemática Inversa, el problema se plantea se resume en la ecuación
ponderada de mínimos cuadrados:
min 𝑞 = [ ∑ 𝑤𝑖‖𝑥𝑖𝑒𝑥𝑝
− 𝑥𝑖(𝑞)‖2
+ ∑ 𝑤𝑖(𝑞𝑖𝑒𝑥𝑝
− 𝑞𝑗)2
]
𝑗∈𝑢𝑛𝑝𝑟𝑒𝑠𝑐𝑟𝑖𝑏𝑒𝑑 𝑐𝑜𝑜𝑟𝑑𝑠𝑖∈𝑡𝑜𝑑𝑜𝑠 𝑙𝑜𝑠 𝑚𝑎𝑟𝑐𝑎𝑑𝑜𝑟𝑒𝑠
Donde q es el vector de las coordenadas generalizadas siendo resuelta por xexpi que es la posición
experimental el marcador i, xi (q) es la posición del marcador correspondiente en el modelo, el cual depende
del valor de la coordenada, qexpj es el valor experimental de la coordenada j.
(wi) es el marcador de pesos y (wj) la coordenada de pesos . Este problema de mínimos cuadrados se resuelve
usando un programa de resolución cuadrática, el cual tiene un criterio de convergencia de 0,0001 y un límite
de 1000 iteraciones.
48
6.3.4 Como usar la herramienta de la Cinemática
Para realizar la Cinemática Inversa en OpenSim se selecciona en la pestaña Tools >> Inverse
Kinematics de la barra del menú principal, una vez abierta:
Figura 6.5. Ventana de la herramienta que realiza la Cinemática Inversa
La pestaña Settings se usa para especificar parámetros relacionados con la información de los
marcadores experimentales. Se pueden observa dos campos principales: Current Model (Modelo Actual) y IK
Trial (Captura IK). Por otro lado la pestaña Weights se usa para especificar el peso de los marcadores u de las
coordenadas usadas en la ecuación ponderada de mínimos cuadráticos.
Para trabajar con la pestaña Settings se ha partido del archivo Joaquin3_Setup_IK.xml, el cual contiene la
información necesaria para llevar a cabo la cinemática inversa mencionada anteriormente. Además dicho
fichero contiene la dirección de los nombres de los archivos que participaran en el proceso de resolución
Presionando el botón Load… se busca nuestro archivo de configuración para la Cinemática Inversa,
Joaquín3_Stup_IK.xml.
49
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 6.6. Ventana de la Inverse Kinematics Tool tras ejecutarse el archivo de configuración
La sección Ik Trial especifica la información de los marcadores experimentales que la Cinemática
Inversa unirá al modelo actual con el que se está trabajando. El campo Marker data for trial contiene la
dirección de la información de los marcadores (normalmente un archivo .trc). Se puede especificar el rango de
tiempo durante el cual se quiere realizar la cinemática Inversa en el campo Time Range. Por defecto este
campo se rellena con todo el tiempo que dura la captura dinámica, sin embargo como es el caso de este trabajo
nos quedaremos solo con un intervalo que contenga un ciclo de marcha completo, ya que el resto del la captura
de datos pierde información una vez completado el ciclo, provocando una mala resolución del problema. Por
último si se usan los valores de las coordenadas generalizadas en la captura dinámica, se puede especificar
(opcional) el archivo .mot, en nuestro caso el archivo Trial_grf11.mot obtenido mediante las Toolboxs de
Sosa, Ezequiel (Martin Sosa, 2015).
En principio la información de la pestaña de pesos no se ha modificado en exceso de la que provenía
del modelo por defecto de OpenSim Gait2392. Durante los diferentes ensayos del escalado se ha concluido
establecer un mismo peso para todos los marcadores de 10. Importante mencionar que este valor se puede
modificar en el caso que el error de algún marcador sea demasiado importante.
50
Pulsando el Botón “Run” comienza por tanto la resolución de la Cinemática Inversa.
Figura 6.7 Representación del Ciclo de Marcha en OpenSim.
Figura 6.8 Resultado de la Resolución de la Cinemática Inversa
51
Implementación del protocolo de Newington Modificado en OpenSim.
Durante el proceso de resolución de la Cinemática Inversa se generan, al igual que ocurría durante el
escalado, una serie de mensajes por parte de OpenSim. Como se ha comentado durante el desarrollo de este
capítulo, la cinemática Inversa trabaja para cada paso de tiempo dando para cada uno una serie de errores
. A la hora de evaluar los resultados de la cinemática Inversa, se darán como satisfactorios aquellos
resultados donde el error residual de los marcadores (RMS) sea inferior a los dos centímetros, mientras que el
error máximo entre marcador virtual y experimenta se permite que oscile entre 2 y 4 centímetros.
Para nuestro estudio, se cumplen ambos requisitos. Aunque los valores varían para cada paso de
tiempo como se puede observar en la imagen superior, nuestro error residual siempre se encuentra inferior al
centímetro, mientras que el error máximo oscila en el centímetro y el centímetro y medio.
52
53
Implementación del protocolo de Newington Modificado en OpenSim.
7 RESULTADOS
Durante la resolución del problema de Cinemática Inversa comentado en el capítulo anterior, se
obtienen fruto del movimiento la evolución de los ángulos asociados a las distintas articulaciones que
componen nuestro modelo de tren inferior, cadera, rodilla y tobillo.
Figura 7.1 Ángulos de flexión, abducción y rotación de la Cadera Derecha durante un ciclo de marcha.
54
Figura 7.2 Ángulos de flexión, abducción y rotación de la Rodilla Derecha durante un ciclo de marcha.
55
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 7.3 Ángulos de flexión, abducción y rotación del Tobillo Derecho durante un ciclo de marcha.
56
Figura 7.4 Ángulos de flexión, abducción y rotación de la Cadera Izquierda durante un ciclo de marcha.
57
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 7.5Ángulos de flexión, abducción y rotación de la Rodilla Izquierda durante un ciclo de marcha.
58
Figura 7.6 Ángulos de flexión, abducción y rotación del Tobillo Izquierdo durante un ciclo de marcha.
Contrastar la información obtenida de las anteriores gráficas se predice algo complicado, puesto que
no existe ningún modelo del que se tenga dicha información que trabaja del mismo modo que se ha realizado
en este estudio. No obstante, existen estudios similares que arrojan luz a los resultados obtenidos y que nos
pueden orientar sobre la validez de nuestros resultados. La opción barajada en este trabajo para comparar el
valor de los ángulos durante el ciclo de marcha es la aplicación del protocolo GOM (Global Optimization
59
Implementación del protocolo de Newington Modificado en OpenSim.
Method) a los datos iniciales con los que comenzó este proyecto, es decir, el archivo
Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat.
Partiendo de él, mediante un programa desarrollado en Matlab por el Departamento de Mecánica y
Fabricación de la Universidad de Sevilla, se obtiene un modelo de reconstrucción del cuerpo humano cuyos
diferentes segmentos se encuentran sometido a las mismas restricciones cinemáticas que en nuestro modelo en
OpenSim, de manera que se obtienen los ángulos que se quieren estudiar.
Figura 7.7 Ángulos de flexión para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un ciclo de marcha.
El primer grupo de gráficas que analizaremos serán las correspondientes a los ángulos de flexión en
las tres articulaciones, cadera, rodilla y tobillo pertenecientes al lado derecho. Comparándose dichas gráficas
con los valores obtenidos en OpenSim el resultado es más que satisfactorio. Tanto en la rodilla como en el
tobillo, las diferencias entre las gráficas reside en la sección de los ángulos de referencia en el sentido
contrario. Pasando por alto este detalle, ambos resultados se mueven entre los mismos valores y reflejan una
60
evolución parecida.
Figura 7.8 Ángulos de abducción para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un ciclo de marcha.
En nuestro segundo bloque nos encontramos con los ángulos asociados a la abducción propios de
nuestras tres articulaciones. Para la cadera ambas gráficas se mueven entre los mismos valores y tienen un
comportamiento similar, sin embargo tanto en la rodilla como en el tobillo los resultados son ligeramente
diferentes, si bien no se encuentran ningún valor demasiado preocupante, y los movimientos de ambas
articulaciones se mueven entre valores reales.
61
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 7.9 Ángulos de rotación para las articulaciones de la Cadera, Rodilla y Tobillo Derecho durante un ciclo de marcha.
Las evaluaciones de los ángulos de rotación los resultados son bastante congruentes con las obtenidos
en Matlab, si bien el principio y el final de la gráfica de la rotación de la cadera no se corresponden, en líneas
generales sí que lo hace asemejando mucho sus valores. Para la rotación de la rodilla en ambos casos los
valores oscilan en torno a -25 grados, al igual que ocurre para el tobillo donde ambos ciclos parecen muy
similares.
62
Figura 7.10 Ángulos de flexión para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante un ciclo de marcha.
Se observa que para los ángulos de flexión de las articulaciones localizadas en el lado izquierdo os
resultados vuelven a ser los esperados. Recordar que tanto para la rodilla como para el tobillo los ejes de
referencia son en sentido contrario lo que provoca que las gráficas sean del revés.
63
Implementación del protocolo de Newington Modificado en OpenSim.
Figura 7.11 Ángulos de abducción para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante un ciclo de marcha.
De nuevo para los ángulos de abducción, en este caso referidos al lado izquierdo, tanto para la cadera
como para la rodilla obtenemos resultados similares por ambos métodos. Mencionar que los datos de OpenSim
para la rodilla oscilan entre valores muy pequeños y cercanos a cero, pareciéndose a los resultados del GOM.
No obstante en la evolución de los ángulos del tobillo vemos algunas incongruencias en el comienzo del ciclo
de la marcha. Dicha variaciones podrían deberse a los cambios introducidos en el modelo, aunque no son
demasiado alarmantes.
64
Figura 7.12 Ángulos de rotación para las articulaciones de la Cadera, Rodilla y Tobillo Izquierdo durante un ciclo de marcha.
Finalmente los ángulos de las rotaciones, aunque su evolución no se asemeja demasiado a los ángulos
obtenidos por OpenSim, sus valores promedios son aproximados, sin encontrarse excesivas diferencias. Es
posible que sea de nuevo en el tobillo donde las gráficas dieran más unas de otras, mas al tratarse de diferentes
métodos y con los cambios introducidos en OpenSim a la hora de realizar la Cinemática, se entienden estas
pequeñas discrepancias.
65
Implementación del protocolo de Newington Modificado en OpenSim.
8 CONCLUSIONES Y TRABAJOS FUTUROS
La finalidad de este proyecto consistía en la implementación de un protocolo de marcadores, definido
como protocolo de Newington, en un modelo de tren inferior en OpenSim. Se han encontrado muchas
dificultades a la hora de moldear el programa para el interés de este estudio, siendo la primera de ellas la idea
de modificar el punto de partida por defecto que tiene el propio programa. Esta decisión surgió como premisa
con el objetivo de partir de una base fiable para el desarrollo del trabajo. Pese a que este requisito se ha
conseguido satisfactoriamente como se pudo comprobar a partir del escalado, si es cierto que se han dejado
algunos temas pendientes abordables en posteriores trabajos.
En primer lugar, a pesar de que, como ya se ha comentado con anterioridad, numéricamente el modelo
de nuestro sujeto en particular tiene tanto los marcadores virtuales, como las posiciones de los centros de las
articulaciones en puntos que se corresponden con el sujeto bajo estudio, gráficamente podría ser mejorable.
Como se puede observar en la Figura 4.17 Situación de los marcadores y centros de las articulaciones para
nuestro modelo., existen ciertos espacios en las articulaciones que como se puede comprender, no se asemeja a
la realidad. Como ya se comentó durante el procedimiento, uno de los puntos mejorables para la optimización
sería ser capaces de modificar la configuración por defecto de los distintos archivos que definen los diferentes
huesos que forman el modelo, de manera que este pudiese quedar estéticamente correcto.
Tras conseguir por tanto que el escalado comprobase que nuestro modelo virtual se asemejaba al
modelo experimental (en lo que a términos de posicionamiento de articulaciones y marcadores se refiere), se
ha realizado un estudio de la Cinemática del sujeto. Los datos de partida, al igual que para la creación del
modelo fueron una captura estática del sujeto, en este caso consistía en una captura dinámica donde se centra
el estudio en el tiempo que transcurre durante un ciclo de marcha completo.
Tras obtener los resultados de la Cinemática, surgió la disyuntiva sobre que otros resultados podrían
servir de guía para la evaluación de estos. Los resultados con los que se ha analizado este proyecto han sido
obtenidos a través de un archivo del programa Matlab, desarrollado por el Departamento de Ingeniería
Mecánica Y Fabricación de la Escuela Superior Técnica de Ingeniería de la Universidad de Sevilla, el cual, a
partir de los datos de la captura dinámica, implementa un protocolo de reconstrucción del cuerpo humano
denominado GOM estableciendo las mismas restricciones cinemáticas implementadas en nuestro modelo de
OpenSim. Partiendo de nuestro protocolo de marcadores de Newington, el GOM minimiza la distancia entre
las trayectorias de los marcadores virtuales con la de las trayectorias experimentales. Esta metodología difiere
ligeramente de la implementada en este estudio, ya que en OpenSim partimos de un modelo predefinido que se
asemeja antropomórficamente al sujeto particular bajo estudio. Tanto la colocación de marcadores y como la
definición de los parámetros cinemáticos, las cuales son muy susceptibles a las modificaciones, pueden ser
algunas de las razones por la cuales existen ligeras variaciones en la evolución de los ángulos que se han
observado en el Capítulo 7.
66
No obstante en general los resultados han sido satisfactorios, puesto que los ángulos que más
intervienen durante el ciclo de marcha, es este caso los de flexión, son prácticamente idénticos a los obtenidos
mediante el GOM., mientras que las variaciones ocurridas en el resto de ángulos son de valores pequeños.
Para mejorar esta comparación de resultados, se propone como trabajo futuro la implementación total
del protocolo de marcadores del Plug in Gait, definiéndose los marcadores virtuales que se calculan a través de
este método a través de OpenSim. Incluso si se desea mejorar los resultados de la Cinemática Inversa para
precisar aún, es necesario usar herramientas como la Optimización Estática (Static Optimization), el Algoritmo
del Reducción Residual (Residual Reduction Algorithm) y el Control del Calculo Muscular (Computed
Muscle Control), todas disponibles en OpenSim y cuyo estudio sería interesante de estudio.
Finalmente otro de los trabajos que se ha quedado pendiente para poder valorar con los suficientes
argumentos la implementación de OpenSim, es el estudio de la Dinámica Inversa, objetivo que se propuso al
comienzo de este proyecto en un comienzo y que sin embargo no ha sido posible de realizar. A pesar de todo
OpenSim se muestra como un programa con capacidades muy interesantes y que conviene investigar para el
futuro desarrollo de la Biomecánica.
67
Implementación del protocolo de Newington Modificado en OpenSim.
9 BIBLIOGRAFÍA
Andriacchi TP, O. J. (1977). Walking speed as a basis for normal and abnormal gait measurements. J.
Biomech. 1977.
Baker R. (2006). Gait analysis method in rehabilitation. En Neuroengineering Rehabil, vol 3, 2006 (pág. 4).
Beck R, A. T. (1981). Changes in the gait patterns of growing children. En J. Bone Joint Surg (págs. 1452-
1457).
Braune W, F. O. (1987). Der Gang des Menschen. Abh. Sächs. Ges. Wiss 1987.
DA, W. (1991). The biomechanics and Motor Control of Human gait: Normal, Elderly and Pathological.
University of Waterloo Press,Waterloo, Ontario 1991.
Egret CI, N. B. (2005). Kinematic analysis of the golf swing in men and women experienced golfers. En Int J
SPort Med,vol 27, sup 6, 2005 (págs. 597-603).
Gage JR. (1990). Surgical treatment of knee dysfunction in cerebral palsy. Clin. Orthop. 1990.
HH, M. (Ergonomics 1971). Female gait patterns in shoes with different heel heights.
Inman VT, R. H. (1981). Human walking. Williams and Wilkins. Baltimore, USA 1981.
J, P. (1992). Gait analysis. Normal and pathological unction. New York: Slack Incorporated 1992.
J. Sánchez-Lacuesta. (1993). Biomecánica de la marcha humana normal y patológica. Instituto de
Biomecánica de Valencia, 1993.
J.M.G.S.N.S.M. Comín, A. A. (1999). Análisis de las presiones plantares. Tecnicas y aplicaciones, Medicina
de rehabilitación 12.
J.P. Paul. (1998). History and fundamentals of gai analysis, Bio-Medical Materials and Engineering.
Jennifer Hicks, A. S. (2011, October 15). OpenSim Tutorial. AACPDM Anual Meeting, Las Vegas, NV.
Retrieved from SimTK.org/home/opensim
MacWilliams BA, D. J. (2005). Current challenges in clinical gait analysis. Procedings of the XXth ISB
Congress - ASB 29th Annual Meeting. Cleveland (USA).
Messier MP, L. R. (1992). Osteoarthritis of knee: effects on strengh and flexibility. Arch. Phys. Med Rehabil
1992.
Murray MP, D. A. (1964). Walking patterns of normal men. J. Bone Joint Surg 1964.
Murray MP, G. D. (1985). Antalgic maneuvers during walking in men with unilateral disability. Clin. Orthop.
1985.
Murray MP, G. D. (1971). Walking patterns of patients with unilateral hip pain due to osteo-arthritis and
avascular necrosis. J. Bone Joint Surg 1971.
Murray MP, K. K. (1969). Waalking patterns of healthy old men. J. Gerontol 1969.
Murray MP, K. R. (1970). Walking patterns of normal women.Arch. Phys. Med. Rehabil 1970.
Murray MP, M. L. (1984). Kinematics and EMG patterns during slow, free and fast walking. JOrthop. Res.
1984.
Ojeda Granja, J. (2012). Application of MultibodySystem techniqes to human locomotor System. Sevilla.
OpenSim User's Guide Release 2.4. (2012, April 4). Retrieved from http://opensim.stanford.edu
68
RB Davis, S. O. (1991). Agait data collectionand reduction technique. En Human Movement Sciences, vol 10,
1991 (págs. 575-587).
Sherman, M. A., Seth, A., & Delp, S. L. (2011). Symposium on HUman Body Dynamics. Symbody: Multibody
dynamics for biomedical research. Stanford University, Stanford,CA,USA.
Sosa, E. M. (2015). Estimación de la Fuerza de Reacción Articular en la Cadera Derecha de un sujeto
mediante Tecnicas de Análisis de Movimiento y Resonancias Magnéticas. Sevilla, Universidad de Sevilla.
Vicon Documentation.Vicon Motion Systems. Plug In Gait Modelling. Oxford, United Kindom.
Vilà, R. P. ( 2012). Application of Multibody Dynamics Techniques to the Analysis of Human Gait.
Weber W, W. E. (1992). Mechanics of the Human Walking Apparatus. Springer, Berlin 1992.
Whittle MW. (1991). Gait Analysis: An introduction, Butterworth-Heinemann. Oxford 1991.
69
Implementación del protocolo de Newington Modificado en OpenSim.
10 ANEXO A
A continuación se presenta el código del archivo de Matlab utilizado para el cálculo de la posición de
los marcadores y de los centros de rotación de las articulaciones a partir del archivo generado producto de
fichero .c3d obtenido mediante el programa Vicon:
clear all
clc
format long
% load('Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat')
load('Joaquin041112_GOM_spheric_fbStaticTrialRaw.mat')
MatTransf=[1 0 0;0 0 -1;0 1 0] %Matriz para cambiar los sistemas de
Cordenadas del Vicon al OS
MatTransf2=[0 1 0;0 0 -1;-1 0 0]%Matriz para cambiar los sistemas de
Coordenadas del Vicon del pie a OS
%Obtención del centro de masa de la pelvis como el pomedio de los
%valores obtenidos en el Vicon
x=0;y=0;z=0;
for i=22:24
for p=1:11
l=i-21;
t(p,l)=StorageRaw.pos(p,i);
end
end
for p=1:11
x=x+t(p,1);
y=y+t(p,2);
z=z+t(p,3);
end
x=x/11;
y=y/11;
z=z/11;
CMpel=[x y z]*MatTransf;
%Obtención de los valores de los centros de cordenadas de las
%articulaciones
LASI=StorageRaw.MODEL.modelMARKER.PEL.LASI*MatTransf;
RASI=StorageRaw.MODEL.modelMARKER.PEL.RASI*MatTransf;
LPSI=StorageRaw.MODEL.modelMARKER.PEL.LPSI*MatTransf;
RPSI=StorageRaw.MODEL.modelMARKER.PEL.RPSI*MatTransf;
RHEE=StorageRaw.MODEL.modelMARKER.RFOO.RHEE*MatTransf2;
RTOE=StorageRaw.MODEL.modelMARKER.RFOO.RTOE*MatTransf2;
LHEE=StorageRaw.MODEL.modelMARKER.LFOO.LHEE*MatTransf2;
LTOE=StorageRaw.MODEL.modelMARKER.LFOO.LTOE*MatTransf2;
RTHI=StorageRaw.MODEL.modelMARKER.RTHG.RTHI*MatTransf;
70
RKNE=StorageRaw.MODEL.modelMARKER.RTHG.RKNE*MatTransf;
LTHI=StorageRaw.MODEL.modelMARKER.LTHG.LTHI*MatTransf;
LKNE=StorageRaw.MODEL.modelMARKER.LTHG.LKNE*MatTransf;
RANK=StorageRaw.MODEL.modelMARKER.RSHA.RANK*MatTransf;
RTIB=StorageRaw.MODEL.modelMARKER.RSHA.RTIB*MatTransf;
LANK=StorageRaw.MODEL.modelMARKER.LSHA.LANK*MatTransf;
LTIB=StorageRaw.MODEL.modelMARKER.LSHA.LTIB*MatTransf;
RAJC_TIB=StorageRaw.MODEL.JOINT.RAJC.parentVec'*MatTransf;
RAJC_RFO=StorageRaw.MODEL.JOINT.RAJC.childVec'*MatTransf2;
LAJC_TIB=StorageRaw.MODEL.JOINT.LAJC.parentVec'*MatTransf;
LAJC_LFO=StorageRaw.MODEL.JOINT.LAJC.childVec'*MatTransf2;
RKJC_FEM=StorageRaw.MODEL.JOINT.RKJC.parentVec'*MatTransf;
RKJC_TIB=StorageRaw.MODEL.JOINT.RKJC.childVec'*MatTransf;
LKJC_FEM=StorageRaw.MODEL.JOINT.LKJC.parentVec'*MatTransf;
LKJC_TIB=StorageRaw.MODEL.JOINT.LKJC.childVec'*MatTransf;
RHJC_PEL=StorageRaw.MODEL.JOINT.RHJC.parentVec'*MatTransf;
RHJC_FEM=StorageRaw.MODEL.JOINT.RHJC.childVec'*MatTransf;
LHJC_PEL=StorageRaw.MODEL.JOINT.LHJC.parentVec'*MatTransf;
LHJC_FEM=StorageRaw.MODEL.JOINT.LHJC.childVec'*MatTransf;
% PELVIS
PEL_LOCAL=[(LASI(1)+RASI(1))/2 (LASI(2)+RASI(2))/2 0]; %Posicion del centro
de coordenadas de la pelvis situado en la mitad del RASI y LASI
ORpel_CMpel=-PEL_LOCAL;
PEL_GLOBAL=CMpel+PEL_LOCAL;
LASI=ORpel_CMpel+LASI;
LPSI=ORpel_CMpel+LPSI;
RPSI=ORpel_CMpel+RPSI;
%RIGHT FEMUR
RTHI=-RHJC_FEM+RTHI;
RKNE=-RHJC_FEM+RKNE;
%RIGHT TIBIA
RTIB=-RKJC_TIB+RTIB;
RANK=-RKJC_TIB+RANK;
%RIGHT FOOT
RHEE=-RAJC_RFO+RHEE;
RTOE=-RAJC_RFO+RTOE;
%LEFT FEMUR
LTHI=-LHJC_FEM+LTHI;
LKNE=-LHJC_FEM+LKNE;
%LEFT TIBIA
LTIB=-LKJC_TIB+LTIB;
LANK=-LKJC_TIB+LANK;
%LEFT FOOT
71
Implementación del protocolo de Newington Modificado en OpenSim.
LHEE=-LAJC_LFO+LHEE;
LTOE=-LAJC_LFO+LTOE;
%Una ve definidas las posiciones de los marcadores respecto a los cuerpos a
%los que estan referenciados será necesario definir la posción real de los
%centros de rotaciones
FRHJC=ORpel_CMpel+RHJC_PEL;
FLHJC=ORpel_CMpel+LHJC_PEL;
FRKJC=RKJC_FEM-RHJC_FEM;
FLKJC=LKJC_FEM-LHJC_FEM;
FRAJC=RAJC_TIB-RKJC_TIB;
FLAJC=+LAJC_TIB-LKJC_TIB;