lunes, 27 de enero de 2014

Recorrido Virtual con OpenNI 1.5, Unity y Kinect

Como ya escribi en una entrada anterior, un amigo y yo  estuvimos trabajando sobre un proyecto que nos permitiera titularnos, un proyecto que involucraba NUI (Interfaces Naturales de Usuario, por sus siglas en ingles) y Mundos Virtuales, el cual fue titulado "Recorrido Virtual controlado por Interfaz Natural utilizando Microsoft Kinect" el titulo es descriptivo, para mi gusto. Como parte de los que nos pidieron todo el entorno del Recorrido Virtual tenia que ser desarrollado por nosotros.

A continuación, un vídeo de como quedo el Recorrido Virtual.



La aplicacion esta compuesta por el Mundo Virtual(MV) y por la Interfaz Natural, proporcionada por el Kinect.

La mayoría de las tecnologías, si no todas, son tecnologías Open Source o en su defecto con licencias permisivas. Para poder realizar el MV fue necesario la creación de los objetos virtuales, para esto usamos el Software de Modelado 3D Blender, (BlenderGuru y CGCookie, fueron comunidades donde aprendimos mucho).  Una vez se tuvieron los objetos virtuales, se procedio  a montar el MV con su física, para este fin decidimos usar el software para la creación de videjuegos Unity 3D, esto por el hecho de que Unity proporcionaba buena compatibilidad con la librería del Kinect que habíamos decidido usar.

Para implementar la Interfaz Natural usamos el framework OpenNI en su version 1.5, este framework permite interpretar los datos captados por el sensor. OpenNI proporciona API's en distintos lenguajes, entre ellos C#, que era el que nos interesaba, ya que Unity soporta el desarrollo de scripts en este lenguaje.

Una vez teniamos el MV y podiamos leer los datos del sensor, se procedio a desarrollar algoritmos que permitieran convertir los datos captados, en interacciones con el MV. El desarrollo de estos algoritmos puede ser muy complicado, pero poniendolo de manera sencilla, lo que mayormente se hizo fue usar reglas de 3 simples, que nos permitieran convertir cambios en coordenadas en el mundo real a cambios y transformaciones en el MV.

A grandes rasgos ese fue nuestro proyecto de titulacion, el codigo lo pueden encontrar aqui. tambien se pueden descargar ejecutables de Windows desde aqui.

El proyecto quedo desactualizado ya que cuando lo finalizamos, OpenNI libero su version 2. y dejo de dar soporte a la version 1... espero poder meterle mano pronto.

No hay comentarios:

Publicar un comentario