>JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf ·...

8
¿JUGAMOS? MEJORA DE LA INTERACCI ´ ON HUMANO-ROBOT MEDIANTE JUEGOS DE MESA Mercedes Garcia-Salguero, Javier Monroy, Javier Gonzalez-Jimenez Dpto. Ingenier´ ıa de Sistemas y Autom´ atica, Instituto de Investigaci´ on Biom´ edica de M´ alaga (IBIMA), Universidad de M´ alaga, Campus de Teatinos, 29071, M´ alaga {mercedesgarsal, jgmonroy, javiergonzalez}@uma.es Resumen En el contexto de un robot de servicio o asisten- cial, y en relaci´on a su interacci´on con un usua- rio, este trabajo presenta un sistema que permite al robot ofrecer y llevar a cabo partidas de jue- gos de mesa. El sistema propuesto, que busca am- pliar el abanico de actividades que el robot puede compartir con el usuario, se centra en ofrecer una experiencia lo m´as similar posible a una partida tradicional entre dos personas. Para ello, el juego se proyecta sobre una mesa mediante un peque˜ no proyector montado sobre el robot, y un sistema de percepci´on visual es empleado para detectar los movimientos del usuario. El sistema propuesto es especialmente interesante para robots asistencia- les en entornos residenciales con personas mayo- res, permitiendo al usuario desarrollar diferentes actividades beneficiosas para su salud (memoria, reflejos, coordinaci´on, etc.). Para validar el siste- ma propuesto, se presenta un caso pr´actico con un robot real en un entorno de laboratorio. Palabras clave: HRI, interacci´ on robot-usuario, juegos de mesa, transformaci´ on proyectiva, ROS 1. INTRODUCCI ´ ON Durante los ´ ultimos a˜ nos, el envejecimiento pobla- cional y el aumento de la esperanza de vida aso- ciado han obligado a atender con mayor frecuencia los problemas propios de edades avanzadas, entre ellos, la necesidad de una asistencia continua para el desarrollo de las tareas cotidianas y el preocu- pante deterioro cognitivo asociado a la senectud. Conscientes de esta realidad, la rob´ otica asisten- cial se ha propuesto como una alternativa y solu- ci´ on para el cuidado de las personas mayores en sus propios hogares. Diversos son los proyectos eu- ropeos, como Excite [6], Teresa [8] o GiraffPlus [3], que proponen la fusi´ on de entornos dom´ oticos con plataformas m´ oviles capaces de ofrecer diversos servicios a los usuarios [5, 4]. Por otro lado y tal y como apunta el estudio Lu- diman [1] desarrollado conjuntamente por el insti- tuto de biomec´ anica de Valencia y por el instituto tecnol´ ogico de producto infantil y ocio (AIJU), los Figura 1: Ilustraci´ on de una partida robot-usuario mediante la plataforma de juegos propuesta. Un peque˜ no proyector integrado en el robot recrea el juego sobre una mesa mientras que un sistema de visi´ on artificial capta los movimientos del usuario. juegos de mesa pueden ser usados como una herra- mienta en pos de prevenir los efectos negativos en el cerebro derivados del envejecimiento, ayudando a mantener las capacidades cognitivas y f´ ısicas de las personas mayores. Los juegos mejoran la movi- lidad y la agilidad -ya que requieren coordinaci´ on-, incrementan la atenci´ on, estimulan la percepci´ on sensorial y, en general, la necesidad de recordar las reglas del juego contribuye al mantenimiento de las habilidades cognitivas y de la memoria. No obstante, para una persona mayor existen una serie de limitaciones f´ ısicas y tecnol´ ogicas que ha- cen que tanto los juegos tradicionales como los m´ as modernos videojuegos no siempre sean una opci´ on factible. Los primeros por el hecho de necesitar de tablero y piezas f´ ısicas, requiriendo de un espa- cio de almacenamiento, lo cual reduce la variedad de juegos disponibles, as´ ı como limitaciones f´ ısicas relacionadas con el peque˜ no tama˜ no de estas pie- zas. Solventando estos inconvenientes se hallar´ ıan los videojuegos, los cuales pueden ser accedidos desde tablets, smartphones o incluso desde el pro- pio display del robot. No obstante, las habilidades tecnol´ ogicas de este sector de la poblaci´ on pueden suponer una barrera a la hora de jugar, haciendo que los videojuegos no siempre sean una opci´ on interesante. Actas de las XXXIX Jornadas de Automática, Badajoz, 5-7 de Septiembre de 2018 291

Transcript of >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf ·...

Page 1: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

¿JUGAMOS? MEJORA DE LA INTERACCIONHUMANO-ROBOT MEDIANTE JUEGOS DE MESA

Mercedes Garcia-Salguero, Javier Monroy, Javier Gonzalez-JimenezDpto. Ingenierıa de Sistemas y Automatica, Instituto de Investigacion Biomedicade Malaga (IBIMA), Universidad de Malaga, Campus de Teatinos, 29071, Malaga

{mercedesgarsal, jgmonroy, javiergonzalez}@uma.es

Resumen

En el contexto de un robot de servicio o asisten-cial, y en relacion a su interaccion con un usua-rio, este trabajo presenta un sistema que permiteal robot ofrecer y llevar a cabo partidas de jue-gos de mesa. El sistema propuesto, que busca am-pliar el abanico de actividades que el robot puedecompartir con el usuario, se centra en ofrecer unaexperiencia lo mas similar posible a una partidatradicional entre dos personas. Para ello, el juegose proyecta sobre una mesa mediante un pequenoproyector montado sobre el robot, y un sistemade percepcion visual es empleado para detectar losmovimientos del usuario. El sistema propuesto esespecialmente interesante para robots asistencia-les en entornos residenciales con personas mayo-res, permitiendo al usuario desarrollar diferentesactividades beneficiosas para su salud (memoria,reflejos, coordinacion, etc.). Para validar el siste-ma propuesto, se presenta un caso practico con unrobot real en un entorno de laboratorio.

Palabras clave: HRI, interaccion robot-usuario,juegos de mesa, transformacion proyectiva, ROS

1. INTRODUCCION

Durante los ultimos anos, el envejecimiento pobla-cional y el aumento de la esperanza de vida aso-ciado han obligado a atender con mayor frecuencialos problemas propios de edades avanzadas, entreellos, la necesidad de una asistencia continua parael desarrollo de las tareas cotidianas y el preocu-pante deterioro cognitivo asociado a la senectud.Conscientes de esta realidad, la robotica asisten-cial se ha propuesto como una alternativa y solu-cion para el cuidado de las personas mayores ensus propios hogares. Diversos son los proyectos eu-ropeos, como Excite [6], Teresa [8] o GiraffPlus [3],que proponen la fusion de entornos domoticos conplataformas moviles capaces de ofrecer diversosservicios a los usuarios [5, 4].

Por otro lado y tal y como apunta el estudio Lu-diman [1] desarrollado conjuntamente por el insti-tuto de biomecanica de Valencia y por el institutotecnologico de producto infantil y ocio (AIJU), los

Figura 1: Ilustracion de una partida robot-usuariomediante la plataforma de juegos propuesta. Unpequeno proyector integrado en el robot recrea eljuego sobre una mesa mientras que un sistema devision artificial capta los movimientos del usuario.

juegos de mesa pueden ser usados como una herra-mienta en pos de prevenir los efectos negativos enel cerebro derivados del envejecimiento, ayudandoa mantener las capacidades cognitivas y fısicas delas personas mayores. Los juegos mejoran la movi-lidad y la agilidad -ya que requieren coordinacion-,incrementan la atencion, estimulan la percepcionsensorial y, en general, la necesidad de recordarlas reglas del juego contribuye al mantenimientode las habilidades cognitivas y de la memoria.

No obstante, para una persona mayor existen unaserie de limitaciones fısicas y tecnologicas que ha-cen que tanto los juegos tradicionales como los masmodernos videojuegos no siempre sean una opcionfactible. Los primeros por el hecho de necesitar detablero y piezas fısicas, requiriendo de un espa-cio de almacenamiento, lo cual reduce la variedadde juegos disponibles, ası como limitaciones fısicasrelacionadas con el pequeno tamano de estas pie-zas. Solventando estos inconvenientes se hallarıanlos videojuegos, los cuales pueden ser accedidosdesde tablets, smartphones o incluso desde el pro-pio display del robot. No obstante, las habilidadestecnologicas de este sector de la poblacion puedensuponer una barrera a la hora de jugar, haciendoque los videojuegos no siempre sean una opcioninteresante.

Actas de las XXXIX Jornadas de Automática, Badajoz, 5-7 de Septiembre de 2018

291

Page 2: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

Es por esto que implementar un sistema de juegos”mixto” que resulte sencillo de utilizar para unapersona mayor supone un paso logico. Ademas,el incorporarlo en un robot de asistencia suponeuna buena alternativa a los juegos tradicionalesde mesa para mejorar y mantener las habilidadescognitivas. De esta forma, el robot asistente podrıaproponer a la persona mayor jugar a una hora es-pecıfica del dıa, cada cierto tiempo o incluso laposibilidad de jugar online, lo cual contribuirıa amejorar las habilidades sociales del usuario. Asımismo, otras ventajas incluirıan controlar el tiem-po que se ha estado jugando y parar/posponer eljuego en cualquier momento. A todo esto se su-man las otras muchas habilidades propias del ro-bot, las cuales estarıan presentes antes, durante ydespues del juego, desde poder navegar o hablarcon el usuario, hasta solicitar ayuda en caso denecesitarla.

En este trabajo se describe una plataforma quepermite al robot relacionarse con el usuario me-diante los juegos de mesa tradicionales. Dicho sis-tema se disena atendiendo a la necesidad de sufacilidad de uso, al tamano fısico del juego (prefe-riblemente grande) y a la variedad en los juegos aofrecer. Teniendo en cuenta estas caracterısticas,se propone implementar este sistema de juegos me-diante un proyector que recreara el juego de mesapara el usuario y un sistema de percepcion paradetectar sus movimientos, procurando una inter-accion fluida entre robot y usuario. La Figura 1ilustra el sistema propuesto, donde se aprecia co-mo el usuario se situa frente al robot para jugar,manteniendo la posicion habitual en este tipo dejuegos ”con contrincante”.

La plataforma de juegos propuesta precisa deuna serie de modulos que deben coordinarse paraun correcto funcionamiento de la misma. Dichosmodulos surgen de diversas necesidades relaciona-dos con la naturaleza del sistema. Por una par-te, la posicion del sistema de vision sobre el robotprovoca distorsiones que deben ser corregidas. Porotro lado, es necesario estimar los movimientos delusuario ası como conjugar los elementos que inter-vienen durante la sesion de juegos. Por ultimo, esnecesario que el robot se mueva, aproximandosey alejandose de la mesa, antes y despues de cadasesion.

Para finalizar, las Secciones de este trabajo se or-ganizan de la siguiente forma: se comienza des-cribiendo la arquitectura del sistema en la Sec-cion 2 siguiendo con la interaccion usuario-roboten la Seccion 3, para a continuacion definir la ca-libracion del sistema en la Seccion 4. Detalles deimplementacion relacionados con el motor de vi-deojuegos y el sistema de movimiento del robot

Figura 2: Diagrama de bloques del sistema pro-puesto. Los cuatro bloques principales (verde)estan compuestos por uno o varios nodos ROS (na-ranja) que se comunican entre sı para permitir alrobot jugar con el usuario.

se analizan en las Secciones 5 y 6, respectivamen-te, mientras que la Seccion 7 introduce un casopractico (prueba de concepto). Para finalizar, laSeccion 8 describe las conclusiones y los trabajosfuturos.

2. DESCRIPCION DELSISTEMA

El sistema propuesto consta de cuatro bloquesprincipales (vease Figura 2): interaccion humano-robot (usualmente conocida por sus siglas eningles, HRI, human-robot interaction), calibra-cion, motor de juegos y movimiento del robot.Cada uno de estos bloques se centra en un as-pecto fundamental y necesario para permitir queun robot social pueda jugar con un usuario deuna forma natural. Estos bloques se organizan so-bre la ampliamente extendida arquitectura roboti-ca ROS [7], la cual provee de los mecanismos decomunicacion y coordinacion para que diferentesbloques funcionales, denominados ”nodos”, pue-dan realizar sus tareas de forma eficiente.

De forma general, el flujo de acciones que el ro-bot debe realizar a la hora de ofrecer jugar unapartida al usuario viene definida por la siguientesecuencia: (i) navegacion del robot hasta la mesadonde se llevara a cabo la partida y su posterioraproximacion a esta, (ii) ejecucion del motor dejuegos ofreciendo inicialmente un menu con diver-

292

Page 3: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

sos juegos entre los que elegir y (iii) finalmente,tras indicacion del usuario de su intencion de ter-minar, el cierre del sistema y la consiguiente nave-gacion del robot para alejarse de la mesa de juego.Es importante mencionar que el menu de juegoses una etapa recurrente que se muestra al iniciode la sesion y tras terminar cada partida, dandola posibilidad de jugar varias veces a un mismojuego o incluso a diferentes juegos en una mismasesion.

Descripcion de la funcionalidad, ası como detallesde implementacion de cada uno de los cuatro blo-ques que componen el sistema son presentados enlas siguientes Secciones.

3. INTERACCIONROBOT-USUARIO

Esta Seccion detalla la comunicacion bidireccionalentre el robot y el usuario, tomando ambos el rolde contrincantes en un juego de mesa. Por un la-do se describe el sistema de proyeccion del juegoası como el sistema de voz empleado para reforzarla comunicacion robot-usuario, y por otro lado seanaliza el sistema de percepcion empleado para es-timar los movimientos del usuario en lo referentea la partida en juego.

3.1. Proyeccion del Juego

La proyeccion del tablero y las piezas sobre la mesapermite al usuario poder jugar al juego que estasiendo ejecutado en el robot, pero de una manerasencilla y comoda, semejante a la disposicion de losjuegos de mesa tradicionales. No obstante, paraque la proyeccion del juego sea lo mas fidedignay amigable posible para el jugador, es necesariotener en cuenta una serie de aspectos tecnicos:

Transformacion Proyectiva: La proyec-cion del juego sobre el plano de la mesa (veaseFigura 3) conlleva una deformacion en la ima-gen fruto de la posicion relativa entre el pro-yector y la superficie de la mesa. Para com-pensar dicho efecto es necesario pre-procesarla imagen a mostrar aplicandole la transfor-macion proyectiva detallada en la Seccion 4.

Rotacion de la Imagen: Dado el rol de con-trincante del robot a la hora de jugar, es ne-cesario rotar la imagen a mostrar 180◦ paraque el usuario, que se sienta en frente, la veacon su orientacion original.

Opcion de Cierre: Como en toda aplica-cion, es necesario proveer al usuario con laopcion de salir del juego. Por ello se anade,

sobre el juego mostrado, un boton rojo en laesquina inferior derecha.

Puntero Senalador: Con el objetivo de faci-litar la interaccion con el usuario, durante unapartida activa se muestra la localizacion delpuntero como un pequeno cırculo azul. Estepuntero hace referencia al dispositivo senala-dor utilizado para detectar los movimientosdel usuario, el cual es detallado en la Sec-cion 3.2.

3.1.1. Comunicacion por Voz con elUsuario

Otra de las formas de interaccion con el usuarioutilizadas es mediante voz. Se han anadido frasesen cada etapa del juego con el fin de hacer mas in-mersiva la interaccion del robot con el humano. Deesta forma, los estımulos sensoriales que el usuariopercibe durante el juego se alternan en visuales yauditivos, eliminando por otra parte los momen-tos de silencio que puedan ocurrir en los distintospasos del proceso del juego, como la espera hastaque este es lanzado.

No obstante y en el momento en el cual tiene lugareste proyecto, la comunicacion por voz comentadaes unidireccional, produciendose unicamente des-de el robot hacia el jugador.

3.2. Sistema de Percepcion

Dado que el juego es presentado al usuario pro-yectandolo sobre una mesa, es necesario emplearun sistema de percepcion que permita discernir losmovimientos del usuario durante la partida. Paraello, se ha optado por emplear un bolıgrafo tipo

180 º

Botón Salida Cursor

(rot)

Plano Mesa

(dist) (dist)Imagen Distorisonada

Figura 3: Las imagenes mostradas por el sistemase proyectan sobre una mesa como paralelogra-mos. Estas deben ser corregidas para eliminar ladistorsion (dist) y rotadas 180◦ (rot), ademas deanadırseles el boton de salida y el cursor.

293

Page 4: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

pen mouse como elemento caracterıstico que el ju-gador utiliza para interactuar con el juego, siendonecesario realizar el tracking de su posicion a lolargo de la partida.

Este tipo de dispositivo ha sido escogido pues-to que posee las funciones completas de un ratonde ordenador, esto es, botones y puntero infrarro-jo, ası como por su facil deteccion con algoritmosde vision por computador dado su forma y colordistintivos. Los botones permiten al usuario, porejemplo, seleccionar, arrastrar y soltar elementospertenecientes al juego, mientras que el punteroinfrarrojo permite estimar el movimiento de este.No obstante, para poder ofrecer una mayor inmer-sion en el juego, se necesita estimar la posicionglobal del pen mouse con respecto al tablero dejuego proyectado y no solo su movimiento relati-vo, aspecto que no es posible obtener usando elpuntero infrarrojo. Es por ello que en este trabajose propone un sistema de percepcion basado en elalgoritmo Camshift [2], capaz de estimar la posi-cion del pen mouse relativa al sistema de referenciadel tablero de juego proyectado.

Con el fin de proveer de robustez al sistema depercepcion, las imagenes son pre-procesadas pa-ra delimitar la deteccion del pen mouse al tablerode juego (evitando falsos positivos en zonas fueradel area de proyeccion), ası como para reducir elruido, empleando filtros estandares en vision porcomputador. Ademas diferentes restricciones refe-rentes al color y tamano del pen mouse son em-pleados para reducir el numero de candidatos aanalizar.

El resultado de la localizacion del bolıgrafo senala-dor es un rectangulo definido sobre el plano de laimagen y que viene determinado por su posicion,tamano y orientacion. Dentro de este paralelogra-mo se ajusta una elipse que representa la estruc-tura basica del bolıgrafo, y de la que uno de susvertices se corresponde con el extremo del dispo-sitivo apuntador (posicion a estimar). Es de notarque dicho vertice varıa segun la forma de sujetar eldispositivo tal y como se observa en la Figura 4.En la imagen de la izquierda, bolıgrafo sujetadocon la mano izquierda, siendo su extremo el cırcu-lo verde. A la derecha, bolıgrafo sujetado con lamano derecha, siendo su extremo el representadopor el cırculo rojo. Por esta razon se han imple-mentado dos modos diferentes de funcionamientoatendiendo a si el usuario es diestro o zurdo.

Finalmente, cabe mencionar que se ha tenido encuenta la situacion en la que el bolıgrafo desapa-rece de la imagen. En dicho caso se deshabilitanlos botones incorporados y el cursor se mantieneen la ultima posicion conocida. De esta manerase evitarıan interacciones con el juego no deseadas

Figura 4: Localizacion de los vertices (represen-tados como cırculos) de la elipse que envuelve elbolıgrafo encontrada mediante el algoritmo cams-hift.

por el usuario, por ejemplo, debido a una caıdadel dispositivo seleccionador.

4. CALIBRACIONPROYECTOR-CAMARA

Debido a la posicion no perpendicular tanto delproyector como de la camara con respecto al planode la mesa donde se proyecta el juego, se produ-ce una distorsion en ambos elementos que debeser corregida. En relacion al proyector, esta dis-torsion se traduce en un aspecto trapezoidal de laimagen proyectada (vease Figura 5), mientras quepara el caso de la camara esta distorsion afecta ala imagen tomada. Esta camara es utilizada por elsistema de percepcion comentado en la Seccion 3.2y su calibracion es necesaria para la correcta esti-macion en la posicion del dispositivo senalador. Esnecesario destacar que la calibracion de la camaradepende de la del proyector (ya que esta observala imagen proyectada), por lo que la calibraciondel proyector debe ser previa a la de la camara.

4.1. Calibracion del Proyector

El objetivo final es encontrar la transformacionproyectiva (homografıa) que aplicada a cualquierimagen a mostrar por el proyector, genere sobre elplano de la mesa una imagen sin distorsion (cua-drada/rectangular).

La principal complejidad de esta calibracion ra-dica en la falta de sensores capaces de medir ladistorsion provocada por el proyector. Para sol-ventar esto, se ha optado por utilizar una camarasituada perpendicularmente al plano de la mesa.Dicha camara captara la proyeccion de la imagensobre la mesa con la distorsion incluida. La rela-cion entre la imagen que ha sido proyectada y laimagen captada por esta camara proporciona latransformacion proyectiva buscada. Dado que setrabaja con imagenes, dicha transformacion rela-cionara los pıxeles de la primera imagen con losde la segunda. Usualmente este tipo de transfor-maciones se definen por una matriz que genera lacorrespondencia entre un pıxel de la imagen ori-gen (x,y) y un pıxel en la imagen transformada

294

Page 5: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

Figura 5: Diferencias angulares entre el plano de proyeccion y el de la mesa (α), y entre este y el plano dela imagen de la camara (β). Estas diferencias son las causantes de que la imagen a mostrar (1) adquierauna distorsion al ser proyectada sobre el plano de la mesa (2), y de la deformacion en la imagen capturadapor la camara (3), respectivamente.

(x’, y’). x′y′z′

=

H11 H12 H13

H21 H22 H23

H31 H32 H33

xy1

(1)

Es necesario anadir que las transformaciones deeste tipo son homogeneas, exigiendo que z’= 1. Elproceso de calibracion requiere establecer al me-nos cuatro correspondencias de puntos entre lasdos imagenes. Para ello, se ha escogido una ima-gen patron con cuatro puntos distribuidos simetri-camente. Dado que la posicion de estos puntos seconoce en la imagen a proyectar, se requiere encon-trar esos mismos puntos en la imagen captada porla camara situada en la cenital al plano de la me-sa. Para ello, se hara uso del algoritmo de Houghpara cırculos, eliminando previamente el ruido in-herente a la imagen y comenzado la busqueda delos cırculos en el centro de la misma y ampliandola ventana de examen en caso de no encontrar-los. Una vez las correspondencias han sido esta-blecidas se calcula la matriz de transformacion H(vease Ecuacion (1)).

Como puede observarse en la Figura 6, la matrizH transforma la imagen a mostrar de forma queal ser proyectada sea apreciada por el usuario sindistorsion. Generalmente esta transformacion pro-duce una imagen deformada de mayor tamano ytrasladada respecto del area que se proyecta. Esnecesario, por tanto, ajustarla a dicha area de for-ma que la imagen completa sea mostrada.

4.2. Calibracion de la Camara

Analogamente a lo que sucede con el proyector, laposicion de la camara respecto de la mesa provo-

ca una distorsion en la imagen tomada por esta.El objetivo de calibrar la camara es obtener dela imagen una seccion que se corresponda con eltablero proyectado sin deformacion.

Para ello, primeramente es necesario proyectar laimagen patron utilizada anteriormente con la dis-torsion del proyector corregida. Esta proyeccionposee un aspecto rectangular sobre la mesa, queaparecera distorsionado en la imagen tomada porla camara. El procedimiento y la teorıa utilizadosson lo mismos que aquellos seguidos durante lacalibracion del proyector. Conociendo la imagenpatron y sus puntos caracterısticos, es necesarioestimar dichos puntos en la imagen tomada paraobtener una matriz de homografıa que los relacio-ne. Los cırculos son localizados siguiendo el mis-mo procedimiento que durante la correccion delproyector. En este caso, la matriz transformarıala imagen capturada por la camara en la imagenpatron.

5. MOTOR DE JUEGOS

En la presente Seccion se explica el motor de jue-gos implementado en este proyecto, definiendo lasdos etapas fundamentales de este: el menu y laejecucion de un juego. La primera ofrece al usua-rio una seleccion de juegos a los que poder jugar,mientras que en la segunda etapa, el juego escogi-do en el menu previo es lanzado para que la par-tida pueda comenzar.

295

Page 6: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

Figura 6: Correccion de una imagen mediante la matriz de transformacion H, e ilustracion de los efectosde traslacion y re-dimension asociados. La posterior proyeccion de esta imagen rectificada genera unaimagen sin distorsion sobre la superficie de la mesa.

5.1. Menu de Juegos

Una importante caracterıstica de la plataformadesarrollada es la diversidad de juegos de mesaque el usuario tiene a su disposicion. Con el fin deexponer dicha oferta al usuario, se ha creado unaetapa previa donde se proyecta el menu con todaslas opciones disponibles. En cada caso, el usuarioselecciona el juego deseado colocando el pen mou-se sobre el icono del mismo, y pulsado el botonizquierdo. Es necesario comentar que, durante laproyeccion del menu , el boton de salida da porfinalizada la sesion de juegos, cerrando el menuy comandando al robot a alejarse de la mesa dejuegos.

Desde un punto de vista de la implementacion,y atendiendo a la arquitectura ROS empleada, elmenu ha sido programado como un action server.Esto permite tener control sobre las acciones delusuario (seleccion de un juego o cierre de la apli-cacion), ası como implementar ciertas opciones deseguridad y robustez, como es el cerrar automati-camente el juego tras un cierto time-out para evi-tar situaciones en las que el usuario se ausente.

5.2. Lanzamiento del Juego

Una vez el usuario selecciona el juego deseado, estese comienza a proyectar sobre la mesa y el sistemade percepcion empieza a detectar los movimientosdel usuario en relacion a las piezas del juego.

Cabe mencionar que el juego seleccionado se ejecu-ta en el PC embebido en el robot. Con el objetivode proyectar unicamente la seccion de la pantallacorrespondiente al juego, y no mostrar al usuarioel escritorio completo, se ha implementado un no-do adicional denominado nodo de grabacion quepermite capturar una seccion concreta de la pan-talla del PC para ser posteriormente proyectada.Este nodo ROS publica las imagenes capturadasen un topic para ponerlas a disposicion del nodode proyeccion (vease Seccion 3). En relacion a esteproceso, la posicion del bolıgrafo, estimada por elsistema de percepcion, debe ser re-escalada aten-

diendo a las dimensiones de la ventana del juegocon respecto a las del display del robot.

Como en el caso del menu, la ejecucion de cadajuego particular se gestiona a traves de un actionserver. Este es ejecutado al seleccionar un juegode entre los ofrecidos en el menu, y se mantie-ne activo durante toda la partida. Dicha partidafinaliza cuando el usuario selecciona el boton desalida (vease Seccion 3.1). Esta accion detiene elsistema de percepcion y la proyeccion del juego,retornando a la presentacion del menu.

6. MOVIMIENTO DEL ROBOT

El sistema propuesto se fundamenta en el uso deun robot movil y en la mejora de su interaccioncon un usuario a traves de un sistema que le per-mita jugar a juegos de mesa. Una vez presentadoel sistema de juegos y las complicaciones tecnicasrelacionadas con la proyeccion del mismo, en estaseccion se describe los componentes de navegacionempleados para permitir al robot desplazarse porel entorno de forma segura y aproximarse a la me-sa en la que se llevara a cabo la partida.

La navegacion del robot, incluyendo en esta ta-rea la localizacion en un mapa conocido, la pla-nificacion del camino y la evitacion de obstaculosdinamicos, ha sido implementada en base al stackde navegacion de ROS. Mas concretamente se em-plean los siguientes paquetes:

gmapping/map server: para el mapeadodel entorno usando tecnicas de SLAM basa-do en laser 2D. El mapa de ocupacion genera-do, que sera empleado para la localizacion yplanificacion global del camino, es gestionadopor el paquete map server.

amcl: sistema de localizacion probabilısticobasado en filtro de partıculas.

move base: para la planificacion glo-bal/local del camino que el robot debe seguir

296

Page 7: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

desde su localizacion actual hasta la mesa dejuego.

Un vez el robot ha navegado hasta una posicioncercana a la mesa de juego, este debe aproximar-se a la mesa para poder proyectar correctamente.No obstante, los algoritmos de navegacion reacti-va empleados evitan que el robot se aproxime de-masiado a los obstaculos (para evitar colisiones),por lo se hace necesario implementar un sistemaindependiente para aproximar al robot a la mesasobre la cual proyectar. De la misma forma, unavez acabada la sesion de juegos, el robot debe ale-jarse de la mesa antes de activar los algoritmosde navegacion, evitando ası colisiones indeseadasy mejorando la robustez del sistema.

Ambas tareas de aproximacion y alejamiento sehan implementado como ROS action servers, pu-blicando comandos de velocidad directamente a labase robotica. Para la aproximacion, el sistema depercepcion introducido en la Seccion 3.2 es usa-do para detectar el borde de la mesa mediante elmetodo de Hough para lıneas. Tras filtrar y se-leccionar las lıneas candidatas a ser el borde dela mesa, se selecciona aquella que mayor similitudguarde con la posicion final deseada (configurablepor parametro). En cada iteracion, el sistema deaproximacion envıa los comandos de velocidad es-timados para conseguir que el borde de la mesaquede en la posicion establecida (en el sistema dela camara).

7. PRUEBA DE CONCEPTO

Con el fin de validar el funcionamiento del sistemapropuesto, se ha realizado una prueba de conceptodonde uno de los robots del laboratorio MAPIR1

equipado con el proyector (YG300 LCD Mini Pro-yector) y la webcam (Creative Live! Cam Sync HD720p), ejecutaba todos las tareas involucradas eneste proyecto para ofrecer jugar una partida a unusuario. Para la interaccion robot-usuario, se hautilizado un pen-mouse inalambrico de la marcaSodial(R). Proyector y camara han sido colocadosa una altura aproximada de 0.8 y 0.85m, respec-tivamente. Esta distancia es la mınima requeridapor el proyector para mostrar una imagen nıtida,y le proporciona a la camara un amplio rango devision. La Figura 7 muestra un fotografıa del ro-bot donde se destacan los diferentes componentesdel sistema. Puede observarse como una secciondel display incorporado en el robot (naranja) esmostrada mediante el proyector (rojo). El sistemacompuesto por el proyector y el sistema de per-cepcion aparece en rosa, ası como el dispositivoseleccionador comentado (verde).

1http://mapir.uma.es

Figura 7: Fotografıa del robot movil Rhodon du-rante una partida de damas, remarcando los prin-cipales elementos del sistema.

Ademas de los dispositivos propios de este pro-yecto, se hace uso de los sensores y actuadores yaincorporados en el robot para las tareas de nave-gacion. Igualmente, y sobre todo para tareas detesteo, se hace uso del display incorporado en elrobot, que se utilizara como pantalla principal.

En relacion a la seleccion de juegos ofertados en lafase del menu (vease Seccion 5.1), y dada las carac-terısticas del proyector empleado, se han limitadolas opciones expuestas en el menu a 6 juegos. Esnecesario especificar que dichos juegos tiene comounico requisito el poder ser jugados unicamenteempleando un dispositivo apuntador, como ocurreen el caso de las damas o el ajedrez.

8. CONCLUSIONES YTRABAJOS FUTUROS

En este proyecto se ha dotado a un robot movilde la capacidad de ofrecer y participar en juegosde mesa. Un enfasis especial ha sido puesto en lafacilidad de uso del sistema y en la forma de inter-actuar con el usuario, manteniendo la distribucionclasica de este tipo de juegos. Para ello, se ha he-cho uso de un proyector con el fin de recrear eljuego sobre una mesa, y de un sistema de per-cepcion que permite estimar los movimientos delusuario. La calibracion de los sistemas de proyec-cion y percepcion ha sido contemplada, calculandolas homografıas correspondientes para corregir lasdeformaciones derivadas de las posiciones relati-vas de estos sistemas con respecto a la superficie

297

Page 8: >JUGAMOS? MEJORA DE LA INTERACCI ON HUMANO-ROBOT …eii.unex.es/ja2018/actas/JA2018_072.pdf · 2018. 8. 16. · a mantener las capacidades cognitivas y f sicas de las personas mayores.

de juego. Finalmente, el sistema de navegacion im-plementado y el modulo de aproximacion a la me-sa de proyeccion han sido descritos, y el sistemaha sido validado con un experimento real en unentorno de laboratorio.

Como trabajo futuro se contempla el desarrollo deun sistema de calibracion automatico para el con-junto proyector-camara, ası como una mejora dela interaccion por voz, permitiendo al usuario con-trolar la plataforma de juegos mediante comandosde voz.

Agradecimientos

Trabajo realizado en el marco del proyecto WI-SER (DPI2017-84827-R), financiado por el Minis-terio de Ciencia e Innovacion contando con fondosdel Fondo Europeo de Desarrollo Regional (FE-DER) y a la Beca de Colaboracion del Ministeriode Educacion, Cultura y Deporte (998142).

English summary

LETS PLAY! IMPROVEMENT OFHUMAN-ROBOT INTERACTIONTHROUGH BOARD GAMES

Abstract

In the context of a service or assistance robot, andin relation to its interaction with the user, thiswork presents a system that allows the robot to of-fer and carry out board games. The proposed sys-tem, which seeks to expand the range of activitiesthat the robot can share with the user, focuses onoffering an experience as similar as possible to atraditional game between two people. To do this,the game is projected on a table by means of asmall projector mounted on the robot, and a visualperception system is used to detect the movementsof the user. The system is especially interesting forcare robots in residential settings with elderly peo-ple, allowing the user to carry out different activi-ties beneficial for health (memory, reflexes, coor-dination, etc.). To validate the proposed system, apractical case is presented with a real robot in alaboratory environment.

Keywords: HRI, human-robot interaction, boardgames, projective transformation, ROS

Referencias

[1] J. M. C. Borderıa, R. P. Puente, R. B. i Gui-llem, M. F. Cabrera, and M. C. Ferrer. Jue-gos de mesa y personas mayores: la importan-cia de nuevos disenos. Revista de biomecanica,(42):11–12, 2004.

[2] G. Bradski. Real time face and object trackingas a component of a perceptual user interface.In IEEE Workshop on Applications of Com-puter Vision. WACV’98., 1998.

[3] S. Coradeschi, A. Cesta, G. Cortellessa,L. Coraci, C. Galindo, J. Gonzalez-Jimenez,L. Karlsson, A. Forsberg, F. S., F. Furfari,A. Loufti, A. Orlandini, F. Palumbo, F. Pe-cora, A. Stimec, S. V. Rump, J. Ulberg, andB. Otslund. GiraffPlus: A System for Mo-nitoring Activities and Physiological Parame-ters and Promoting Social Interaction for El-derly, pages 261–271. Human-Computer Sys-tems Interaction: Backgrounds and Applica-tions 3. Springer, 2014.

[4] H. M. Gross, S. Mueller, C. Schroeter, M. Volk-hardt, A. Scheidig, K. Debes, K. Richter, andN. Doering. Robot companion for domestichealth assistance: Implementation, test andcase study under everyday conditions in pri-vate apartments. pages 5992–5999, Sept 2015.

[5] J. Monroy, J. R. Ruiz-Sarmiento, F.-A. Mo-reno, and J. Gonzalez-Jimenez. Towards a Se-mantic Gas Source Localization under Uncer-tainty. Springer, Cham, 2018.

[6] A. Orlandini, A. Kristoffersson, L. Almquist,P. Bjorkman, A. Cesta, G. Cortellessa, C. Ga-lindo, J. Gonzalez-Jimenez, K. Gustafsson,A. Kiselev, A. Loufti, F. Melendez-Fernandez,M. Nilsson, L. Odens Hedman, E. Odontidou,J. R. Ruiz-Sarmiento, M. Scherlund, L. Tibe-rio, S. V. Rump, and S. Coradeschi. Exciteproject: A review of forty-two months of robo-tic telepresence technology evolution. Presen-ce: Teleoperators and Virtual Environments,2017.

[7] M. Quigley, K. Conley, B. Gerkey, J. Faust,T. Foote, J. Leibs, R. Wheeler, and A. Y. Ng.Ros: an open-source robot operating system.In ICRA workshop on open source software,volume 3, page 5. Kobe, Japan, 2009.

[8] C. b. G. Riva. Teresa: Socially intelligent ro-bot as window to the world. Cyberpsychology,Behavior, and Social Networking, 20(5):343–343, 2017.

c© 2018 by the authors.Submitted for possibleopen access publication

under the terms and conditions of the Creati-ve Commons Attribution CC-BY-NC 3.0 license(http://creativecommons.org/licenses/by-nc/3.0/).

298