La Realidad Aumentada usada para rehabilitación

Más reciente

Se acabó

Bueno, tras un largo tiempo sin actualizar el blog, quería comentaros y daros las gracias a todos los que habéis llegado hasta aquí. Si en algo os ha servido este blog me alegrará saberlo.

El proyecto fin de carrera lo terminé correctamente y muy bien afortunadamente y ahora estoy analizando su evolución por lo cual está será la última entrada de este blog.

Los objetivos que me planteé cuando empecé con el proyecto, se vieron superados notablemente. Por citar algunos:

- Conocer la Realidad Aumentada

- Desarrollar una aplicación con dicha tecnología.

- Lograr la integración de distintas figuras en 3D en el funcionamiento de la aplicación.

Dragón muestra Proyecto Rehabilitar

Muestra de la aplicación Proyecto Rehabilitar

Tras finalizar el proyecto, se abrió una nueva etapa donde hemos mostrado el proyecto en modo petit comite en la universidad y hemos aparecido en algunos medios de comunicación.

- El Mundo. “Prototipos en venta”. Página 6 del siguiente archivo PDF ElMundo_9Nov2011.

- tvUBU: Presentación de becas prototipo 2011.

- Diario de Burgos: “De la teoría a la práctica”

Diario De Burgos - 5Nov2011

- Correo de Burgos: “Conocimiento al servicio de la sociedad”

Correo de Burgos 5Nov2011

- Tribuna de la Ciencia: “Desarrollan un programa para rehabilitación basado en Realidad Aumentada”

Sin mas dilación un afectuoso saludo y agradecer a todas aquellas personas conocidas y desconocidas que hicieron que este largo viaje llegase a buen puerto.

Para continuar conociendo los posibles avances de este proyecto, os aconsejo que sigáis mi cuenta de Twitter.

Twitter oscarzor

Realidad Aumentada con dos o mas markers

Quiero usar mas de un marker, ese ha sido el objetivo desde que empecé el proyecto, estando en su fase final de desarrollo, voy a intentar explicar que pasa cuando quieres usar mas de un marker.

Crear una aplicación de Realidad Aumentada con un sólo marker no tiene mucha dificultad, ese tema ya lo traté en otra entrada: Primer desarrollo en Realidad Aumentada.

El problema viene cuando quieres crear una aplicación que use dos o mas marcadores, así como distintas figuras, después de volverme loco y darle mas que vueltas no terminaba de ver como podía programa FlartArtToolkit para ello, hasta que encontré la solución, la solución viene dada por una librería llamada FLARManager.

Una vez encontrada la herramienta, tan sólo faltaba encontrar algunos manuales para poder usarla. Desde aquí os recomiendo el manual del vídeo.

El enlace está en inglés y es el siguiente: Tracking multiple augmented Reality Markers with FLARManager and Papervision. Para aquellos que el inglés no sea vuestro fuerte, estaros tranquilos ya que viene muy bien explicado con código e imágenes.

Para aquellos que queráis descargar el FLARManager, esta es su web oficial FLARManager, entre las ventajas del uso de esta librería están:

- Soporte librerías de seguimiento (tracking libraries) incluyendo:

-Soporte 3D frameworks incluidos:

Otro manual en vídeo es el siguiente.

FLARManager

Enlace al vídeo: Augmented Reality with FLARManager – Learn how to use the FLARManager library to make creating AR applications a breeeze.

Espero que este mini manual os ayude tanto como me ayudaron a mi estas webs.

Bibliotecas

Desarrollando el proyecto me he visto varias veces en la necesidad de tener imágenes, gifs, figuras de otras personas, ya que uno puede crearlas pero en algunas ocasiones el tiempo que se pierde en ello no merece la pena, y ¿entonces que haces? La solución a esto es el uso de webs dedicadas a ciertos temas, como en todos los casos las hay de pago pero a mí las que me interesan son las gratuitas.

La única condición para el uso de estos objetos muchas veces es tan sólo nombrar al autor o la web de donde han salido.

A continuación os muestro las que he estado usando.

  • Imágenes

En esta web podemos encontrar imágenes clasificadas en diversos temas, si queremos una imagen pequeña, va a ser gratuita de otro modo hay que pagar. En mi caso con esas imágenes me vale.

La web es http://www.freedigitalphotos.net/

  • Texturas

CGtextures.com nos permite encontrar multitud de texturas organizadas por temas.

Para la creación de figuras ha sido necesario poner texturas a las figuras, aquí podemos descargarlas sin problemas.

La web es http://www.cgtextures.com/

  • ClipArts

En OpenClipArt.org vamos a encontrar los Clip Arts necesarios para nuestro uso.

La web es http://www.openclipart.org/

  • Figuras en 3D

Como colofón en la web 3dvia.com vamos a encontrar figuras en 3D modeladas directamente en DAE con sus texturas correspondientes.

En esta web tenemos los dos casos, los de pago y gratuitos, de los últimos hay un gran número de modelos que podemos usar simplemente advirtiendo de donde hemos sacado la figura o quién es el autor.

La web es la siguiente: http://www.3dvia.com/search/3d-modeling/3d-models/

Aplicaciones novedosas AR

Estos días ando bastante liado con la documentación de mi proyecto, pero eso no quita que no halla visto cosas nuevas que me han llamado la atención.

La primera nos viene del gigante de la electrónica Sony que ha desarrollado su propio sistema de realidad aumentada, SmartAR, en el vídeo a continuación parece que está grabado con un móvil, es impresionante cómo no pierde de vista al marker. Os dejo el vídeo.

El segundo es un anuncio de Axe en la estación londinense Victoria. Un ejemplo que llama muchísimo la atención de los traseuntes al verse en una pantalla gigante acompañados de “ángeles”.

El último se trata de una campaña publicitaria de BMW, la cual tiene ya su tiempo (Abril de 2009), y en la cual si el usuario se imprimía el marker podía dibujar en la pantalla del ordenador de forma virtual con los cursores del teclado.

Crear marcadores

Uno de los procesos a hacer es crear nuestros propios marcadores o markers en inglés. Un marker no deja de ser un código de barras bidimensional, similar a los Códigos QR habituales de los móviles.

Este marker es el que viene con el FlarToolKit Starter Kit de Saqoosha (que comentamos en la entrada anterior) pero he decidido crear mis propios marcadores.

Para generar nuestro marker, hemos creado una base con el programa de edición gráfica GIMP, para aquellos que no le conozcáis tan sólo deciros que es la versión de código libre y gratuita similar al  AdobePhotoshop. El Gimp lo podeís descargar desde aquí.

Esta es la base sobre la que vamos a trabajar.

marker_blanco_proyecto_rehabilitary una vez que tenemos la base es muy fácil modificarla con el Gimp y crear otros marcadores.

Como por ejemplo los siguientes.

- con una letra C de conocer por ejemplo


- con las letras AR, siglas de Augmented Reality (Realidad Aumentada)

- con la webcam que tenemos en el logotipo

- con la H de Hospital que tenemos en el logotipo,

pero este último caso no es recomendable, ya que le veo dos problemas:

  1. La figura era simétrica, y de esa forma el programa no sabe cual es la parte superior o inferior del marker, para solucionar esto he añadido los cuadrados negros en la parte inferior derecha
  2. Al ser un color azul, el programa de captura lo reconoce como si fuese un gris tenue.

Una vez que tenemos los marcadores, lo único que tenemos que hacer es hacer clic aquí, y entraremos en la aplicación Marker Generator Online 2.

Su uso es muy sencillo, abrimos el programa y seleccionamos el modo “Load marker image”, para coger con este método las imágenes desde nuestro ordenador sin necesidad de imprimirlas.

Seleccionamos nuestro archivo y pulsamos Open.

Se carga el archivo y el programa lo reconoce (línea roja alrededor del cuadrado).


Pinchamos en Get Pattern, captura nuestra imagen (línea color verde) y nos muestra como quedará el fichero binario que va a usar la aplicación.


Ahora tan sólo nos queda hacer clic sobre Save Current y así obtenemos el fichero binario con nuestro marcador gracias a ARToolKit Marker Generator.

Primer desarrollo Realidad Aumentada

Para desarrollar mi Proyecto Fin de Carrera basado en Realidad Aumentada (Augmented Reality en inglés) no sabía bien por donde comenzar, y tras estar investigando decidí que lo mejor era desarrollarlo en ActionScript 3.0, un lenguaje orientado a objetos desarrollado por Adobe, aquí podemos encontrar la documentación de ActionScript. Para comenzar a desarrollar la idea lo mejor es empezar a cacharrear con algo existente, y por ello seguiremos varios puntos y de esa forma nuestros primeros pasos llegarán a buen puerto. Para este desarrollo se recomienda experiencia en lenguajes de programación. A continuación os pongo un mini manual para saber por donde comenzar en Realidad Aumentada. 1- Recomiendo descargar las siguientes librerías, ya que las vamos a necesitar.

  • FLARToolkit: La base de la realidad aumentada, desarrollada por Saqoosha, se encarga de reconocer los markers (marcadores) mediante el uso de la webcam.Podéis descargarlo desde aquí.
  • Papervision3D: Esta otra librería es el motor gráfico para que se vean nuestros desarrollos en 3D.Podéis descargarlo desde aquí.
  • FLARToolKit Starter Kit: Ejemplos básicos de Realidad Aumentada, con los que empezar a conocer el funcionamiento. Podéis descargarlo desde aquí.

2- Una vez descargadas las librerías, deberemos imprimirnos el siguiente archivo flarlogo-marker.pdf, que es una imagen como la anterior, este archivo está incluido en la carpeta Data dentro de la librería FLARToolKit Starter Kit. 3- Posteriormente, comprobar lista de programas instalados, en una entrada anterior comenté los diversos programas que vamos a necesitar. Así que le echaremos un ojo a los programas necesarios. 4- Una vez instalados todos los programas, nos pondremos con las manos en la masaa crear nuestra primera aplicación. Para orientarme estuve consultando multitud de webs, pero sin ver nada que me pudiese enseñar por donde comenzar, hasta que encontré un varios videotutoriales donde nos van explicando poco a poco los primeros pasos.

  • Estupendo videotutorial en español, por tanto no vamos a tener ningún problema. Agradecer a Zoix, desde aquí su ayuda y colaboración para saber “por donde me daba el aire”.
Para mas detalles del vídeo, pulsa aquí.
  • Otro videotutorial para desarrollar nuestra primera aplicación en Realidad Aumentada, pero esta vez en inglés (se entiende muy bien), enlace aquí.
Espero que os sirva de ayuda este mini manual.

Pruebas de navegador

Al estar desarrollando una aplicación que funciona mediante el uso de un navegador, he decidido hacer unas pruebas funcionales de que efectivamente nuestro desarrollo es aplicable y funcional con otros navegadores.

Para estas pruebas he probado tres navegadores completamente distintos:

- Internet Explorer 9, lo podéis descargar desde aquí.

- Mozilla Firefox 4.01, lo podéis descargar desde aquí.

- Opera 11.10, lo podéis descargar desde aquí.

Usage share of web browsers

  Mozilla Firefox (28.6%)
  Google Chrome (14.6%)
  Safari (6.3%)
  Opera (2.6%)
  Mobile browsers (4.7%)

Con estos tres navegadores, obtenemos una compatibilidad con un 74.4%  sobre la suma total de navegadores. Los datos mostrados son de Marzo 2011 y están extraídos de Wikipedia.

A continuación he puesto, las pruebas con los tres navegadores comentados y dos capturas de pantallas sobre ellos, una antes de permitir el uso de la cámara al plugin Flash y otra después cuando hemos permitido el uso de la cámara.

  • Internet Explorer 9.0

  • Mozilla Firefox 4.01

  • Opera 11.01

Programas necesarios para crear aplicación AR

Tras llevar un tiempo sin colgar nada aquí, es hora de ir contando mis progresos, pero hoy simplemente vamos a ir contando los programas que he visto necesarios para hacer un ejemplo básico de Realidad Aumentada programado en ActionScript.

Estos programas en mi caso están descargados para Windows 7 64 bits, en algún programa para otros sistemas operativos, Linux o Mac existirán alternativas.

Programas necesarios en orden de uso:

- 3DStudio Max: Para diseñar las figuras que queramos, se puede descargar desde el portal Education en la web de Autodesk si eres estudiante. Se pueden usar otros como Maya o Blender para diseñar, esto ya es opción de cada uno. Enlace portal Autodesk Education Community

- OpenCollada: Plugin para 3D Studio Max, Maya o Blender que nos permite exportar nuestras creaciones. Podéis descargarlo desde aquí.

- Notepad ++: Un editor de texto que soporta diferentes lenguajes de programación. Podéis descargarlo desde aquí. También disponible en versión portable.

- Adobe Flash Player: Es aconsejable tener la última versión del plugin para evitar problemas cuando hagamos pruebas. Se puede descargar desde aquí.

- Marker Generator Online2: Aplicación Flash para la creación de los marcadores. Podéis descargarlo desde aquí.

- Adobe Flash Builder 4: Lo vamos a usar para compilar y editar el código. En mi caso me lo he descargado acreditando que soy estudiante. Podéis descargarlo desde aquí.

Es de agradecer que para crear una aplicación como la nuestra no hemos tenido que desembolsar ni un Euro en estos programas, ya que siendo estudiantes nos permiten descargarlo de forma gratuita.

Mas ideas de Realidad Aumentada

Estas tres últimas semanas no he publicado nada, pero sin embargo he ido guardando noticias relacionadas con la realidad aumentada, así que os las muestro a continuación, os aviso de antemano que alguna no tiene pies ni cabeza pero es el uso de la tecnología lo que me interesa.

  • Novia virtual:

Lo de encontrar novia debe ser muy complicado en algunas partes del planeta, por ello en Japón Nintendo ha desarrollado un juego para que puedas tener tu propia novia, pero virtual.

Para mas detalles de este tema, pulsa aquí

  • Diseña tu propio circuito de carreras con latas de refrescos

Si dispones de un Iphone, Ipod o Ipad te puedes descargar en el siguiente enlace (RedBull Augmented Racing) una aplicación (73 MB) que captura la posición de las latas de esta compañía (no pretendo hacer publicidad) y luego te permite jugar a carreras de coches con el circuito diseñado

El vídeo he intentado ponerlo en el blog, pero el código no funciona del todo, así que este es el enlace del vídeo

Otro vídeo que he encontrado:

  • Curriculum Vitae en Realidad Aumentada

El siguiente enlace me le suministró mi tutor, y la idea es interesante, mediante una etiqueta que la gente pueda ver tu CV contándolo por ti mismo en vídeo, la información mas detallada aquí

Patentes y derechos de autor

La semana pasada acudí a un taller donde se dieron tres conferencias sobre las patentes, derechos de autor y software libre. He adjuntado los guiones de las conferencias las he adjuntado al final de cada tema.

Voy a intentar resumir cada uno de los diversos puntos que se trataron en las conferencias.

  • PATENTES

- El código no se patenta

- Son patentables –> Invenciones nuevas que implican actividad inventiva y sean susceptibles de aplicación industrial.

- No se considera invención:

*Métodos para el diseño de Aplicaciones Software

*Se excluye la patentibilidad solamente en la medida en que la solicitud de patente de patente europea o cómo carácter técnico si se puede proteger:

+ Un programa para nóminas no se puede patentar porque las nóminas van en base a leyes administrativas

+ Un programa para calcular la velocidad de un motor si que se puede patentar porque es para un carácter técnico.

- Se considera carácter técnico:

* Características objetivamente evaluables, por ejemplo

- la corriente eléctrica no tiene carácter técnico

- corriente eléctrica de 2 Amperios si que tiene carácter técnico

- Para poder patentar algo hay que presentar:

* Sector de la técnica

* Explicación de la invención, que permita la comprensión del problema técnico planteado y su solución, descripción

* Problema que motivó al inventor

* Problema técnico subjetivo planteado y resuelto

* Problema técnico objetivo

* Dibujos

* No tiene que tener el código fuente

- Para una patente es necesario un problema técnico

- Una invención según la ley de patentes tiene que tener carácter técnico, es decir necesitas magnitudes físicas.

- La técnica es regla

-Los programas que no se pueden patentar, se pueden proteger con derechos de autor.

- Un programa es un bien, se protege por derechos de autor:

* Más barato que mediante patentes

* Más rápido (inmediato), patente (3 años)

* No tiene que funcionar (en la patente si)

* Menor protección.

* No protege las ideas y principios, se patentan la realización práctica

* Las ideas y procedimientos no se protegen, la aplicación de la idea si

Presentación Eduardo Martín Pérez – OEPM.pdf

  • DERECHOS DE AUTOR

- Con los derechos de autor se protegen el software se protegen como obras literarias para evitar problemas en países que no tengan leyes para derechos de autor en software.

- Lo que se protege es el soporte (fichero informático)

- La protección por derechos de autor abarca:

* Protección software, pero también se protege el documento preparatorio y documentación técnica (manual uso)

* Derechos morales:

- Paternidad

- Decidir la divulgación

- Respecto de la integridad

* Derechos patrimoniales:

- Reproducción

- Distribución

- Comunicación Pública

- Un programa puede ser ser similar a otro, tan sólo con unos pequeños cambios en el diseño de un programa sería legal la copia; para evitar eso se puede denunciar por imitación o competencia desleal.

- Los derechos de autor no se venden, se comercializan licencias

Presentación Fernando Carbajo Cascón – Profesor USAL y Magistrado.pdf

  • SOFTWARE LIBRE

- No se puede crear un producto con licencias GPL que no sea a su vez GPL. Esta idea puede ser fundamental a la hora de intentar proteger mi futuro software, así que tendré que analizar bien las fuentes usadas.

Presentación Daniel Solís Portillo – CENATIC.pdf

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.