ANÁLISIS BIOMECÁNICO DEL EJERCICIO FÍSICO CON SISTEMA KINECT INTEGRADO A
LABVIEW
1 1 1
Rodrigo Sánchez González , Aura A. Ruiz Heredia , Héctor García Estrada , Agustín I. Cabrera
1 2
Llanos , María G. Ramírez Sotelo
1
Departamento de Bioprocesos, Unidad Profesional Interdisciplinaria de Biotecnología del Instituto
Politécnico Nacional, México D.F
2
Departamento de Bioingeniería, Unidad Profesional Interdisciplinaria de Biotecnología del Instituto
Politécnico Nacional, México D.F
RESUMEN
El estudio científico de la actividad deportiva supone la participación de diferentes áreas o
disciplinas científicas que, con diversos sistemas de análisis y metodología diferenciados, intentan
describir, explicar y controlar las variables intervinientes en el complejo proceso del gesto
deportivo. Cuando el objeto del estudio se centra en la mejora de la actividad física o de los
resultados de cualquier deportista, aparecen una serie de perspectivas científicas de apoyo al
entrenamiento y, especialmente sobre su control
Por medio del uso de sistemas integrados como lo es el Kinect nos permite tener una herramienta
la cual permite integrarla a cualquier código que hayamos creado para la obtención de sus datos y
así poderlos utilizar a conveniencia. Para este caso toda la programación fue creada en LabVIEW
para tener toda la interconexión, así como el procesamiento de los datos.
Este artículo muestra la integración entre el dispositivo Kinect de la empresa Microsoft y la
plataforma de programación LabVIEW para hacer la adquisición y uso de los datos en una matriz
de posición espacial de cuerpo humano que nos da Kinect por medio sus cámaras y algoritmos, y
de esta manera crear un programa el cual nos muestre diversos datos sobre el movimiento del
cuerpo humano como lo son: Los ángulos en las extremidades, fuerzas aplicadas por el cuerpo
humano, velocidades lineal, velocidad angular. Todo esto para el análisis durante la práctica del
deporte para cualquier persona que desee analizar sus movimientos para así perfeccionar la
técnica necesaria para tener un mejor rendimiento en el deporte en práctica.
1. INTRODUCCIÓN
El estudio científico de la actividad deportiva supone la participación de diferentes áreas o
disciplinas científicas que, con diversos sistemas de análisis y metodología diferenciados, intentan
describir, explicar y controlar las variables intervinientes en el complejo proceso del gesto
deportivo. Cuando el objeto del estudio se centra en la mejora de la actividad física o de los
resultados de cualquier deportista, aparecen una serie de perspectivas científicas de apoyo al
entrenamiento y, especialmente sobre su control.
Los recientes avances de las cámaras de profundidad en 3D como lo es el sensor Microsoft Kinect,
han creado muchas oportunidades para la computación multimedia. El impacto del sensor Kinect
se ha extendido más allá de la industria del videojuego. Con su amplia accesibilidad y un bajo
costo, muchos investigadores y practicantes de la ciencias de la computadora, electrónica,
ingeniería y robótica están llevando esta tecnología para crear nuevas maneras de interactuar con
las máquinas y realizar otras tareas, desde ayudar a niños con autismo hasta asistir a médicos en
sala de operación.
2. TEORÍA
Kinect de Microsoft
El sensor Kinect incorpora diversas tecnologías avanzadas de sensado, más notablemente,
contiene un sensor de profundidad, una cámara a color, y una matriz de cuatro micrófonos que
provee una captura de cuerpo completo del movimiento en 3D, reconocimiento facial y
reconocimiento de voz. Para este trabajo se enfocará solamente a las capacidades de visión del
sistema Kinect.
Fig. 1 Elementos de Kinect
La figura 1 muestra el arreglo del proyector infrarrojo, la cámara a color, y la cámara infrarroja, el
sensor de profundidad consiste en la combinación del proyector infrarrojo con la cámara infrarroja,
que es un sensor semiconductor complementario oxido metálico (CMOS por sus siglas en inglés).
La tecnología de sensado de profundidad se basa en principio de luz estructurada. El proyector
infrarrojo es un láser infrarrojo que pasa a través de una rejilla de difracción y se convierte en un
conjunto de puntos infrarrojos. La figura 2 el procedimiento que hace Kinect para obtener los datos.
Fig. 2 Procedimiento para captura de datos a Kinect
En un rastreo de esqueleto, el cuerpo humano es representado por un número de uniones
representando las partes del cuerpo como son la cabeza, cuello, hombros y brazos.
Cada unión es representada por sus coordenadas en tres dimensiones, el objetivo es determinar
todos los parámetros de las tres dimensiones de estas uniones en tiempo real para permitir la
interacción fluida con recursos de cómputo limitados y no haya repercusiones en los sistemas que
interactúan con este.
Fig. 3 Puntos que Kinect identifica y sigue
Plataforma de programación LabVIEW
LabVIEW es un revolucionario ambiente de desarrollo gráfico con funciones integradas para
realizar adquisición de datos, control de instrumentos, análisis de mediciones y presentaciones de
datos. LabVIEW da la flexibilidad de un poderoso ambiente de programación sin la complejidad de
los ambientes tradicionales.
LabVIEW es una herramienta de programación gráfica. Originalmente este programa estaba
orientado a aplicaciones de control de instrumentos electrónicos usadas en el desarrollo de
sistemas de instrumentación, lo que se conoce como instrumentación virtual. Por este motivo los
programas creados en LabVIEW se guardarán en ficheros llamados VI, que significa instrumento
virtual (Virtual Instruments).
La integración del sensor Kinect en LabVIEW, nos brinda un entorno de programación simplificado
en el que nos permite visualizar datos de manera gráfica así como imágenes, secuencia de video y
creación de objetos en tres dimensiones en tiempo real creando así una interfaz amigable con el
usuario.
Debido a estos puntos justificados la integración de este sensor y la plataforma implementada, nos
brinda la opción de crear herramientas para que el usuario final tenga una opción de análisis del
ejercicio cubriendo las necesidades que requiera.
3. PARTE EXPERIMENTAL
A continuación se describen los elementos utilizados en el proceso integración del sensor Kinect a
la plataforma LabVIEW así como el diseño y construcción de los algoritmos en LabVIEW
Para la comunicación del sensor Kinect con la computadora, se necesitan .Net Framework y Kinect
for Windows SDK y la paquetería LabVIEW 2010 en adelante; El entorno LabVIEW a partir de esa
versión maneja la comunicación a dispositivos externos por medio de servicios XML y .NET
Framework necesarios para la comunicación con el sensor Kinect.
El diseño del algoritmo empieza con la inicialización de sensor Kinect desde LabVIEW para la
obtención de los valores dados por Kinect, para que puedan ser procesados por el algoritmo
creado por LabVIEW.
Fig. 4 Proceso para la obtención de datos
Puntos Kinect a Centímetros
Ya que se tiene la captura de los datos para su procesamiento se procede a la construcción del
programa la interpretación de los datos, el sensor Kinect nos da una matriz de datos que son
coordenadas espaciales en tres dimensiones, se tiene que hacer una interpretación de esos puntos
para pasarlos al sistema métricos y se puedan ser utilizados para los cálculos.
Para esto se crea un programa anexo al mencionado anteriormente para convertir esas
coordenadas dabas por Kinect a un valor de unidades numéricas como lo son los centímetros.
Igualmente se crea un modelo de esqueleto en tres dimensiones para hace el seguimiento con
este esqueleto a los puntos dados por Kinect para el despliegue de una imagen que represente los
movimientos de cuerpo humano en tiempo real
Fig. 5 Sujeto en pruebas de referencia para conversión de puntos
Ángulos de las extremidades
Para los ángulos de las extremidades se calcula primero la distancia con la ecuación con la
ecuación de la figura 6.
Fig. 6 Ecuación para el cálculo de la distancia entre dos puntos para tres dimensiones
Kinect nos da una matriz dinámica con base al movimiento del rastreo del esqueleto en tiempo real
en la cual nos da las tres coordenadas aptas para el cálculo con esta ecuación.
Fig. 7 Matriz de datos dada por Kinect, las filas son las uniones y columnas son su valor en cada eje.
Velocidad en cada unión dada por sensor Kinect
Ahora con el caso de la velocidad se hace la toma de los datos en un tiempo cero, después se
hace otra toma en un tiempo transcurrido previamente seleccionado para hacer el cálculo de la
velocidad en cada punto analizado por Kinect.
4. RESULTADOS
Con respecto a los resultados obtenidos las siguientes figuras se muestran las imágenes capturada
de la visualización de las cámaras de sensor Kinect.
Fig. 8 Visualización de cámara RGB
La cámara RGB se puede configurar para su visualización en resoluciones de 1040x720 pixeles
640x480 pixeles y 480x240 pixeles, teniendo una latencia de visualización mayor si aumenta la
resolución pero esto no afecta la obtención de los datos.
Fig. 9 Cámara de profundidad
Como se vio en la teoría la cámara de la profundidad ya está segmentada y lista para hacer
procesamiento necesario para que el algoritmo del Kinect haga el rastreo de esqueleto.
La creación de objeto en tres dimensiones así como su visualización en la interfaz en tiempo real
se muestra a continuación
Fig. 10 A la izquierda: imagen de cámara RGB, a la derecha: objeto creado en tres dimensiones para el seguimiento de
rastreo de esqueleto
Esta es la interfaz previa con la que el usuario puede interactuar para la visualización de todos los
datos e imágenes obtenidos y procesados.
Fig. 11 Panel frontal con la interfaz gráfica
Del lado izquierdo se tienen la cámara RGB y el objeto 3D, en la parte de arriba a la derecha se
tienen los valores espaciales del rastreo de esqueleto, sus valores en centímetros y la velocidad de
cada punto en cada dimensión, y en la parte de abajo a la derecha se encuentra el valor de ángulo
para extremidad.
5. CONCLUSIONES
La respuesta de la cámara es rápida y se puede visualizar en tiempo real, por medio del programa
podemos cambiar la latencia de los cuadros por segundos para respuesta de la cámara hasta
llegar a una velocidad de 30 cuadros por segundos, está velocidad es efectiva para la visualización
de cuadros detallados en movimientos rápidos.
La construcción del objeto 3D es ideal para visualizar el movimiento del cuerpo humano, así el
usuario puede enfocarse directamente en los movimientos representados por el objeto 3D para su
análisis.
El movimiento del objeto 3D es de una velocidad rápida para igualar al cuerpo humano,
coincidiendo con la velocidad máxima de la cámara RGB.
El cálculo de datos por medio de un ajuste de curva es la opción funcional para el cálculo de los
ángulos en las extremidades, ya que la respuesta de los valores obtenidos es lineal.
El manejo de datos de Kinect integrados a LabVIEW en tiempo real mejora la interacción para el
usuario en cuanto a la visualización de resultados en campo para la corrección de la técnica en el
lugar.
BIBLIOGRAFÍA
[1] Manuel Alberto Riveros M., “Biomecánica aplicada a la actividad física y el deporte”,
Universidad Santo Tomás, 1era edición, Madrid, 2011
[2] Marcos Gutiérrez Dávila, “Biomecánica deportiva”, ed. Síntesis, 2da edición, Bogotá, 1994
[3] J. López Chirraro, A. Fernández Vaquero, “Fisiología del ejercicio”, ed. Médica panamericana,
3da edición, Buenos Aires, 2010
[4] Miguel Izquierdo, “Biomecánica y bases neuromusculares de la actividad física y el deporte”, ed.
Médica panamericana, 3era edición, Buenos aires, 2008
[5] Leo Breiman, “Random forest”, Statistics department, University of California, Berkley CA, 2001
[6] Lenguajes de Programación [en línea]
<[Link]
[7] National Instruments [en línea]
<[Link]