ISSN 0718-3291 Versión Impresa

ISSN 0718-3305 Versión en línea

Volumen 28 N° 4, Octubre - Diciembre 2020

pdf Índice

Sistema de detección de caídas en personas utilizando vídeo vigilancia

Sistema de detección de caídas en personas utilizando vídeo vigilancia

Ingeniare. Revista chilena de ingeniería

versión On-line ISSN 0718-3305

Ingeniare. Rev. chil. ing. vol.28 no.4 Arica dic. 2020

http://dx.doi.org/10.4067/S0718-33052020000400684 

Artículos

Sistema de detección de caídas en personas utilizando vídeo vigilancia

Fall detection system for people using video surveillance

César Augusto Quinayás Burgos1  * 

Darío Fernando Quintero Benavidez1 

Estefani Ruíz Omen1 

José Luis Narváez Semanate1 

1 Universidad Antonio Nariño. Ingeniería Biomédica. Popayán, Colombia. E-mail: cquinayas@uan.edu.co; dquintero25@uan.edu.co; eruiz10@uan.edu.co; jose.narvaez@uan.edu.co

RESUMEN

Las caídas son la segunda causa de muerte en el mundo. Por esta razón, los sistemas de detección de caídas, enmarcados en la telemedicina, hoy en día son investigados ampliamente. No obstante, estos sistemas suelen dar como resultado, falsos positivos. En este artículo se propone el desarrollo de un sistema de detección de caídas para personas. El sistema se basa en el uso de un sensor Kinect 2.0 que permite monitorear de uno a seis pacientes y un sistema de alarma que envía un mensaje con imagen al e-mail de la persona al cuidado del paciente. El análisis biomecánico de la caída, realizado con el programa iPi Mocap Studio, y el algoritmo de detección de caídas, desarrollado en el software de programación gráfico LabVIEW, permitieron medir los valores de posición y velocidad de un punto seleccionado en la esqueletización de la persona. Se simularon diferentes acciones entre ellas, caminar, sentarse, agacharse y caer. De la posición del punto seleccionado (spinebase) del esqueleto de la persona, se calculó la velocidad con la derivada. Esta característica permitió definir las variables lingüísticas y conjuntos difusos para clasificar el tipo de movimiento. El sistema se validó con 3 personas, de diferentes edades y estaturas, en un ambiente controlado, logrando un porcentaje de aciertos del 95,8% y la activación del sistema de alarma, creando un asistente tecnológico de ayuda adecuada y confiable que garantiza la integridad del paciente.

Palabras clave: Detección de caídas; Kinect 2.0; esqueletización; spinebase

ABSTRACT

Falls are the second cause of death in the world. This is the reason why systems of falls detection, framed in the telemedicine field, are widely investigated nowadays. However, these systems often result in false positives. In this paper we propose the development of a fall detection system for people. The system is based on the use of a Kinect 2.0 sensor that allows monitoring from one to six patients and an alarm system that sends both a message and an image to the e-mail of the person who is taking care of the patient. The biomechanical analysis of the fall, carried out using iPi Mocap Studio program, and the fall detection algorithm, developed in LabVIEW graphic programming software, allowed measuring the position and velocity values of a selected point in the skeletonization of the person. Different actions were simulated, including walking, sitting, bending and falling. From the position of the point-selected point (spinebase) of the skeleton of the person, the velocity was calculated with the derivative. This characteristic allowed defining the linguistic variables and fuzzy sets to classify the type of movement. The system was validated with 3 people, of different ages and heights, in a controlled environment, achieving an effectiveness of 95.8% and the activation of the alarm system, creating a technological assistant of adequate and reliable aid that guarantees the integrity of the patient.

Keywords: Fall detection; Kinect 2.0; skeletonization; spinebase

INTRODUCCIÓN

Las caídas en adultos se definen como hechos que llevan a la persona a perder el equilibrio y, consecuentemente, a terminar con el cuerpo sobre una superficie que lo detenga, generalmente el suelo 1. Las caídas se catalogan como la segunda causa de muerte a nivel mundial. Para el año 2018, se presentaron, en todo el mundo, 37.3 millones de caídas que requirieron atención médica, de estas murieron 646.000 personas 1. La mayor morbilidad correspondió a adultos mayores de 65 años, a jóvenes entre 15 y 29 años y a menores de 15 años. Es por esto que la detección automática y remota de caídas, tema que se enmarca dentro de la telemedicina, hoy es un asunto de investigación de mucha importancia 2-4, pues podría ayudar a intervenir a la persona a tiempo, minimizando las consecuencias de su caída. Los dispositivos que realizan estas tareas están basados en acelerómetros 5-6 y video cámaras (7-9, entre otros. La detección de caídas basada en tecnología de visión computacional es una buena alternativa de monitoreo, pues las cámaras son sensibles y versátiles. Las características detectables por algoritmos usando sistemas de captura más comunes incluyen formas 10, posturas 11 y patrones de movimiento 12. A pesar de que existen varios estudios en los que se utilizan cámaras, los resultados muestran que pueden existir falsos positivos, pues estas características requieren ser bien definidas para minimizar falsos resultados en el desempeño del sistema. Algunos algoritmos detectan actividades basadas en movimiento (caída libre, golpes, movimiento nulo) utilizando acelerómetros 13-14. En este artículo se propone la implementación de un detector de caídas utilizando un sensor Kinect 2.0 y Fuzzy Logic para definir los conjuntos difusos a través de la velocidad medida desde la persona capturada y lograr una mayor precisión en la detección, además de generar una alarma que informe a otra persona mediante un mensaje de texto a su celular.

MATERIALES Y MÉTODOS

Entorno de experimentación

El sistema de detección de caídas se desarrolló en un ambiente estructurado. Primeramente, se definió la ubicación para el sensor, tomando en cuenta los puntos y el ángulo de inclinación principales para la captura de las imágenes. El sensor se ubicó a 1,5 m de altura sobre el suelo. Desde este punto, el campo de visión del sensor Kinect, 70° horizontal x 60° vertical, no se ve alterado y mantiene la distancia máxima de detección de 4,5 m. Seguidamente, se llevó a cabo la calibración del Kinect mediante la herramienta "calibrate camera optics" que ofrece el software iPi Recoder, lo que permite corregir errores relacionados con distancia focal y relación de aspecto de los pixeles, entre otros. La zona de experimentación se adecuó con dos colchonetas para simular la caída del paciente y evitar que se lastime, una silla para realizar la simulación de la acción de sentarse, un televisor y un computador para el procesamiento de las imágenes. La configuración experimental se muestra en la Figura 1.

Figura 1 Configuración experimental del sistema. 

Desarrollo del software del sistema de detección de caídas

Para desarrollar el software de detección de caídas se utilizó el lenguaje de programación gráfico de LabVIEW y la interfaz para Microsoft Kinect One de Labview MakerHub que ofrece una API (conjunto de rutinas que provee acceso a funciones de Labview) para adquirir datos desde el sensor Kinect. En el programa se inicializa la interfaz y se habilitan los sensores del Kinect para la captura de movimiento y recolección de datos de posición. Se capturan las imágenes a color y se realiza el seguimiento y la esqueletización de la persona. Se determinó como punto de referencia la articulación base de la columna vertebral (spinebase) para seguir y monitorizar la esqueletización de la persona. Determinadas las coordenadas "x", "y" y "z" del punto de referencia de la esqueletización de la persona, en posición de bipedestación, se selecciona la coordenada en "y" que corresponde a la coordenada de la dirección del movimiento, se calcula un promedio de 50 datos y se resta a la posición actual para establecer el punto de referencia para el estudio de los movimientos, esto se realiza solamente una vez para calibrar las alturas de las personas y tener un marco de referencia. Con los datos de posición se determinó la derivada utilizando el método de diferenciación hacia atrás de primer orden, para calcular la velocidad, este dato de velocidad es enviado a un sub-VI que clasifica a través de un sistema de inferencia difuso (6 sistemas difusos), si el sistema difuso detecta una caída genera una alarma, en caso de detectar un movimiento diferente a una caída el sistema continúa desplegando la información de la velocidad y las imágenes con su esqueletización. En la Figura 2 se muestra el diagrama de flujo del sistema de detección de caídas.

Figura 2 Diagrama de flujo del sistema de detección de caídas propuesto. 

El sistema además permite hacer el seguimiento de la persona detectada, si no se presentan obstáculos entre la persona y el sensor que impida el seguimiento de la articulación de referencia (spinebase). En el programa se utiliza el API MakerHub, permitiendo que el sistema tenga la capacidad de monitorizar y esqueletizar hasta seis personas al mismo tiempo utilizando el Kinect como sensor de captura, en la Figura 3 se muestra el sistema haciendo el monitoreo y esqueletización de 6 personas.

Figura 3 Sistema de monitoreo y esqueletización para 6 personas con diferentes niveles de iluminación. 

Para construir los conjuntos difusos del sistema de clasificación fue necesario realizar diferentes pruebas para medir la velocidad, por lo tanto, se les pidió a 5 personas de diferentes estaturas, que efectúen 10 veces los movimientos de caminar, sentarse, agacharse y caerse, y se guardan los datos de velocidad durante 3 segundos. El sistema corre a una tasa de muestreo de 10 ms considerando que el Kinect captura 30 imágenes por segundo. A partir de estas pruebas se seleccionaron al azar los datos de un intento por cada movimiento para cada persona como se muestra en la Figura 4 y se establecieron los rangos de velocidad para cada movimiento como se muestra en la Tabla 1. De los datos obtenidos en las pruebas se puede observar que, al simular los diferentes movimientos de estudio, la velocidad llega a su máxima velocidad cuando el usuario entra en contacto con el suelo si está cayendo, si alcanza la postura para agacharse o entra en contacto con la silla al sentarse, como el usuario se detiene la velocidad vuelve a valores aproximados a cero. También se puede observar que el movimiento caerse se realiza en un menor tiempo comparado con los movimientos agacharse y sentarse.

Tabla 1 Rangos de velocidad para cada movimiento. 

Acción Rango
Caminar -100-20 cm/s
Sentarse 20-150 cm/s
Agacharse 130-280 cm/s
Caerse 250-500 cm/s

Figura 4 Velocidad vs tiempo para la simulación de movimientos. 

Para clasificar los diferentes movimientos, se implementó un sistema de inferencia difuso del tipo Takagi-Sugeno, porque este enfoque permite la integración de conocimientos específicos de las caídas como la capacidad para generalizar y ha sido utilizado como método de detección de caídas reduciendo las falsas alarmas 15. El algoritmo difuso sugerido en este artículo utiliza la velocidad como entrada con 4 funciones de membresía (caminar, sentarse, agacharse y caer) y como salida 4 conjuntos tipo singleton. Los valores de entrada se establecieron a partir del análisis del cambio de la velocidad, tomando como referencia los rangos obtenidos en la Tabla 1. En la Figura 5 se muestra el conjunto de entrada velocidad con sus funciones de membresía tipo trapezoidal para las variables lingüísticas caminar y caer (en el rango de -100 a 20 y de 250 a 500, respectivamente) y función de membresía triangular para sentarse y agacharse (en el rango de 20 a 150 y 130 a 280, respectivamente).

Figura 5 Funciones de membresía de la variable de entrada. 

El conjunto de salida son singleton a los que se le asigna un valor constante que corresponde a la acción que se quiere identificar (se asignó 1 como estado normal para la acción de caminar, 2 como el estado normal 1 para la acción sentarse, 3 como estado normal 2 a la acción agacharse y 4 como estado de alarma que corresponde a acción caerse), como se observa en la Figura 6.

Figura 6 Funciones de membresía de la variable de salida. 

Definidos los valores de entrada y salida del sistema difuso, se implementaron las reglas borrosas las cuales están asociadas con una función de pertenencia de la salida, ver Tabla 2.

Tabla 2 Conjunto de Reglas definidas para el sistema difuso. 

Antes de poner a prueba el sistema de clasificación basado en lógica difusa se hace la validación por medio de un test system que permite simular el comportamiento de este con diferentes valores de entrada como se observa en la Figura 7, comprobando que el sistema se comporta de manera adecuada.

Figura 7 Simulación de la acción de "caminar". 

Pruebas experimentales

Para validar el sistema de detección de caídas con variaciones en las condiciones de iluminación, se le pidió al paciente realizar las actividades consignadas en la Tabla 3. Antes de las pruebas el paciente dio su consentimiento informado por escrito.

Tabla 3 Actividades desarrolladas por el paciente, desarrollo de pruebas del sistema. 

Figura 8 Actividad de las pruebas experimentales. A) Acción caminar, B) acción agacharse, C) acción sentarse y D) acción caerse. 

RESULTADOS

El sistema propuesto fue validado con 3 personas (alturas de 1,55 m, 1,60 m y 1,70 m, respectivamente), simulando caídas y realizando las actividades que se piden en la Tabla 3. Se le pide a cada persona que efectúe 10 veces cada acción o movimiento (caminar, sentarse, agacharse y caerse). Desde las pruebas realizadas fue posible determinar la precisión de detección de la caída usando como parámetro la velocidad medida desde la persona. Las matrices de confusión de las acciones detectadas junto con el total de caídas y no caídas para cada persona se muestran en las Tablas 4, 5 y 6, respectivamente. La precisión, sensibilidad y especificidad fueron calculadas con las siguientes ecuaciones:

(1)

(2)

(3)

Tabla 4 Matriz de confusión persona 1. 

Tabla 5 Matriz de confusión persona 2. 

Tabla 6 Matriz de confusión persona 3. 

De los resultados obtenidos en las Tablas 4, 5 y 6 se pueden obtener las métricas del sistema de clasificación propuesto. Se obtiene una precisión promedio de 95,8%, una especificidad promedio de 94,4% y una sensibilidad promedio del 100%. Se obtienen una sensibilidad del 100% debido a que el sistema propuesto es capaz de clasificar todos los movimientos que fueron simulados como caídas. También es posible evidenciar que hay movimientos que se realizan en la vida diaria como levantar un objeto o agacharse que se puede confundir como una caída.

Cuando el sistema detecta una caída envía una alarma al correo electrónico de la persona que se encuentra al cuidado del paciente, informándole que el paciente ha sufrido una caída junto con una imagen actual del paciente para que de esta manera puedan socorrerlo lo antes posible. En la Figura 9 se muestra una imagen del mensaje recibido al simular una caída.

Figura 9 Alarma enviada al correo electrónico. 

Se realizó una prueba de validación del sistema con 4 personas donde se les pidió realizar diferentes acciones como sentarse, permanecer parado y caerse.

El sistema detectó las caídas simuladas por las 2 personas que decidieron caerse. En la Figura 10 se muestran dos imágenes del desarrollo de la prueba.

Figura 10 Prueba de validación para detección de múltiples personas simulando caídas. 

DISCUSIÓN

El sistema propuesto ha mostrado un buen rendimiento en la detección de caídas simuladas en un ambiente estructurado utilizando un Kinect One, LabVIEW y Fuzzy Logic. El sistema presenta una precisión promedio del 95,8%, una especificidad de 94,4% y una sensibilidad del 100%, con la capacidad de clasificar todas las acciones simuladas como caídas y la posibilidad de monitorear hasta 6 personas y enviar la alarma al cuidador. Este resultado es relevante, comparado con trabajos relacionados donde se obtiene una precisión del 93,9%, una especificidad del 91,3% y sensibilidad del 100% para detección de una persona utilizando imágenes de profundidad con un sensor kinect 16, en 19 se obtiene una precisión del 98,8% para la detección de caída de una persona utilizando un sensor kinect y el cambio de la aceleración de la nube de puntos de imágenes consecutiva, y en 17 detectan caídas y tumbarse lentamente con un sensor kinect y datos de series de tiempo. En contraste con el sistema propuesto, algunos trabajos presentan la utilización de un dispositivo que tiene que ser implementado directamente en el paciente 5, provocando incomodidad o el rechazo del mismo, pues en algunos casos el sistema requiere una fuente de alimentación que puede generar más molestias a los pacientes 18. Vale la pena mencionar que algunos sistemas que utilizan Kinect, se basan en el análisis de siluetas, lo que limita el sistema a monitorear un sólo paciente 18, además de no contar con un sistema de alarma que permita notificar, a la persona encargada del cuidado del paciente, sobre los eventos sufridos por él. Es así como el sistema propuesto muestra una gran robustez, sin embargo, estaría limitado por el área de detección, ya que esta se encuentra delimitada por el sensor. Basados en los resultados se evidencia que el sistema funciona y es apto para detectar caídas en personas.

CONCLUSIONES

En este artículo, nosotros proponemos un sistema de detección de caídas que utiliza lógica difusa para la clasificación de las acciones como caminar, agacharse, sentarse y caminar, obteniendo una precisión promedio de clasificación del 95,8% en una prueba de validación con 3 personas de diferentes estaturas, generando la activación de la alarma, que corresponde al envío del mensaje al correo electrónico del cuidador. Por lo tanto, se puede considerar el sistema como un prototipo de asistente tecnológico que permite la atención oportuna del paciente en el caso de sufrir una caída y que no necesita que el paciente porte un brazalete o sistema de medida.

Fue posible monitorear hasta seis personas al tiempo haciendo uso de la API MakerHub para Labview. Se evidenció que las condiciones de luz no afectaron la respuesta del sistema por lo que el buen funcionamiento y la atención oportuna del paciente, por parte de la persona a cargo al detectar una caída, está garantizada, aún en condiciones de iluminación cambiante.

REFERENCIAS

[1] Organización Mundial de la Salud (OMS). "Caídas". 2019. URL: http://www.who.int/es/news-room/fact-sheets/detail/falls

[2] A. Amini, K. Banitsas and W.R. Young. "Kinect4FOG: monitoring and improving mobility in people with Parkinson's using a novel system incorporating the Microsoft Kinect v2". Disabil. Rehabil. Assist. Technol., pp. 1-8. May, 2018. DOI: 10.1080/17483107.2018.1467975.

[3] Y. Wu, Y. Su, Y. Hu, N. Yu and R. Feng. "A Multi-sensor Fall Detection System Based on Multivariate Statistical Process Analysis". J. Med. Biol. Eng. Vol. 39, Issue 3, pp. 336-351. June, 2019. DOI: 10.1007/ s40846-018-0404-z.

[4] A. Abobakr, M. Hossny and S. Nahavandi. "A Skeleton-Free Fall Detection System From Depth Images Using Random Decision Forest". IEEE Syst. J. Vol. 12, Issue 3, pp. 2994-3005. September, 2018. DOI: 10.1109/JSYST.2017.2780260.

[5] P. Van Thanh, D.-T. Tran, D.-Ch. Nguyen, N. Duc Anh, D. Nhu Dinh, S. El-Rabaie and K. Sandrasegaran. "Development of a Real-Time, Simple and High-Accuracy Fall Detection System for Elderly Using 3-DOF Accelerometers". Arab. J. Sci. Eng. Vol. 44, Issue 4, pp. 3329-3342. April, 2019. DOI: 10.1007/s13369-018-3496-4.

[6] L.P. Malasinghe, N. Ramzan and K. Dahal. "Remote patient monitoring: a comprehensive study". J. Ambient Intell. Humaniz. Comput. Vol. 10, Issue 1, pp. 57-76, January, 2019. DOI: 10.1007/s12652-017-0598-x.

[7] N. Lu, Y. Wu, L. Feng and J. Song. "Deep Learning for Fall Detection: Three-Dimensional CNN Combined With LSTM on Video Kinematic Data". IEEE J. Biomed. Heal. Informatics. Vol. 23, Issue 1, pp. 314-323. January, 2019. DOI: 10.1109/JBHI.2018.2808281.

[8] L. Shen, Q. Zhang, G. Cao and H. Xu. "Fall Detection System Based on Deep Learning and Image Processing in Cloud Environment". Vol. 772, pp. 590-598. June, 2018. DOI: 10.1007/978-3-319-93659-8_53.

[9] O. Kerdjidj, N. Ramzan, K. Ghanem, A. Amira and F. Chouireb. "Fall detection and human activity classification using wearable sensors and compressed sensing". J. Ambient Intell. Humaniz. Comput. January, 2019. DOI: 10.1007/s12652-019-01214-4.

[10] G. Goudelis, G. Tsatiris, K. Karpouzis and S. Kollias. "Fall detection using history triple features". In Proceedings of the 8th ACM International Conference on Pervasive Technologies Related to Assistive Environments - PETRA '15, pp. 1-7.2015. DOI: 10.1145/2769493.2769562.

[11] G. Debard, M. Mertens, M. Deschodt and E. Vlaeyen. "Camera-based fall detection using real-world versus simulated data: How far are we from the solution?". J. Ambient Intell. Smart Environ. Vol. 8, Issue 2, pp. 149-168. March, 2016. DOI: 10.3233/AIS-160369.

[12] D.N. Olivieri, I. Gómez Conde and X A. Vila Sobrino. "Eigenspace-based fall detection and activity recognition from motion templates and machine learning". Expert Syst. Appl. Vol. 39, Issue 5, pp. 5935-5945. April, 2012. DOI: 10.1016/j.eswa.2011.11.109.

[13] A.K. Bourke, P.W.J. Van de Ven, A.E. Chaya, G.M. OLaighin and J. Nelson. "Testing of a long-term fall detection system incorporated into a custom vest for the elderly". In 2008 30th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, pp. 2844-2847. 2008. DOI: 10.1109/IEMBS.2008.4649795.

[14] A.K. Bourke, J.V. O'Brien and G.M. Lyons. "Evaluation of a threshold-based tri-axial accelerometer fall detection algorithm". Gait Posture. Vol. 26, Issue 2, pp. 194-199. July, 2007. DOI: 10.1016/j.gaitpost.2006.09.012.

[15] H. Zhang, M. Alrifaai, K. Zhou and H. Hu. "A novel fuzzy logic algorithm for accurate fall detection of smart wristband". Transactions of the Institute of Measurement and Control. Vol. 42, pp. 786-794. 2019. DOI: 10.1177/0142331219881578.

[16] Y. Nizam, M.N. Haji and M.M. Abdul. "Human Fall Detection from Depth Images using Position and Velocity of Subject". Procedia Computer Science. Vol. 105, pp. 131-137. 2017. DOI: 10.1016/j.procs.2017.01.191.

[17] C. Kawatsu, J. Li and J. Chung. "Development of a Fall Detection System with Microsoft Kinect". Advances in Intelligent Systems and Computing. Vol. 208, pp. 623-630. 2012. DOI: 10.1007/978-3-642-37374-9_9.

[18] R. González, R. Hernández y B. Jiménez. "Desarrollo de un sistema de detección de caídas basado en acelerómetros". Tesis pregrado, Universidad Complutense de Madrid. 2016.

[19] Y. Peng, J. Peng, J. Li, P. Yan and B. Hu. "Design and Development of the Fall Detection System based on Point Cloud". Procedia Computer Science. Vol. 147, pp. 271-275. 2018. DOI: 10.1016/j.procs.2019.01.253.

Recibido: 15 de Julio de 2020; Aprobado: 01 de Septiembre de 2020

* Autor de correspondencia: cquinayas@uan.edu.co

 


Otros Artículos

# Título Ver
1
Potencial undimotriz de la región de Tarapacá (Chile) como foco de fomento productivo (2018)
Raúl Castillo Villagra, Vivian Segovia Barros, Gabriel Díaz Flores, Claudia Araya Medina
PDF
2
Propuesta metodológica para la selección de la configuración de centros de distribución inmóticos utilizando análisis envolvente de datos (2016)
Oscar Buitrago Suescun, Oscar Palacio León, Rodrigo Britto Agudelo, Wilson Adarme Jaimes
HTML | PDF
3
Control de un sistema bola-placa utilizando un controlador por realimentación de estados (2020)
David Núñez, Gustavo Acosta, Jovani Jiménez
PDF

Desarrollado por: Cristian Díaz Fonseca - cfonseca@matiasluke.cl