
Visionless: Interacción sonora
Información del documento
Autor | Arturo Jafet Rodríguez Muñoz |
instructor | Dr. Luis Eduardo Falcón Morales |
Escuela | ITESM Campus Guadalajara, Escuela de Graduados en Ingeniería y Arquitectura – EGIA |
Especialidad | Ciencias de la Computación |
Tipo de documento | Tesis |
city | Guadalajara |
Idioma | Spanish |
Formato | |
Tamaño | 6.58 MB |
Resumen
I.Antecedentes El Problema de la Discapacidad Visual en México y el Potencial del Kinect
Este trabajo aborda la necesidad de desarrollar juegos accesibles para personas con discapacidad visual. En México, según el INEGI, existen 467,040 personas con discapacidad visual. La Organización Mundial de la Salud (OMS) estima cifras aún mayores a nivel global. El proyecto aprovecha el potencial del Kinect de Microsoft, un dispositivo de bajo costo con capacidades de detección de movimiento y profundidad, para crear experiencias de juego inmersivas que mejoren la percepción espacial y la navegación de este grupo vulnerable. Se exploran soluciones de tecnología asistiva utilizando juegos de accesibilidad que ofrecen una alternativa a la rehabilitación tradicional.
1.1.1. La magnitud del problema de la discapacidad visual en México
El documento comienza estableciendo la prevalencia de la discapacidad visual en México, citando datos del INEGI que indican la existencia de 467,040 mexicanos que sufren de esta condición. Se desglosa esta cifra, indicando que el 4.8% se debe a prevalencia, el 11.2% es congénito, el 33% a enfermedad y el 49.6% a otras causas. Esta información sirve como punto de partida para resaltar la necesidad de desarrollar soluciones tecnológicas que mejoren la calidad de vida de estas personas. Se enfatiza la importancia de reconocer los desafíos que implica esta discapacidad y la necesidad de soluciones innovadoras. La referencia a las estadísticas del INEGI proporciona una base sólida para la justificación del proyecto.
1.1.2. Perspectivas globales de la discapacidad visual y la ecolocación
La sección amplía la perspectiva al mencionar las estimaciones de la Organización Mundial de la Salud (OMS), que indican la existencia de 45 millones de personas ciegas y aproximadamente 135 millones con discapacidad visual parcial. Se define la discapacidad visual según los criterios de la OMS (visión menor a 20/400 en el ojo con mejor capacidad y corrección). La comprensión de la magnitud global del problema refuerza la relevancia del proyecto. Además, se introduce el concepto de ecolocación, destacando que personas con discapacidad visual desarrollan habilidades para navegar utilizando otros sentidos, como el oído y el tacto, y que estudios recientes han demostrado la capacidad humana de usar la ecolocación para la orientación espacial. Esta información sienta las bases para la propuesta de utilizar tecnología para facilitar y mejorar este proceso natural de adaptación.
1.1.3. El potencial del Kinect como herramienta tecnológica
El documento presenta el Kinect como una tecnología clave para abordar el problema de la discapacidad visual. Se menciona el surgimiento de videos en sitios como Kinect Hacks que muestran diversas aplicaciones del dispositivo, incluyendo una aplicación para el trastorno dismórfico corporal como ejemplo de su versatilidad. Se destaca la facilidad de adquisición y el bajo costo del Kinect, comparado con otras tecnologías más complejas para el procesamiento de imágenes en 3D. Se hace énfasis en las capacidades del Kinect para el reconocimiento de movimiento, silueta de la mano y posicionamiento de las extremidades, sugiriendo su potencial para crear interfaces de usuario intuitivas y accesibles para personas con discapacidad visual. Se introduce la idea de usar el Kinect no solo para el reconocimiento de imágenes, sino también para obtener datos de profundidad, que son esenciales para la creación de experiencias inmersivas en 3D.
II.Justificación La Necesidad de Herramientas de Aprendizaje Inmersivas
La falta de herramientas accesibles para mejorar la percepción espacial en personas con discapacidad visual es un problema importante. Muchos individuos necesitan nuevas formas de navegar su entorno de manera independiente. La propuesta busca un instrumento de fácil uso, accesible y económico, que use el hogar como entorno de aprendizaje y mejore la independencia. El desarrollo de juegos para discapacitados visuales con el Kinect ofrece una solución potencialmente eficaz y motivadora.
1.4.1 La necesidad de herramientas para agilizar el aprendizaje de personas con discapacidad visual.
La justificación del proyecto parte de la necesidad de desarrollar una herramienta que facilite el aprendizaje y la percepción del entorno en personas con discapacidad visual. Se destaca la urgencia de ofrecer alternativas que permitan una mayor independencia a este grupo de la población, ya que un número considerable de personas requiere aprender nuevas maneras de navegar su entorno para mantener su autonomía. Se resalta la problemática de aquellos que viven solos y necesitan asistencia para actividades cotidianas, como ir a un centro de rehabilitación. La solución propuesta se centra en la creación de un instrumento de fácil acceso y operación dentro del hogar, que sustituya la información visual utilizando otros sentidos, enfatizando la necesidad de una herramienta accesible y amigable para mejorar la calidad de vida de estas personas.
1.4.2 El Kinect y las herramientas de procesamiento de imágenes como solución tecnológica.
La justificación se centra en la viabilidad de la solución tecnológica propuesta, utilizando la tecnología del Kinect y herramientas de procesamiento de imágenes. Se resalta la accesibilidad del Kinect debido a su bajo costo y la disponibilidad de diversos kits de desarrollo (SDKs) que facilitan su programación. Se explica que, aunque inicialmente desarrollado para Xbox, el potencial del Kinect para aplicaciones en computadoras llevó al desarrollo de APIs no oficiales y, posteriormente, al soporte oficial de Microsoft con un SDK mejorado. La propuesta se centra en una aplicación casera que requiere solo una computadora, un Kinect y un sistema de sonido 5.1, buscando la alta precisión en la identificación de la silueta humana y la descripción del entorno tridimensional del usuario, lo que permitirá ofrecer información espacial a través de la interacción con el juego.
1.4.3 La importancia de un sistema de fácil acceso y operación en el hogar.
La justificación reitera la importancia de una herramienta de fácil acceso y operación, particularmente dentro del hogar. Se enfatiza la conveniencia de contar con un instrumento que pueda ser utilizado de manera sencilla e intuitiva por personas con discapacidad visual, sustituyendo la información visual mediante el uso de otros sentidos. Se destaca la necesidad de una solución que sea práctica y que se integre fácilmente en la vida cotidiana, eliminando la necesidad de desplazamientos o la dependencia de terceros para realizar tareas básicas. La facilidad de uso y la accesibilidad son presentadas como elementos clave para el éxito de la solución, asegurando que la herramienta sea realmente útil y efectiva para el grupo objetivo.
III.Metodología Desarrollo del Juego y Pruebas con Voluntarios
La metodología se centra en el desarrollo de un juego para desarrollo de juegos Kinect que aprovecha el procesamiento digital de imágenes y el sonido 3D. Se integran librerías como OpenKinect, OpenGL y OpenCV en Java. Se realizaron pruebas de campo con 13 voluntarios (62% mujeres, 38% hombres), con y sin discapacidad visual simulada (uso de antifaz), de 4 a 63 años. La recolección de datos se automatizó para mayor precisión. El objetivo del juego es interceptar abejas virtuales guiándose únicamente por el sonido, promoviendo el desarrollo de la conciencia espacial.
1.6.1 Investigación y desarrollo del juego en Java.
La metodología describe un proceso de desarrollo en varias etapas. Comienza con la investigación de soluciones preexistentes para problemas similares. A continuación, se detalla el proceso de aprendizaje e integración de librerías esenciales en Java: OpenKinect para la interacción con el sensor Kinect, OpenGL para la representación gráfica 3D, y OpenCV para el procesamiento de imágenes. Se incluye la investigación de librerías para generar sonido envolvente compatible con Java, comparando las ventajas y desventajas entre el sonido binaural con auriculares y el sonido envolvente con bocinas 5.1. Se describe el diseño y desarrollo de un menú interactivo, sencillo e intuitivo para usuarios invidentes. Todo este proceso está orientado a la creación de un juego que sea fácil de usar y que proporcione una experiencia de juego amigable y efectiva para el usuario.
1.6.2 Pruebas con usuarios y retroalimentación.
Una parte crucial de la metodología es la realización de pruebas con un grupo de personas con diferentes tipos de impedimentos visuales, tanto reales como simulados (mediante el uso de antifaz). Estas pruebas se centran en la interacción de los usuarios con el programa desarrollado, recopilando información sobre las distintas etapas y procesos de uso. El objetivo es obtener retroalimentación para realizar los ajustes y modificaciones necesarias en el juego, mejorando su usabilidad y eficacia. Se indica que la información obtenida a través de estas pruebas será fundamental para la optimización del juego y para asegurar que cumple con los objetivos planteados. La metodología enfatiza la importancia de las pruebas de usuario como parte integral del proceso de diseño y desarrollo.
1.6.3 Ejemplos de investigación previa y sus limitaciones.
La metodología también incluye una revisión de investigaciones previas relevantes. Se mencionan dos ejemplos: un sistema de navegación para personas con discapacidad visual desarrollado en la Universidad de Konstanz (2011), que utiliza un cinturón vibro-táctil, marcadores ópticos y el Kinect, y un sistema de la Universidad de Tokio (2009) para teclear en el aire mediante el seguimiento de la mano con una cámara especial y un coprocesador FPGA. Se destacan los resultados positivos del sistema de Konstanz, mientras que se resaltan las limitaciones del sistema de Tokio, como el uso de hardware especializado y las pruebas limitadas a un solo usuario en un entorno altamente controlado. Esta revisión sirve para contextualizar la investigación actual y justificar las decisiones metodológicas tomadas.
IV.Diseño y Desarrollo Arquitectura del Juego Visionless Interactions
El juego 'Visionless Interactions' se diseñó con una arquitectura multi-hilo para optimizar el rendimiento, permitiendo una tasa de frames superior a 30 fps. Se utilizan cinco módulos independientes que operan simultáneamente: Kinect (captura de datos), Procesamiento de imágenes (aislamiento del fondo), Mundo virtual (representación 3D), Sonido (reproducción en 3D usando audio 3D con un sistema 5.1), y Control principal (gestión de hilos). La arquitectura se basa en el modelo MVC. El juego se compone de 11 niveles de dificultad creciente, requiriendo la intercepción del 80% de las abejas virtuales en cada nivel. Se usaron una Apple MacBook Pro 2009, un Kinect de Microsoft, un sistema de sonido 5.1 de Logitech y una tarjeta de sonido USB 7.1 de Sabrent para las pruebas.
3.1.1 Arquitectura multi hilo para procesamiento en tiempo real.
El diseño del juego 'Visionless Interactions' prioriza el funcionamiento en tiempo real. Inicialmente se intentó una arquitectura lineal con un solo hilo, pero esto resultó en fallos debido al desbordamiento de memoria del Kinect al recopilar datos de profundidad a menos de 30 cuadros por segundo. Para solucionar esto, se rediseñó la arquitectura para aprovechar el procesamiento paralelo del hardware, utilizando cinco módulos independientes que operan concurrentemente: Módulo Kinect (captura de datos), Procesamiento de imágenes, Mundo virtual (representación 3D), Sonido (audio 3D), y Control principal (gestión de hilos). Esta arquitectura multi-hilo permite mantener una tasa de 30 cuadros por segundo y una interacción inmersiva, resolviendo el problema de la sobrecarga de memoria. El uso del modelo MVC (Modelo-Vista-Controlador) facilita la separación de los módulos y la comunicación entre ellos. Se menciona que la aplicación está diseñada como plataforma para futuros juegos.
3.1.2 Descripción de los módulos del juego.
La arquitectura se divide en cinco módulos: Módulo Kinect, encargado de la adquisición de datos de la cámara de profundidad y RGB; Módulo de Procesamiento de Imágenes, que se encarga de aislar al usuario del fondo; Módulo de Mundo Virtual, que actualiza la representación gráfica 3D; Módulo de Sonido, responsable de la reproducción del audio 3D; y el Módulo de Control Principal que inicia y gestiona los otros hilos. Se describe la función del Módulo Kinect, destacando la elección del Kinect por su bajo costo y la funcionalidad de su SDK. También se explica la importancia del Módulo de Sonido para evitar confusiones y centralizar el acceso a librerías externas. Se indica que la arquitectura está basada en el modelo MVC, lo cual facilita la separación de las partes que se ejecutan en hilos independientes, y también facilita la comunicación entre los dispositivos.
3.1.3 El uso del Kinect y el procesamiento de imágenes para interacción sin vista.
Se justifica la elección del Kinect sobre otras tecnologías para la captura de imágenes de profundidad debido a su bajo costo y fácil adquisición. Se menciona que el SDK de Microsoft ofrece más funciones que las bibliotecas de código abierto, incluyendo la generación del esqueleto del usuario y el uso de los micrófonos. Se describe el proceso de captura de imágenes, especificando la posibilidad de elegir entre resoluciones de 320x240 o 640x480. Se aborda la problemática de la gestión de datos con ByteBuffers, enfatizando la necesidad de verificar la consistencia de los datos para evitar la recepción de información desactualizada. En cuanto al aislamiento del fondo, se explica cómo se utiliza la información de profundidad para identificar al usuario y aislarlo del entorno estático, resolviendo el problema de cambios en la iluminación que podrían afectar la experiencia de un usuario con discapacidad visual.
3.1.4 Diseño del menú y la interacción con el juego.
Se describe el diseño del menú del juego, orientado a la interacción sin la necesidad de dispositivos físicos adicionales. Se basa en la comprensión intuitiva de conceptos espaciales como adelante, atrás, arriba, abajo, izquierda y derecha, utilizando la retroalimentación sonora para guiar al usuario. Se menciona que el sistema permite la interacción con opciones del menú utilizando cualquier parte del cuerpo (cabeza, pies, etc.), ampliando su accesibilidad para diferentes tipos de discapacidades. Se indica que solo se requiere el punto más cercano al Kinect para el manejo de las opciones, haciendo el juego inclusivo para diferentes tipos de usuarios. Se explica la integración del sistema de sonido 5.1, destacando los retos de configurar correctamente el sonido envolvente en una computadora.
3.1.5 Integración del sonido 3D y especificaciones técnicas.
Se describe la integración de sonido 3D utilizando la librería de Paul Lamb (basada en LWJGL 2), permitiendo reproducir archivos WAV en coordenadas 3D. Se destaca la capacidad de modificar en tiempo real volumen, tono y posición del sonido, la capacidad de multi-audio simultáneo y la compatibilidad multiplataforma. Se explica el proceso de configuración del sonido envolvente en Mac OS X 10.7 utilizando 'Audio MIDI Setup'. Se advierte sobre posibles problemas de desbordamiento de información si se configura sonido 7.1 en un sistema 5.1. Se mencionan los dispositivos utilizados en el desarrollo y pruebas: Apple MacBook Pro 2009, Kinect de Microsoft, sistema de sonido 5.1 de Logitech y una tarjeta de sonido USB 7.1 de Sabrent.
V.Experimentación y Resultados Pruebas de Campo y Retroalimentación
Las pruebas se llevaron a cabo en una institución dedicada a la educación de invidentes y débiles visuales (nombre de la institución omitido por acuerdo). Se utilizaron cuestionarios para recopilar la retroalimentación de los usuarios. Los resultados indican que el juego resultó divertido y ayudó a mejorar la identificación de objetos 3D en el entorno. El uso del sonido 5.1 permitió la creación de un mapa mental de la posición de los objetos, aunque se sugiere usar más bocinas para una mejor simulación de altura en futuras iteraciones.
4.1.1 Diseño de las pruebas y participantes.
Para evaluar el juego, se realizaron pruebas con 13 voluntarios de entre 4 y 63 años (62% mujeres, 38% hombres). La mitad tenía discapacidad visual, mientras que la otra mitad usó un antifaz para simular la condición. La selección de participantes se realizó a través de una institución dedicada a la educación de invidentes y débiles visuales (cuyo nombre se omite por confidencialidad). Antes de iniciar, se les explicó el entorno físico, las reglas del juego, el objetivo de cada nivel y el funcionamiento de los menús. Se les ayudó a familiarizarse con el área de juego delimitada por cinta aislante negra. No se les informó sobre la cantidad de abejas ni sus rutas de vuelo. Cada sesión tuvo una duración de 15 minutos, limitada por la disponibilidad de tiempo de la institución y los participantes. El software utilizado para las pruebas fue Eclipse Juno v3.8, según se indica en la Tabla 4.2.
4.1.2 Metodología de la recolección de datos.
La recolección de datos se automatizó a través de la interfaz gráfica del programa para minimizar errores humanos en la medición. Esto permite asegurar la precisión de los datos registrados, evitando posibles sesgos o errores en la interpretación de la observación. La automatización de la recolección de datos es una medida crucial para garantizar la fiabilidad de los resultados obtenidos en las pruebas. Esta automatización ofrece una ventaja significativa sobre métodos manuales, proporcionando un registro preciso y objetivo del desempeño de los usuarios durante las pruebas del juego.
4.1.3 Resultados de las pruebas y retroalimentación.
Los resultados obtenidos, basados en cuestionarios aplicados a los participantes, indican que el juego fue divertido y que los usuarios mejoraron su capacidad para identificar objetos 3D en su entorno a lo largo del tiempo. El juego funcionó adecuadamente en cuanto a la navegación por los menús y la interacción con objetos 3D. Se destaca que el sonido 5.1 permitió a los usuarios crear un mapa mental de la posición de los objetos, aunque se sugiere el uso de un mayor número de bocinas para simular la altura de los objetos en futuras iteraciones. La ausencia de grabaciones de video o fotografías de los participantes se justifica por un acuerdo de confidencialidad con la institución donde se realizaron las pruebas.
VI.Conclusiones y Trabajo Futuro Una Plataforma para el Desarrollo de Juegos Accesibles
El proyecto demostró la viabilidad de crear aplicaciones multiplataforma en Java que utilicen el Kinect para juegos accesibles. El juego 'Visionless Interactions' funciona eficientemente, ofreciendo una experiencia inmersiva para mejorar la percepción espacial en usuarios con discapacidad visual. El trabajo futuro se centra en realizar pruebas de campo más amplias con una muestra representativa de usuarios finales y desarrolladores para refinar la plataforma y expandir sus funcionalidades.
5.1 Conclusiones sobre la plataforma Visionless Interactions.
La conclusión principal es la demostración exitosa de la plataforma Visionless Interactions como herramienta para crear juegos accesibles para personas con discapacidad visual. Se destaca que el juego de ejemplo, diseñado para mejorar la ubicación espacial a través del sonido, logró su objetivo. Se resalta la capacidad de la aplicación para funcionar con dispositivos de acceso público y en tiempo real, utilizando Java como lenguaje de programación. El funcionamiento a más de 30 cuadros por segundo con la configuración estándar de la máquina virtual de Java demuestra su eficiencia y la poca necesidad de recursos de memoria RAM. Se menciona el equipo utilizado (Apple MacBook Pro 2009, Kinect de Microsoft, Sonido 5.1 de Logitech y tarjeta de sonido USB 7.1 de Sabrent). Se concluye que el juego resultó divertido y ayudó a mejorar la identificación de objetos 3D, así como la navegación por los menús y la interacción con objetos 3D, confirmando la utilidad de la plataforma en un contexto de juegos accesibles.
5.2 Resultados de las pruebas y sugerencias para futuras iteraciones.
Los resultados de los cuestionarios muestran que los usuarios disfrutaron el juego y mejoraron su capacidad de identificar objetos 3D. El sistema de sonido 5.1 permitió crear un mapa mental de la posición de los objetos, aunque se recomienda utilizar un mayor número de bocinas para una mejor simulación de la altura en futuras versiones. Se enfatiza la necesidad de realizar pruebas más exhaustivas con una muestra más amplia de usuarios. El juego demostró su capacidad para generar una experiencia de juego positiva y efectiva, al menos en esta fase inicial del proyecto. Se concluye que el uso del sonido espacial, en este caso con un sistema 5.1, resulta prometedor para la creación de juegos accesibles y para el entrenamiento de habilidades espaciales en personas con limitaciones visuales.
5.3 Propuestas para el trabajo futuro.
El trabajo futuro se centra en mejorar Visionless Interactions, expandiendo sus funcionalidades y facilitando su uso. Se propone realizar dos series de pruebas de campo a mayor escala: una con usuarios finales para evaluar la experiencia con el juego de ejemplo, y otra con desarrolladores para obtener retroalimentación sobre la plataforma y posibles mejoras. La necesidad de una mayor cantidad de datos y feedback de usuarios y desarrolladores se identifica como un punto crucial para la optimización y evolución de la plataforma, buscando garantizar su máxima utilidad y accesibilidad para la comunidad a la que se dirige. La plataforma se presenta como un punto de partida para futuras investigaciones y desarrollos en el ámbito de los videojuegos accesibles.