Documente Academic
Documente Profesional
Documente Cultură
Resumen– El presente trabajo presenta diversos aspectos de la implementación de un prototipo de sistema de venta de bebidas
automático basado en visión artificial. Este sistema incorpora tecnologías de tipo sin contacto incluyendo reconocimiento facial
para la identificación de usuario y reconocimiento de gestos para la selección de la bebida. Este prototipo se presenta como una
plataforma de pruebas para explorar la aceptación de estas tecnologías en los usuarios y para compararla con otras tecnologías
como las pantallas táctiles. Además de presentar los aspectos técnicos del dispositivo, presentamos observaciones iniciales del
estudio de interacción hombre máquina. Estas observaciones de interacción y de tipo técnica nos permiten proponer perspectivas
de mejoras para esta plataforma y de las implementaciones comerciales de este tipo de dispositivos.
Palabras claves– máquina de ventas, reconocimiento facial, reconocimiento de gesto de manos, interacción hombre máquina.
Abstract– This paper presents several aspects of the implementation of a prototype of automatic beverage dispenser with
computer vision functionalities. The system presents touchless technologies including face recognition for user identification and
hand gesture recognition for beverage selection. This prototype is a test platform to explore the acceptance of these technologies
by consumers and to compare it with other technologies such as touch screens. We present both the technical aspects of the device
and some observations of human-machine interaction. The perspectives gained may be useful in the future for developing a
commercial implementation.
Keywords– automatic beverage dispenser, face recognition, hand gesture recognition, human-machine interaction.
de algoritmos de reconocimientos de gestos de manos También incluye el uso de una pantalla táctil con el
por visión por computadora en el contexto de la fin de poder presentar varios escenarios de prueba
interacción hombre-máquina [15,16]. combinando tecnologías táctiles y sin contacto para la
Los servicios basados en tecnologías de identificación del usuario y la selección de la bebida. El
información han atraído la atención de la industria de objetivo de este prototipo es servir como plataforma de
alimentos. Por ejemplo, las tablets son usadas como pruebas de experiencias de interacción de hombre-
menú en un restaurante y la ubicación de la persona es máquina a fin de explorar la aceptación de los usuarios a
utilizada para dar acceso a información de descuento a comprar comidas y bebidas con la tecnología sin
clientes [17]. contacto.
Desde hace décadas, las máquinas expendedoras han La contribución de este trabajo se puede sintetizar en
sido un canal de ventas importantes para la industria de los siguientes puntos:
comidas, bebidas y otros productos. Sin embargo, se ha • Presentar los aspectos de implementación de este
demostrado que los dispensadores automáticos de sistema en términos de componentes físicos,
bebidas y comidas pueden tener bacterias peligrosas plataforma de software y algoritmos.
[17]. Los investigadores no están seguros cómo las • Presentar las conclusiones obtenidas de las pruebas
bacterias ingresan en las dispensadoras. Se sospecha iniciales.
que el ingreso es debido a la utilización de las máquinas El resto del artículo está organizado como sigue: la
con las manos contaminadas o en el momento de la sección 2 presenta de forma general el sistema. En la
limpieza de las mismas con paños húmedos. Por esta sección 3 presenta los componentes físicos del sistema.
razón, surge un interés en incorporar tecnología sin La sección 4 presenta las funcionalidades de visión
tacto en estos sistemas. Un ejemplo, de un sistema de computacional del sistema, respectivamente. Los
venta de bebidas sin contacto fue patentado por Barton protocolos de prueba diseñados para el sistema se
& Barton [18]. Por ejemplo, se han presentado patentes presentan en la sección 5. La sección 6 presenta las
para la utilización de reconocimiento de gestos para la observaciones iniciales. La sección 7 presenta las
visualización y selección de productos [19]. perspectivas de este trabajo. La sección 8 concluye el
Algunos sistemas inteligentes con funcionalidades artículo.
sin contacto en dispensadores automáticos han sido
propuestos. En [20], se presenta una implementación de 2. Descripción general del sistema
un sistema de cobro o registro de consumo automático El sistema propuesto consiste en una plataforma que
basado en reconocimiento facial en un dispensador de permite realizar pruebas con diferentes funcionalidades
cervezas. La tarea de reconocimiento de rostro es de un sistema dispensador de bebidas. Estas
implementada en una Rasberry Pi. El sistema reconoce funcionalidades incluyen el ingreso de los datos vía
el rostro de la persona que se sirve la bebida y realiza el teclado, la selección de opciones vía pantalla táctil,
cobro en función de la bebida y el volumen servido. identificación de usuario por reconocimiento facial,
Este prototipo es de construcción casera y funciona de selección de bebidas por movimientos de la mano. El
manera “stand alone”. sistema plantea un conjunto de tres posibles escenarios
Antes de implementar este tipo de sistemas de venta de prueba que consisten en una combinación de los
inteligentes es pertinente evaluar la aceptación por parte elementos mencionados.
de los usuarios de estas nuevas tecnologías y detectar El sistema está desarrollado sobre el programa
las posibles dificultades de utilización. Matlab. El mismo es ejecutado en una computadora
En este trabajo se presenta el desarrollo de un personal. El sistema se presenta mediante una interfaz
prototipo de sistema inteligente de venta de bebidas gráfica que permite tener acceso a los escenarios de
utilizando herramientas de visión computacional. Este prueba y en cada uno de ellos a las funcionalidades
prototipo incluye capacidades de: descritas. El sistema registra para cada prueba realizada
a) Reconocimiento facial para la identificación de informaciones tales como: nombre de usuario, datos
usuario. personales de la cuenta, hora y fecha de la prueba,
b) Reconocimiento de gestos de manos para la escenario seleccionado, opciones de compra
selección de bebidas. seleccionada y tiempo de duración de cada una de las
etapas de los escenarios de pruebas. Estos registros combinaciones de tecnologías para la ejecución de las
están a la disposición de los especialistas que realizan el mismas.
estudio de experiencia de usuario. A continuación, presentamos una descripción de los
Para el aspecto de dispensado de bebida propiamente escenarios:
dicho, la plataforma cuenta con un sistema Escenario 1: el usuario se registra y se identifica
electromecánico controlado por micro-controlador usando un nombre de usuario y palabra clave
Arduino Nano. Este sistema se conecta vía puerto USB introducidos por teclado. Las bebidas son seleccionadas
a la computadora. mediante “botones” presentes en la pantalla táctil.
A fin de entender cómo los usuarios se sienten e Escenario 2: el usuario se registra y se identifica
interactúan con una máquina de venta de bebidas sin usando reconocimiento facial. La selección de bebidas
contacto y con reconocimiento facial, hemos se realiza mediante la pantalla táctil.
considerado tres escenarios de interacción. El escenario Escenario 3: el usuario se registra y se identifica
a utilizar se selecciona en la primera pantalla presentada mediante reconocimiento facial. Las bebidas son
al usuario. seleccionadas usando reconocimiento de gestos de
Cada escenario presentará tres acciones: registro de mano.
usuario, identificación de usuario (log in) y selección de El diagrama de flujo general del prototipo es
bebida. En cada escenario se presentan diferentes presentado en la figura 1.
3. Componentes físicos del prototipo dispensador de bebida controlado por Arduino Nano,
El sistema propuesto está compuesto por una una cámara web, una pantalla táctil y un teclado (ver la
computadora personal, un sistema electromecánico figura 2). La computadora personal utilizada tiene un
del reconocimiento facial por su simplicidad como por lineal de los vectores diferencia y los vectores
los buenos resultados que proporciona en ambientes propios de la matriz
. Este cálculo se expresa como
controlados [23]. La idea principal de este método es sigue:
aplicar una transformación ortogonal para convertir un = ଵ , ଶ , … , ெ
= ଵ , ଶ , … , ெ ଵ , ଶ , … , ெ =
conjunto de vectores de entrenamiento posiblemente
(6)
correlacionados en un conjunto de vectores linealmente
En la práctica no es necesario utilizar todos los M
no correlacionados. Se encuentran así los mejores
vectores que representan a la distribución de las vectores para reconstruir los rostros, esto permite
imágenes. Estos vectores definen un subespacio reducir el tamaño de los vectores que representan a cada
correspondiente a las imágenes de los rostros de rostro en el nuevo subespacio PCA. Esto se logra
entrenamiento. eligiendo los vectores propios asociados con los valores
A continuación, daremos detalles de este método. propios de mayor valor. Cabe destacar es que si estos
Se parte de un conjunto de imágenes de vectores se redimensionan al tamaño original de la
entrenamiento que corresponden a los usuarios del imagen N x N se obtienen los eigenfaces, a partir de los
sistema. Estas imágenes, representadas en matrices N x cuales, haciendo una combinación ponderada de ellos,
N, son organizadas en vectores de dimensiones N2 x 1 se pueden obtener las imágenes aproximadas de todos
bajo la notación ଵ , ଶ , ଷ , … , ெିଵ , ெ . En este conjunto rostros almacenados en la base de datos.
de imágenes puede haber una o más imágenes por Una nueva imagen de rostro de entrada es
persona. El promedio de los vectores es calculado trasformada en sus componentes de eigenfaces (es decir,
como sigue: proyectado en el facespace) mediante la operación
= ெ ∑ெ
ୀଵ
ଵ
(1) siguiente:
Al conjunto de vectores ଵ , ଶ , ଷ , … , ெିଵ , ெ .se le resta = ் − for k=1, 2, 3,…,M’ (7)
la imagen promedio como sigue: donde el valor M’ < M se considera suficiente para la
= − (2) adecuada identificación.
Estos vectores se agrupan en la matriz de tamaño N2 x Los pesos obtenidos forman el vector Ω் =
M como sigue: ଵ , ଶ , ଷ , … , ெ , ெᇱ que describe la contribución
= ଵ , ଶ , ଷ , … , ெିଵ , ெ (3) de cada eigenface para representar la imagen de rostro
La matriz de covarianza de la matriz se calcula de entrada-. El vector puede ser usado en un algoritmo
como sigue: estándar de reconocimiento de patrones para encontrar a
= ∑ ் = ்
ଵ ெ cuál clase de rostros predefinido describe mejor la
ெ ୀଵ
(4)
imagen de entrada. El método más simple para
Para el cálculo del PCA es necesario el cálculo de determinar cuál clase provee la mejor descripción de
valores y vectores propios de la matriz C. En este punto una imagen de entrada es encontrar la clase de rostro k
notamos que las dimensiones de esta matriz, que es N2 x que minimice la distancia euclidiana definida como
N2, es órdenes muy grandes. Esto implicará un alto sigue:
= Ω − Ω
costo computacional y altos requerimientos de memoria.
(8)
donde el vector Ω es un vector que describe a la clase k
Se puede demostrar que podemos obtener un conjunto
relacionado de vectores propios de la matriz M x M
de rostros.
definida como sigue
= ்
El objetivo de LDA es encontrar los vectores en el
(5)
En efecto, dado los vectores propios
=
espacio subyacente que mejor discriminen entre clases.
1, 2, 3, … , de la matriz
, se pueden obtener los
Para ello LDA proyecta los vectores obtenidos en PCA
de la clase se maximice. De este modo, se garantiza una imágenes adquiridas estén alineadas y centradas
máxima discriminación entre las clases. tomando como referencia la posición de los ojos.
De este modo el LDA utiliza al PCA para encontrar Además, se elimina aspectos adicionales al rostro como
los vectores que mejor definan las características de las cabello y cuello. Las etapas de preprocesamiento son las
imágenes dentro de todo el espacio de la imagen. siguientes:
Para todas las imágenes de todas las clases se
definen dos tipos de matrices de dispersión, una de ellas A. Detección de rostro por algoritmo de Viola &
es representada como “entre clases”, , y la otra como
Jones [25, 26].
Esta etapa tiene por objetivo determinar las
“dentro de las clases”, . Las cuales son calculadas coordenadas del rostro analizar (ver figura 5).
como sigue:
∑ ∙
̅ ∙
̅ (9)
∑ ∑∈ ∙
∙
(10)
̅
∑
∑ ∙ (11)
7.2 Posibles aplicaciones y ventajas del sistema Pattern Recognition Letters, vol. 25, no. 12, pp. 1377-1388,
propuesto 2004.
[3] A. K. Jain and A. Kumar, "Biometrics of next generation: An
Este tipo de sistema de venta de productos
overview," Second Generation Biometrics, 2010.
inteligente podría implementarse en otros contextos. Por [4] X. Wang, Q. Ruan, and Y. Ming, "3D Face recognition using
ejemplo, en las escuelas podría permitir un monitoreo y Corresponding Point Direction Measure and depth local
control del consumo de comidas dispensadas en features," Signal Processing (ICSP), 2010 IEEE 10th
máquinas de ventas a cada niño. Inclusive podría International Conference on. IEEE, pp. 86-89, 2010.
permitir el establecimiento de políticas de control de [5] V. Zeljkovic, D. Zhang, V. Valev, Z, Zhang and J. Li,
"Personal access control system using moving object detection
venta en función de la edad o problemas de salud,
and face recognition," High Performance Computing &
incluyendo alergias a productos. Simulation (HPCS), 2014 International Conference on. IEEE,
También en el ámbito escolar, un sistema similar se pp. 662-669, 2014.
podría establecer a nivel de las cajas de cafeterías para [6] Q. Al-Shebani, P. Premarante, and P. Vial, "Embedded door
un cobro directo a la cuenta de los clientes por access control systems based on face recognition: a survey,"
reconocimiento facial. Signal Processing and Communication Systems (ICSPCS),
2013 7th International Conference on , vol., no., pp.1,7, 16-18
Dec. 2013.
8. Conclusiones [7] J. Harguess and J. K. Aggarwal, "A case for the average-half-
Este artículo presenta un prototipo de un sistema de face in 2D and 3D for face recognition," Computer Vision and
venta de bebidas automático con funcionalidades Pattern Recognition Workshops, 2009. CVPR Workshops
basadas de visión por computadora para la 2009. IEEE Computer Society Conference on. IEEE, pp. 7-12,
identificación de usuarios y selección de productos. El 2009.
[8] F. Merchan, S. Galeano and H. Poveda, Mejoras en el
sistema se ha diseñado como una plataforma para
Entrenamiento de Esquemas de Deteccion de Sonrisas basados
realizar estudios de experiencia de usuarios bajo en AdaBoost, Revista de I+D Tecnologico, Vol. 10, No.2, pp.
diferentes escenarios que permiten comparar la 17-30, Dec. 2014.
aceptación de las funcionalidades mencionadas con [9] F. Zuo, and P. H. N. de With, "Real-time embedded face
respecto a las tecnologías de tipo táctil. recognition for smart home," Consumer Electronics, IEEE
Se han propuesto perspectivas al sistema con el fin Transactions on, vol. 51, no. 1 pp. 183-190, 2005.
[10] R. Meng, Z. Shengbing, L. Yi and Z. Meng, "CUDA-based
de hacerlo más adaptado a condiciones comerciales de
real-time face recognition system," Digital Information and
operación. Communication Technology and it's Applications (DICTAP),
2014 Fourth International Conference on. IEEE, pp. 237-241,
9. Agradecimientos 2014.
Agradecemos a Víctor López y Jorge Lezcano de la [11] S. Lin, "The study and implementation of real-time face
Facultad de Ingeniería en Sistemas Computacionales de recognition and tracking system," 2010 International
Conference on Machine Learning and Cybernetics, Vol. 6, pp.
la Universidad Tecnológica de Panamá, por los
3050-3055, 2010.
intercambios en torno a la arquitectura distribuida [12] M. Janarbek, A. Irturk, and R.Kastner, "Design and
propuesta para el sistema. implementation of an fpga-based real-time face recognition
Este trabajo es parcialmente financiado por el system," Field-Programmable Custom Computing Machines
Sistema Nacional de Investigación (SNI) de Panamá (FCCM), 2011 IEEE 19th Annual International Symposium
bajo el contrato No.124-2015 correspondiente al primer on. IEEE, pp. 97-100, 2011.
[13] S. Sardar, and K. Babu, "Hardware Implementation of Real-
autor.
Time, High Performance, RCE-NN Based Face Recognition
System," VLSI Design and 2014 13th International
10. Referencias Conference on Embedded Systems, 2014 27th International
[1] V. Gouaillier and A. Fleurant, "Intelligent video surveillance: Conference on, IEEE, pp. 174-179, 2014.
Promises and challenges," Technological and commercial [14] World News Report, June 14, 2010, “Microsoft fully unveils
intelligence report, CRIM and Technôpole Defence and kinect for xbox 360 controller-free game device”
Security, pp. 456-468, 2009. http://world.einnews.com/pr_news/56709028/microsoft-fully-
[2] H. K. Ekenel and B. Sankur, "Feature selection in the unveils-kinect-for-xbox-360-controller-free-game-device
independent component subspace for face recognition," [15] H. Jalab and H. Omer, "Human computer interface using hand
gesture recognition based on neural network," in Information