Descargar el ejemplo de código Blockhead
Sinopsis
Este ejemplo de código muestra cómo se usa el SDK de Intel® RealSense™ para Windows*, en una aplicación de escritorio C#/WPF. Se trata de una aplicación simple, llamada BlockHead, en la que se utilizan tres características interesantes del SDK para Intel RealSense:
- Captura y muestra la transmisión en color de la cámara RGB.
- Recupera datos de ubicación del rostro y postura aproximada de la cabeza.
- Recupera y evalúa datos de expresión facial.
(Nota: para que la funcionalidad de esta aplicación de ejemplo sea total, se debe contar con una cámara 3D frontal).
MIRE aquí el resumen en video de BlockHead.
Introducción a Blockhead
Como se muestra en la Figura 1, la aplicación muestra la transmisión en color en un control de imagen WPF y superpone en tiempo real una imagen animada sobre el rostro real del usuario.
Figura 1.Imagen animada superpuesta sobre el rostro del usuario
La imagen animada se manipula programáticamente en tiempo real a partir de datos adquiridos del SDK.
- Modifica el tamaño para que coincida con el del rostro del usuario (se achica y agranda cuando el usuario se aleja de la cámara o se acerca) sobre la base de información del rectángulo de la cara.
- Gira a la izquierda y a la derecha como respuesta a la orientación de la cabeza del usuario (alabeo).
- Intercambia el contenido de control de la imagen a partir de la adquisición y la calificación de datos de expresión (ver Figura 2).
Figura 2.Expresiones de sonrisa, lengua afuera, beso y boca abierta detectadas en tiempo real
Detalles
Para esta sencilla aplicación de ejemplo, los gráficos se crearon en un programa de dibujo y se capturaron como archivos de gráficos de red portátiles (.png). Estas imágenes se podrían reemplazar fácilmente con transparencias representadas artísticamente, o incluso con capturas de pantalla de amigos, caricaturas, etc., con el fin de lograr un efecto visual más atractivo.
Se aplican diferentes “transforms” (p. ej., ScaleTransform, RotateTransform) al objeto de imagen para posicionarlo en respuesta a entradas de seguimiento de cabeza del SDK de Intel RealSense. Estas entradas pueden ser ubicación del rostro, cálculo de postura y datos de reconocimiento de expresiones.
El SDK es capaz de capturar alrededor de 20 expresiones distintas que luego se pueden evaluar en una aplicación. Esta en particular se centra en las expresiones de la boca: EXPRESSION_KISS, EXPRESSION_MOUTH_OPEN, EXPRESSION_SMILE y EXPRESSION_TONGUE_OUT. Sin embargo, podría extenderse con facilidad al uso de información de expresiones de las cejas, los ojos y la cabeza.
A descargarla
Para aprender más sobre esta aplicación, estudiar el código y extenderlo a casos más interesantes que aprovechen el SDK de Intel RealSense, descárguela desde aquí.
Para dar los primeros pasos y conocer más del SDK de Intel RealSense para Windows, vaya a https://software.intel.com/en-us/realsense/intel-realsense-sdk-for-windows.
Acerca del autor
Bryan Brown es ingeniero de aplicaciones de software de la División de Relaciones con los Desarrolladores de Intel. Su experiencia profesional es variada: en ingeniería de software, electrónica y de diseño de sistemas. Sus intereses técnicos se centran en aplicaciones de interacción natural y tecnologías de interfaz cerebro-computadora; participa activamente en varios programas de desarrollo alfa relacionados con diversas tecnologías emergentes en estas disciplinas.