Vous êtes sur la page 1sur 8

CIE2011

Seguimiento visual de las manos y dedos para actualizar un mundo virtual interactivo
J. M. Ibarra Zannatha, Jorge E. Lavn Delgado, R. Cisneros Limn, G. Orduo Ocampo, U. Zaldvar Colado, C. A. Len Snchez, S. J. Guerrero Crdenas, V. M. Fregoso Guerrero, X. Zaldvar Colado, D. Murillo Campos, C. G. Martnez Tirado
Resumen Se presenta el desarrollo de un sistema de

tracking sin contacto permite detectar la posicin y orientacin de las manos del operador en el espacio as como el movimiento de cada uno de sus dedos, informacin utilizada para actualizar en lnea los parmetros de pose y movimiento de las manos y dedos del avatar que representa a dicho operador dentro de un mundo virtual. El movimiento de los dedos se detecta calculando el flujo ptico en imgenes capturadas por una cmara web instalada en el dorso de cada una de las manos del operador que registran la imagen de los hilos de nylon que transmiten el movimiento de flexin-extensin entre las falanges medial y proximal. Mientras que, el movimiento de las manos se detecta mediante un par de cmaras web colocadas juiciosamente en el espacio de trabajo del operador que permiten la reconstruccin 3D de ambas manos basada en Homografas. El sistema de seguimiento visual desarrollado se propone como una alternativa barata y confiable para el desarrollo de aplicaciones de Realidad Virtual, en particular en los simuladores realistas utilizados en robtica mdica.
Palabras Claves Flujo ptico, Reconstruccin 3D basada en homografas, Flujo ptico, Realidad virtual, Simuladores realistas para Robtica mdica.

mundos virtuales interactivos. Estos sistemas no slo ofrecen una complejidad programable de las tareas a realizar sino que son capaces de hacer la evaluacin del progreso del paciente y programar las tareas en funcin de los objetivos de rehabilitacin y del progreso exhibido por el paciente. Finalmente, la teleoperacin robtica ofrece un conjunto de aplicaciones en donde resulta de mucha utilidad contar con sistemas de tracking de las manos del usuario. Por ejemplo, tareas de telemanipulacin espacial en donde el usuario manipula desde tierra un brazo robtico montado en un vehculo espacial sobre la superficie del planeta Marte; o bien, tareas de manipulacin segura en recintos confinados de objetos o lquidos radiactivos, tareas de exploracin o de recate en ambientes hostiles (fondo del mar, interior de minas). El comn denominador de todas estas aplicaciones lo forman dos cosas: i) Sistema de captura de la informacin de pose (posicin ms orientacin) de las manos del usuario, incluyendo el movimiento de sus dedos; y ii) Mundo Virtual Interactivo (MVI); aunque en sentido estricto deberamos considerar un sistema de comunicacin bidireccional entre ambos, pues a menudo representa problemas importantes de retardos (Internet, comunicaciones espaciales, etc.). En las siguientes secciones de esta Introduccin se presenta la realidad virtual tal como la concebimos en este marco de referencia, los sistemas comerciales de tracking que podran emplearse en este tipo de aplicaciones y la solucin que proponemos. Las Secciones II y III presentan con ms detalle nuestra propuesta relativa al seguimiento del movimiento de los dedos y de las manos respectivamente. La Seccin IV presenta el MVI desarrollado, la Seccin V muestra los resultados experimentales y, finalmente, la Seccin VI incluye las conclusiones y comentarios finales del trabajo. A. Realidad Virtual Desde hace ms de una veintena de aos se dispone de tcnicas de Computacin Grfica que permiten la creacin de objetos 3D (modelos vectoriales) desplegables en pantalla con mucho realismo en cuanto a sus propiedades reflectivas y a la interaccin entre diferentes objetos en una misma escena a nivel de la iluminacin. Estos modelos han sido muy utilizados en Sistemas de Dibujo, de Diseo y de Ingeniera Asistida por Computadora (CAd, CAD y CAE). Ms que imgenes se trata de verdaderos mundos virtuales 3D desplegables a travs de pginas Web con ayuda de navegadores (Browsers) que permiten navegar visualmente a su interior. A estas alternativas de visualizacin se les ha incorporado la facilidad para que el

I. INTRODUCCIN Son muchas las aplicaciones de la Realidad Virtual en donde se requiere capturar posicin y orientacin de las manos de un operador que van desde las ya clsicas de la industria del entretenimiento hasta aplicaciones de robtica mdica o bien en tareas de teleoperacin robtica. Por lo que respecta a la cada vez ms importante industria del entretenimiento, las nuevas aplicaciones de los juegos computarizados requieren de la captura de la posicin y a menudo tambin de la orientacin de las manos del usuario. Actualmente se dispone de una gran cantidad de aplicaciones de este tipo en donde el usuario debe manejar las manos de un avatar que lo representan en infinidad de juegos por computadora, tipo Wii, Kinect, etc. En el caso de la Robtica Mdica cada vez hay simuladores para el entrenamiento de cirujanos en laparoscopia, endoscopia y otras aplicaciones ms en donde los mdicos deben manejar con sus manos ciertos aparatos mdicos dentro de mundos virtuales dinmicos e interactivos cada vez ms complejos. En esta clasificacin podran entrar las rtesis robticas de extremidades que permiten la rehabilitacin de pacientes que sufren de apopleja mediante la manipulacin de

CIE2011 usuario interaccione mecnicamente con los diferentes objetos presentes en este mundo virtual convirtindolo as en un MVI, lo que hace de la Computacin Grfica un inmejorable aliado de la Medicina, la arquitectura, la Educacin y la Robtica, entre otras reas de trabajo [1]. Actualmente, la interaccin entre el usuario y los MVIs puede hacerse de mltiples maneras: i) utilizando las interfaces clsicas de la computadora (teclado, mouse, joystick); ii) a travs de programas escritos en algn lenguaje de alto nivel (Java, Python, C++, Visual C++, etc.); iii) o de manera bidireccional utilizando dispositivos hpticos (guantes, manipuladores, joysticks, etc.). De esta manera el usuario puede lograr una inmersin total incluyendo la vista, el tacto y la cinestesia de varias partes de su cuerpo como la cabeza y, an, de los miembros superiores e inferiores. A nuestro juicio, las caractersticas de interactividad del humano con la computadora a nivel de varios sentidos simultneamente (tercera alternativa en el prrafo previo), son las que permiten denominar a una metodologa de visualizacin grfica como Realidad Virtual: Virtual porque existe slo como modelos matemticos al interior de una computadora y Realidad porque el usuario humano tiene acceso a esta informacin grfica mediante varios sentidos a la vez, lo que permite producir una sensacin de realidad captada por los sentidos (visual y tctil, preferentemente) generando una inmersin sensorial muy realista [2]. B. Sistemas de Tracking Los sistemas de captura de movimientos del cuerpo humano o de alguno de sus miembros tienen mucha importancia en aplicaciones de realidad virtual tanto de la industria del entretenimiento como profesionales. Son de sobra conocidos los sistemas como Kinect, Wii y otros que representan bien el primer tipo de aplicaciones. Mientras, las de tipo profesional se encuentran en una gran cantidad de ambientes, destacando las de la Robtica Mdica utilizadas en simuladores y entrenadores de futuros cirujanos expertos en tcnicas mnimamente invasivas (laparoscopia). En simuladores de la industria automotriz, principalmente en el ensamble virtual; en pelculas, para capturar movimientos de seres humanos y posteriormente generar animaciones con los movimientos capturados o bien esquemas de realidad aumentada.

Existen diversos tipos de sistemas de captura de movimiento: mecnicos, pticos, magnticos, y en el caso de los guantes tambin existen de variacin de resistencias. El problema de la adquisicin de los dispositivos de captura de movimientos comerciales (Cyberglove y otros) es el alto costo de los mismos, ya que pueden variar desde los 4,000 hasta los 200,000 dlares [4], [11]. Es en este contexto que proponemos una solucin barata y sin contacto basada en visin para el seguimiento de los movimientos de las manos. C. Solucin Propuesta Uno de los temas de inters de los autores de este trabajo es el maridaje de la Robtica con la Realidad Virtual, en particular en aplicaciones de Robtica Mdica. Tal es el caso de los simuladores para el entrenamiento de cirujanos laparoscopistas y los sistemas de rehabilitacin de pacientes con apopleja, entre otras aplicaciones de inters. Es aqu donde aparece la necesidad de contar con un sistema de captura de la posicin y orientacin de las manos de un usuario, incluyendo el movimiento de sus dedos a fin de manipular un avatar dentro de un MVI. Si bien existen en el mercado sistemas eficientes para realizar la deteccin de pose en lnea, como se mencion en la seccin previa, estos son relativamente caros, por lo que proponemos un sistema extremadamente simple y barato que, con ayuda de tecnologas sofisticadas de visin artificial (deteccin de movimiento y reconstruccin 3D), permiten tener una sistema de manipulacin manual de MVIs barato, robusto y confiable con una interfaz ligera y cmoda. Adems, al haber desarrollado tanto el hardware electrnico y mecnico del sistema as como la metodologa (modelos y algoritmos) y la programacin correspondiente, es posible hacer la comercializacin del prototipo, la adaptacin a diferentes tipos de problemas, la mejora del sistema, etc. Una de las primeras aplicaciones en que ser utilizado el dispositivo desarrollado ser la rehabilitacin de pacientes con apopleja. Para la captura del movimiento de flexin de los dedos se ide un ingenioso sistema que transforma cada uno de estos movimientos en la traslacin de un cable que es detectado mediante algoritmos de visin artificial que obtienen el flujo ptico, tal como se presenta con ms detalle en la segunda seccin de este documento [3]. Por su parte, para hacer el seguimiento de una mano proponemos usar un sistema de reconstruccin 3D monocular calibrado basado en la homografa entre un plano de la escena con marcas conocidas (dorso de la mano) y el plano imagen, cuya descripcin es objeto de la tercera seccin de este trabajo [8], [9]. II. TRACKING DEL MOVIMIENTO DE LOS DEDOS Para efectos de nuestro trabajo es necesario contar con la medicin de la posicin en cada instante de los cinco dedos de la mano. Considerando que cada uno de ellos consta de tres falanges (distal, medial y proximal) ya tenemos 15 gdl a medir para determinar la flexin-extensin de los cinco dedos. Si, adems, queremos medir el movimiento lateral de cada dedo se necesitaran 5 gdl suplementarios. Sin embargo, para las

Fig. 1. Esquema anatmico de la mano.

CIE2011 aplicaciones contempladas en nuestro trabajo basta con medir la flexin-extensin de una sola articulacin por dedo, la que se encuentra conectando las falanges medial y proximal (5 gdl), tal como se indica en la Fig. 1. A. Transmisin del movimiento de los dedos La primera parte del sistema desarrollado consiste en la transmisin del movimiento de flexin-extensin de la falange distal con respecto a la proximal. En una versin previa medamos el movimiento de la falange medial con respecto a la proximal, lo que complicaba el mecanismo [3]. Ambas soluciones son equivalentes y se inspiraron en un mecanismo muy parecido propuesto en [4]. En su versin actual el prototipo consiste en un guante sin dedos, como los que se utilizan para conducir, en el cual se fijan unos tubos de plstico que van desde la falange medial hasta una cajita cuadrada ubicada en el dorso de la mano. Al interior de estos tubos corre un hilo de nylon (parecido a una fibra ptica) cuyo extremo distal est fijo a un anillo ubicado en la falange distal, mientras que su extremo proximal tiene una marca que permite seguir visualmente el desplazamiento de cada hilo al interior de la cajita. Cabe mencionar que, para minimizar la curvatura de estos tubos, los correspondientes a los dedos meique y pulgar entran por la parte inferior de la cajita, con lo cual los hilos de nylon correspondientes se desplazan en sentido contrario a los otros tres (Fig. 2). Con este mecanismo tan simple como ingenioso se transforma la variable articular a medir (valor angular de la flexin-extensin entre las falanges medial y proximal) en un desplazamiento longitudinal de los hilos de nylon al interior de la cajita, el cual es monitoreado en lnea por una cmara de video Creative, modelo Creative WebCam Live Ultra (vf-0060), con resolucin de 640x480 pixeles y una frecuencia de 30 cuadros por segundo. La cmara se monta sobre la cajita en el dorso del guante. B. Medicin del movimiento de los dedos El movimiento longitudinal de los hilos de nylon produce un campo de movimiento unidimensional en la imagen, gracias a la marca que cada uno de ellos posee. Este campo de movimiento puede evaluarse mediante la medicin del flujo ptico correspondiente. Decidimos emplear el algoritmo de Lucas-Kanade [5], [6] provisto en las bibliotecas de OpenCV, el cual permite la extraccin de las dos componentes de la velocidad en el plano utilizando una funcin ventana para tomar los valores de los gradientes espaciales y temporal de una vecindad del punto estudiado, estimando el flujo ptico en cada uno de los bloques de pixeles previamente definido. As, este algoritmo no necesita procesar toda la imagen capturada, sino solamente una vecindad de pixeles alrededor del punto a seguir. Esto permite un rpido procesamiento de la imagen, con lo cual se puede hacer el tracking del movimiento de los dedos en tiempo real. La imagen capturada por la cmara presenta 5 marcas oscuras sobre fondo claro (incluyendo los hilos de nylon) cuyo desplazamiento longitudinal a lo largo del eje Y de la imagen representa la flexin-extensin de la articulacin entre las

falanges proximal y medial de cada dedo. Una vez capturada la imagen, es necesario especificar manualmente (por medio de un clic con el ratn) la ubicacin de dichas marcas. Cada punto especificado en la imagen (cinco en total) representa las coordenadas imagen ui , vi
T

a seguir durante el experimento.

Este valor de desplazamiento vara entre un valor mnimo y uno mximo propio del operador, los cuales se conocen de un proceso de calibracin previo y corresponden a un valor mnimo y mximo del ngulo a medir, tambin conocidos [7]. Por lo cual basta con aplicar una interpolacin lineal entre dichos valores para calcular el ngulo deseado [3]. Para la captura de la imagen se utiliza la librera de visin por computadora OpenCV, mientras que el entorno de programacin es Visual C++ 2008 Express Edition. III. TRACKING DEL MOVIMIENTO DE LAS MANOS En este trabajo se propone un sistema de tracking visual de la mano que no es otra cosa ms que un sistema de reconstruccin 3D monocular que debe calcular en cada instante la posicin de la mano (3 gdl) y su orientacin en el espacio (3 gdl ms). Debido a que la mano del usuario puede estar realizando cualquier movimiento que demande la tarea de manipulacin, sta puede adquirir un nmero infinito de diferentes posturas, por lo que sera prcticamente imposible de reconocer. Para simplificar el problema y como de todos modos es necesario tener iluminacin en el guante diseado para la deteccin del movimiento de los dedos (Ver el Captulo2), se han colocado cuatro LEDs en el dorso de la mano formando un rectngulo de dimensiones conocidas, uno de los cuales es de un color diferente a los otros tres a fin de utilizarlo como referencia. Tratemos ahora de obtener una relacin matemtica entre la posicin y orientacin de la mano en el espacio con la posicin en que aparecen estos cuatro LEDs dentro de la imagen. Utilizando el muy conocido modelo de proyeccin en perspectiva, un punto MW i imagen en un punto w i relacin matemtica:
X iW , YiW , Z iW ,1
T

de la escena 3D

expresado en el Referencial de base RW se proyecta en la


ui , vi ,1
T

de acuerdo con la siguiente (1)

wi

K R t MW i

Fig. 2. Aspecto del guante desarrollado.

CIE2011
3 3 En donde K es la matriz de calibracin formada por 3 3 los parmetros intrnsecos de la cmara, R es una matriz de rotacin que, junto con el vector de posicin 31 , representan los parmetros extrnsecos de la cmara t (posicin y orientacin con respecto al referencial RW ).

Reescribiendo la ec. (2) como un producto vectorial podemos obtener la siguiente ecuacin que relaciona al par correspondiente ( MW wi ) con los tres vectores fila h j de i la matriz de homografa:
T h1

Esta igualdad se establece salvo un factor de escala, lo cual significa que todos los puntos 3D ubicados sobre el rayo ptico que proyecta MW sobre w i generan la misma imagen, i lo que imposibilita la reconstruccin 3D con base en una sola imagen. Sin embargo, para entidades 3D en donde es posible ubicar un referencial objeto de modo a que todos sus puntos de inters residan en un plano, tal que MW i
X iW , YiW ,0,1 , en
T

0T M
WT i

MWT i 0
T

vi MWT i ui M
WT i

hT 2 hT 3

(3)

el modelo de proyeccin en perspectiva dado por la ec. (1) la tercera columna de la matriz R es irrelevante, por lo que puede eliminarse obtenindose la siguiente expresin:

wi
En donde

K R t MW i

(2)

H K r1 r2

3 3

es la matriz que

representa la Homografa entre el plano escena en donde vive MW y el plano imagen. Dicha homografa es una i transformacin lineal biunvoca ( H siempre es no singular) sobre vectores homogneos del espacio proyectivo que tiene 8 grados de libertad, pues se involucra en una igualdad salvo un factor de escala. Si el referencial del mundo RW se ubica en el guante del operador de modo que el origen sea el LED rojo y sus ejes X y Y se elijan como se muestra en la Fig. 2, la matriz de homografa H incluye tanto la matriz de calibracin como la posicin t y orientacin R de la cmara con respecto a este referencial RW . Dada una imagen de la mano con sus cuatro LEDs es posible identificar la matriz de Homografa H correspondiente y, como la matriz de calibracin K es conocida, basta con despejar el vector t y la matriz de rotacin R para conocer la pose de la mano con respecto al referencial de la cmara [8], [9]. En un sistema calibrado ( K conocida) la imagen (conjunto de puntos w i ) de un patrn plano conocido (conjunto de puntos escena M i ) permite la identificacin de la matriz H asociada a la homografa si es que contamos con al menos 4 puntos w i a fin de formar ocho ecuaciones lineales con 8 incgnitas (parmetros hij ) con base en la ec. (2). Entre los principales mtodos con que puede identificarse la matriz H estn: Ransac, DLT. Nosotros decidimos utilizar este ltimo, el cual se describe a continuacin. A. Transformacin Lineal Directa (DLT) Este algoritmo, conocido por las siglas DLT (Direct Linear Transformation) permite la identificacin de la matriz H a partir de un conjunto de n pares correspondientes MW wi , i i 1, 2, , n [10].

wi ) genera dos ecuaciones linealmente independientes, por lo que sern necesarios 4 pares de puntos correspondientes, pero que cumplan con la restriccin de no tener tres o ms puntos colineales en la escena. As, para cumplir las restricciones del mtodo de identificacin de la matriz H , los cuatro LEDs que se pondrn en el dispositivo diseado formarn un rectngulo y uno de ellos, el origen del referencial, ser de color diferente a los otros tres para garantizar, adems, que la correspondencia con sus respectivas imgenes ser sencilla de implementar. 2 9 91 La ec. (3) es de la forma Ai h 0 ( Ai ,h ) y se obtuvo a partir de un par correspondiente; utilizando 4 pares correspondientes se tiene un sistema de ecuaciones Ah 0 en donde A se construye con las cuatro matrices A i generadas por los cuatro pares correspondientes considerados. La presencia de perturbaciones (ruidos, sombras y otros problemas de iluminacin) sobre los puntos imagen w i impide la existencia de una solucin exacta h , que no sea la trivial; as que trataremos de obtener una solucin aproximada que minimice la norma Ah sujeta a la restriccin h 1 que
evita la solucin trivial. B. Estimacin por Mxima Verosimilitud Asumiendo que las perturbaciones mencionadas son gaussianas con media cero y matriz de covariancia wi , se puede estimar H mediante el criterio de mxima verosimilitud minimizando la funcin [12]:

As, cada par de puntos correspondientes ( MW i

wi
i

wi

w1i w i

wi

(4)

En donde: w i

h1MW 1 i . h3MW h 2MW i i


2

En la prctica, se asume que wi

i , lo cual suena

razonable considerando que los puntos se extraen de manera independiente con el mismo procedimiento, entonces el problema se convierte en un problema no lineal de mnimos cuadrados donde la funcin de costo a minimizar es:

d wi
i

wi

2 i

wi

wi

(5)

Esta minimizacin no lineal se obtiene mediante el algoritmo iterativo de Levenberg-Marquardt. Este algoritmo requiere valores iniciales que pueden obtenerse del algoritmo DLT mostrado anteriormente [13].

CIE2011

Fig. 3. Aspecto del MVI desarrollado para visualizar una mano.

Fig. 4. Fase experimental del prototipo.

C. Reconstruccin 3D De la ec. (2) tenemos H

K r1 r2 K r1 r2

t , entonces expresando

De esta manera, resolver la ec. (9) equivale a maximizar traza R T R . Sea, ahora, USVT la descomposicin en valores singulares de R , en donde S diag define una matriz ortogonal Z
T T
1

la matriz de homografa H por sus vectores columnas:

. Si se

h1 h 2

h3

(6)

V R T , entonces:
T T traza V R US 3

En donde es un escalar arbitrario. Suponiendo que el sistema de visin est calibrado ( K conocida) y que ya se ha identificado la Homografa H , esta informacin puede usarse para obtener la pose del objeto de inters, es decir su posicin t y su orientacin R r1 r2 r3 . Si bien slo tenemos manera de calcular los vectores r1 , r2 y r3 puede calcularse como el producto cruz de los dos primeros pues forman una matriz ortonormal. De este modo tenemos que la matriz de rotacin R (orientacin) se obtiene como:

T traza R R

T T traza R USV 3

(11)
i

traza ZS
i 1

zii

i i 1

Se observa que el mximo se alcanza fijando R UVT dado que Z I , generndose as la solucin a la ec. (9).
IV. MUNDOS VIRTUALES INTERACTIVOS En esta primera fase de nuestro proyecto solo interesa tener un mundo virtual que permita el despliegue de los movimientos capturados por nuestro guante con sistema de seguimiento visual. Ms adelante, se contempla el desarrollo de una aplicacin de robtica mdica en temas de rehabilitacin de apopleja en donde el paciente utilizar nuestro sistema para interaccionar con un MVI que le propondr tareas que permitirn ejercitar su brazo daado de acuerdo con programas definidos por personal mdico especializado en rehabilitacin. As, para visualizar los movimientos de las manos y dedos del usuario cuando utiliza nuestro sistema de seguimiento visual, se desarroll un ambiente virtual utilizando las libreras de OpenGL en el entorno de programacin Visual C++ 2008 Express Edition. El modelo virtual de la mano fue desarrollado en Blender [7] y su animacin se hace mediante interpolacin de valores preestablecidos utilizando los datos adquiridos por el sistema de seguimiento visual de dedos y manos (Fig. 3). V. RESULTADOS EXPERIMENTALES A continuacin se reportan los resultados experimentales obtenidos al evaluar los dos sistemas visuales de medicin implementados: movimiento de dedos usando FO y posicin y orientacin de la mano dentro del espacio de trabajo. A. Medicin del movimiento de los dedos usando FO Con el fin de validar la propuesta, se realiz un estudio

r1 r2 r3

K 1h1 K 1h 2 r1 r2
(7)

Mientras que el vector de posicin t y el factor de escala se calculan como sigue:

K 1h3 1 K 1h1 1 K 1h 2
(8)

Ahora bien, debido a la presencia de ruido en las coordenadas imagen, en general R no satisface las propiedades de un matriz de rotacin por lo que es necesario estimar una matriz de rotacin que se aproxime a ella [12]. La aproximacin es en el sentido de la norma de Frobenius, esto es, la matriz de rotacin que mejor se aproxime ser aquella que minimice la norma de la diferencia de estas dos matrices, esto es:

min R R
R

T sujeto a: R R

(9)

Dado que:
R R
2

traza

T R
T

T R

3 traza R R

T 2traza R R

(10)

CIE2011 experimental para conocer la frecuencia de lectura de datos y la resolucin mnima de dichas lecturas. As, para obtener la frecuencia de lectura del movimiento de los dedos (flujo ptico), cada vez que el sistema informtico realiza una lectura de datos y los procesa, se incrementar un contador y se calcula el tiempo transcurrido en dicha operacin. Se realizaron 1,000 lecturas con un tiempo total de 29.99 segundos, de modo que, en promedio, cada lectura se hace en 29.99 ms. Con lo cual el tiempo de procesamiento permite aplicaciones en tiempo real con una cadencia imagen de 30 fps. Esto se ilustra en la Fig. 4. Para obtener la frecuencia de clculo de la posicin y orientacin de la mano se realiz un experimento de manipulacin de un objeto virtual con una sola mano y se hicieron clculos similares a los descritos en el prrafo previo obtenindose un tiempo promedio para 1,000 lecturas de 34.19 ms. Con lo cual estamos en medida de calcular el movimiento de la mano y dedos a razn de 15 imgenes por segundo. Para conocer la resolucin mnima angular que tiene el sistema de seguimiento del movimiento de los dedos se dise un experimento que consiste en hacer movimientos aleatorios de los dedos y hacer calcular el incremento de posicin entre mediciones consecutivas para cada dedo, guardando en memoria la diferencia actual siempre y cuando sea menor a la registrada anteriormente. As, al final del experimento se tiene en dicho registro la mnima diferencia calculada durante el experimento, la cual fue de 0.0084. Esto representa una resolucin muy grande en la medicin de la posicin angular de los dedos. B. Medicin de la postura de la mano A continuacin se reportan los resultados experimentales hechos para comprobar la validez de la metodologa de reconstruccin 3D basada en homografas utilizada para la medicin de la pose de la mano. Calibracin. Utilizando el Toolbox para Matlab desarrollado en CalTech [14] y con auxilio de un damero, se obtuvieron tanto los parmetros intrnsecos de la cmara, K , como los extrnsecos, R C y t C , que representan respectivamente la orientacin y la posicin del referencial de base RW con respecto al referencial de la cmara RC :
651.43268 K 0 0 0.969552 RC 0.185709 0.159630 0.238094 0.562389 0.791852 0 650.26989 0 0.057280 0.805748 0.589481 tC 337.44965 224.91824 1 156.336617 53.487722 517.255786

guante, una de las cuales se identifica con la etiqueta rojo, si, en la imagen original una mayora de sus pixeles tiene dicho color. A continuacin se procede a calcular el centroide de cada una de estas cuatro regiones disjuntas. Finalmente, se asigna un referencial derecho RG al guante, ubicando su origen en el punto etiquetado como rojo, con sus ejes X G y

YG apuntando hacia las esquinas del cuadrado detectado, de


modo que todos los puntos tendrn su coordenada Z G igual a cero, tal como se muestra en la Fig. 10. Identificacin de la Homografa. En el referencial RG asociado al guante, los LEDs tienen las siguientes coordenadas

M1

0 0 l2 l2

0 l1 l1 0

0 0 0 0

M2 M3

M4

En donde l1 y l2 son las dimensiones del rectngulo en cuyas esquinas se encuentran los LEDs. As, con las coordenadas imagen de dichos puntos, se establece la siguiente correspondencia para el caso aqu ilustrado:

w1 w2 w3 w4

387.1619 342.9474 354.6000 399.5874

163.2451 172.7566 235.4270 225.7832

M1

0 0 l2 l2

0 l1 l1 0

0 0 0 0

M2

M3 M4

En donde, aplicando el algoritmo DLT presentado en la Seccin III, se obtiene la siguiente homografa:

710.0000 H 0.0000 0.0000

140.0000 650.0000 0.0000

222320.0000 93840.0000 570.0000

RG
RH ,tH

RG , tG
RC

La Fig. 5 ilustra el proceso de calibracin y muestra los tres referenciales de inters, base RW , guante RG y cmara RC . Procesamiento de imagen. Sobre cada una de las imgenes capturadas se comienza por hacer una binarizacin adaptable a fin de obtener una imagen segmentada en donde aparecen solamente las regiones correspondientes a los cuatro LEDs del

RC , tC
RW
Fig. 5. Esquema para Calibracin y relacin entre referenciales.

CIE2011

Fig. 6. Rectngulo de tamao conocido con LEDs en sus esquinas.

Fig.8. Etiquetacin de los 4 LEDs

Fig. 7. Binarizacin y clculo del centroide de cada mancha.

Fig. 9. Coordenadas imagen de cada Led.

Clculo de la pose. A partir de esta Homografa y usando los parmetros intrnsecos K de la cmara, se obtuvo la matriz de rotacin R H y el vector de translacin t H , que representan respectivamente la orientacin y posicin del referencial del guante RG con respecto al referencial de la cmara RC :

Ahora, slo basta expresar esta posicin en el referencial de base RW utilizando para ello una transformacin homognea
C TW , de la siguiente manera:

0.8033 RH 0.1895 0.5647

0.1902 0.9800 0.0583

0.5644 0.0606 0.8233


tH

C (13) MW TW MC i i El problema es que el proceso de calibracin nos permite W obtener la matriz de transformacin TC con los parmetros

44.4081 53.9149 573.0840

extrnsecos de la cmara ( R C , t C ), por lo que tenemos que aplicar la inversa de dicha transformacin, de modo que:
MW i
C TW M C i W TC 1

M iC

(14)

Con esta informacin se construye la matriz de G transformacin homognea TC que permite calcular la posicin en el espacio de cada LED en RC mediante la expresin: G (12) MC TC MiG i Obtenindose que las posiciones de los LEDs, expresadas en milmetros, con respecto a RC estn dadas por:

con lo cual se obtiene

M1

117.5116 97.8699 130.5437 150.1855

17.7985 7.4862 44.7341 19.4494

38.9768 83.6969
T

M2 M3

76.9879 32.2678

M4

M1

44.4081 54.8701 14.7069 4.2449

53.9149 0.0143 9.4599 44.4407

573.0840 576.2885
T

M2 M3

Esta informacin es la que permite dibujar el avatar correspondiente dentro del mundo virtual interactivo diseado. G As, las coordenadas del punto M1 es el origen del referencial asociado a dicho avatar, mientras que el vector X G del referencial RG va del dicho punto al punto M G y el vector YG 4

548.0546

M4

544.8501

G va de M1 a M G . 2 Finalmente, se trat de calcular la resolucin de este sistema de medicin visual de la postura de la mano. Tomando en

CIE2011 consideracin que para una aplicacin de ensamble o de manipulacin la orientacin de la mano cambia muy poco, siendo ms notorio el cambio de posicin, solamente se midieron los incrementos mnimos en la coordenada z (altura) del vector posicin de la mano, obtenindose una resolucin de 2.014 mm., satisfactoria para muchas aplicaciones de rehabilitacin mdica. VI. CONCLUSIONES Se present el desarrollo de un sistema que permite hacer el seguimiento simultneo de los movimientos de la mano de un usuario y de sus dedos utilizando tcnicas de visin artificial sin contacto: reconstruccin 3D basada en homografas para el movimiento de la mano y con flujo ptico (algoritmo de Lucas-Kanade) para el movimiento de los dedos. Los resultados experimentales permiten asegurar que la resolucin del sistema es suficientemente buena para el tipo de aplicaciones que pretendemos, mientras que la duracin del proceso permite su aplicacin a una cadencia de 15 imgenes por segundo, la cual puede mejorarse con un rediseo del sistema informtico desarrollado. El mundo virtual interactivo desarrollado para evaluar el sistema de seguimiento visual es muy simple por el momento y an no permite aplicaciones realistas. Se trata una escena 3D con una mano virtual para representar visualmente los datos capturados en esta propuesta. Actualmente continuamos el trabajo de manera coordinada entre Cinvestav y la UAS en los siguientes temas: i) mejora del MVI incorporando varias posibles tareas como la manipulacin de objetos, ensambles, etc. ii) mejora de los tiempos de ejecucin para obtener una cadencia de 30 imgenes por segundo en el procesamiento completo; iii) modificacin del sistema de transmisin opto-mecnico de movimientos para capturar movimientos de aduccin y abduccin de la mano; y iv) evaluacin de la resolucin del sistema de medicin de la postura de la mano.
[1]

AGRADECIMIENTOS Este proyecto es fruto del trabajo conjunto entre investigadores y estudiantes de la UAS y del Cinvestav con apoyos parciales de ambas instituciones y complementados por CONACyT (beca de J.E. Lavn), CGESTIC (contratacin de R. Cisneros), Proyecto OpenSurg CyTED y PROMEP (beca UAS-EXB-448). REFERENCIAS
Ulises Zaldvar Colado. Desarrollo de un sistema de programacin y teleoperacin para el Laboratorio de Robtica Virtual. Tesis de Maestra en Ciencias en Ingeniera Elctrica, opcin Computacin. Cinvestav, Mxico, DF. 19 de noviembre de 2003. J. M. Ibarra Zannatha, R. Cisneros Limn. Robtica y Realidad Virtual. Reporte Cinvestav 2010. Proyecto OpenSurg CyTED. 2010 U. Zaldvar Colado, C. A. Len Snchez, S. J. Guerrero Crdenas, V. M. Fregoso Guerrero, X. Zaldvar Colado, D. Murillo Campos y C. G. Martnez Tirado. Sistema de transmisin y captura de movimientos de los dedos de la mano. Memorias del XII Congreso Mexicano de Robtica de la AMRob. Mazatln, Sin., Mxico, 3-6 de Nov de 2010. H. Ortega Carrillo, et al., "Wired gloves for every one," presented at the Proceedings of the 2008 ACM symposium on Virtual reality software and technology, Bordeaux, France, 2008. B. D. Lucas and T. Kanade, "An Iterative Image Registration Technique with an Application to Stereo Vision," in IJCAI81, 1981, pp. 674-679. S. Baker and I. Matthews, "Lucas-Kanade 20 Years On: A Unifying Framework," International Journal of Computer Vision, vol. 56, pp. 221-255, 2004. J. Lizrraga Reyes, "Desarrollo y Evaluacin de una Tcnica de Interaccin para el Agarrado y Manipulacin de Objetos en Ensamble Virtual," Tesis de Maestra en Informtica Administrativa, Universidad de Occidente, Mazatln, Mxico, 2010. Jorge Enrique Lavn Delgado. Reconstruccin 3D. Tesis de Maestra en Ciencias en Control Automtico. Cinvestav, Mxico, 6 de feb. de 2009. J. M. Ibarra Zannatha, J. E. Lavn Delgado, R. Cisneros Limn, E. Hernndez Castillo. Reconstruccin 3D Monocular para el Sistema de SLAM Visual de un Robot Humanoide. Memorias del X Congreso Mexicano de Robtica de la AMRob. Mxico, 7 pp. en CD. 2008.

[2] [3]

[4]

[5] [6]

[7]

[8] [9]

[10] [Hartley] Hartley R., Zisserman A. Multiple View Geometry in Computer Vision Second Edition. Cambridge University Press, 2003. [11] N. Abe, et al., "A training system using virtual machines for teaching assembling/disassembling operations to novices," in Proc. IEEE Int. Conf. Systems, Man and Cybernetics, 1996, pp. 2096-2101 [12] Zhang Z. Flexible Camera Calibration By Viewing a Plane From Unknown Orientations. ICCV99, 1999. [13] Faugeras O. D., Luong Q. The Geometry of Multiple Images: The Laws That Govern the Formation of Multiple Images of a Scene and Some of Their Applications.The MIT Press, 2001. [14] Boughet J. Y. .Camera Calibration Toolbox for Matlab. California Institute of Technology, 2007.http://www.vision.caltech.edu/bouguetj/ calib_doc/index.html

Fig. 10. Referencial RG asociado al guante.

Vous aimerez peut-être aussi