DETECCIO´N DE POSES DE LAS MANOS USANDO DESCRIPTORES LBP CRISTHIAN DAVID TORRES ABOLEDA TUTOR: MARCELA IREGUI GUERRERO FACULTAD DE INGENIERI´A INGENIERI´A EN MULTIMEDIA UNIVERSIDAD MILITAR NUEVA GRANADA 2015 Deteccio´n de poses de las manos usando descriptores LBP Cristhian Torres Arboleda Universidad Militar Nueva Granada Bogota´, Colombia Email: cristhian.ta93@gmail.com Marcela Iregui Guerrero Universidad Militar Nueva Granada Bogota´, Colombia Email: marcelairegui@gmail.com Abstract—El reconocimiento de gestos se ha presentado como una alternativa para la implementacio´n de sistemas de interaccio´n eficaces. Particularmente las aplicaciones basadas en visio´n arti- ficial poseen ventajas en portabilidad frente a otras alternativas. Sin embargo, los algoritmos suelen requerir entrenamiento com- putacional intensivo, siendo difı´ciles de implementar en dispos- itivos mo´viles. En este artı´culo se realiza un estudio preliminar para la deteccio´n de poses de la mano usando un algoritmo basado en Patrones Binarios locales, ma´s conocido por su sigla en ingle´s LBP (Local Binary Patterns). Para lo anterior, se presenta un modelo heurı´stico de divisio´n de la mano en regiones ponderadas diferencialmente, que permite la clasificacio´n directa de los gestos usando una medida de similitud. Los pesos y la distribucio´n de regiones se evaluaron de acuerdo a su precisio´n en la clasificacio´n de cada pose de la mano. Estas pruebas se realizaron en un conjunto de ima´genes, capturadas en condiciones controladas, correspondientes a cinco poses diferentes. El algoritmo propuesto con el esquema de regiones ponderadas muestra una buena capacidad de discriminacio´n y presenta una alternativa va´lida para futuras aplicaciones. Keywords—Local binary Pattern (LBP), interaccio´n humano- computador (HCI), reconocimiento de gestos de las manos, pose, visio´n por computador. I. INTRODUCCIO´N Este proyecto se enmarca dentro de la problema´tica exis- tente en te´rminos de interaccio´n con dispositivos electro´nicos, ya que, si bien es cierto que el teclado y el rato´n son ampliamente usados, no representan una buena opcio´n en te´rminos de usabilidad para aplicaciones multimedia, personas en condicio´n de discapacidad o en equipos mo´viles. Estos u´ltimos, por ejemplo, a pesar de que cada vez son ma´s potentes, es claro que las limitaciones en el taman˜o dificultan la interaccio´n. La preocupacio´n por mejorar la experiencia del usuario, mediante la oferta de sistemas de interaccio´n natural, ha impulsado la creacio´n de dispositivos y la implementacio´n de algoritmos eficientes para lograr la deteccio´n precisa de instrucciones del usuario. Entre las mu´ltiples posibilidades para la interaccio´n por medio de gestos, se han propuesto te´cnicas basadas en diversos dispositivos como guantes, instrumentos ha´pticos, marcadores o´pticos, controladores con sensores y sensores de movimiento como Kinect entre otros. Si bien muchos de los dispositivos son bastante precisos y conducen a desarrollos ra´pidos de una amplia variedad de aplicaciones, presentan desventajas relacionadas con los altos costos, la portabilidad y configurabilidad [1], [6]. El reconocimiento de gestos por medio de te´cnicas de visio´n por computador presenta una oportunidad para mejorar la interaccio´n en portabilidad y ubicuidad, se han utilizado te´cnicas basadas en ima´genes RGB o RGB-Depth. Estos han sido previamente explorados por medio de diversas te´cnicas, algunas ma´s efectivas que otras. Trigueiros y otros,[4], evalu´an siete algoritmos de reconocimiento de gestos esta´ticos, basados en ima´genes obtenidas con una ca´mara Kinect. Sin embargo, los resultados presentados no son concluyentes, principalmente por la baja resolucio´n y ruido en las ima´genes obtenidas. Por otro lado el amplio uso y acceso a las ca´maras web conven- cionales, que hoy por hoy cuentan con excelente resolucio´n y se encuentran en la mayorı´a de los dispositivos, presentan una oportunidad ma´s econo´mica y simple para sistemas de interaccio´n basados en visio´n por computador. En [6], los autores presentan una comparacio´n de diversos me´todos de de- teccio´n de gestos basados en ana´lisis de apariencia o modelos de la mano y en te´cnicas de ana´lisis de ima´genes combinada con aprendizaje de ma´quina. Sin embargo, el problema de complejidad computacional es un problema importante que tienen la mayorı´a de este tipo de algoritmos [4], [5]. Por esto la importancia de desarrollar te´cnicas robustas pero a la vez ligeras, que puedan ser implementadas en dispositivos mo´viles. El algoritmo LBP (Local Binary Patterns) ha demostrado ser una excelente alternativa para la caracterizacio´n de ima´genes por medio del ana´lisis de texturas y para el re- conocimiento de patrones, gracias a su rendimiento y eficacia. Por ejemplo, en [2] se plantea un me´todo de reconocimiento de rostros basado en patrones locales binarios, calculados en regiones independientes, las cuales son definidas y pesadas heurı´sticamente para el proceso de clasificacio´n, por medio de la medida de similitud Chi Cuadrado. Los resultados con el uso de LBP representan avances importantes la para deteccio´n de rostros. El uso de LBP como descriptor para reconocimiento de gestos de las manos ha sido utilizado previamente, combinado con algoritmos de aprendizaje de ma´quina robustos como AdaBoost en [3], [7] y SVM en [4]. Sin embargo, si bien las tasas de precisio´n son buenas, los algoritmos de aprendizaje aumentan la complejidad computacional en el reconocimiento. En este trabajo se realiza un estudio del algoritmo LBP para reconocimiento de gestos de las manos, empleando la caracterizacio´n por regiones, de forma ana´loga a como se pro- pone en [2] para reconocimiento de rostros. Lo anterior usando como u´nico clasificador una medida de similitud basada en ChiCuadrado. Fig. 1. Operador LBP. A la izquierda, la distribucio´n de la vecindad de 8 pı´xeles con radio 1. En la parte derecha un ejemplo del ca´lculo del descriptor para el pı´xel gc, en cuyo caso se calculan las diferencias con pı´xeles vecinos y de acuerdo a la configuracio´n de los cambios, se construye el patro´n binario correspondiente II. PATRONES BINARIOS LOCALES - LBP El operador LBP actu´a sobre la imagen en escala de grises, a cada pixel se le asigna una etiqueta, de acuerdo con la configuracio´n de la vecindad circular de radio R ver figura 1. Si P es el nu´mero total de pı´xeles vecinos utilizados, gc es el valor en escala de grises del pixel central y gp corresponde al valor en escala de grises de un pixel vecino, la etiqueta LBP se calcula segu´n la siguiente ecuacio´n: LBPP,R = P−1∑ p=0 2ps(gp − gc) (1) donde s(x) es la funcio´n signo, definida como: s(x) = { 1, x ≥ 1 0, x < 0 (2) Una vez recorridos los pixeles de la imagen o de una regio´n en particular, se calcula el descriptor de textura por medio de la creacio´n de un histograma con 2P muestras correspondientes a los posibles valores de etiquetas LBP. Dos histogramas de diferentes ima´genes pueden ser comparados por medio de una medida de distancia. III. ME´TODO El me´todo propuesto en este trabajo se basa en el uso de los descriptores LBP y la medida de similitud Chi-Cuadrado, en regiones independientes de la mano. De forma ana´loga al trabajo presentado en [2], en este artı´culo se parte de la hipo´tesis de que, al igual que en las ima´genes de rostros, exis- ten zonas caracterı´sticas de la mano que aportan informacio´n diferencial relacionada con el gesto. Por lo anterior, el me´todo propuesto considera la divisio´n de la imagen y la asignacio´n de pesos especı´ficos de acuerdo a una heurı´stica guiada por la concentracio´n de informacio´n relacionada con el gesto. Por cada una de las m regiones se calcula un histograma LBP de longitud n = 2P , con lo cual, el nu´mero de histogramas calculados es equivalente al nu´mero de regiones. Estos se concatenan en un u´nico vector de longitud m∗n, que representa una descripcio´n global de la imagen. Teniendo en cuenta la eficiencia que se espera de los algoritmos, no se emplean clasificadores sofisticados. La iden- tificacio´n de los gestos se realiza usando una medida ponderada de similitud chi-cuadrado, de acuerdo con un peso asignado a cada regio´n. Partiendo del principio de que las regiones de la imagen contienen mayor cantidad de informacio´n relacionada con el gesto se asigna un peso diferencial a cada regio´n j, ωj , de tal forma que la comparacio´n entre dos histogramas, H, I , se realiza con la funcio´n chi-cuadrado ponderada: χω(H, I) = ∑ i,j ωj (Hi,j − Ii,j)2 Hi,j + Ii,j (3) Para determinar la efectividad del clasificador, como primera medida, se analiza el efecto que tiene la comparacio´n independiente de los histogramas de textura, en subdivisiones de la imagen y de acuerdo al taman˜o de las mismas. Como segunda medida, por medio de una bu´squeda iterativa, se determina la relacio´n o´ptima de pesos por regiones, con el propo´sito de identificar la importancia de cada regio´n en la caracterizacio´n del gesto. A. Configuracio´n de las regiones Con el fin de identificar la capacidad de discriminacio´n del descriptor LBP, en relacio´n con el taman˜o de las regiones comparadas, las ima´genes se subdividen en partes cada vez ma´s pequen˜as y se evalu´a el rendimiento de la clasificacio´n. Con el fin de evitar problemas de escala, las ima´genes se ajustan al a´rea de delimitacio´n de la mano. (ver figura 2). En este caso a cada regio´n se le da el mismo peso en la ponderacio´n del chi-cuadrado. Fig. 2. Configuracio´n de las regiones de acuerdo al taman˜o para la comparacio´n del histograma de textura LBP B. Configuracio´n de los pesos Una vez analizado el efecto de las subdivisiones, se identi- fican varias configuraciones de pesos sobre diferentes zonas de la imagen, para evidenciar la importancia de cada una en la identificacio´n del gesto. Lo anterior por medio de un me´todo heurı´stico, basado en un protocolo jera´rquico que busca establecer las posibles distribuciones de regiones y pesos en diversos niveles de detalle. La figura 3 muestra gra´ficamente el protocolo, el cual se puede analizar de acuerdo a diversos niveles: Fig. 3. Niveles de distribucio´n de zonas de la imagen y posibles distribuciones de pesos • En el primer nivel los pesos se distribuyen en dos regiones. Para este primer caso se separan los dedos (parte superior) y el dorso (parte inferior) y adema´s se busca establecer, que tanto influye la regio´n de los nudillos. • En el siguiente nivel los pesos se distribuyen en tres regiones, se parte de la configuracio´n con mejores resultados en el nivel anterior y se redistribuyen los pesos con el fin de evidenciar la mejor relacio´n de pesos entre el pulgar, los otros dedos de la mano y el dorso. • Partiendo de la mejor distribucio´n en el nivel anterior, se subdivide la parte superior de la mano donde se encuentran los dedos para ver en que´ grado afecta esto al conjunto del reconocimiento. IV. PROTOCOLO EXPERIMENTAL Para el desarrollo de las pruebas, se creo´ una base de datos de 23 ima´genes de 5 poses de la mano derecha, para un total de 115 ima´genes, pun˜o, palma, ı´ndice, pulgar-ı´ndice e ı´ndice- medio en un ambiente uniforme y controlado, permitiendo la extraccio´n de la mano respecto al fondo y delimitando la imagen a los bordes de la misma. Como paso siguiente, se convierte cada imagen de RGB a escala de grises (ver Fig.4), para ser utilizadas en el ana´lisis del LBP. Todas las ima´genes tienen igual taman˜o, 400 px de alto y 240 px de ancho. Para la evaluacio´n se realiza una validacio´n cruzada tipo LOOCV, en la cual se deja una muestra para validacio´n y las restantes como conjunto de entrenamiento. El proceso se realiza para veintitre´s (23) iteraciones por cada clase, con cada una de las ima´genes de prueba. A partir del conjunto de entrenamiento de cada clase se calcula el histograma LBPP,R Fig. 4. Las cinco poses que conforman las clases del clasificador promedio usando como para´metros, una vecindad circular de radio R = 1 y un nu´mero de ocho pı´xeles vecinos, P = 8. Para cada imagen de prueba se calcula el descriptor LBPP,R, el cual se compara con los histogramas promedio obtenidos en la fase de entrenamiento para cada clase, por medio del chi-cuadrado ponderado. El gesto correspondiente se clasifica en la clase con mayor similitud, es decir, menor valor de χ (Ecuacio´n 3). Lo anterior, se realiza con cada una de las cinco configuraciones presentadas en la seccio´n anterior, para identificar la precisio´n obtenida en cada caso. A partir de estos resultados se construye una matriz de confusio´n que permite identificar el nu´mero de Verdaderos Positivos (V P ), Verdaderos Negativos (V N ), Falsos Positivos (FP ), Falsos Negativos(FN ), y a partir de estos valores se realizan los ca´lculos de precisio´n (PPV ), sensibilidad (TPR) y de la medida F (F1), para cada una de las M clases. Es decir que el ca´lculo de cada una de estas me´tricas para una clase i, esta dada por las siguientes ecuaciones. PPVi = V P V P + FP (4) TPRi = V P V P + FN (5) F1,i = 2 PPV · TPR PPR+ TPR (6) Para la evaluacio´n general de la clasificacio´n, los resultados se reportan segu´n las medidas macro, es decir se promedian cada una de estas tres me´tricas para el conjunto de todas las clases posibles. PPV = ∑M i=1 PPVi M (7) TPR = ∑M i=1 TPRi M (8) F1 = ∑M i=1 F1,i M (9) V. RESULTADOS Y DISCUSIO´N Los histogramas promedio de entrenamiento se obtuvieron con veintido´s (22) de las veintitre´s (23) ima´genes de la base de datos en cada pose, la imagen restante es comparada con estos para ser clasificada en una de las cinco poses, por medio del chi-cuadrado ponderado. De acuerdo con los resultados obtenidos en cada clasi- ficacio´n, se evaluo´, para cada distribucio´n en regiones, su precisio´n, sensibilidad y la medida conocida como medida- F o F-score, para evaluar con un valor u´nico el resultado de las pruebas. Los resultados de la variacio´n de la precisio´n y sensibilidad de acuerdo al taman˜o de las regiones se muestra en la tabla I. Las cifras muestran que la comparacio´n de los histogramas requiere cierto grado de granularidad, pero que a partir de cierto nivel se comienza a perder precisio´n. Como se observa se obtiene un valor o´ptimo de precisio´n y de F-score al dividir en 64 regiones. TABLE I. COMPARACIO´N DE LA EFICACIA DEL ME´TODO PARA DIFERENTES SEGMENTACIONES Regiones Distribucio´n WxH Precisio´n (PPV) Sensibilidad (TPR) Medida-F (F1) 1 regio´n 1x1 71,40% 69,60% 69,10% 4 regiones 2x2 86,10% 85,22% 85,57% 16 regiones 4x4 87,00% 86,20% 85,80% 36 regiones 6x6 89,50% 88,70% 88,71% 64 regiones 8x8 94,11% 93,91% 93,96% 121 regiones 11x11 93,95% 93,91% 93,91% 256 regiones 16x16 93,95% 93,91% 93,91% 484 regiones 22x22 93,19% 93,04% 93,06% A continuacio´n se analizan los resultados obtenidos luego de evaluar las diversas configuraciones de pesos. Para esto se parte de una distribucio´n de 64 regiones, por ser esta la que mejores resultados ofrece. Se discute para cada nivel el resultado encontrado de acuerdo con el a´rbol de la Figura 5. Fig. 5. Medicio´n del F1-score para cada una de las opciones evaluadas, segu´n el a´rbol de la Figura 3 • Nivel 1: El ana´lisis de los resultados presentados en el primer nivel del a´rbol de la figura 3, demuestran la hipo´tesis de que los dedos son ma´s discriminantes que el dorso de la mano, en lo que a gestos se refiere. Adema´s, el resultado de la configuracio´n nu´mero cuatro permite establecer que los nudillos tambie´n contribuyen a la correcta clasificacio´n. Por otro lado se observa que la relacio´n de pesos o´ptima entre el dorso y los dedos, para este caso es de 1:3 respectivamente. • Nivel 2: Partiendo de los resultados encontrados en el nivel anterior y subdividiendo las ima´genes en tres regiones, para identificar independientemente las partes correspondientes al dorso, el pulgar y los cuatro dedos restantes (nudillos incluidos); se encuentran resultados o´ptimos en la relacio´n 1:3:5 respectiva- mente (configuracio´n nu´mero 10). Evidenciando que las zonas mas relevantes corresponden a los dedos de las manos, siendo el pulgar menos discriminante que los otros. • Nivel 3: De acuerdo con los resultados del nivel 3 se encuentra que realizar mayor cantidad de divisiones para discriminar los dedos de las manos, no representa mayor beneficio en la distribucio´n de los pesos. Por lo anterior se obtiene una distribucio´n de pesos o´ptima (configuracio´n 10 de la Figura 3) que permite alcanzar me´tricas de hasta 98, 4% en precisio´n, 98, 26% en sensibilidad y 98, 28% en medida-F. Lo cual representa un resultado bastante alentador para el reconocimiento de poses. VI. CONCLUSIONES Y TRABAJO FUTURO Se propuso un sistema novedoso para el ana´lisis y re- conocimiento de gestos de la mano, basado en la divisio´n por regiones de la imagen, lo cual permite analizar cambios de gran relevancia en zonas especı´ficas de la mano. Cada regio´n posee una descripcio´n de la apariencia de una parte de una pose y la combinacio´n de todo el conjunto de regiones dan una descripcio´n global de e´sta. Por otro lado, el algoritmo basado en Patrones Locales Binarios (LBP) es un eficiente caracterizador de la pose, robusto y eficaz y dada su baja complejidad computacional, es una excelente alternativa para su implementacio´n en dispositivos mo´viles. Finalmente se concluye que de forma similar al rostro, la mano tiene caracterı´sticas en regiones que son ma´s de- terminantes que otras, influyendo significativamente en el reconocimiento de la pose. Es ası´ como en la separacio´n de las zonas superiores y de los nudillos, con valores de peso diferenciales en cada caso, influye en el resultado de similitud existente entre estas mismas. El nu´mero de ima´genes de la base de datos, permite apren- der mejor de las poses y por consiguiente a su clasificacio´n. Un conjunto ma´s amplio de ima´genes de entrenamiento es necesario, permitiendo adquirir ma´s resultados que certifiquen que el LBP es un buen caracterizador de textura y base para la clasificacio´n e identificacio´n de la pose. Los resultados preliminares se obtuvieron a partir de un conjunto de ima´genes de poses, adquiridas en condiciones controladas, para la mano derecha, sin rotacio´n alguna, ni variaciones de iluminacio´n; permitiendo que la divisio´n de las regiones de las manos sean similares unas con otras, proporcionando una comparacio´n e identificacio´n ma´s exacta. Si en embargo, es necesario realizar pruebas del LBP para poses mayores factores de variacio´n. AGRADECIMIENTOS El presente trabajo es producto derivado del Proyecto de Iniciacio´n Cientı´fica PIC ING-1579, enmarcado dentro el Proyecto de Investigacio´n INV ING-1534, financiados por la Vicerrectorı´a de Investigaciones de la Universidad Militar Nueva Granada - Vigencia 2014 REFERENCES [1] Meenakshi Panwar and Pawan Singh Mehra, “Hand Gesture Recognition for Human Computer Interaction“.International Conference on Image Information Processing (ICIIP 2011). Centre for Development of Advanced Computing Noida, Uttar Pradesh , India. [2] Timo Ahonen, Abdenour Hadid and Matti Pietika¨inen, “Face Description with Local Binary Patterns: Application to Face Recognition”. Trans- actions on pattern analysis and machine intelligence, vol. 28, no. 12, december 2006. [3] Youdong Ding, Haibo Pang, Xuechun Wu and Jianliang Lan, “Recogni- tion of hand-gestures using improved local binary pattern”. Interna- tional Conference on Multimedia Technology (ICMT), 2011. [4] Paulo Trigueiros, Fernando Ribeiro and Luı´s Reis, “A Comparative Study of Different Image Features for Hand Gesture Machine Learning”. ICAART 2013. International Conference on Agents and Artificial Intelligence. [5] Vladimir I. Pavlovic, Rajeev Sharma and Thomas S. Huang, “Visual Interpretation of Hand Gestures for Human-Computer Interaction: A Review”. IEEE Transactions On Pattern Analysis and Machine In- telligence, vol. 19, no. 7. [6] Ankit Chaudhary, J. L. Raheja, Karen Das and Sonia Raheja, “Intelligent Approaches to interact with Machines using Hand Gesture Recognition in Natural way: A Survey”. International Journal of Computer Science and Engineering Survey (IJCSES) Vol.2, No.1, Feb 2011. [7] Bin Xiao, Xiang-min Xu and Qian-pei Mai, “Real-Time Hand Detection and Tracking Using LBP Features”. School of Electronic and Informa- tion Engineering, South China University of Technology Guangdong.