Saltar al contenido principal

Consideraciónes AR - Vuforia Engine

En esta ficha se mencionarán consideraciones encontradas a lo largo de múltiples proyectos AR que hacen uso de Vuforia Engine para la detección de marcadores u otras funcionalidades. (Nota: Esta ficha no abarcará todas las funcionalidades de la herramienta, se recomienda leer la documentación de Vuforia Engine for Unity)

Pruebas en Unity - Play mode (Simulator, Webcam & Recording)

Se pueden realizar pruebas de las experiencias AR desde el editor de Unity en Play mode, Vuforia ya nos proporciona algunas opciones para ello.

Sin título.png

Este apartado puede ser modificado desde la pestaña Window/Vuforia Configuration

Simulator

Este primer tipo nos permite experimentar la escena en unity por medio del teclado, en este caso por defecto Vuforia asigna las teclas 'W','A','S' y 'D' para desplazarnos por la escena, controlando la posición de la AR Camera actual y asi poder reconocer los diversos marcadores en la escena.

Sin embargo, únicamente serán reconocidos aquellos marcadores que hayan sido cargados por medio de un UnityPackage descargado desde Vuforia el cual contiene una database de los marcadores a utilizar en la esperiencia. Es decir, agregar marcadores por Imagen no denotará los eventos de AR desde el editor utilizando el modo simulador.

(error) No se detenctan por medio del simulador en el editor.

image-20240403-222236.png

(tic) Si se detenctan por medio del simulador en el editor.

image-20240403-222135.png

Webcam

Evidentemente, este modo nos pide tener acceso a una webcam conectada en el ordenador, este modo tiene complicaciones para detectar marcadores si la calidad de esta webcam no es la adecuada, además que es muy probable que pierda referencia del marcador al instante en el que este deja de mostrarse en la cámara.

Otro tipo de funcionalidades de AR como puede ser la detección de planos u objetos, puede no funcionar correctamente con esta herramienta.

(tic) Si se detenctan por medio del modo webcam en el editor.

image-20240403-222236.pngimage-20240403-222135.png

Recording

Este modo, al momento de la creación de esta ficha no ha sido utilizada recientemente, puede haber cambiado conforme a las verisiones nuevas de Vuforia Engine. Revisar documentación específica en https://developer.vuforia.com/library/platform-support/recording-and-playback .

En síntesis esta herramienta nos permite reproducir un video como la forma de simular una sesión AR, es necesario que este video siga las especificaciones y requerimientos que solicita Vuforia Library para poder ser utilizado, cualquier otro video que no cumpla estos parámetros no será reconocido en la sesión.

Image Target - Marcadores 5 estrellas (estrella azul)(estrella azul)(estrella azul)(estrella azul)(estrella azul) No funcionales (estrella azul) (estrella azul)

Vuforia Engine es muy claro para definir lo que se considera un buen marcador y lo que no dentro de documentación en: https://developer.vuforia.com/library/objects/best-practices-designing-and-developing-image-based-targets

Sin embargo, el problema que se ha presentado en más de una ocasión es el que un marcador puede tener 5 estrellas (máxima calificación que puede tener un marcador en vuforia) como el siguiente:

image-20240403-225318.pngimage-20240403-225552.png

Y aunque a pesar de que Vuforia cataloga estas imágenes como buenos marcadores, en realidad ambos tienen un problema en común, patrones repetitivos. Vufora en su documentación deja en claro que las imágenes simétricas con patrones repetitivos pueden ser problemáticas para su correcta detección y él desempeñó al momento de mostrar los elementos en AR, sin embargo, a pesar de que estas imágenes no son simétricas en su totalidad si cuentan con un gran número de patrones repetitivos a lo largo de la imagen, esto provoca un bajo rendimiento al momento de detectar el marcador causado por un problema que fácilmente puede pasar desapercibido.

image-20240403-230256.png

La solución a estos problemas puede ser editar la imagen, ya sea eliminar parte del contenido repetitivo o bien recortar elementos hasta obtener una imagen funcional.

Image Target - (estrella azul) Consideraciones en el espacio físico. (estrella azul)

En ocasiones se ha presado el caso en el que, a pesar de tener un marcador de buena calidad (4 o 5 (estrella azul) estrellas en Vuforia) puede ser que el rendimiento de este se vea afectado por factores fuera de su alcance. En esta sección veremos cuáles son algunos de estos casos y sus posibles soluciones. Aunque, como siempre, es importante revisar la documentación que proporciona Vuforia sobre estos casos: https://developer.vuforia.com/library/objects/physical-properties-image-based-targets

Material del marcador y reflejos.

En ocasiones el marcador puede verse afectado por reflejar fuentes de luz externas, lo cual proporciona datos que no se tienen en consideración por Vuforia al momento de calificar y detectar un marcador.

Se recomienda que los marcadores sean de un material poco reflejante así como que estos no estén cubiertos por cristales que puedan reflejar fuentes de luz u otros objetos constantemente.

Iluminación del espacio físico.

El espacio físico debe estar lo suficientemente iluminado para poder detectar el marcador y poder distinguir los patrones que lo comprenden. Es común escuchar que las habitaciones oscuras no son un buen lugar para la detección de AR, así mismo una habitación con una iluminación poco consistente (luces que se encienden y apagan o bien entradas de luz natural) puede afectar el marcador a lo largo de la experiencia.

Prevenir y evitar en la medida de lo posible el enfrentarse a estos escenarios es lo recomendable, sin embargo, en ocasiones en inevitable enfrentarse a situaciones así. Algunas soluciones a estos problemas han recaído en tomar una fotografía en el espacio físico del marcador, pues al tener las tonalidades y algunos detalles adicionales proporcionados por el entorno real nos pueden proveer de un marcador más preciso y funcional en el espacio en el cual será utilizado (esto tomando en cuenta que estos marcadores están fijos en alguna habitación o sala).

image-20240403-233229.png

Otro caso, aunque es menos habitual, es que el entorno que rodea al marcador sea uniforme, libre de algún distintivo en particular, aunque la documentación de vuforia no es muy específica sobre este caso se ha podido identificar que en habitaciones o salas con pocos o nulos elementos distintivos se puede perder él, Extended Tracking del marcador con mayor facilidad.

Lo anterior ha sido identificado en salas con muros blancos sin ningún patrón distintivo, salas sin variedad en color, textura y/o elementos en estas. Al perder el marcador lo unció que puede ver la cámara en un constante fondo blanco y entonces puede perder la referencia de la posición inicial del marcador durante él, Extended Tracking, aunque esto es variable entre dispositivos, se intuye que el entorno al no tener ningún tipo de dato reconocible como referencia a la posición inicial del marcador, él, extended tracking se detiene hasta reconocer el marcador nuevamente causando la sensación de que no está funcionando correctamente.

Image Target - Múltiples Image Targets dentro de Unity (estrella azul)

Una buena práctica al momento de desarrollar aplicaciones AR en Unity haciendo uso de Vuforia Engine es el utilizar la menor cantidad de marcadores simultáneamente, la cantidad de estos marcadores puede ser modificada en la pestaña Window/Vuforia Configuration definiendo la cantidad máxima de marcadores que pueden ser detectados.

image-20240403-235259.png

En la escena en Unity se ha comprobado que tener múltiples marcadores cargados dentro de esta, a pesar de no estar habilitados, afectan en el flujo de vida de la aplicación y en el desempeño que se tiene en cada marcador, por ello se recomienda tener escenas dedicadas al reconocimiento específico de cierto marcador, así se incrementa el rendimiento en los dispositivos y se mantiene un diseño de la aplicación más limpio.

Conclusiones

El tener un marcador de alta calidad (4 o 5 (estrella azul) ) no nos asegura nada, se deben realizar las pruebas necesarias en el espacio físico, tener estas consideraciones puede reducir en gran medida el tiempo en testing con diversos dispositivos y hora de desarrollo intentando encontrar soluciones a problemas aparentemente “Sin sentido”. Vuforia es clara con lo que se considera como buena práctica, contra lo que no, hay que seguir los lineamientos preestablecidos en la medida de lo posible e informar al equipo de desarrollo si alguno de estos no se está siguiendo a la brevedad.