Introducción
En el mercado existen sistemas especializados para la captura de movimiento, por ejemplo: PeakMotus (ViconTM), SkillSpectorTM, DartFishTMTM, entre otros. Estos sistemas son utilizados para adquirir las características del movimiento de un ser humano con un grado de precisión relativamente alto. Pueden clasificarse según su tecnología en: electromecánicos, electromagnéticos, inerciales y ópticos. La clasificación se ilustra en la Figura 1.
En los sistemas de captura de movimiento electromecánicos (Gypsy7TM ), la captura del movimiento se realiza usando sensores mecánicos. En el proceso de captura de movimiento, la persona viste unos trajes especiales, adaptables al cuerpo humano.
Estos trajes son generalmente estructuras rígidas compuestas de barras metálicas o plásticas, unidas mediante potenciómetros colocados en las principales articulaciones. Básicamente, el actor coloca la estructura en su cuerpo y mientras se mueve, el traje se adapta a los movimientos que este realiza; los movimiento. potenciómetros recogen toda la información del grado de rotación de las articulaciones. La desventaja de estos sistemas con respecto a otros, es la incapacidad de medir traslaciones globales (miden las posiciones relativas de los miembros, per no el desplazamiento del actor en el escenario). Por otro lado, dicho sistema supone que la mayoría de los huesos humanos están unidos por articulaciones de un grado de libertad con centro instantáneo de rotación fijo, pero no tiene en cuenta rotaciones complejas que se producen en las articulaciones humanas; las estructuras suelen ser rígidas y restringen el movimiento del actor.
Para los sistemas de captura de movimiento electromagnéticos (PolhemusTM ) 18, se dispone de una colección de sensores electromagnéticos que miden la relación espacial con un transmisor cercano. Los sensores se colocan en el cuerpo y se conectan a una unidad electrónica central; están constituidos por tres espiras ortogonales que miden el flujo magnético, determinando posición y orientación del sensor. Un transmisor genera un campo electromagnético de baja frecuencia que los receptores detectan y transmiten a la unidad electrónica de control.
En los sistemas de captura de movimiento inerciales (XsensTM) 27, se colocan sensores inerciales en distintas partes del cuerpo (acelerómetros triaxiales y giroscopios). Una ventaja es que se obtienen datos precisos de aceleración y orientación del individuo. Sin embargo, no es posible medir traslaciones globales y una desventaja es que estos sensores son muy sensibles a cambios en los campos magnéticos.
Los sistemas ópticos utilizan los datos recogidos por sensores de imagen para inferir la posición de un elemento en el espacio, utilizando una o más cámaras sincronizadas para proporcionar proyecciones simultáneas. Generalmente se usan marcadores pegados al actor, pero los sistemas más recientes permiten recoger datos confiables, rastreando superficies del sujeto identificadas dinámicamente. Estos sistemas entregan la posición cartesiana (x,y,z) de cada marcador en un marco de referencia inercial; la orientación de una superficie se calcula utilizando la posición relativa, de al menos, 3 marcadores. Los sistemas ópticos de captura de movimiento, permiten la grabación en tiempo real, con algunas limitaciones como son: el número de cámaras, marcadores y actores. Estos sistemas pueden capturar un gran número de marcadores a frecuencias del orden de hasta 2000 cuadros por segundo.
Los sistemas ópticos de captura de movimiento son los más utilizados en laboratorios de biomecánica 15 y se pueden clasificar como sistemas ópticos sin marcadores y con marcadores, estos a su vez se dividen en: activos y pasivos. En los sistemas ópticos con marcadores pasivos (ViconTM), se colocan al sujeto marcadores reflectantes en todos los puntos de interés de captura de movimiento, a diferencia de los sistemas ópticos activos (OptotrackTM ), donde se colocan marcadores activos (diodos emisores de luz [LED]). Una desventaja en los sistemas ópticos con marcadores es la oclusión; aquí los marcadores no aparecen en varias tomas de la cámara, debido a la obstrucción de la línea de visión de los objetos de la escena o por otras partes del cuerpo del sujeto. La mayoría de los paquetes de pos-procesamiento comerciales tienen la capacidad de tratar con los marcadores ocluidos; para ello se crean marcadores virtuales para sustituir la información de los ocluidos, o pueden usar marcadores redundantes (más que el mínimo requerido en el protocolo estándar), para compensar los marcadores ocluidos.
El movimiento de los marcadores se suele utilizar para deducir el movimiento relativo entre dos segmentos consecutivos, con el objetivo de definir con precisión el movimiento de una articulación. El movimiento de la piel (donde se coloca el marcador), en relación con el hueso subyacente, es el principal factor que limita la aplicación de algunos sensores 4, 14, 22.
Los sistemas de captura de movimiento sin marcadores, como la cámara Microsoft Kinect y Organic MotionTM, ofrecen una alternativa distinta a la tecnología de captura de movimiento 20. El Kinect es una cámara capaz de estimar la geometría 3D de la escena adquirida, a 30 cuadros por segundo; está construida con un sensor de profundidad de resolución espacial de 640 × 480 píxeles, una vídeo-cámara VGA de la misma resolución y un arreglo de micrófonos para reconocimiento de voz. El Kinect fue desarrollado como un dispositivo periférico para uso con la consola de juegos Xbox 360, aunque se ha adaptado fácilmente para otros campos como: la robótica 12, seguimiento del esqueleto humano 24, reconstrucción 3D 16, terapia asistencial 8 y biomecánica 23.
Con excepción del Kinect, la característica común de los sistemas descritos anteriormente es su alto costo y dificultad de implementación. Surge entonces el interrogante: ¿Es posible construir un sistema de captura de movimiento con Kinect de bajo costo y fácil implementación? En nuestro caso particular, un sistema de captura de movimiento permitirá extraer las trayectorias articulares de la marcha humana, con el fin de adaptarlas como referencias para el ciclo de marcha de un robot bípedo. Algunos autores han comparado el Kinect con otros sistemas de captura de movimiento con marcadores; en 7, 25, se comparan las variaciones de las posiciones cartesianas de un sistema de captura de movimiento con marcadores y Kinect; en 23 se comparan las variaciones de los ángulos de un brazo robótico obtenidas por Kinect y un sistema con marcadores. Estos aportes en el área, han sido trabajos sobre soluciones específicas que no integran la captura de movimiento para el cálculo de las trayectorias articulares de la marcha humana, propósito de este trabajo. En este estudio, se comparan las diferencias entre las trayectorias articulares obtenidas por un sistema de captura de movimiento con marcadores y Kinect; también se evalúa la variación de las medidas antropométricas entre los dos sistemas. Para cumplir con este objetivo, las piernas del sujeto de estudio se modelaron como una estructura robótica según los parámetros geométricos de Denavit- Hartenberg 11. Después se desarrolló una aplicación para transformar las coordenadas cartesianas que entregan los dos sistemas de captura de movimiento en coordenadas articulares; en esta parte se propuso un nuevo algoritmo, basado en los mínimos cuadrados para el cálculo de la cinemática inversa, utilizando las coordenadas cartesianas del experimento y el modelo geométrico de las piernas. Posteriormente, estos datos fueron analizados estadísticamente, mostrando el error y la varianza asociada a las medidas antropométricas y articulares.
Diseño del experimento
Para realizar el experimento de captura de movimiento, se dispuso de un sistema con 12 cámaras OptiTrackTM con resolución de 1280 × 1024 píxeles, una caminadora con velocidad variable, un sensor Kinect y el software apropiado para la recolección de datos. El experimento se realizó en el Laboratorio de biomecánica de la Universidad Autónoma de Occidente. La idea básica de funcionamiento del sistema óptico utilizado, es que cada una de las cámaras envía luz infrarroja que se refleja de regreso cuando choca con una superficie reflectante. La posición cartesiana (x, y, z) del centro de un marcador reflectante (normalmente esférico) puede ser identificado por la intersección de las luces infrarrojas de tres cámaras. Kinect entrega también, la posición cartesiana (x, y, z) de 20 puntos articulares del esqueleto óptico del usuario; para miembros inferiores son 8 vectores que contienen las tres posiciones cartesianas de cada uno. Dichos vectores, corresponden a la cadera, la rodilla, el tobillo y la posición del metatarso del pie en cada una de las piernas.
La Figura 2 muestra al sujeto de estudio con 15 marcadores unidos a los miembros inferiores de su cuerpo. La distribución de marcadores en el cuerpo sigue un protocolo determinado. El protocolo Helen Hayes, implementado en este experimento, es un protocolo estándar muy utilizado para el análisis de la marcha 6. El sujeto de prueba fue una mujer sana sin antecedentes de problemas músculo-esqueléticos. La altura fue de 154cm, su peso fue 54kg y la edad de 22 años; su participación en este estudio fue voluntaria. Este trabajo contó con el aval del Comité de Ética de la Vice-rectoría de Investigaciones de la Universidad del Cauca (Colombia).
Cada pierna se modeló con los parámetros geométricos de Denavit-Hartenberg 11. En la Figura 3, se muestra la ubicación de ejes para la pierna derecha; en este diagrama nos interesa ver la evolución temporal de las articulaciones de la Tabla 1.
La tabla de parámetros geométricos de la pierna derecha para la Figura 3 se muestra en la Tabla 2, donde D3 es la longitud del fémur, D4 es la longitud de la tibia y D5 es la distancia que hay entre el tobillo y la posición del metatarso del pie. Las coordenadas articulares q 1, q 2,…,q 5 son los ángulos en los distintos planos: transversal, sagital y frontal; la especificación de cada uno de ellos se puede leer en la Tabla 1.
La selección de los parámetros y los grados de libertad de la Tabla 1 se hizo con el fin de adaptar las trayectorias articulares de un ser humano a las trayectorias angulares que deben seguir los servomotores del robot bípedo Bioloid. Es por esta razón que las articulaciones de los miembros inferiores se modelan como si fueran la piernas de un robot. Para que las trayectorias articulares sean independientes del marco de referencia del sistema de captura de movimiento (Vicon o Kinect), se hace una transformación homogénea entre el referente del sistema de visión y el marco de referencia cero de la pierna 9. Los datos para ambos sistemas fueron adquiridos mediante archivos de texto en formato ASCII (*.txt). Las coordenadas de cada marcador se registraron en metros, estos archivos fueron importados en Matlab© y se transformaron los datos de ambos sistemas en alineación con el marco de referencia cero de la pierna mediante una matriz de transformación homogénea 2, como se explica en la siguiente sección.
Modelo geométrico directo de la pierna
El modelo geométrico directo permite calcular la posición cartesiana y orientación de cada una de las articulaciones de la cadena cinemática de la Figura 3 en el referente del Kinect < xk , yk , zk >. El vector que denota la posición cartesiana del referente cero con respecto al marco de referencia inercial (Sistema de Captura de movimiento, Vicon o Kinect) es gp0 y la matriz de rotación que denota la orientación del referente cero con respecto al marco de referencia inercial es gR0. El sentido de la marcha en el eje x. La matriz de rotación se escribe en términos de los ángulos de euler ϕ, θ y ψ.
Donde
Para facilidad en la notación se define
La transformación gT0(σ) permite expresar la posición de la cadera en términos del marco de referencia inercial. La matriz de transformación para pasar del marco de referencia j a i está definida por un vector iPj que expresa la posición del marco j en i y una matriz de rotación iRj que relaciona la orientación del marco j en i. La matriz de rotación depende, además, del vector de posiciones articulares q.
Donde:
Los parámetros αj , dj qj y rj fueron presentados en la Tabla 2.
Trayectorias articulares como un problema de optimización
La anatomía humana se puede representar mediante una secuencia de cuerpos rígidos conectados por articulaciones 1. Kinect permite el seguimiento óptico del esqueleto humano y entrega las coordenadas cartesianas (x, y, z) de 20 puntos articulares. Por otra parte, el sistema de marcadores ofrece las coordenadas cartesianas (x, y, z) de cada uno de los marcadores adheridos al sujeto de estudio según el protocolo Helen Hayes. En este trabajo estamos interesados en las trayectorias articulares de los miembros inferiores en el plano sagital y frontal. Por lo tanto, fue necesario desarrollar una aplicación para transformar las coordenadas cartesianas (x, y, z) en coordenadas articulares (q 1, q 2, . . . , q n). Generalmente este problema se resuelve utilizando cinemática inversa 17. Los intentos por resolver el problema de cinemática inversa en robótica, han utilizado numerosos enfoques que van desde iteraciones sucesivas del modelo geométrico, diversas técnicas de optimización 3 y métodos basados en aprendizaje, 10, 26. El problema de cinemática inversa consiste en mapear del espacio cartesiano al espacio articular, esto significa encontrar la función no lineal:
Donde q ref ∈ 󠇏IRSm es el vector de coordenadas articulares, Xh ∈ IR 3m es el vector con las coordenadas cartesianas obtenidas mediante el sistema de captura de movimiento. Siendo m el número de marcadores considerados y n el número de grados de libertad del robot. Las técnicas analíticas tiene la ventaja de un cálculo más rápido, pero están limitadas a robots con un pequeño número de articulaciones. Los métodos basados en optimización son más genéricos y tienen la ventaja de incorporar restricciones físicas y/o geométricas.
Con el fin de resolver el problema de cinemática inversa por optimización, la función de costo 4 llamada error de marcador, es minimizada. La función error de marcador, se define como la distancia entre un marcador (o centro de la articulación) experimental y el marcador virtual correspondiente. En cada intervalo de tiempo, el algoritmo de mínimos cuadrados calcula un vector de coordenadas q ref (tk ) que minimiza la suma de la norma del error de marcador.
Donde
Procesamiento de las Señales de Captura de Movimiento
El procedimiento utilizado para calcular las trayectorias angulares de la pierna derecha en un ciclo normal del marcha se muestra en la Figura 4.
La Figura 4 muestra el diagrama en bloques del procesamiento de la señal de captura de movimiento. Primero, la adquisición de datos se hace simultáneamente para ambos sistemas de captura, Vicon a 240 Hz y Kinect a 30 Hz durante un periodo de 3 segundos, este tiempo es suficiente para obtener las trayectorias angulares de la pierna derecha durante un ciclo de marcha. Ambos sistemas entregan un vector X que contiene las coordenadas cartesianas de todas las articulaciones, cada uno de sus componentes es un vector en IR
3. El bloque filtrado de la señal se encarga de eliminar frecuencias no deseadas, se implementó un filtro Butterworth con
Las trayectorias cartesianas filtradas Xʄ se transforman en trayectorias articulares q ref mediante la cinemática inversa. Finalmente con el propósito de comparar cualitativamente las trayectorias medidas por ambos sistemas de captura de movimiento se deben graficar las trayectorias medidas por los dos sistemas de captura. Sin embargo como los sistemas se ejecutan a diferentes frecuencias de muestreo y el instante de inicio no es el mismo para los dos, para alinear en el tiempo las trayectorias se utilizó el algoritmo de procesamiento de señales Dynamic Time Warping que permite alinear en el dominio del tiempo dos señales capturadas a distintas frecuencias de muestreo 2.
Resultados y discusión
El procesamiento de las señales de captura de movimiento es un factor muy importante para el análisis de resultados. En ésta sección, se muestran los resultados de las trayectorias angulares de la pierna derecha en un ciclo normal de marcha, las diferencias obtenidas por medio de ambos sistemas de captura de movimiento se calculan en forma gráfica y cuantitativa.
Dynamic Time Warping
DTW por sus siglas en inglés es un algoritmo para encontrar un alineamiento óptimo de dos secuencias (dependientes del tiempo). Esta técnica ha sido usada para aplicaciones del reconocimiento de voz, y clasificación del movimiento humano 28.
Dadas dos series temporales X = [x 1,...,x nx ]T ∈ IRnx y Y=[y 1,...,yny ]T ∈ IR ny , DTW permite alinear X y Y tal que la siguiente norma es minimizada:
Donde W x y W y son matrices con la dimensión adecuada que solamente contienen los valores discretos (0, 1), el algoritmo se puede estudiar en detalle en 21. En la Figura 5 se muestra el resultado del alineamiento temporal para la articulación de la cadera en el plano sagital, q3 aquí se puedeinferir que al aplicar DTW para ambas señales 83 puntos que minimizan la Ecuación 5.
Las principales articulaciones asociadas con la locomoción humana son: la cadera, la rodilla, tobillos y el metatarso del pie. El movimiento de la cadera combinada con la rotación de la pelvis permite alargar el paso, 5. Durante un ciclo de marcha, el movimiento de la cadera en el plano sagital es esencialemente sinusoidal. Por lo tanto, el fémur se mueve de atrás hacia adelante y viceversa. La articulación de la rodilla permite los movimientos de flexión y extensión de la pierna durante la locomoción. La Figura 6 muestra la comparación de trayectorias angulares obtenidas por el procedimiento indicado en la Figura 4.
Para comparar de manera cuantitativa las trayectorias se estableció como métrica el error RMS, definido como:
Donde N es el número total de datos utilizado en el intervalo de tiempo de duración de la trayectoria, Ki es la medida i del Kinect y Vi es la medida de Vicon para una trayectoria articular dada. Los resultados obtenidos para cada articulación se presentan en la Tabla 3.
Existe una diferencia entre los dos conjuntos de datos debido a los diferentes métodos de captura de posición articular. El Kinect utiliza algoritmos de procesamiento de imágenes basado en la silueta del participante para las coordenadas X e Y y se basa en un sensor de profundidad infrarrojo para la coordenada Z.
El algoritmo de esqueletización del Kinect es en esencia, sólo una estimación de la posición de las articulaciones, debido al algoritmo de captura de movimiento sin marcadores 20; mientras que Vicon triangula el punto central de los grupos de marcadores colocados en las posiciones articulares de interés. Este factor determina el que error RMS sea mayor para la articulación q 1, correspondiente a la rotación de la cadera en el plano transversal.
Para comparar las medidas antropométricas del fémur se midió directamente la longitud del fémur del sujeto de estudio con una cinta métrica, con el propósito de comparar las medidas obtenidas con los sistemas ópticos y un tercer sistema de referencia. Los resultados se presentan en la Tabla 4.
La Figura 7 muestra una distribución de los datos obtenidos por Kinect para la longitud del fémur, estos se aproximaron por una curva Gaussiana de media igual a 0.418 m, con una desviación estándar de 0.013 m, mientras que la Figura 7b muestra una distribución gaussiana para la longitud del fémur tomada con Vicon de media igual a 0.413 m, con una desviación estándar de 0.003 m. Aunque ambos sistemas coinciden con dos cifras significativas en la longitud del fémur, el sistema Vicon resulta ser 0,013/0,03 ≈ 12 veces más preciso que el Kinect.
Los estudios para determinar la resolución espacial del Kinect en las coordenadas X, Y, Z, evidencian que el error asociado a la medición de las coordenadas cartesianas aumenta a medida que el sujeto de análisis se aleje del sensor (escala logarítmica), obteniendo valores mínimos y máximos de: 1 mm hasta 6.5 mm para las coordenadas X e Y; y 2mm hasta 5cm en la coordenada Z, para valores de distancia del sujeto de estudio al sensor de 0.8 m hasta 4 m respectivamente, 13. Las desviaciones en la medidas de las coordenadas es considerable frente a la presencia de fuentes parásitas infrarrojas, por tal motivo es necesario realizar un adecuado control de estas.
Aunque este trabajo solamente contó con un participante, en la Ref. 19 donde se tuvieron 25 sujetos de estudio (para una mayor validez estadística), los autores llegaron a la misma conclusión principal presentada aquí.
Conclusiones
En este trabajo se compararon las trayectorias de la marcha humana obtenidas mediante dos sistemas de captura de movimiento. Para ello se implementó un algoritmo para la estimación de las posiciones articulares humanas a partir de las posiciones cartesianas mediante ajuste por mínimos cuadrados. Los resultados antropométricos obtenidos con Kinect mostraron una mayor varianza en relación a los obtenidos con Vicon en una razón 1/12. Los movimientos a lo largo del plano Z afectan significativamente la precisión de las lecturas basadas en Kinect, en consecuencia las trayectorias articulares no coinciden con el sistema Vicon.
La sincronización de los sistemas de captura de movimiento es esencial, aunque ambos sistemas trabajan a frecuencias de muestreo distintas, el algoritmo DTW permite alinear en el dominio del tiempo ambas señales y permite comparar de manera cualitativa las dos formas de onda. El sistema de captura de movimiento con Kinect es de bajo costo y fácil instalación y se presenta como una opción para realizar un estudio preliminar de los parámetros cinemática de la marcha humana. Sin embargo, el análisis de los datos de validación indica que el sensor Kinect no se puede emplear para hacer un análisis de movimiento humano preciso. La mejora de los algoritmos y métodos experimentales para la captura de movimiento humano con Kinect sigue siendo una área activa e interesante para la investigación.