• No se han encontrado resultados

2. Estado del arte

2.7. Técnicas de reconocimiento

Independientemente de donde se capturen los datos y qué mecanismo se utilice para lograrlo, se tienen que emplear técnicas de reconocimiento de gestos para interpretar esos datos. Esta es una tarea que involucra aspectos que varían desde el modelado, análisis y reconocimiento del movimiento hasta estudios psicolingüísticos. Varias técnicas y modelos matemáticos han sido aplicados al área entre las cuales se pueden mencionar: Dynamic Time Warping (DTW) y Hidden Markov Models (HMM). A continuación se muestra un relevamiento de las técnicas más conocidas y aplicadas. Se explica brevemente cada una y se citan algunos autores científicos que han hecho uso de las mismas para el reconocimiento de gestos, donde en algunos casos se ha usado Kinect para la toma de datos, y en otros, sensores habituales en dispositivos móviles.

2.7.1. Dynamic time warping

Dynamic Time Warping o Alineamiento Temporal Dinámico, es un algoritmo utilizado para medir las similitudes entre dos secuencias de datos las cuales pueden variar en tiempo o velocidad. Por ejemplo, dadas dos personas que caminan por un sendero, tomando de esta actividad una secuencia de pasos seguidos por cada persona, mediante DTW se puede determinar qué tan parecidos fueron sus recorridos, incluso también si una persona caminó más rápido o más lento que la otra, o si en el recorrido se produjeron aceleraciones o desaceleraciones de velocidad.

Este algoritmo ha sido implementado en distintos enfoques para el reconocimiento de gestos. Se puede mencionar el trabajo realizado en [14] donde se utilizó DTW para el reconocimiento de series temporales en tiempo real. El objetivo fue proponer un modelo optimizado que mediante el uso de la técnica sirva para reconocer gestos realizados con las manos en tiempo real. Por su parte, en [15] se propuso un enfoque para el reconocimiento de gestos usando DTW donde la entrada de datos al sistema se realizó con una cámara simple. El propósito fue reconocer gestos para lograr mover un robot. En otras áreas, DTW se empleó para reconocer el perfil de conducción de las personas

31 [16], clasificándolo en dos categorías dependiendo del comportamiento medido con variados sensores de un dispositivo móvil. En [17] por otro lado, se diseñó un algoritmo basado en DTW cuya entrada es tomada desde un acelerómetro. Se enumeran dos posibles aplicaciones, la autenticación de usuarios, e interfaces de usuario de dispositivos móviles basadas en gesto en tres dimensiones.

2.7.2. Procrustes

En estadística, el análisis de Procrustes es una forma de análisis de figuras estadístico usado para analizar la distribución de un conjunto de figuras. Para comparar la forma de dos o más objetos, los objetos deben primero ser óptimamente superpuestos. Este proceso de superposición de Procrustes es llevado a cabo mediante la óptima traslación, rotación y escalado uniforme de los objetos. Luego de realizar estos tres pasos, los objetos coincidirán exactamente si sus formas son idénticas.

El análisis Procrustes ha sido aplicado en el reconocimiento de gestos mediante la superposición de las figuras formadas por distintas zonas del cuerpo o incluso todo el cuerpo. En [18] se utiliza este análisis para el reconocimiento de la forma de caminar de una persona. Este trabajo basa los principios de Procrustes para producir un algoritmo mejorado de reconocimiento. Por otro lado, en [19] usaron Procrustes para la detección de gestos realizados con la cara. También, en [20] proponen un novedoso framework para el reconocimiento del lenguaje con señas. En este enfoque aplican una alineación del conjunto de entrenamiento utilizando el análisis de Procrustes.

2.7.3. Modelos ocultos de Márkov

Los modelos ocultos de Márkov son especialmente conocidos por su aplicación en reconocimiento de patrones temporales como la voz, escritura, reconocimiento de gestos, seguimiento de partituras musicales, bioinformática y descargas parciales. Son modelos estadísticos que consisten de N estados y una matriz de transición. Cada estado tiene asignada una función de distribución de probabilidad de salida Bi(O), la cual entrega la probabilidad de que el estado genere una salida O bajo la condición de que el sistema se encuentre en el estado Si. Existen tres problemas básicos en HMM. Primero, dados los parámetros del modelo, calcular la probabilidad de una secuencia de salida en particular. Este problema se resuelve con el algoritmo de avance-retroceso. Segundo, dados los parámetros del modelo, encontrar la secuencia más probable de estados ocultos que puedan haber generado una secuencia de salida dada. Este

32 problema se resuelve con el algoritmo de Viterbi. Tercero, dada una secuencia de salida o un conjunto de tales secuencias, encontrar el conjunto de estados de transición y probabilidades de salida más probables. En otras palabras, entrenar a los parámetros de HMM dada una secuencia de datos. Este problema se resuelve con el algoritmo de Baum-Welch.

En [21] utilizaron el modelo en dos etapas para estimar la posición de las manos del usuario. En la primera, una vez identificadas las manos, ejecutaron HMM para mapear la posición de dichas manos a una posición más precisa. La información resultante fue la entrada a la segunda etapa, donde nuevamente usaron estos modelos de Márkov para discriminar entre todas las posturas de las manos posibles. Otro enfoque fue presentado en [22] para la creación de una técnica basada en el reconocimiento de los gestos con las manos. En este trabajo usaron las trayectorias descritas por el movimiento y luego HMM para la clasificación. De manera semejante, en [23] se emplearon los modelos de Markov para reconocer actividad humana basada en las mediciones que provee el acelerómetro de un dispositivo móvil. El reconocimiento se dividió en dos partes, primero se utilizaron HMM de bajo nivel para reconocer acciones desde las mediciones en bruto. Luego una capa de HMM de más alto nivel evaluando la secuencia de acciones, reconocía una actividad específica.

2.7.4. String matching

En informática, los algoritmos de String Matching son aquellos que intentan encontrar un patrón o cadena de caracteres dentro de un texto o dentro de otra cadena más larga. Existen distintos tipos de algoritmos, donde cada uno resuelve cierta particularidad del problema con diferentes complejidades y costos computacionales.

Para el área del reconocimiento de gestos, se encuentran diferentes enfoques que intentan resolver el problema mediante el uso de algoritmos de String Matching. En [24] emplean estos algoritmos para ofrecer un método de detección y clasificación de gestos en tiempo real. En este trabajo, los movimientos fueron captados por acelerómetros en forma de vectores que luego se codificaron como cadenas de caracteres. Los autores afirman que el empleo de algoritmos de String Matching consume una mínima fracción de tiempo de CPU, siendo un mecanismo ideal para el reconocimiento en tiempo real. Por otro lado, el trabajo presentado en [25] propone un enfoque para el reconocimiento de gestos en 2D donde cada gesto es una máquina finita de estados en el espacio temporal. A este modelo le incorporaron una modificación del algoritmo Knuth-Morris-

33 Pratt, que pertenece al conjunto de algoritmos de String Matching, para acelerar el reconocimiento de gestos.

2.7.5. Resumen

Con las cuatro técnicas presentadas es posible interpretar gestos a partir de las trayectorias que describen las partes del cuerpo de una persona o las mediciones físicas que provee un sensor inercial. La elección de las mismas se basó en los relevamientos científicos estudiados, donde se han implementado adaptaciones de las técnicas para ser usadas en el reconocimiento de gestos obteniendo buenos resultados.

En esta tesis serán implementadas las cuatro técnicas con el fin de evaluar el desempeño de cada una y obtener conclusiones que permitirán determinar bajo qué condiciones conviene utilizar cada técnica. Para esto, se realizarán experimentos que comparen la eficiencia y eficacia que tienen para interpretar gestos como así también analizar la facilidad con que las mismas pueden ser adaptadas y utilizadas en el contexto del reconocimiento de gestos.