Sistema automatizado de deteccion de anomal as en la forma ...

77
UNIVERSIDAD POLIT ´ ECNICA DE MADRID ESCUELA T ´ ECNICA SUPERIOR DE INGENIER ´ IA Y DISE ˜ NO INDUSTRIAL Grado en Ingenier´ ıa Electr´ onica y Autom´atica Industrial TRABAJO FIN DE GRADO Sistema automatizado de detecci ´ on de anomal ´ ıas en la forma de caminar Paula ´ Alvarez Guti´ errez Cotutor (si lo hay): Miguel Hernando Guti´ errez Departamento: Ingenier´ ıa El´ ectrica, Electr´ onica Autom´ atica y F´ ısica Aplicada Tutor: Alberto Brunete Gonz´ alez Departamento: Ingenier´ ıa El´ ectrica, Electr´ onica Autom´ atica y F´ ısica Aplicada Madrid, Septiembre, 2017

Transcript of Sistema automatizado de deteccion de anomal as en la forma ...

Page 1: Sistema automatizado de deteccion de anomal as en la forma ...

UNIVERSIDAD POLITECNICA DE MADRID

ESCUELA TECNICA SUPERIOR DE INGENIERIA Y

DISENO INDUSTRIAL

Grado en Ingenierıa Electronica y Automatica Industrial

TRABAJO FIN DE GRADO

Sistema automatizado dedeteccion de anomalıas en la

forma de caminar

Paula Alvarez Gutierrez

Cotutor (si lo hay): MiguelHernando GutierrezDepartamento: IngenierıaElectrica, ElectronicaAutomatica y Fısica Aplicada

Tutor: Alberto Brunete GonzalezDepartamento: IngenierıaElectrica, ElectronicaAutomatica y Fısica Aplicada

Madrid, Septiembre, 2017

Page 2: Sistema automatizado de deteccion de anomal as en la forma ...

ii

Page 3: Sistema automatizado de deteccion de anomal as en la forma ...

UNIVERSIDAD POLITECNICA DE MADRID

ESCUELA TECNICA SUPERIOR DE INGENIERIA Y

DISENO INDUSTRIAL

Grado en Ingenierıa Electronica y Automatica Industrial

TRABAJO FIN DE GRADO

Sistema automatizado dedeteccion de anomalıas en la

forma de caminar

Paula Alvarez Gutierrez

Miguel Hernando Gutierrez Alberto Brunete Gonzalez

Page 4: Sistema automatizado de deteccion de anomal as en la forma ...

iv

Page 5: Sistema automatizado de deteccion de anomal as en la forma ...

v

Copyright c©2017. Paula Alvarez GutierrezEsta obra esta licenciada bajo la licencia Creative CommonsAtribucion-NoComercial-SinDerivadas 3.0 Unported (CC BY-NC-ND 3.0). Para ver una copia deesta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/deed.es o envıe una cartaa Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, EE.UU.Todas las opiniones aquı expresadas son del autor, y no reflejan necesariamente las opiniones dela Universidad Politecnica de Madrid.

Page 6: Sistema automatizado de deteccion de anomal as en la forma ...

vi

Page 7: Sistema automatizado de deteccion de anomal as en la forma ...

vii

Tıtulo: Sistema automatizado de deteccion de anomalıas en la forma de caminarAutor: Paula Alvarez GutierrezTutor: Alberto Brunete GonzalezCotutor: Miguel Hernando Gutierrez

EL TRIBUNAL

Presidente:

Vocal:

Secretario:

Realizado el acto de defensa y lectura del Trabajo Fin de Grado el dıa ....... de.................... de ... en .........., en la Escuela Tecnica Superior de Ingenierıa y DisenoIndustrial de la Universidad Politecnica de Madrid, acuerda otorgarle la CALIFI-CACION de:

VOCAL

SECRETARIO PRESIDENTE

Page 8: Sistema automatizado de deteccion de anomal as en la forma ...

viii

Page 9: Sistema automatizado de deteccion de anomal as en la forma ...

Agradecimientos

A mi familia, en especial a mis padres y a mi hermana, por estar siempre ahı.

A mis amigos y al resto de companeros de clase, por hacer de estos cinco anos lagran experiencia que han sido.

A mis companeros de laboratorio, por prestarse siempre gustosamente a ayudarmey hacer de conejillos de indias en las pruebas.

Por supuesto tambien agradecer a mi tutor y mi cotutor, Alberto y Miguel, laayuda recibida durante este tiempo y el haberme dado la oportunidad de realizareste proyecto.

Y por ultimo, a todos aquellos con los que me he cruzado en la vida, para bien opara mal, porque si no nos hubieramos cruzado quiza no estarıa escribiendo estaslıneas.

ix

Page 10: Sistema automatizado de deteccion de anomal as en la forma ...

x AGRADECIMIENTOS

Page 11: Sistema automatizado de deteccion de anomal as en la forma ...

Resumen

Este proyecto tiene como mision dotar a la comunidad medica de un sistemade analisis de la marcha mas sencillo y accesible que los que se usan actualmente,siendo ademas fiable y preciso. Para recoger los datos de la marcha se ha usado eldispositivo Kinect para Xbox One por sus prestaciones, mejoradas con respecto asu version anterior.

Se han estudiado distintos montajes para realizar las pruebas, con el sensor estati-co y en movimiento, para determinar su viabilidad y poder ofrecer distintas propues-tas en funcion del espacio y de los recursos de los que se disponga. Para ello se hanusado un carrito auxiliar, un robot movil y una cinta de andar.

En cuanto a la interfaz, se ha disenado de forma sencilla, con una unica ventanaa traves de la que se puede controlar el estado de la prueba de un vistazo. Una vezfinalizada la prueba, un informe recoge todos los datos adquiridos para analizarlosen profundidad. Para crear la aplicacion se ha usado el entorno de desarrollo VisualStudio 2015 y C# como lenguaje.

Palabras clave: Kinect, marcha, C#.

xi

Page 12: Sistema automatizado de deteccion de anomal as en la forma ...

xii RESUMEN

Page 13: Sistema automatizado de deteccion de anomal as en la forma ...

Abstract

This project has as mission giving the medical community a simpler and moreaccessible gait analysis system than the ones that are used nowadays, being alsoreliable and accurate. We used the Kinect for Xbox One device to collect gait databecause of its performances, improved with regard to its previous version.

Different mountings have been studied to make the tests, with the sensor staticand in movement, to determine its viability and to offer different proffers dependingon the available space and resources. For that we used an auxiliary cart, a mobilerobot and a treadmill.

As for the interface, it has been designed in a simple way, with an only windowthrough which it is possible to control the state of the test at one glance. Once thetest is over, a report gathers all the acquired data to analyze it in depth. To createthe application it has been used the developing environment Visual Studio 2015 andC# as language.

Keywords: Kinect, gait, C#.

xiii

Page 14: Sistema automatizado de deteccion de anomal as en la forma ...

xiv ABSTRACT

Page 15: Sistema automatizado de deteccion de anomal as en la forma ...

Indice general

Agradecimientos IX

Resumen XI

Abstract XIII

Indice XVI

1. Introduccion 1

1.1. Motivacion del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.3. Materiales utilizados . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4. Marco teorico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4.1. Marcha normal . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4.2. Marcha patologica . . . . . . . . . . . . . . . . . . . . . . . . 4

1.5. Estructura del documento . . . . . . . . . . . . . . . . . . . . . . . . 4

2. Estado del arte 7

2.1. Dispositivos similares a Kinect . . . . . . . . . . . . . . . . . . . . . . 7

2.1.1. Intel RealSense . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1.2. Xtion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1.3. CamBoard pico . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.1.4. Structure Sensor . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2. Proyectos con Kinect . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.1. Rehabilitacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.2. Educacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2.3. Uso en comercios . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2.4. Interfaces sin contacto . . . . . . . . . . . . . . . . . . . . . . 10

2.3. Analisis de la marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.4. E-Motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3. Diseno del sistema 13

3.1. Componentes del sistema . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.1.1. Kinect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.1.2. Plataformas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.2. Entorno de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

xv

Page 16: Sistema automatizado de deteccion de anomal as en la forma ...

xvi INDICE GENERAL

4. Diseno e implementacion 194.1. Diseno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2. Implementacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.1. Entornos de desarrollo . . . . . . . . . . . . . . . . . . . . . . 234.2.2. Librerıas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.2.3. Conteo de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5. Resultados y discusion 375.1. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.1.1. Vista lateral . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.1.2. Ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.1.3. Cinta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.1.4. Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.2. Discusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475.2.1. Vista lateral . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475.2.2. Ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475.2.3. Cinta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.2.4. Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

6. Gestion del proyecto 496.1. Planificacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.1.1. Evolucion del planteamiento . . . . . . . . . . . . . . . . . . . 496.2. Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

7. Conclusiones 517.1. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517.2. Desarrollos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

A. Anexo A 53

Bibliografıa 57

Page 17: Sistema automatizado de deteccion de anomal as en la forma ...

Indice de figuras

1.1. Ciclo de la marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1. Intel RealSense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2. Structure Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.3. Medico y paciente usando VirtualRehab . . . . . . . . . . . . . . . . 92.4. Imagenes del funcionamiento de Shopperception . . . . . . . . . . . . 102.5. Cirujano utilizando el sistema GestSure durante una operacion . . . . 112.6. Distintas formas de estudio de la marcha . . . . . . . . . . . . . . . . 12

3.1. Kinect para Xbox One . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2. Componentes de Kinect . . . . . . . . . . . . . . . . . . . . . . . . . 153.3. Sistema de coordenadas de Kinect . . . . . . . . . . . . . . . . . . . . 153.4. Robot Marvin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.5. Cinta de andar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.6. Montaje del sistema completo con cinta de andar . . . . . . . . . . . 18

4.1. Diagrama de clases . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.2. Diagrama de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . 204.3. Pantalla principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.4. Aviso de altura de pies no valida . . . . . . . . . . . . . . . . . . . . 214.5. Dialogo de introduccion de la distancia entre la superficie de apoyo y

el suelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.6. Dialogo de guardado del archivo de resultados . . . . . . . . . . . . . 224.7. Aviso de error al guardar el nombre o la ubicacion del archivo . . . . 234.8. Menu de asignacion de graficas . . . . . . . . . . . . . . . . . . . . . 234.9. Vista de la interfaz durante la grabacion . . . . . . . . . . . . . . . . 244.10. Informe de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.11. Altura de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.12. Ancho de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.13. Torax-cadera en el eje x . . . . . . . . . . . . . . . . . . . . . . . . . 264.14. Torax-cadera en el eje y . . . . . . . . . . . . . . . . . . . . . . . . . 274.15. Torax-cadera en el eje z . . . . . . . . . . . . . . . . . . . . . . . . . 274.16. Cadera derecha en el eje x . . . . . . . . . . . . . . . . . . . . . . . . 284.17. Cadera derecha en el eje y . . . . . . . . . . . . . . . . . . . . . . . . 284.18. Cadera izquierda en el eje x . . . . . . . . . . . . . . . . . . . . . . . 294.19. Cadera izquierda en el eje y . . . . . . . . . . . . . . . . . . . . . . . 294.20. Torax-hombros en el eje x . . . . . . . . . . . . . . . . . . . . . . . . 304.21. Torax-hombros en el eje z . . . . . . . . . . . . . . . . . . . . . . . . 304.22. Longitud de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

xvii

Page 18: Sistema automatizado de deteccion de anomal as en la forma ...

xviii INDICE DE FIGURAS

4.23. Torax-central en el eje x . . . . . . . . . . . . . . . . . . . . . . . . . 314.24. Torax-central en el eje z . . . . . . . . . . . . . . . . . . . . . . . . . 324.25. Numero de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.26. Extremo del pie derecho en el eje y . . . . . . . . . . . . . . . . . . . 334.27. Extremo del pie izquierdo en el eje y . . . . . . . . . . . . . . . . . . 334.28. Tobillo izquierdo en el eje y . . . . . . . . . . . . . . . . . . . . . . . 344.29. Tobillo derecho en el eje y . . . . . . . . . . . . . . . . . . . . . . . . 344.30. Ventana de Visual Studio 2015 . . . . . . . . . . . . . . . . . . . . . . 354.31. Ventana de Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.1. Prueba lateral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.2. Muestra a filtrar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.3. Enventanado de Haar . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.4. Enventanado de Bartlett . . . . . . . . . . . . . . . . . . . . . . . . . 415.5. Enventanado Binomial . . . . . . . . . . . . . . . . . . . . . . . . . . 415.6. Enventanado de Hann . . . . . . . . . . . . . . . . . . . . . . . . . . 425.7. Enventanado de Hamming . . . . . . . . . . . . . . . . . . . . . . . . 425.8. Enventanado de Blackman . . . . . . . . . . . . . . . . . . . . . . . . 435.9. Enventanado de Blackman angostado . . . . . . . . . . . . . . . . . . 435.10. Enventanado propio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.11. Comparacion de filtros . . . . . . . . . . . . . . . . . . . . . . . . . . 445.12. Prueba a 110 cm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.13. Prueba a 160 cm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.14. Prueba a 250 cm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.15. Prueba a 300 cm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.16. Longitud de paso y aumento de la cuenta de pasos . . . . . . . . . . . 47

6.1. Diagrama de planificacion . . . . . . . . . . . . . . . . . . . . . . . . 50

A.1. Diagrama UML de MainWindow . . . . . . . . . . . . . . . . . . . . 54A.2. Diagrama UML de BodiesManager . . . . . . . . . . . . . . . . . . . 55A.3. Diagrama UML de BodyDistances . . . . . . . . . . . . . . . . . . . . 55A.4. Diagrama UML de Graphics . . . . . . . . . . . . . . . . . . . . . . . 55

Page 19: Sistema automatizado de deteccion de anomal as en la forma ...

Indice de tablas

6.1. Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

xix

Page 20: Sistema automatizado de deteccion de anomal as en la forma ...

xx INDICE DE TABLAS

Page 21: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 1

Introduccion

Cada ano muchas personas sufren caıdas debido a la edad, enfermedades... Lamayorıa de estas caıdas podrıan prevenirse si se hiciera un estudio de la marchade la persona. En la actualidad, estos estudios se realizan en espacios amplios, conmateriales caros y a veces molestos para el paciente. Este proyecto pretende crearuna nueva forma de analisis mas barata, inocua para el paciente y menos aparatosa.

RoboHealth1 es un proyecto que cuenta con la participacion de la UniversidadCarlos III de Madrid, la Universidad Politecnica de Madrid, el LAMBECOM (Labo-ratorio de Analisis del Movimiento, Biomecanica, Ergonomıa y COntrol Motor) dela Universidad Rey Juan Carlos e IMDEA Materiales (Instituto Madrileno De Es-tudios Avanzados en Materiales). Su objetivo es el desarrollo de robots asistencialesy de rehabilitacion en entornos inteligentes hospitalarios, contribuyendo a la mejoradel Sistema Nacional de Salud. Los pacientes a los que va dirigido poseen movilidadreducida, una capacidad cognitiva limitada y enfermedades cronicas. Esta divididoen cuatro subproyectos, uno de los cuales, que se centra en la creacion de entornosinteligentes de asistencia y rehabilitacion, es en el que se integra el proyecto que nosocupa.

1.1. Motivacion del proyecto

La idea de este proyecto surge de proyectos anteriores, en los que se implemen-taron sistemas de deteccion de caıdas en hogares en los que residen personas de latercera edad. Este proyecto pretende ir mas alla, disenando una interfaz que per-mita detectar anomalıas en la forma de caminar, para ası anticiparse a la caıda yprevenirla.

Puesto que la forma de andar, o mejor dicho sus defectos, pueden ser significativosde diversas enfermedades, este sistema tambien puede ayudar en el diagnostico dedichas enfermedades.

1.2. Objetivos

Los objetivos principales de este proyecto son dos:

La obtencion de diversos parametros espacio-temporales del movimiento hu-mano, fundamentales para el estudio de la marcha. Para ello se ha utilizado el

1http://robohealth.es/

1

Page 22: Sistema automatizado de deteccion de anomal as en la forma ...

2 CAPITULO 1. INTRODUCCION

dispositivo Kinect.

La generacion de informes con los resultados obtenidos, para que puedan seranalizados posteriormente por los especialistas de manera sencilla y en diferen-tes plataformas, com Excel o Matlab.

Ademas hay otros dos objetivos complementarios:

El desarrollo de una interfaz de monitorizacion continua, para que se puedaseguir en tiempo real la evolucion de algunos de los parametros.

La utilizacion del sensor Kinect sobre plataformas moviles y estaticas. Se tratade comparar distintos metodos de posicionamiento del sensor para observar siexiste alguno con el que el uso que se pretende no sea viable o cual ofrecemejores resultados.

1.3. Materiales utilizados

El hardware utilizado en este proyecto ha sido:

Cinta de andar Laufband Elite 700 950281.

Kinect para Xbox One de Microsoft: es el dispositivo utilizado para realizar lamonitorizacion de los pacientes.

Los recursos software usados han sido:

Visual Studio 2015: es el entorno de desarrollo utilizado para crear la interfaz.

Matlab R2015a: es el software usado para visualizar los resultados de las prue-bas y para realizar las pruebas para elegir ventana.

SDK de Kinect para Windows 2.0: es el kit de desarrollo de software necesariopara obtener la informacion proporcionada por el sensor.

Dynamic Data Display: es la librerıa utilizada para generar las graficas demonitorizacion.

1.4. Marco teorico

La deteccion de anomalıas de la marcha, o anomalıas en la forma de caminar, es elobjetivo principal de este proyecto. Para poder conseguirlo y para poder comprendermejor de que trata este documento se va a explicar que tipos de anomalıas existeny de que enfermedades pueden ser indicativas. Pero para eso tambien hay que saberen que consiste una marcha normal.

1.4.1. Marcha normal

Un ciclo de marcha (figura 1.1. Fuente2) se define desde el contacto de uno delos talones hasta el siguiente contacto del mismo talon con el suelo, definicion quecoincide con la de zancada, ası que otra manera de definirlo podrıa ser la serie de

2https://ft-mecanicabiociencias.wikispaces.com/share/view/26758977

Page 23: Sistema automatizado de deteccion de anomal as en la forma ...

1.4. MARCO TEORICO 3

Figura 1.1: Ciclo de la marcha

acontecimientos que suceden durante una zancada. Por lo tanto cada pierna tieneciclos equivalentes desfasados medio ciclo en el tiempo. Esta compuesto por dosfases: la fase de apoyo, que supone el 60 % del ciclo y la fase de oscilacion, quesupone el 40 % restante. Segun el numero de pies apoyados en cada momento elciclo posee dos fases de apoyo monopodal y otras dos de doble apoyo. Cada periodode doble apoyo dura aproximadamente un 10 % del ciclo total.

Segun [10] los valores normales en terreno llano de algunos parametros de lamarcha de interes para este proyecto son:

La longitud de paso, que es la distancia entre el apoyo inicial de un pie yel apoyo inicial del pie contrario, depende en gran medida de la altura de lapersona, segun autores [1] esta entre 40 y 75 cm.

La anchura de paso, que es la distancia entre los puntos medios de ambostalones, es de unos 10 cm.

La cadencia, que es el numero de pasos por unidad de tiempo, esta entre 100 y120 pasos por minuto.

La velocidad de marcha espontanea en adultos oscila entre 75 y 80 m/min, o1,25 y 1,33 m/s.

Hay que tener en cuenta que estos valores son una media, ya que son distintospara cada persona. Dependen de la estatura, el sexo... Incluso en una misma personacambian con la edad. Como se explica en [3] la velocidad disminuye, ası como lalongitud de paso, la cadencia y la altura de paso. Por el contrario la anchura de pasoy la fase de doble apoyo aumentan.

Page 24: Sistema automatizado de deteccion de anomal as en la forma ...

4 CAPITULO 1. INTRODUCCION

1.4.2. Marcha patologica

La marcha patologica[6] puede deberse a varias causas: neurologicas, musculo-esqueleticas, cardiorrespiratorias, metabolicas, farmacologicas o incluso psicologicas.Los tipos mas comunes son3:

Marcha ataxica: puede ser cerebelosa, sensitiva o vestibular. Se caracteriza porun aumento de la base de sustentacion, inestabilidad del tronco y desviacionde la trayectoria.

Marcha equina: se produce cuando la persona no puede flexionar dorsalmenteel pie, y para no arrastrarlo levanta exageradamente la rodilla y posteriormenteapoya el pie con la punta antes que con el talon. Las causas que lo provocanson muy variadas. Entre ellas destacan problemas en el nervio ciatico, ELA,esclerosis multiple o Parkinson.

Marcha espastica o en tijeras: Consiste en un caminar rıgido, con arrastre delos pies. Pueden causarla abscesos y tumores cerebrales, ictus, traumatismoscraneales o esclerosis multiple.

Marcha hemiplejica: llamada tambien del segador. La persona camina lenta-mente apoyando el peso del cuerpo en el miembro sano, mientras que mueve elotro en arco y el brazo del lado afectado esta pegado al cuerpo semiflexionado.

Marcha parkinsoniana: es tıpica de la enfermedad de Parkinson cuando esta yaavanzada, aunque tambien se puede dar en otros casos. El tronco se flexionahacia delante y los pasos son pequenos y rapidos, con una aceleracion descon-trolada que puede llevar a una caıda. Tambien puede producir “congelamiento”al inicio de la marcha.

Marcha apraxica: esta caracterizada por dificultad para iniciar la marcha, au-mento de la base de sustentacion, pasos cortos, poca separacion de los pies conel suelo en el balanceo. Se da en personas con una demencia avanzada y encasos de hidrocefalia a tension normal.

1.5. Estructura del documento

A continuacion y para facilitar la lectura del documento, se detalla el contenidode cada capıtulo.

En el capıtulo 1 se realiza una introduccion al proyecto y se explica la motivaciondel mismo.

En el capıtulo 2 se presentan dispositivos similares a Kinect, proyectos de in-vestigacion realizados con Kinect y las formas que existen actualmente paraanalizar la forma de caminar.

En el capıtulo 3 se explica como se ha disenado el sistema.

En el capıtulo 4 se realiza una presentacion del diseno final de la aplicacion yde su implementacion.

3http://www.neurowikia.es/content/tipos-de-marcha-patologica

Page 25: Sistema automatizado de deteccion de anomal as en la forma ...

1.5. ESTRUCTURA DEL DOCUMENTO 5

En el capıtulo 5 se abordan los resultados obtenidos en las pruebas y se discuten.

En el capıtulo 6 se presentan la planificacion y el presupuesto del proyecto.

En el capıtulo 7 se explican las conclusiones sacadas y los desarrollos que sepueden llevar a cabo en el futuro.

Page 26: Sistema automatizado de deteccion de anomal as en la forma ...

6 CAPITULO 1. INTRODUCCION

Page 27: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 2

Estado del arte

En este capıtulo se van a presentar diferentes dispositivos de caracterısticas si-milares a las de Kinect y diferentes tipos de proyectos de investigacion realizadoscon el dispositivo Kinect, ası como las tecnologıas que se emplean actualmente paraanalizar la forma de caminar de las personas actualmente. Por ultimo se va a pre-sentar el proyecto E-motion, un proyecto muy amplio en el que entre otras cosasse usa la Kinect para detectar la enfermedad de Parkinson en estadios tempranos atraves de la forma de caminar del paciente.

2.1. Dispositivos similares a Kinect

Kinect no es la unica camara de profundidad que se puede encontrar en el mer-cado. A continuacion se muestran algunas.

2.1.1. Intel RealSense

RealSense1 es una camara de profundidad desarrollada por Intel. Cuenta convarias versiones, las ultimas son la SR300, la ZR300 y la serie D400.

La SR300 esta pensada para ser usada en distancias cortas, para reconocer ex-presiones faciales y gestos de las manos. El rango optimo de reconocimiento estaentre los 20 cm y el metro y medio. Soporta principalmente Windows.

La ZR300 es mas parecida a Kinect. Esta pensada para distancias largas, parareconocer cuerpos enteros. Soporta principalmente Linux.

La serie D400 (figura 2.1) estara disponible a partir de octubre de 2017. Laprincipal novedad con respecto a las versiones anteriores y a la Kinect es que sufrecuencia de muestreo sube hasta los 90 Hz.

2.1.2. Xtion

Xtion, y su nueva version Xtion 2, han sido creados por Asus. La nueva versionsoporta Windows y Linux y tiene un rango de distancias de trabajo que va desdelos 80 cm y los 3,5 m. Se alimenta a traves de una conexion USB 3.0.

1https://software.intel.com/es-es/realsense

7

Page 28: Sistema automatizado de deteccion de anomal as en la forma ...

8 CAPITULO 2. ESTADO DEL ARTE

Figura 2.1: Intel RealSense

2.1.3. CamBoard pico

La familia de camaras CamBoard pico de la empresa PMD poseen rangos detrabajo de hasta 6 m y pueden llegar a funcionar hasta a 60 frames por segundo.La unica version que se comercializa por el momento, CamBoard pico flexx, soportaWindows, iOS, Linux, Android y ROS.

2.1.4. Structure Sensor

La empresa Occipital ha creado Structure2 (figura 2.2. Fuente3), un accesorio paradispositivos moviles que aprovecha la camara integrada para obtener imagenes deprofundidad y detectar objetos. Puede funcionar a entre 30 y 60 frames por segundoy su rango optimo de utilizacion va desde los 40 cm hasta los 3,5 m. Se alimenta atraves de una baterıa, ası que no tiene que estar conectado permanentemente a lacorriente para funcionar. Soporta iOS, Windows, Linux y Android.

2.2. Proyectos con Kinect

Desde que salio a la venta, este sensor ha despertado la imaginacion de inves-tigadores y desarrolladores en todo el mundo, que lo han aplicado a multitud dedisciplinas distintas. Para ilustrar esto se han escogido algunos ejemplos.

2.2.1. Rehabilitacion

En el campo de la rehabilitacion se han desarrollado sistemas para que las perso-nas que la necesiten puedan hacerla de una forma mas amena y eficaz, incluso desdesu casa. La empresa VirtualWare ha creado VirtualRehab4 (figura 2.3. Fuente5),un sistema para la rehabilitacion de pacientes con enfermedades neurodegenerati-vas, enfermedades neuromusculares, con dano cerebral adquirido, o simplemente con

2https://structure.io/3https://technologyoutlet.glopal.com/es-ES/p-391633544/3d-lector-occipital-estructura-sensor.

html?utm_campaign=en_GB&utm_medium=pr&utm_source=www.technologyoutlet.co.uk4http://www.virtualrehab.info5http://www.digitalavmagazine.com/2015/06/12/virtualrehab-3-0-anade-nuevas-funciones-y-un-brazo-robotico-para-rehabilitacion-de-motricidad-fina/

Page 29: Sistema automatizado de deteccion de anomal as en la forma ...

2.2. PROYECTOS CON KINECT 9

Figura 2.2: Structure Sensor

Figura 2.3: Medico y paciente usando VirtualRehab

problemas de movilidad. Fue el primer producto de rehabilitacion virtual que uti-liza el sensor Kinect en obtener el marcado CE como producto sanitario. Ademas,gracias a este sistema los terapeutas pueden crear terapias personalizadas y recibirlos datos de progreso de los pacientes, y al poder realizarse la rehabilitacion en elhogar del paciente se reducen las listas de espera.

2.2.2. Educacion

Kinect tambien se puede usar en el ambito educativo para hacer el aprendizajemas ameno o para facilitarlo a colectivos con necesidades especiales.

El SAMK[2] es un proyecto realizado en la Universidad Peruana de CienciasAplicadas que tiene como objetivo disenar un sistema para mejorar el metodode ensenanza de matematicas en ninos de 6 anos, que ademas recoja datos sobre

Page 30: Sistema automatizado de deteccion de anomal as en la forma ...

10 CAPITULO 2. ESTADO DEL ARTE

Figura 2.4: Imagenes del funcionamiento de Shopperception

los alumnos para que el profesor pueda seguir sus progresos.

RAINT[9] es una aplicacion desarrollada en la Universidad Veracruzana parafacilitar el aprendizaje de la lectura a personas sordomudas.

2.2.3. Uso en comercios

Hasta ahora se han desarrollado principalmente dos tipos de uso en comercios:para analizar el comportamiento de los consumidores en los establecimientos y comoprobador virtual de ropa.

Shopperception6 (figura 2.4. Fuente7) es un sistema que analiza el comporta-miento de los compradores frente a las estanterıas de los supermercados, paraası mejorar las estrategias de marketing de las empresas, la distribucion de losproductos en las tiendas... Ya lo usan empresas como Walmart o Heineken

Fitnect8 es un software de realidad aumentada que permite al usuario ver comole quedarıan prendas de vestir y accesorios sin necesidad de probarselos fısica-mente. Este software se puede adquirir en su pagina web y no solo se puedeusar en comercios, sino que tambien puede ser usado por particulares en suscasas.

2.2.4. Interfaces sin contacto

Este tipo de aplicacion se refiere a sistemas que permiten el manejo de equipos,como un ordenador, simplemente mediante gestos.

GestSure9 (figura 2.5) es un sistema que permite a los cirujanos acceder a datosdel paciente al que esta operando sin tener que tocar un teclado o un raton, queno estan esterilizados; eliminando el riesgo de infecciones; agilizando las operacionesy por lo tanto haciendolas menos costosas. La empresa espanola Tedesys tambienha desarrollado servicios similares. Es responsable del proyecto TedCas10, formando

6http://www.shopperception.com/7https://vimeo.com/816163428http://www.fitnect.hu/9https://www.gestsure.com/

10http://www.tedcas.com/es

Page 31: Sistema automatizado de deteccion de anomal as en la forma ...

2.3. ANALISIS DE LA MARCHA 11

Figura 2.5: Cirujano utilizando el sistema GestSure durante una operacion

parte del programa TAP (Kinect for Windows Testing and Adoption Program) deMicrosoft.

Esto tambien se puede aplicar a entornos nucleares, como se ilustra en [4]. Endicho proyecto se estudia la posibilidad de reducir el riesgo de contaminacion porradiacion al no entrar los operarios en contacto con la maquinaria. Esto se lograrıagracias a un sistema de monitorizacion basado en Kinect.

2.3. Analisis de la marcha

Para analizar la marcha hay tres tipos de parametros observables: los espacio-temporales, los cinematicos y los cineticos. Los espacio-temporales son los mas basi-cos. La manera mas sencilla de estudiarlos es por simple observacion y medicion delos tiempos con un cronometro. Este metodo ofrece pocos resultados que ademasno son precisos. Otra opcion es la grabacion de un vıdeo para su posterior analisis,lo que ayuda a fijarse mas en detalles pero que sigue sin ser preciso. A veces sehacen videogrametrıas, que son reconstrucciones tridimensionales realizadas a par-tir de vıdeos(figura 2.6(a). Fuente11). En este caso se pueden tomar mas medidas yhacerlo de manera algo mas precisa, pero requiere el uso de al menos 4 camaras conuna buena resolucion. Todas estas medidas ademas tienen otro inconveniente, quelos diagnosticos estan basados en percepciones subjetivas del especialista que realizala prueba.

Tambien se usan marcadores reflectantes y otro tipo de sensores (figura 2.6(b).Fuente12). Esta tecnologıa ofrece buenos resultados si se usa de manera correcta, peroes muy sencillo colocar de forma erronea los marcadores, con lo que los resultadosno serıan validos. Ademas, los marcadores pueden ser incomodos para el paciente.

2.4. E-Motion

Mencion especial merece el proyecto E-Motion de la Universidad ICESI de Colom-bia y la Alianza i2t-Biomedica, a el pertenecen entre otros los proyectos Parkinson

11http://patronatoderehabilitacion.com12http://www.uao.edu.co/ingenieria/diseno-industrial/laboratorios-diseno-industrial

Page 32: Sistema automatizado de deteccion de anomal as en la forma ...

12 CAPITULO 2. ESTADO DEL ARTE

(a) Analisis mediante camaras de infrarrojos (b) Analisis mediante marcadores

Figura 2.6: Distintas formas de estudio de la marcha

Kinect System, Kimedical y Boskot.El primer proyecto que se desarrollo fue Parkinson Kinect System[8]. Se trata

de un software de ayuda en la deteccion del Parkinson en estadios tempranos de laenfermedad. Para ello implementan el test FAB (Frontal Assessment Battery) comosi fuera un juego de Kinect. Gracias a el se elimina el componente de subjetividad quetienen estas pruebas si se realizan de forma ordinaria. Un ano despues desarrollaronKimedical, que es un sistema de analisis de la marcha y de la postura desde losplanos coronal y sagital para ayudar en el diagnostico del Parkinson. Actualmentesiguen investigando en esta lınea.

Page 33: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 3

Diseno del sistema

Para cumplir los objetivos propuestos para este proyecto la aplicacion a desarro-llar debe cumplir los siguientes requisitos:

Detectar los movimientos del cuerpo del paciente al caminar.

Guardarlos para analizarlos posteriormente.

Dotar al paciente de algun sistema que le permita completar varios ciclos demarcha para obtener toda informacion necesaria.

Dar la posibilidad de ver en tiempo real la evolucion de algunos de los parame-tros mas importantes.

Para conseguirlo se necesita un sistema con unos componentes y un entorno adecua-dos. A continuacion se detallan.

3.1. Componentes del sistema

3.1.1. Kinect

Para cumplir el primer requisito, la deteccion de los movimientos del paciente,es necesaria una camara de profundidad. El dispositivo elegido para cumplir estecometido en este proyecto es el sensor Kinect para Xbox One (figura 3.1. Fuente1).Kinect fue un dispositivo creado por Microsoft originalmente como accesorio parala consola Xbox pero pronto la gente se dio cuenta de su potencial en multitud deareas y comenzo a realizar ingenierıa inversa para poder usarla. Entonces Microsoftpublico el primer SDK y aun mas gente comenzo a investigar con este dispositivo.

Las caracterısticas de esta version del sensor son:

Detecta y muestra los esqueletos de hasta 6 personas, con 25 articulaciones porcada esqueleto.

Campo de vision: 70o en horizontal y 60o en vertical.

Resolucion: 1920x1080 Full HD.

Rango de profundidad del sensor: de 0,5 a 4,5 m.

Frecuencia de muestreo: 30 Hz.1https://www.xatakawindows.com/tag/kinect-para-windows

13

Page 34: Sistema automatizado de deteccion de anomal as en la forma ...

14 CAPITULO 3. DISENO DEL SISTEMA

Figura 3.1: Kinect para Xbox One

Los requerimientos del sistema para el buen funcionamiento de este dispositivoson:

Sistema operativo Windows a partir de Windows 8.

Procesador de 64 bits.

Al menos 4 GB de RAM.

Doble nucleo fısico de 3,1 GHz o mejor.

Un controlador USB 3.0 y un adaptador Kinect para Windows en el caso deque se trate de la version Kinect para Xbox One.

Tarjeta grafica que admita DirectX 11.

Para desarrollar aplicaciones es necesario descargar el SDK 2.0 y tener VisualStudio a partir de la version del 2012.

Para comprender su funcionamiento es necesario saber de que sensores esta com-puesto, lo que se puede observar en la figura 3.2. Esta version posee una camaraRGB de mas resolucion que la anterior version y tambien se ha mejorado el sistemade audio. La mayor diferencia entre ambas versiones es la producida en el sistema dedeteccion de profundidad. En la primera version se uso un sensor de luz estructuradamientras que en la nueva se decantaron por un sensor de tiempo de vuelo (TOF porsus siglas en ingles), consiguiendo una precision tres veces mayor ademas de que eldispositivo pueda funcionar a oscuras.

La version antigua cuenta con un proyector de infrarrojos que emite una nubede puntos con un patron pseudo-aleatorio. Un receptor de infrarrojos colocado allado de la camara RGB detecta la intensidad y la distorsion de los puntos y a travesde la triangulacion de estos datos estima la profundidad. En el caso de la segundaversion, lo que se mide es el tiempo que tarda el rayo infrarrojo desde que es emitidohasta que es detectado por el sensor despues de haber sido reflejado por los objetosdel entorno.

El sistema de coordenadas por el que se rigen los datos proporcionados por Kinectse muestra en la figura 3.3 (Fuente2).

2https://msdn.microsoft.com/en-us/library/hh438998.aspx

Page 35: Sistema automatizado de deteccion de anomal as en la forma ...

3.1. COMPONENTES DEL SISTEMA 15

Figura 3.2: Componentes de Kinect

Figura 3.3: Sistema de coordenadas de Kinect

Page 36: Sistema automatizado de deteccion de anomal as en la forma ...

16 CAPITULO 3. DISENO DEL SISTEMA

Figura 3.4: Robot Marvin

3.1.2. Plataformas

Uno de los objetivos de este proyecto es la utilizacion del sensor Kinect condiferentes plataformas. Su uso se vio rapidamente como necesario debido a que conuna Kinect estatica y una persona caminando hacia ella apenas sı se podıa grabarun ciclo de marcha. A continuacion se va a explicar que plataformas se han usado yque resultados se han obtenido con ellas.

Moviles

Carrito auxiliar. En un principio se uso como plataforma un carrito auxiliarpara proyector como plataforma de apoyo para el sensor. La idea era que unapersona fuera moviendo el carrito mientras que el paciente andaba para podergrabar varios ciclos. El resultado no fue bueno, el rango de distancia para que elpaciente permanezca dentro del plano es reducido y al caminar ambas personasa velocidades diferentes la deteccion se perdıa continuamente. Ası se evidencioque este no era un buen metodo.

Robot movil. Vistos los problemas habidos con el uso del carrito, se barajola posibilidad de montar el sensor en un robot. Para probar como funcionarıaesta posibilidad se hizo una prueba con un robot del laboratorio, Marvin (fi-gura 3.4), que se mueve a una velocidad constante elegida previamente por elusuario. El resultado fue mucho mejor que con el carrito manejado por unapersona, el paciente se salıa raras veces de plano. Todo esto simplemente conun robot que se mueve a una velocidad fija, con un robot que variara su veloci-dad manteniendo constante la distancia entre el y el paciente el resultado serıasensiblemente mejor. Por lo cual se considerara el uso de este tipo de robotcomo posible desarrollo futuro.

Page 37: Sistema automatizado de deteccion de anomal as en la forma ...

3.2. ENTORNO DE TRABAJO 17

Figura 3.5: Cinta de andar

Fijas

La ultima opcion es la de dejar la Kinect fija en una mesa y que el pacientecamine sobre una cinta de andar frente a ella. Hay dos tipos de cintas: con motor ysin motor. Se decidio usar una sin motor porque para su mision en este proyecto noeran necesarios unos requisitos tecnicos altos y ası el paciente puede elegir en cadamomento la velocidad a la que quiere moverse, lo que puede aportar mas informacion.Se adquirio la cinta Laufband Elite 700 950281 de la marca Schmidt Sportsworld(figura 3.5. Fuente3). Tiene una longitud de 118 cm, 126 cm de ancho, una altura de62 cm y un peso de 28 kg. El peso maximo recomendado del usuario es de 100 kg.Una de las preocupaciones que se tenıan sobre el uso de cintas era si el manillar y elmonitor interferirıan en la deteccion del cuerpo. Por el bajo diametro del manillary si se pone el monitor paralelo al suelo no se observan interferencias apreciables.

3.2. Entorno de trabajo

Una vez elegidos los componentes del sistema es necesario colocarlos de la formaadecuada para obtener los mejores resultados.

En el caso de usar una cinta de andar el escenario serıa el de la figura 3.6.El sensor se colocarıa enfrentado con la cinta, con el paciente andando de cara alsensor, elevado sobre una mesa o cualquier otra superficie de apoyo. El pacienteandarıa sobre la cinta sin que la Kinect tenga que desplazarse. Esto por otra partefacilita su uso, ya que al no moverse no existe la restriccion de distancia de uso queimpone el cable de alimentacion.

3https://www.amazon.es/Schmidt-Sportsworld-LAUFBAND-ELITE-950281/dp/B01FIAKLFK

Page 38: Sistema automatizado de deteccion de anomal as en la forma ...

18 CAPITULO 3. DISENO DEL SISTEMA

Figura 3.6: Montaje del sistema completo con cinta de andar

En el caso de usar una plataforma movil, ya sea un carrito o un robot, el plan-teamiento serıa similar: la Kinect apoyada sobre la plataforma movil y el pacienteenfrentado a ella, andando hacia la Kinect mientras que la plataforma se aleja man-teniendo la distancia con el paciente lo mas constante posible.

Page 39: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 4

Diseno e implementacion

Una vez escogidos los componentes del sistema y disenado el entorno de tra-bajo, para que la aplicacion cumpla los requisitos hay que realizar el diseno y laimplementacion de la misma.

4.1. Diseno

La interfaz realizada en este proyecto es una aplicacion de escritorio WPF (Win-dows Presentation Foundation). No se partio de un proyecto vacıo, sino del proyectode ejemplo Body Basics que se puede descargar desde el SDK Browser (Kinect forWindows) v2.0. Ese proyecto consiste en una ventana con un cuadro en la zona cen-tral. Si el dispositivo Kinect esta conectado, en ese cuadro se muestran los esqueletosdetectados por el sensor. Esta formado por un espacio de nombres dentro del cualesta la clase MainWindow, que se encarga de todo.

Para el proyecto final se han anadido al espacio de nombres tres clases: Bodies-Manager, BodyDistances y Graphics.

BodiesManager se crea para liberar a MainWindow de la responsabilidad decrear y dibujar los esqueletos de los cuerpos detectados. Tambien se encarga dedibujar una lınea roja en los lados del recuadro de la imagen si se detecta quealguna parte del cuerpo de una persona se sale del angulo de vision del sensor.

BodyDistances es la encargada de crear el vector que contiene la informacionque se mostrara en pantalla, y posteriormente se filtrara y se incluira en elinforme de resultados.

Graphics es la clase creada para asignar a cada grafica la informacion que va amostrar y a dibujarla.

Los diagramas UML de cada clase se pueden ver en el apendice A. El diagramade la figura 4.1 es el diagrama de clases general de la aplicacion y el diagrama de lafigura 4.2 es el diagrama de secuencia de la aplicacion cuando se esta grabando y serecibe un frame en el que se ha detectado a una persona.

La pantalla principal se puede ver en la figura 4.3. Visualmente esta divididaen tres partes. En la parte izquierda hay un menu para configurar la altura de lasuperficie sobre la que camina el paciente y el contenido de las graficas. Debajo delmenu estan los botones de comienzo y final de grabacion y un espacio reservadopara que cuando se este realizando la grabacion aparezcan en pantalla en tiempo

19

Page 40: Sistema automatizado de deteccion de anomal as en la forma ...

20 CAPITULO 4. DISENO E IMPLEMENTACION

Figura 4.1: Diagrama de clases

Figura 4.2: Diagrama de secuencia

real la distancia entre los tobillos en los tres ejes, el numero de pasos contados y eltiempo de grabacion. En la esquina inferior izquierda ademas aparece un mensajeinformativo sobre el estado de conexion del dispositivo Kinect. La parte central estareservada para la imagen del sensor y en la parte derecha estan situadas las graficas.

Si se pulsa el boton de comienzo sin haber introducido la distancia entre los piesdel paciente y el suelo, o se ha introducido un caracter no numerico, salta el aviso dela figura 4.4 y la grabacion no comienza. El dialogo de introduccion de este dato sepuede ver en la figura 4.5. Si se introduce un valor correcto y se pulsa “Comenzar”se abre el dialogo de guardado del archivo en el que se incluiran los resultados. Eneste dialogo (figura 4.6) se puede escoger el nombre, la extension y el lugar en el quese guardara dicho archivo. Si algo no saliera bien la grabacion no comenzarıa y seinformarıa al usuario de ello (figura 4.7).

Los datos de las graficas se pueden asignar antes o durante la grabacion. Elmenu de asignacion se puede ver en la figura 4.8. Cuando se asigna el dato que sequiere observar a una grafica el nombre del dato aparece como tıtulo del eje y dedicha grafica. Los datos entre los que se puede escoger para ser representados en lasgraficas son: la distancia entre los tobillos en el eje z (que representa la longitud depaso), la distancia entre los tobillos en el eje x (que representa el ancho de paso), elmovimiento de los tobillos izquierdo y derecho en el eje y (que representa la distancia

Page 41: Sistema automatizado de deteccion de anomal as en la forma ...

4.1. DISENO 21

Figura 4.3: Pantalla principal

Figura 4.4: Aviso de altura de pies no valida

que toman los pies con el suelo en la fase de oscilacion) y el torax a la altura de loshombros (que representa el movimiento lateral del torax a la altura de los hombros).

Si todo ha ido bien se comenzara a grabar la prueba y se vera una imagen como lade la figura 4.9. En ella se puede observar como si la grabacion esta en curso apareceun icono de grabacion a la derecha del boton “Comenzar”. Si se pulsa “Terminar”dicho icono desaparece. Tambien se puede ver en el recuadro central el esqueleto dela persona que esta realizando la prueba. Los huesos pueden ser de seis colores: rojo,naranja, verde, azul claro, azul ındigo y violeta. Si alguna articulacion no se detectacorrectamente se infiere, para distinguirlas en la imagen las articulaciones inferidasse dibujan de color amarillo, y los huesos se dibujan de menor grosor y color gris.Se ha decidido no dibujar los huesos de los brazos para que no entorpezca la visionde los del resto del cuerpo.

El informe de resultados que se genera se puede guardar como un archivo txt oun archivo csv, como se puede ver en la figura 4.6. En cualquiera de los dos casos elformato de escritura del archivo es csv, facilitando la interpretacion del archivo porparte del software que se vaya a utilizar para visionar los resultados. Como se puedever en la figura 4.10 el contenido de este archivo esta estructurado en columnas, cadauna de las cuales corresponde a un parametro distinto. La primera fila la componenlos nombres de los parametros, el resto de filas son los valores de cada parametro

Page 42: Sistema automatizado de deteccion de anomal as en la forma ...

22 CAPITULO 4. DISENO E IMPLEMENTACION

Figura 4.5: Dialogo de introduccion de la distancia entre la superficie de apoyo y el suelo

Figura 4.6: Dialogo de guardado del archivo de resultados

en los sucesivos frames. Los parametros guardados son: el tiempo; la distancia entrelos tobillos en los tres ejes; el movimiento en el eje y del tobillo izquierdo, el tobilloderecho, el extremo del pie izquierdo, el extremo del pie derecho, la cadera izquierda,el torax a la altura de la cadera y la cadera derecha; el movimiento en el eje x de lacadera izquierda, la cadera derecha, el torax a media altura, el torax a la altura delos hombros y el torax a la altura de la cadera; el movimiento en el plano sagital deel torax a la altura de los hombros, a media altura y a la altura de la cadera y porultimo el numero de pasos.

Las graficas de los resultados obtenidos despues de realizar una prueba se pre-sentan en las figuras 4.11 a 4.29.

4.2. Implementacion

Para el desarrollo del software de este proyecto se ha empleado Visual Studio 2015como entorno de desarrollo y C# como lenguaje. Por otra parte, se ha usado Matlabpara analizar los resultados obtenidos en las pruebas y para realizar los filtrados conventanas.

Page 43: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 23

Figura 4.7: Aviso de error al guardar el nombre o la ubicacion del archivo

Figura 4.8: Menu de asignacion de graficas

4.2.1. Entornos de desarrollo

Visual Studio

Como ya se ha comentado, el entorno de desarrollo usado para la creacion de laaplicacion de este proyecto ha sido Visual Studio 2015. Es un entorno de desarrollocreado por Microsoft para sistemas operativos Windows. La pantalla principal, quese puede ver en la figura 4.30, se puede personalizar para que resulte mas comodoal programador.

Matlab

Matlab (MATrix LABoratory) es un IDE (Entorno de Desarrollo Integrado) igualque Visual Studio, creado por MathWorks. Posee gran cantidad de prestaciones quese pueden ampliar anadiendo nuevas toolboxes. Como ya se ha comentado anterior-mente se ha usado para procesar los datos obtenidos en las pruebas y escoger laventana mas apropiada.

Page 44: Sistema automatizado de deteccion de anomal as en la forma ...

24 CAPITULO 4. DISENO E IMPLEMENTACION

Figura 4.9: Vista de la interfaz durante la grabacion

Figura 4.10: Informe de resultados

4.2.2. Librerıas

SDK de Kinect para Windows 2.0

Entre otras cosas este Kit de Desarrollo de Software contiene las librerıas ne-cesarias para desarrollar aplicaciones con Kinect. La librerıa usada en este caso esMicrosoft.Kinect.

Dynamic Data Display

Para el dibujo de las graficas se ha usado la librerıa Dynamic Data Display. Conesta librerıa se pueden crear todo tipo de graficos: diagramas de sectores, de barras,graficas lineales y mas tipos de graficas 2D y 3D. Fue creada por CodePlex peroactualmente pertenece a Microsoft.

4.2.3. Conteo de pasos

El algoritmo creado para contar los pasos que da el paciente en vivo se puede veren el codigo 4.1. Se trata de una maquina de estados. Cuando la prueba comienza nosencontrarıamos en el estado 0. Cuando la distancia entre tobillos en el eje z (longitud

Page 45: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 25

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Dis

tanc

ia e

ntre

tobi

llos

en e

je y

(cm

)

0

2

4

6

8

10

12

Figura 4.11: Altura de paso

de paso) se encuentra entre 0 y 4,5 cm se pasa al estado 1. Si estando en el estado1 la longitud de paso crece hasta estar por encima de 13,5 cm se pasa al estado 2.En este estado se aumenta en una unidad la cuenta de los pasos e inmediatamentese pasa al estado 3, para evitar que la cuenta aumente en mas de una unidad. Siestando en el estado 3 la longitud de paso vuelve a estar entre 0 y 4,5 cm se vuelveal estado 1.

Codigo 4.1: Conteo de pasos

1 i f ( f l a g p a s o s == 0 && bodyDistances [ 2 ] >= 0 && bodyDistances [ 2 ] < 4 . 5 )2 f l a g p a s o s ++;3

4 i f ( f l a g p a s o s == 1 && bodyDistances [ 2 ] > 13 . 5 )5 f l a g p a s o s ++;6

7 i f ( f l a g p a s o s == 2)8 {9 pasos++;

10 f l a g p a s o s ++;11 }12 i f ( ( f l a g p a s o s == 3) && bodyDistances [ 2 ] >= 0 && bodyDistances [ 2 ] < 4 . 5 )13 f l a g p a s o s = 1 ;

Page 46: Sistema automatizado de deteccion de anomal as en la forma ...

26 CAPITULO 4. DISENO E IMPLEMENTACION

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Anc

ho d

e pa

so (

cm)

10

11

12

13

14

15

16

Figura 4.12: Ancho de paso

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-c

ader

a en

eje

x (

cm)

-1

0

1

2

3

4

5

6

7

Figura 4.13: Torax-cadera en el eje x

Page 47: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 27

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-c

ader

a en

eje

y (

cm)

94

94.5

95

95.5

96

96.5

97

97.5

98

Figura 4.14: Torax-cadera en el eje y

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-c

ader

a en

eje

z

276

278

280

282

284

286

288

Figura 4.15: Torax-cadera en el eje z

Page 48: Sistema automatizado de deteccion de anomal as en la forma ...

28 CAPITULO 4. DISENO E IMPLEMENTACION

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Cad

era

dere

cha

en e

je x

(cm

)

6

7

8

9

10

11

12

13

14

Figura 4.16: Cadera derecha en el eje x

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Cad

era

dere

cha

en e

je y

94

94.5

95

95.5

96

96.5

97

97.5

98

98.5

Figura 4.17: Cadera derecha en el eje y

Page 49: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 29

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Cad

era

izqu

ierd

a en

eje

x (

cm)

-9

-8

-7

-6

-5

-4

-3

-2

-1

0

Figura 4.18: Cadera izquierda en el eje x

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Cad

era

izqu

ierd

a en

eje

y

93.5

94

94.5

95

95.5

96

96.5

97

97.5

98

98.5

Figura 4.19: Cadera izquierda en el eje y

Page 50: Sistema automatizado de deteccion de anomal as en la forma ...

30 CAPITULO 4. DISENO E IMPLEMENTACION

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-h

ombr

os e

n ej

e x

(cm

)

-4

-2

0

2

4

6

8

10

Figura 4.20: Torax-hombros en el eje x

×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-h

ombr

os e

n ej

e z

(cm

)

266

268

270

272

274

276

Figura 4.21: Torax-hombros en el eje z

Page 51: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 31

Tiempo de paso (ms) ×104

0 0.5 1 1.5 2 2.5 3

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

60

Figura 4.22: Longitud de paso

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-c

entr

al e

n ej

e x

(cm

)

-2

-1

0

1

2

3

4

5

6

7

8

Figura 4.23: Torax-central en el eje x

Page 52: Sistema automatizado de deteccion de anomal as en la forma ...

32 CAPITULO 4. DISENO E IMPLEMENTACION

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tór

ax-c

entr

al e

n ej

e z

(cm

)

270

271

272

273

274

275

276

277

278

279

280

281

Figura 4.24: Torax-central en el eje z

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Núm

ero

de p

asos

0

5

10

15

20

25

30

35

40

Figura 4.25: Numero de pasos

Page 53: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 33

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Ext

rem

o de

l pie

der

echo

en

eje

y (c

m)

12

14

16

18

20

22

24

26

28

30

Figura 4.26: Extremo del pie derecho en el eje y

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Ext

rem

o de

l pie

izqu

ierd

o en

eje

y (

cm)

12

14

16

18

20

22

24

26

28

30

Figura 4.27: Extremo del pie izquierdo en el eje y

Page 54: Sistema automatizado de deteccion de anomal as en la forma ...

34 CAPITULO 4. DISENO E IMPLEMENTACION

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tob

illo

izqu

ierd

o en

eje

y (

cm)

20

25

30

35

Figura 4.28: Tobillo izquierdo en el eje y

Tiempo (ms) ×104

0 0.5 1 1.5 2 2.5 3

Tob

illo

dere

cho

en e

je y

(cm

)

22

24

26

28

30

32

34

Figura 4.29: Tobillo derecho en el eje y

Page 55: Sistema automatizado de deteccion de anomal as en la forma ...

4.2. IMPLEMENTACION 35

Figura 4.30: Ventana de Visual Studio 2015

Figura 4.31: Ventana de Matlab

Page 56: Sistema automatizado de deteccion de anomal as en la forma ...

36 CAPITULO 4. DISENO E IMPLEMENTACION

Page 57: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 5

Resultados y discusion

En este capıtulo se van a presentar los resultados obtenidos tras las diferentespruebas. Posteriormente se discutiran.

5.1. Resultados

En esta seccion se exponen los resultados obtenidos en las diversas pruebas rea-lizadas. Se han estudiado distintas formas de filtrar la senal y de colocar la cinta deandar con respecto a la Kinect.

5.1.1. Vista lateral

Tal y como se va a comentar en la seccion 6.1.1, en un principio la idea era grabaral paciente tanto frontal como lateralmente. Los resultados obtenidos en una de lasgrabaciones laterales han sido los siguientes:

Tiempo (ms)0 500 1000 1500 2000 2500

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

60

70

Figura 5.1: Prueba lateral

37

Page 58: Sistema automatizado de deteccion de anomal as en la forma ...

38 CAPITULO 5. RESULTADOS Y DISCUSION

5.1.2. Ventanas

Los datos de profundidad obtenidos por el sensor tienen cierto ruido, como sepuede apreciar en la figura 5.2. Para eliminarlo, o por lo menos suavizarlo, se haoptado por el uso de una ventana. Las ventanas[5] son funciones matematicas quesirven para evitar discontinuidades al procesar digitalmente secuencias de muestrasen pequenos espacios muestrales cuando estas son demasiado grandes para ser pro-cesadas de una vez. Existe una gran variedad de ventanas. Para escoger la mejorpara esta aplicacion se han probado las siguientes:

Haar. Tiene un comportamiento temporal similar al de un pulso rectangular.Su ecuacion es:

wHaar;N(n) −N−1∑l=0

δ(n− l) (5.1)

En forma vectorial queda como:

wHaar;5 − [1, 1, 1, 1, 1] (5.2)

Bartlett. Su comportamiento temporal se asemeja al de un pulso triangular. Seexpresa de las siguientes formas:

wBartlett;N(n) −N−1∑l=0

(N − 1

2−∣∣∣∣l − N − 1

2

∣∣∣∣) δ(n− l) (5.3)

wBartlett;5 − [0, 1, 2, 1, 0] (5.4)

Binomial. Esta ventana es similar a un pulso gaussiano. Se puede describircomo:

wBinomial;N(n) −N−1∑l=0

CN−1l δ(n− l) (5.5)

donde

CN−1l =

(N − 1)!

(N − 1 − l)!l!(5.6)

wBinomial;5 − [1, 4, 6, 4, 1] (5.7)

Hann. Se comporta temporalmente como medio ciclo de una senal cosenoidalnormalizada a la unidad. Su ecuacion es:

wHann;N(n) −N−1∑l=0

[a0 − a1 cos

(2πl

N − 1

)]δ(n− l) (5.8)

donde a0=0,5 y a1=0,5

wHann;5 − [0,1

2, 1,

1

2, 0] (5.9)

Hamming. Su comportamiento es igual que el de la ventana Hann, puesto quese definen igual, segun la ecuacion 5.8. La diferencia entre ambas ventanas estaen el valor de las constantes. En este caso son:

Page 59: Sistema automatizado de deteccion de anomal as en la forma ...

5.1. RESULTADOS 39

a0=0,53836 y a1=0,46164

Y la forma vectorial por lo tanto queda como:

wHamming;5 − [0, 0767, 0, 5384, 1, 0, 5384, 0, 0767] (5.10)

Blackman. Tiene un comportamiento temporal definido por una serie de Fou-rier. Su ecuacion es la siguiente:

wBlackman;N(n)−N−1∑l=0

[a0 − a1 cos

(2πl

N − 1

)+ a2 cos

(4πl

N − 1

)]δ(n−l) (5.11)

donde a0=0,42 a1=0,5 y a2=0,08

wBlackman;5 − [0, 0, 34, 1, 0, 34, 0] (5.12)

Blackman angostado. Tiene un espectro que requiere un menor ancho de banda.Esta definido por:

wBlackmanang;N(n) =N−1∑l=0

a0δ(n− l) − a1

N−1∑l=0

cos

(2πl

N − 1

)δ(n− l)

+ a2

N−1∑l=0

cos

(4πl

N − 1

)δ(n− l) − a3

N−1∑l=0

cos

(6πl

N − 1

)δ(n− l)

(5.13)

donde a0=0,35875 a1=0,48829 a2=0,14128 y a3=0,01168

wBlackmanang;5 − [0, 0001, 0, 2175, 1, 0, 2175, 0, 0001] (5.14)

Propia. Con el fin de explorar el mayor numero de posibilidades se ha probadoa variar el valor de los pesos de forma manual, definiendo una nueva ventanacon la siguiente expresion vectorial:

wPropia;5 − [1, 2, 4, 2, 1] (5.15)

Tomando como muestra para la comparacion de filtros la de la figura 5.2 seha realizado el filtrado con cada una de las ventanas, obteniendo los siguientesresultados:

Page 60: Sistema automatizado de deteccion de anomal as en la forma ...

40 CAPITULO 5. RESULTADOS Y DISCUSION

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Valores obtenidos

Figura 5.2: Muestra a filtrar

Haar

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Haar

Valores obtenidos

Figura 5.3: Enventanado de Haar

Bartlett

Page 61: Sistema automatizado de deteccion de anomal as en la forma ...

5.1. RESULTADOS 41

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Bartlett

Valores obtenidos

Figura 5.4: Enventanado de Bartlett

Binomial

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Binomial

Valores obtenidos

Figura 5.5: Enventanado Binomial

Hann

Page 62: Sistema automatizado de deteccion de anomal as en la forma ...

42 CAPITULO 5. RESULTADOS Y DISCUSION

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Hann

Valores obtenidos

Figura 5.6: Enventanado de Hann

Hamming

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Hamming

Valores obtenidos

Figura 5.7: Enventanado de Hamming

Blackman

Page 63: Sistema automatizado de deteccion de anomal as en la forma ...

5.1. RESULTADOS 43

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Blackman

Valores obtenidos

Figura 5.8: Enventanado de Blackman

Blackman angostado

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Blackman angostado

Valores obtenidos

Figura 5.9: Enventanado de Blackman angostado

Propia

Page 64: Sistema automatizado de deteccion de anomal as en la forma ...

44 CAPITULO 5. RESULTADOS Y DISCUSION

Tiempo (ms) ×104

1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

45

Propia

Valores obtenidos

Figura 5.10: Enventanado propio

Para poder comparar mejor los efectos de las ventanas entre sı se presenta undetalle de la muestra filtrada por todas las ventanas en la figura 5.11.

Tiempo (ms) ×104

2.62 2.64 2.66 2.68 2.7 2.72 2.74 2.76

Long

itud

de p

aso

(cm

)

0

5

10

15

20

25

30

35

40

Haar

Binomial

Hann

Hamming

Blackman

Blackman angostado

Propia

Valores obtenidos

Figura 5.11: Comparacion de filtros

5.1.3. Cinta

Con el objetivo de obtener los resultados mas precisos posibles y con el menorruido se han realizado pruebas colocando la cinta de andar a distintas distancias de

Page 65: Sistema automatizado de deteccion de anomal as en la forma ...

5.1. RESULTADOS 45

la Kinect. Para comparar se presentan a continuacion muestras de la longitud depaso a cuatro distancias distintas.

A 110 cm los resultados han sido los siguientes:

Tiempo (ms) ×104

0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

60

70

Figura 5.12: Prueba a 110 cm

Los resultados a 160 cm han sido:

Tiempo (ms) ×104

1 1.2 1.4 1.6 1.8 2 2.2 2.4

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

Figura 5.13: Prueba a 160 cm

Page 66: Sistema automatizado de deteccion de anomal as en la forma ...

46 CAPITULO 5. RESULTADOS Y DISCUSION

A 250 cm se ha obtenido:

Tiempo (ms)2000 4000 6000 8000 10000 12000 14000 16000

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

60

Figura 5.14: Prueba a 250 cm

Por ultimo los resultados obtenidos a 300 cm han sido:

Tiempo (ms) ×104

0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4

Long

itud

de p

aso

(cm

)

0

10

20

30

40

50

60

Figura 5.15: Prueba a 300 cm

Page 67: Sistema automatizado de deteccion de anomal as en la forma ...

5.2. DISCUSION 47

5.1.4. Pasos

La figura 5.16 muestra el momento en que se percibe un nuevo paso y se aumentala cuenta, tomando como referencia la distancia entre los tobillos del paciente.

Tiempo (ms) ×104

1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5 2.60

5

10

15

20

25

30

35

40

45

50 Longitud (cm)Número de pasos

Figura 5.16: Longitud de paso y aumento de la cuenta de pasos

5.2. Discusion

En esta seccion se exponen las conclusiones sacadas de los resultados vistos en laseccion anterior (seccion 5.1).

5.2.1. Vista lateral

Al grabar lateralmente la mitad del cuerpo que esta mas cerca del sensor tapa a laotra mitad del cuerpo, haciendo que sus valores sean inferidos. Los valores inferidosson valores calculados por probabilidad y por lo tanto no son fiables y producenresultados extranos. Por ello se descarto el uso de las grabaciones laterales. Esto nosupuso un gran perjuicio, ya que como Kinect recoge informacion en los tres ejessimplemente con la grabacion frontal se obtiene toda la informacion necesaria.

5.2.2. Ventanas

Como se puede ver en la seccion 5.1.2, los pesos de las ventanas de Bartlett yHann cuando la longitud del filtro es cinco son iguales, y por lo tanto el resultado delfiltrado con estas ventanas es el mismo (figuras 5.4 y 5.6). Por ello no se ha incluidola ventana de Bartlett en la grafica comparativa (figura 5.11).

Page 68: Sistema automatizado de deteccion de anomal as en la forma ...

48 CAPITULO 5. RESULTADOS Y DISCUSION

Con respecto a la ventana de Haar (figura 5.3), como todos los pesos son iguales elresultado es una onda demasiado suavizada, con la que se puede perder informacionimportante y por tanto queda descartada.

En el lado opuesto estan las ventanas de Blackman y Blackman angostado (figuras5.8 y 5.9 respectivamente). Como se otorga mucho mas peso a la muestra central(actual) que al resto (pasadas y futuras) el resultado es una onda casi identica a laoriginal, que no consigue suavizar suficientemente el ruido.

El resto de ventanas son mas similares entre sı, como se puede observar en lagrafica comparativa (figura 5.11). La ventana propia es la que mas suaviza de ellas yresulta casi identica a la ventana Binomial. Por otra parte los pesos de las ventanasde Hann y Hamming son muy parecidos, lo que hace que el resultado del filtradomediante estas ventanas tambien lo sea.

Finalmente, buscando un equilibrio en el suavizado se ha optado por el uso de laventana Binomial (figura 5.5).

5.2.3. Cinta

Comparando las figuras 5.12, 5.13, 5.14 y 5.15 se observa como a 110 cm los datosobtenidos tienen mucho ruido y no se aprecia uniformidad en los pasos. A 160 cmya se aprecia la uniformidad en los pasos, pero los datos siguen teniendo mas ruidodel deseable en los maximos. A 250 cm practicamente no hay ruido. Por ultimo, a300 cm vuelve a aparecer ruido en los maximos. De todo esto se concluye que elrango de distancias ideal esta entre 2 m y 2,5 m. Estas pruebas han sido realizadascon la Kinect a 84 cm de altura. Tanto la altura de la Kinect como la distancia conla cinta pueden variar en funcion de la cinta que se use y de la altura del pacientepara que el cuerpo del paciente entero entre en el angulo de vision del sensor.

Para reducir el ruido y obtener datos fiables hay que tener en cuenta otras cosascomo la ropa. Durante las pruebas se observaron malos resultados en las ocasionesen las que la persona que realizaba la prueba llevaba ropa negra. Las sospechas sevieron confirmadas en [7]. Algunos tintes usados en la ropa negra pueden absorber losinfrarrojos usados para detectar la profundidad. Los elementos reflectantes tambienpueden interferir en el sensor. Otra fuente de fallos en la deteccion del sensor que seha detectado ha sido en los momentos en los que las piernas se juntaban mucho, yaque se veıan las articulaciones inferidas.

5.2.4. Pasos

En la figura 5.16 se aprecia como la cuenta de los pasos aumenta siguiendo per-fectamente el algoritmo del codigo 4.1. Sin embargo, como se puede observar en lazona recuadrada de la grafica, el conteo no es infalible. Estos errores son debidos aque una de las condiciones impuestas (lınea 1 del codigo) es que la distancia entreambos tobillos este comprendida entre 0 y 4,5 cm (posicion de pies juntos) antes dehacerse mayor. Por la frecuencia de muestreo de Kinect, que es de 30 Hz, en algunasocasiones no se captura ningun frame en esa banda de distancias. La probabilidadde que esto ocurra es mas alta cuanto mas deprisa camina la persona, ya que eltiempo de pies juntos disminuye. Aparentemente la solucion mas obvia es aumentarla distancia de pies juntos, pero algunos problemas de la marcha, sobre todo enancianos, implican pasos muy cortos y en ese caso el conteo no funcionarıa.

Page 69: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 6

Gestion del proyecto

6.1. Planificacion

La distribucion en el tiempo de las tareas realizadas durante este proyecto sepueden ver en el diagrama de la figura 6.1. Este proyecto comenzo en noviembre delano 2016 y concluyo en agosto de 2017. Este proyecto ha sufrido grandes cambiosdesde el planteamiento inicial hasta la solucion final. A continuacion se detallan.

6.1.1. Evolucion del planteamiento

La primera idea era utilizar dos Kinects, una grabando frontalmente y otra late-ralmente, cada una generando una serie de datos distintos que se combinarıan paratener el informe final. El primer problema que surje es que la version del sensorKinect usada puede dar soporte a varias aplicaciones al mismo tiempo, pero resul-ta imposible usar mas de una Kinect en el mismo equipo. Por lo tanto habrıa queusar dos equipos, uno por cada Kinect, y tratar los datos generados por ambas porseparado, o bien juntarlos en uno de esos dos equipos o en un tercero. Esto va encontra de las premisas de este proyecto de sencillez y bajo coste. Finalmente lasgrabaciones laterales fueron descartadas como se ha comentado en la seccion 5.2.1.

Originalmente para realizar la interfaz se partio de una aplicacion para UWP(Universal Windows Platform), que permite que las aplicaciones se puedan usar nosolo en ordenadores, si no tambien en tablets y smartphones y permite tambiencomercializarla en la tienda de Windows. Pero la API de esta plataforma generabaciertas restricciones, por ejemplo a la hora de generar y guardar un archivo en undirectorio elegido por el usuario. Esto hizo que se decidiera cambiar este tipo deaplicacion por una aplicacion de escritorio WPF.

6.2. Presupuesto

Los costes de este proyecto han sido solo materiales. Se detallan a continuacion:

49

Page 70: Sistema automatizado de deteccion de anomal as en la forma ...

50 CAPITULO 6. GESTION DEL PROYECTO

Figura 6.1: Diagrama de planificacion

Tabla 6.1: Presupuesto

Material Precio por unidad (e) Unidades Precio (e)

Kinect para Xbox One 149,99 1 149,99Adaptador Kinect para Windows 49,99 1 49,99

Cinta de andar 235 1 235

Total 438,98

Page 71: Sistema automatizado de deteccion de anomal as en la forma ...

Capıtulo 7

Conclusiones

Se presentan a continuacion las conclusiones sacadas tras la realizacion de esteproyecto y de la memoria. Se incluyen ademas en este capıtulo posibles desarrollosfuturos para la mejora de este proyecto.

7.1. Conclusion

Una vez finalizado el proyecto se puede afirmar que puede ser un gran sistema dediagnostico de enfermedades. Se trata de un sistema sencillo, que no requiere de mu-chos elementos: un sensor Kinect, un ordenador o una tableta y una cinta de andar.Ademas de constar de pocos elementos estos no requieren ni de un presupuesto altoni de un gran espacio, lo que permite que pueda usarse en centros que no puedenpermitirse un laboratorio de marcha convencional, o incluso en el propio hogar delpaciente.

La interfaz disenada es una interfaz de uso sencillo, que permite ver la informacionde forma clara. Solo tiene un pequeno inconveniente, cuando se esta haciendo uso delas tres graficas y la prueba dura mas de un minuto y medio la aplicacion empiezaa ralentizarse. Esto no supone un gran problema, ya que las pruebas actuales duranmucho menos.

Los resultados obtenidos en las diferentes pruebas han sido muy satisfactorios.Han mostrado que se trata de un sistema fiable y preciso en las condiciones adecuadasy que se puede adaptar a distintos entornos.

7.2. Desarrollos futuros

El futuro trabajo mas inmediato serıa el de probar la aplicacion con pacientesreales en un entorno hospitalario real. Otra prueba que se podrıa realizar serıa la demontar el sensor en un robot movil que siguiera al paciente manteniendo la distanciaconstante.

A medio plazo los posibles desarrollos deberıan estar centrados en la inteligenciaartificial. Se tratarıa de introducir redes neuronales para la mejora de la cuentade pasos y que de esta forma no dependa de la frecuencia de muestreo de Kinect.Tambien se podrıan aplicar para la deteccion automatica de problemas en la marchay la elaboracion de un diagnostico en el momento.

51

Page 72: Sistema automatizado de deteccion de anomal as en la forma ...

52 CAPITULO 7. CONCLUSIONES

La version de Kinect usada para este proyecto ofrece la posibilidad de ver la fuerzaque ejercen los musculos de los cuerpos detectados y la frecuencia cardıaca a travesde la cara, pero solo en algunos juegos de Xbox One. Si Microsoft decidiera liberarel codigo que lo permite se podrıan anadir los datos de la fuerza de los musculos alestudio, y ası hacerlo mucho mas completo.

Page 73: Sistema automatizado de deteccion de anomal as en la forma ...

Apendice A

Anexo A

En este apendice se muestran los diagramas UML de las clases del proyecto.

53

Page 74: Sistema automatizado de deteccion de anomal as en la forma ...

54 APENDICE A. ANEXO A

Figura A.1: Diagrama UML de MainWindow

Page 75: Sistema automatizado de deteccion de anomal as en la forma ...

55

Figura A.2: Diagrama UML de BodiesManager

Figura A.3: Diagrama UML de BodyDistances

Figura A.4: Diagrama UML de Graphics

Page 76: Sistema automatizado de deteccion de anomal as en la forma ...

56 APENDICE A. ANEXO A

Page 77: Sistema automatizado de deteccion de anomal as en la forma ...

Bibliografıa

[1] A. Lorena Cerda. Manejo del trastorno de marcha del adulto mayor. RevistaMedica Clınica Las Condes, 25(2):265 – 275, 2014. Tema central: Medicinafısica y rehabilitacion.

[2] E. Chumpitaz and D. Paredes. Sistema de aprendizaje de matematica conKinect v2. Master’s thesis, Universidad Peruana de Ciencias Aplicadas, 2016.

[3] T. Villar et al. Alteraciones de la marcha, inestabilidad y caıdas. In Trata-do de geriatrıa para residentes, chapter 19. Sociedad Espanola de Geriatrıa yGerontologıa, 2006.

[4] D. Muga Gonzalez. Investigacion de la aplicacion de la tecnologıa Kinect enentornos nucleares. Master’s thesis, Universidad de Cantabria, 2012.

[5] M. Ibarra. Matematicas para el procesamiento digital de senales, chapter 18.Universidad Nacional Autonoma de Mexico, 2013.

[6] A. Lorena. Evaluacion del paciente con trastorno de la marcha. Revista HospitalClınico Universidad de Chile, 2010.

[7] Microsoft. Kinect human interface guidelines v2.0, 2014.

[8] S. Londo no. Parkinson kinect system, 01 2012.

[9] A. Sanchez, A. Garcıa, and J. Sanchez. Raint: Aplicacion interactiva con reali-dad aumentada como apoyo al aprendizaje de la lectura de personas con dis-capacidad auditiva utilizando kinect. In Avances en el desarrollo tecnologicoe investigacion en el area de Tecnologıas de la Informacion y Comunicacionen Mexico, pages 46–51. Asociacion Nacional de Instituciones de Educacion enTecnologıas de la Informacion, 2013.

[10] C. Marco Sanz. Cinesiologıa de la marcha humana normal.url:http://wzar.unizar.es/acad/cinesio/Documentos/Marcha %20humana.pdf.

57