El lenguaje corporal es importante para comunicarse fluidamente con las personas. En el ámbito de la interacción con máquinas, existen sistemas para reconocer automáticamente gestos, pero confunden cuerpos de color similar y sus capacidades son muy inferiores a las de los seres humanos. Para contribuir a la solución de este problema, se presenta una plataforma que sigue una esquina e identifica pulsaciones utilizando una webcam, independientemente del tono del objeto y del fondo, lo que se efectúa analizando variaciones luminosas.
El sistema registra imágenes con una cámara y las preprocesa para disminuir el ruido. Posteriormente, obtiene las zonas con cambios luminosos y reconstruye los objetos móviles. Luego, identifica las esquinas de los cuerpos, sigue la trayectoria de una de ellas y verifica si hay oscilaciones. La plataforma es complementada con módulos para configurar su funcionamiento, dibujar trayectorias y controlar un cursor. La programación se realiza en C++ y utiliza las librerías OpenCV para procesar imágenes y Qt para mostrar la interfaz de usuario.
El desempeño se evalúa con videos en que un dedo recorre trayectorias predefinidas. En las pruebas se utilizan varios tipos de iluminación, fondos, distancias a la cámara, posturas y velocidades de movimiento. Los resultados muestran que el algoritmo ubica el dedo con error promedio de 10 píxeles y detecta pulsaciones en el 82% de los intentos. Se producen fallas cuando hay fuentes de luz frente a la cámara, oscuridad o movimiento detrás de la mano. El programa se ejecuta a 30fps y utiliza el 16% de un procesador Intel Core i5-3337u.
La plataforma es capaz de distinguir objetos de tono similar, pero es poco tolerante a movimientos en el fondo. Una combinación de los métodos basados en variaciones luminosas y color puede corregir sus deficiencias mutuamente y habilitar aplicaciones que utilicen señales hechas con las manos para ordenadores personales y robots.