Aplicación para guiar al usuario en el desarrollo de modelos de origami usando procesado de imagen y Realidad Aumentada.
Video demo: https://youtu.be/l9iLr0pp29Y
Desarrollo de una aplicación Flash mediante control de movimiento usando técn...Cristina Urdiales
Este proyecto se centra en emplear gestos naturales para controlar una animación Flash. De esa forma, se puede interactuar con un ordenador o con proyecciones sin necesidad de hardware específico. Para ello se captura la mano del usuario, se segmenta de la imagen y se procesa hasta obtener la forma de los dedos. En función de la posición relativa de los dedos respecto a la pantalla y entre ellos se determina el gesto y el punto de interacción y se sustituye por el cursor y el evento correspondiente de la animación Flash en ejecución.
Implementación de aplicaciones en Nintendo DS a partir de un fichero XML con ...Cristina Urdiales
Sistema para creación automática de aplicaciones tipo video-aventura para Nintendo DS basado en un archivo XML como descriptor de escenas, elementos e interacción entre estos
Generacion de un entorno virtual para un robot autonomo movil (J.J. Moreno Lu...Cristina Urdiales
Creación de un entorno virtual OpenGL para la simulación de robots móviles con comportamientos programados en C. Permite la visualización externa y desde el punto de vista del robot y corre de forma concurrente al sistema
Caracterización del tráfico en ciudad mediante un smartphone (Pablo Fuentes)Cristina Urdiales
Sistema basado en smartphone (Android) que emplea el acelerómetro y el GPS del dispositivo para obtener la velocidad y aceleración en el plano paralelo al suelo. A partir de esta información se hace una estimación de riesgo en función de los perfiles de las curvas y se representa en Google Maps
Desarrollo de una aplicación Flash mediante control de movimiento usando técn...Cristina Urdiales
Este proyecto se centra en emplear gestos naturales para controlar una animación Flash. De esa forma, se puede interactuar con un ordenador o con proyecciones sin necesidad de hardware específico. Para ello se captura la mano del usuario, se segmenta de la imagen y se procesa hasta obtener la forma de los dedos. En función de la posición relativa de los dedos respecto a la pantalla y entre ellos se determina el gesto y el punto de interacción y se sustituye por el cursor y el evento correspondiente de la animación Flash en ejecución.
Implementación de aplicaciones en Nintendo DS a partir de un fichero XML con ...Cristina Urdiales
Sistema para creación automática de aplicaciones tipo video-aventura para Nintendo DS basado en un archivo XML como descriptor de escenas, elementos e interacción entre estos
Generacion de un entorno virtual para un robot autonomo movil (J.J. Moreno Lu...Cristina Urdiales
Creación de un entorno virtual OpenGL para la simulación de robots móviles con comportamientos programados en C. Permite la visualización externa y desde el punto de vista del robot y corre de forma concurrente al sistema
Caracterización del tráfico en ciudad mediante un smartphone (Pablo Fuentes)Cristina Urdiales
Sistema basado en smartphone (Android) que emplea el acelerómetro y el GPS del dispositivo para obtener la velocidad y aceleración en el plano paralelo al suelo. A partir de esta información se hace una estimación de riesgo en función de los perfiles de las curvas y se representa en Google Maps
Tarea integrada, utilizando dispositivos minIpad con la app iMovie, para grabar y editar un vídeo. Implementada dentro de la secuencia didáctica "Emozioen ZOOlogikoa"
El siguiente trabajo muestra el contenido sobre el tema: "LAS APPS". Elaborado como uno de los puntos importantes de un trabajo final. Esperando sirva de apoyo academico.
Aplicaciones móviles para el uso en arquitecturaRafa Peña
Aplicaciones moviles que pueden llegar a servir a otros arquitectos para que les puedan ayudar en su trabajo del día a día, aplicaciones para sacar plantas, para sacar fotos de 360º, para apuntar medidas en fotos...
El iPad como herramienta de productividad profesional #Productivity #iPadProEDVenan Llona
Taller-demo "El iPad como herramienta de productividad profesional" presentado por Venan Llona (@vllona) el 6 de diciembre de 2014 en la primera Araba Encounter #AE01 organizado por Enpresa Digitala de SPRI.
Desarrollo de una interfaz interactiva para museos (Silvia Moral)Cristina Urdiales
Desarrollo de una aplicación para interactuar con una proyección en un museo con gestos de las manos utilizando un dispositivo Kinect.
La aplicación se probó en el MUPAM (Málaga) para recorrer el trazado de la ciudad de Málaga desde sus inicios hasta la actualidad, con posibilidad de manejar información 2D y 3D.
Video de la instalación en las Noches en Blanco 2015 y 2016 aquí:
https://youtu.be/70vxJ9OehdQ
PFC del alumno Gustavo Gómez para la obtención del título de Ingeniero Técnico en Sistemas Electrónicos. El sistema permite ejecutar una arquitectura híbrida distribuida entre un microcontrolador de bajo coste (en un microbot) y un ordenador externo, de forma que la capa reactiva reside en el microcontrolador y la deliberada en el ordenador, comunicándose ambos por RF.
Más contenido relacionado
Similar a Origam-i: Juego basado en Realidad Aumentada para iPhone (Santiago García Guillén)
Tarea integrada, utilizando dispositivos minIpad con la app iMovie, para grabar y editar un vídeo. Implementada dentro de la secuencia didáctica "Emozioen ZOOlogikoa"
El siguiente trabajo muestra el contenido sobre el tema: "LAS APPS". Elaborado como uno de los puntos importantes de un trabajo final. Esperando sirva de apoyo academico.
Aplicaciones móviles para el uso en arquitecturaRafa Peña
Aplicaciones moviles que pueden llegar a servir a otros arquitectos para que les puedan ayudar en su trabajo del día a día, aplicaciones para sacar plantas, para sacar fotos de 360º, para apuntar medidas en fotos...
El iPad como herramienta de productividad profesional #Productivity #iPadProEDVenan Llona
Taller-demo "El iPad como herramienta de productividad profesional" presentado por Venan Llona (@vllona) el 6 de diciembre de 2014 en la primera Araba Encounter #AE01 organizado por Enpresa Digitala de SPRI.
Desarrollo de una interfaz interactiva para museos (Silvia Moral)Cristina Urdiales
Desarrollo de una aplicación para interactuar con una proyección en un museo con gestos de las manos utilizando un dispositivo Kinect.
La aplicación se probó en el MUPAM (Málaga) para recorrer el trazado de la ciudad de Málaga desde sus inicios hasta la actualidad, con posibilidad de manejar información 2D y 3D.
Video de la instalación en las Noches en Blanco 2015 y 2016 aquí:
https://youtu.be/70vxJ9OehdQ
PFC del alumno Gustavo Gómez para la obtención del título de Ingeniero Técnico en Sistemas Electrónicos. El sistema permite ejecutar una arquitectura híbrida distribuida entre un microcontrolador de bajo coste (en un microbot) y un ordenador externo, de forma que la capa reactiva reside en el microcontrolador y la deliberada en el ordenador, comunicándose ambos por RF.
Simulador RFID para localización de objetos móvilesCristina Urdiales
PFC del alumno Gilberto Rodríguez para la obtención del título de Ingeniero de Telecomunicación. Sistema para actualización dinámica de una base de datos con la ubicación de objetos portables etiquetados mediante RFID usando un lector portátil. Orientado a personas con problemas de visión o transtornos cognitivos.
Modelado automático 3d de entornos mediante realidad aumentada orientado a ex...Cristina Urdiales
Sistema de Virtualidad Aumentada para reemplazar el fondo de una escena por un entorno virtual sin utilizar croma y empleando cámaras en movimiento. El sistema se basa en ubicar marcas artificiales en puntos del entorno para tener siempre ubicada la cámara dentro del espacio, que se modela automáticamente mediante planos de fondo para proceder a una substracción automática de fondo con respecto al fotograma que se procesa en cada instante. El fotograma modificado incluye en entorno virtual renderizado desde el punto de vista de la cámara, más todos los elementos móviles o que no forman parte del fondo en el entorno.
Visualización aumentada de modelos 3D para diseño arquitectónico (A. Ruiz Agu...Cristina Urdiales
Sistema de Realidad Aumentada basado en la librería ARToolkit para la construcción de maquetas interactivas en RA. Permite la carga de modelos 3DStudio y reconoce un conjunto de gestos con la mano para alterar las proporciones de la maqueta a través de sus vértices.
Videos en Youtube:
https://youtu.be/Qb0QoY1uDqQ?list=PLYQ-1TQv7voPgu613VwMdKgK5qhD-Ka1L
https://youtu.be/fVE2yny7j44?list=PLYQ-1TQv7voPgu613VwMdKgK5qhD-Ka1L
Sistema de información móvil basado en GPS (B. Prieto)Cristina Urdiales
App development system for mobile phones in Java. The system is designed to work in a PC using a graphic editor. Hotspots are added to a Google Maps interface to indicate where the resulting app will provide information to the end user. The designer can generate the app automatically without programming.
Pizarra Digital Interactica mediante el uso del Wiimote (F. Morabet)Cristina Urdiales
Desarrollo de una pizarra digital/pantalla interactiva empleando una Wiimote y un puntero equipado con dos LEDs infrarrojos. A partir de la posición y el parpadeo de los LEDs la Wiimote reconoce la ubicación del puntero y un conjunto de acciones, como click, doble click, drag & drop ...
Aparte de su uso natural como ratón, se ha implementado para testearlo un programa de dibujo sobre una proyección en la pared.
Enlace radio bidireccional PC-MICROBOT (E. Rodriguez Regidor)Cristina Urdiales
Desarrollo de un módulo de comunicación inalámbrica entre un microbot controlado por un microcontrolador y un PC, de cara a la distribución de su sistema de control. Se intercambian paquetes con información sensorial del robot al PC y de comandos a la inversa
Interfaz de usuario para el desarrollo de contenidos en guías turísticas orie...Cristina Urdiales
Interfaz de usuario para desarrollar aplicaciones tipo videoaventura sobre Nintendo DS mediante la generación de un fichero descriptor XML que lista escenas, elementos e interacción entre ellos. Se encarga de dejar en el formato adecuado todos los elementos multimedia necesarios para la videoconsola. La idea básica de este proyecto es aislar la labor del programador de la del diseñador de contenidos.
Sistema de localización visual por color (M. Dominguez Duran)Cristina Urdiales
Sistema para localizarse visualmente en un entorno a partir de una imagen. El sistema construye una topología basada en la situación física y descriptores del color de los distintos elementos que constituyen la escena y los compara con las topologías correspondientes de los panoramas de que dispone en su base de datos. Se admiten distorsiones, cambios de iluminación, perspectiva, elementos dinámicos, etc trabajando con invariantes y con estadística.
Coordinación por visión de equipos de robots móviles (J. Cebolla)Cristina Urdiales
Sistema de coordinación de tareas basado en localización visual por triangulación de robots. Las posiciones de cada uno se actualizan a partir de las distancias relativas al resto. A partir de dichas posiciones, cada robot aprende la tarea correspondiente al grupo.
Plataforma inalámbrica para la monitorización y teleasistencia domiciliaria u...Cristina Urdiales
Desarrollo de una plataforma de teleasistencia con soporte para dispositivos biométricos Bluetooth y Zigbee e interfaz web basada en un PC con conexión WiFi
Interfaz gráfico de usuario con control táctil para juegos musicales multijug...Cristina Urdiales
Videojuego GPL en la línea del Freats on Fire que permite analizar cualquier canción en formato audio digital, extraer el ritmo y transformarlo en una secuencia de notas de complejidad variable para una interfaz tipo Guitar Hero.
Bóveda celeste usando Realidad Aumentada (D. Berrocal)Cristina Urdiales
Este proyecto se centra en el desarrollo de un planisferio celeste mediante Realidad Aumentada (usando proyector o gafas). Para ello se estima la posición del usuario mediante marcas en la superficie de proyección y se añaden las estrellas que estarían visibles con respecto a esta. Usando una marca tipo puntero se pueden seleccionar estrellas para resaltar a qué constelación pertenecen, su nombre y otros datos.
Algoritmo de resolucion automatica de puzzles (J.O. Merry)Cristina Urdiales
Sistema para construcción automática de puzzles basado en visión artificial. A partir de una imagen de las piezas desmontadas, el sistema compara los contornos de acuerdo a su función de curvatura y, más adelante, el perfil de color de los posibles candidatos para dar con la opción final de encaje. Así se indica al usuario dónde debería ir cada pieza.
Video demostración: https://youtu.be/syG4qPUfah0
Sistema de comunicacion via radio entre PC y Microbot (M. Gonzalez Martin)Cristina Urdiales
Diseño de un sistema de comunicación radio basado en microcontrolador para el microbot TRITT, de forma que se puedan implementar comportamientos complejos en un PC y descomponerlos en órdenes sencillas para el robot a nivel reactivo, que sólo envía la lectura de sus sensores de a bordo.
Inmersión en entornos virtuales mediante Realidad Aumentada (Begoña Sagredo)Cristina Urdiales
Sistema de Virtualidad Aumentada. Utiliza técnicas de posicionamiento basado en marcas y de sustracción de fondo para ubicar al usuario en un entorno distinto al que se encuentra. Para ello se modela automáticamente en entorno mediante planos que se detectan usando marcas tipo ARToolkit y después, una vez posicionado el usuario respecto a las marcas, se resta lo que está viendo del renderizado del modelo, quedando únicamente los objetos móviles, que pasan a ubicarse en el mundo virtual seleccionado.
Sistema de aprendizaje para el coloreado de dibujo (Jose Manuel Benicio)Cristina Urdiales
Aplicación para smartphone Android orientada a detectar colores del entorno e indicar cómo obtenerlos mezclando pigmentos de una paleta real comercial (óleos, acuarelas, acrílicos, etc). También permite calcular los complementarios, suplementarios, triádicos, etc del color elegido, así como calcular qué color encaja más con los que ya se tienen en el dibujo.
Convocatoria de becas de Caja Ingenieros 2024 para cursar el Máster oficial de Ingeniería de Telecomunicacion o el Máster oficial de Ingeniería Informática de la UOC
Origam-i: Juego basado en Realidad Aumentada para iPhone (Santiago García Guillén)
1. Origam-i:
Juego basado en procesado de imagen para iPhone
Realizado por: Santiago Garc´ıa Guill´en
Dirigido por: Cristina Urdiales Garc´ıa
Escuela T´ecnica Superior de Ingenier´ıa de Telecomunicaci´on
Universidad de M´alaga
19 Mayo 2014
2. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
1 Introducci´on a los dispositivos m´oviles
2 Caracter´ısticas del problema: iOS y origami
3 Estudio de procesado de imagen aplicado a Origam-i
4 Aplicaciones desarrolladas
5 Conclusiones y trabajo futuro
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
3. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Explosi´on de los dispositivos m´oviles
Dispositivos m´oviles del ahora: Smartphones y tabletas
Desde ∼2009: explosi´on de ventas. Llegada al usuario medio
Reducci´on de precio
Aparici´on de la tecnolog´ıa 3G
Mejora de sus capacidades y perif´ericos
CPU
Pantalla t´actil
Videoc´amara y GPU
Sistema de sonido
GPS
Aceler´ometros
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
4. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Explosi´on de los dispositivos m´oviles
Dispositivos m´oviles del ahora: Smartphones y tabletas
Desde ∼2009: explosi´on de ventas. Llegada al usuario medio
Reducci´on de precio
Aparici´on de la tecnolog´ıa 3G
Mejora de sus capacidades y perif´ericos
CPU
Pantalla t´actil
Videoc´amara y GPU
Sistema de sonido
GPS
Aceler´ometros
Mercado se compartimenta seg´un plataforma
iOS de Apple: iPhone y iPad
Android de Google junto a diferentes compa˜n´ıas
Blackberry
Windows Phone (Microsoft + Nokia)
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
5. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Aplicaciones para smartphones
Un tel´efono ya no sirve solo para llamar: aplicaciones (apps)
Smartphone: ordenador en la palma de la mano
Movilidad, maniobrabilidad, ergonom´ıa,...
Tiendas virtuales: App Store, Google Play
Aplicaciones de todo tipo
Utilidades
Comunicaciones y redes sociales
Ofim´atica
M´usica
Juegos
Telemedicina
Educativas
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
6. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Aplicaciones para smartphones
Aplicaciones educativas: Sistemas interactivos tutorizados
Simbiosis perfecta con sistemas m´oviles
Tutorizaci´on mediante realimentaci´on usuario–m´ovil
Un smartphone es un ordenador en la palma de la mano
Siempre encima
Maniobrabilidad
M´as ameno que leer un manual
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
7. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Smartphones: evoluci´on
A lifetime of Apps. IEEE Spectrum Sep 2012 c James Provost
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
8. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
¿Qu´e vamos a hacer?
Sistema interactivo tutorizado
Aportar know-how acad´emico
Desarrollar una aplicaci´on que permita probar las ventajas que
ofrecen los smartphones
Crear un ejemplo de aplicaci´on interactiva tutorizada
Tutor: tiene el conocimiento
Usuario: realiza el aprendizaje
Programador: a´ısla el conocimiento del tutor y lo ofrece al
usuario
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
9. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
¿Qu´e vamos a hacer?
Sistema interactivo tutorizado
Aportar know-how acad´emico
Desarrollar una aplicaci´on que permita probar las ventajas que
ofrecen los smartphones
Crear un ejemplo de aplicaci´on interactiva tutorizada
Tutor: tiene el conocimiento
Usuario: realiza el aprendizaje
Programador: a´ısla el conocimiento del tutor y lo ofrece al
usuario
Origam-i: Juego basado en procesado de imagen para iPhone
Captura del entorno: videoc´amara
Realimentaci´on hacia el usuario: Pantalla t´actil
Alto consumo de CPU/GPU: procesado en directo
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
10. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Realidad Aumentada
Versi´on mejorada de la realidad superponiendo informaci´on digital
Toma de datos del entorno, procesado y representaci´on
No es imprescindible, pero se ajusta perfectamente
Forma m´as intuitiva de ense˜nar: mostrar en directo
Aplicaciones de altos requerimientos
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
11. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Elecci´on de plataforma: iPhone y iOS
iOS: iPhone OS, lanzado en 2007
Versi´on actual: iPhone 5S/5C y iOS 7.0
¿Por qu´e iPhone? Pocos dispositivos, pocas versiones SO
Programaci´on en Objective-C
Extensi´on POO del lenguaje C. Sintaxis propia
SDK y entorno de desarrollo proporcionado por Apple
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
12. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Arquitectura l´ogica iOS
Capas L´ogicas en iOS
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
13. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Patrones de dise˜no
Patr´on de dise˜no (templates): Soluci´on reutilizable a problemas comunes
Modelo–Vista–Controlador (MVC)
Paso de mensajes: NSNotificationCenter
Delegaci´on
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
14. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Caracter´ısticas del origami
La papiroflexia —u origami en japon´es— es el arte de plegar un
papel para obtener figuras de formas variadas
Caracter´ısticas:
Cada figura se compone de diferentes pasos ordenados
Cada paso tiene una forma ´unica
Entre paso y paso se realiza un doblez
El papel usado tiene dos colores: frente y dorso
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
15. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Tipos de dobleces
Valle
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
16. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Tipos de dobleces
Inside Reverse o Hueco
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
17. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Tipos de dobleces
Apertura
¡No es plano!
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
18. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Limitaciones
No se pueden tener pasos tridimensionales
Easy Origami: Solo 2D
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
19. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Limitaciones
No se pueden tener pasos tridimensionales
Easy Origami: Solo 2D
Es necesario aislar caracter´ısticas que identifiquen la forma
Existen zonas de sombra y el color no es constante
Procesado de imagen: detecci´on de esquinas, color
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
20. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Limitaciones
No se pueden tener pasos tridimensionales
Easy Origami: Solo 2D
Es necesario aislar caracter´ısticas que identifiquen la forma
Existen zonas de sombra y el color no es constante
Procesado de imagen: detecci´on de esquinas, color
Es necesario diferenciar Frente, Dorso y color de fondo
Imponer el uso de tres colores planos y diferentes
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
21. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Limitaciones
No se pueden tener pasos tridimensionales
Easy Origami: Solo 2D
Es necesario aislar caracter´ısticas que identifiquen la forma
Existen zonas de sombra y el color no es constante
Procesado de imagen: detecci´on de esquinas, color
Es necesario diferenciar Frente, Dorso y color de fondo
Imponer el uso de tres colores planos y diferentes
El doblez se identifica mediante varios par´ametros
Es una recta: al menos dos puntos
Es un tipo concreto de doblez: ¿qu´e parte se dobla?
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
22. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Limitaciones
No se pueden tener pasos tridimensionales
Easy Origami: Solo 2D
Es necesario aislar caracter´ısticas que identifiquen la forma
Existen zonas de sombra y el color no es constante
Procesado de imagen: detecci´on de esquinas, color
Es necesario diferenciar Frente, Dorso y color de fondo
Imponer el uso de tres colores planos y diferentes
El doblez se identifica mediante varios par´ametros
Es una recta: al menos dos puntos
Es un tipo concreto de doblez: ¿qu´e parte se dobla?
Los pasos deben ser almacenados correctamente
Base de datos
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
23. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Estudiando el problema en conjunto...
Sistema interactivo tutorizado
Dispositivo m´ovil
Origami
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
24. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Estudiando el problema en conjunto...
Sistema interactivo tutorizado
Dispositivo m´ovil
Origami
Plataforma que genera nuevas aplicaciones
Tutor–Programador: Aplicaci´on del desarrollador
Programador–Usuario: Aplicaci´on de usuario final
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
25. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Divisi´on del proyecto en dos aplicaciones
Diferentes usuarios, diferentes necesidades
El usuario final quiere feedback r´apido: flujo de video
El tutor ya sabe los pasos: fotograf´ıas
Diferentes escenarios, diferentes procesados
Al crear la base de datos, el visto bueno lo da el tutor
Al usar la base de datos, la aplicaci´on da el visto bueno
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
26. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Divisi´on del proyecto en dos aplicaciones
Diferentes usuarios, diferentes necesidades
El usuario final quiere feedback r´apido: flujo de video
El tutor ya sabe los pasos: fotograf´ıas
Diferentes escenarios, diferentes procesados
Al crear la base de datos, el visto bueno lo da el tutor
Al usar la base de datos, la aplicaci´on da el visto bueno
Aislar creaci´on y distribuci´on
Crear diferentes bases de datos para comercializar
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
27. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Divisi´on del proyecto en dos aplicaciones
Diferentes usuarios, diferentes necesidades
El usuario final quiere feedback r´apido: flujo de video
El tutor ya sabe los pasos: fotograf´ıas
Diferentes escenarios, diferentes procesados
Al crear la base de datos, el visto bueno lo da el tutor
Al usar la base de datos, la aplicaci´on da el visto bueno
Aislar creaci´on y distribuci´on
Crear diferentes bases de datos para comercializar
Dos aplicaciones sobre iOS
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
28. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
¿Qu´e procesado de imagen?
Procesado en color
Mejora de la calidad de imagen: Iluminaci´on, sombras
Extracci´on de esquinas
Identificaci´on de la forma de la figura: Esquinas
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
29. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
¿Qu´e sabemos de las sombras?
¿Qu´e provoca las sombras?
Elementos externos
La propia figura: bordes
Reducci´on de luz:
Oscurecimiento de una zona
de la imagen
¿Podemos aclarar un color?
Gracias a la representaci´on
en espacio de color
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
30. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Espacios de color
RGB: ¡No es f´acil moverse! HSV: Basta variar V
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
31. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Procesado de color
Transformaci´on RGB→HSV→RGB
Ecuaciones complejas: Lentas
Tabular los resultados (Look-Up Table) ()
Memoria: 256 × 256 × 256 × 3 × 4 ≈ 192Mbytes
iPhone 4: 512 Mbytes de RAM
Usar disco: P´erdida de velocidad
Diezmado: P´erdida de precisi´on
Agrupaci´on de colores ()
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
32. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Procesado de color
Transformaci´on RGB→HSV→RGB
Ecuaciones complejas: Lentas
Tabular los resultados (Look-Up Table) ()
Memoria: 256 × 256 × 256 × 3 × 4 ≈ 192Mbytes
iPhone 4: 512 Mbytes de RAM
Usar disco: P´erdida de velocidad
Diezmado: P´erdida de precisi´on
Agrupaci´on de colores ()
Acudir a transformaciones aproximadas y r´apidas (!)
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
33. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Procesado de color
Transformaci´on RGB→HSV→RGB
Transformada r´apida RGB-HSV
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
34. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Detecci´on de esquinas
¿Qu´e caracter´ısticas debe tener un detector de esquinas?
Debe detectar todas las esquinas
No debe detectar esquinas donde no las hay
Tiene que ser robusto ante el ruido
Debe ser preciso en la localizaci´on de una esquina
¿Qu´e problemas podemos encontrar en la imagen?
Sombras
Desenfoque o imagen borrosa
Exceso o defecto de iluminaci´on
Fallos hardware
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
35. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas
Algoritmos de extracci´on de esquinas
FAST(-er)
C´odigo liberado en C++
Usa escala de grises
fastn y fastn non max
non max suppression: Supresi´on de no m´aximos locales
Medida de Harris
Desarrollo matem´atico
Gran cantidad de c´alculos: uso de GPU y flujo de video
Basado en intensidad lum´ınica de varios p´ıxeles
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
36. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas
Extracci´on de esquinas: escala de grises
Mapear un universo tridimensional en uno unidimensional
PAL/Apple (FAST): Y = 0,299 × R + 0,587 × G + 0,114 × B
ITU-R BT.709 (Harris): Y = 0,2125 × R + 0,7154 × G + 0,0721 × B
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
37. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas
Extracci´on de esquinas: escala de grises
Mapear un universo tridimensional en uno unidimensional
PAL/Apple (FAST): Y = 0,299 × R + 0,587 × G + 0,114 × B
ITU-R BT.709 (Harris): Y = 0,2125 × R + 0,7154 × G + 0,0721 × B
Colisiones en colores complejos
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
38. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app del tutor: FAST
FAST
Par´ametro clave: Contig¨uidad de n p´ıxeles
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
39. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app del tutor: FAST
fast10 fast10 non max
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
40. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app del tutor: FAST
fast10 fast11
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
41. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app del tutor: FAST
Modelo h´ıbrido
fast10
Contig¨uidad 10px sobre circunferencia 16px
Algoritmo de supresi´on de duplicados propio
fastn non max elimina esquinas que no debe
Rcluster = 0,03 ·
√
W · H
Ajuste fino manual aprovechando la pantalla t´actil
Borrar es m´as f´acil que a˜nadir
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
42. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
FAST: Rendimiento
M´odulo/funci´on Tiempo de proceso ¯t (ms)
Obtenci´on del mapa de bits (CG) ≈ 690
RGB2HSVRapido (C++) ≈ 270
Giro de la imagen (CG) ≈ 670
Image2Grayscale (CG) ≈ 100
fast10 (C++) ≈ 17
Simplificar cl´uster /10u (C++) ≈ 6
Superposici´on RA /1u (UIKit) ≈ 5
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
43. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
FAST: Rendimiento
M´odulo/funci´on Tiempo de proceso ¯t (ms)
Obtenci´on del mapa de bits (CG) ≈ 690
RGB2HSVRapido (C++) ≈ 270
Giro de la imagen (CG) ≈ 670
Image2Grayscale (CG) ≈ 100
fast10 (C++) ≈ 17
Simplificar cl´uster /10u (C++) ≈ 6
Superposici´on RA /1u (UIKit) ≈ 5
Tiempo total ≈ 2s
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
44. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app de usuario: Medida Harris
Medida Harris
Par´ametro clave: variaci´on de la intensidad en ambas dimensiones
Robert Collins. Harris Corner Detector, 2007
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
45. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app de usuario: Medida Harris
Trabajo con flujo de video: Procesado Harris
OpenGL ES
Fragment Shaders
Vertex Shaders
Librer´ıa GPUImage
Cadena de procesado (filtros)
Escala de grises (ITU-R BT.709): dot
Derivada discreta: 2×convoluci´on 2D con operador Prewitt
Gx =
−1 0 1
−1 0 1
−1 0 1
∗ I , Gy =
1 1 1
0 0 0
−1 −1 −1
∗ I
Limpieza: Desenfoque gaussiano
Medida Harris: R = R(Ix , Iy , Ixy , k)
Supresi´on de puntos no m´aximos locales (non max suppression)
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
46. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app de usuario: Medida Harris
Proceso en GPU: destructivo
El resultado del procesado
Harris no est´a en la CPU
La informaci´on est´a dispersa
por el mapa de bits
P´erdida de rendimiento
(iPhone 4, iOS 6):
Leer con glReadPixels()
≈ 90ms
Leer imagen p´ıxel a p´ıxel
≈ 30ms
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
47. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Extracci´on de esquinas en app de usuario: Medida Harris
Proceso en GPU: destructivo
El resultado del procesado
Harris no est´a en la CPU
La informaci´on est´a dispersa
por el mapa de bits
P´erdida de rendimiento
(iPhone 4, iOS 6):
Leer con glReadPixels()
≈ 90ms
Leer imagen p´ıxel a p´ıxel
≈ 30ms
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
48. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Detecci´on de figura correcta: Emparejado
Hay un flujo de video: movimientos
No puede ser emparejado perfecto
Esquinas de m´as o menos
Ligeras rotaciones y variaciones de perspectiva
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
49. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Detecci´on de figura correcta: Emparejado
Hay un flujo de video: movimientos
No puede ser emparejado perfecto
Esquinas de m´as o menos
Ligeras rotaciones y variaciones de perspectiva
Algoritmo propio
Fijar dos puntos extremos de la escena
Escalar distancias y calcular ´angulos respecto de ´estos
Buscar parejas punto a punto
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
50. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Detecci´on de figura correcta: Emparejado
Hay un flujo de video: movimientos
No puede ser emparejado perfecto
Esquinas de m´as o menos
Ligeras rotaciones y variaciones de perspectiva
Algoritmo propio
Fijar dos puntos extremos de la escena
Escalar distancias y calcular ´angulos respecto de ´estos
Buscar parejas punto a punto
El paso ha sido realizado correctamente si durante 4
fotogramas de los ´ultimos 5 al menos un ratio mayor del 80 %
de los n elementos de la base de datos son emparejados sobre
los k elementos obtenidos del procesado en directo con no
m´as de un elemento del procesado no emparejado
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
51. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Base de datos
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
52. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Base de datos
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 1
P1: x=85, y=162
P2: x=85, y=339
P3: x=263, y=331
P4: x=262, y=163
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
53. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Base de datos
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 1
P1: x=85, y=162
P2: x=85, y=339
P3: x=263, y=331
P4: x=262, y=163
+Doblez:
x1=26
x2=418
xe=298
y1=133
y2=537
ye=2581
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
54. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Base de datos
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 1
P1: x=85, y=162
P2: x=85, y=339
P3: x=263, y=331
P4: x=262, y=163
+Doblez:
x1=26
x2=418
xe=298
y1=133
y2=537
ye=2581
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 2
P1: x=58, y=76
P2: x=354, y=377
P3: x=43, y=373
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
55. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Base de datos
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 1
siguientePaso: Paso2
P1: x=85, y=162
P2: x=85, y=339
P3: x=263, y=331
P4: x=262, y=163
+Doblez:
x1=26
x2=418
xe=298
y1=133
y2=537
ye=2581
nombreFigura: Demo
numeroFigura: 1
numeroPaso: 2
anteriorPaso: Paso1
P1: x=58, y=76
P2: x=354, y=377
P3: x=43, y=373
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
56. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Divisi´on del proyecto en dos aplicaciones
Tutor — Programador — Usuario
Origam-i dev.app
Aplicaci´on del desarrollador
Reconocimiento de esquinas
Adici´on de informaci´on a ddbb
Interacci´on manual (edici´on)
Uso de fotograf´ıas
Realidad aumentada
Origam-i.app
Aplicaci´on del usuario
Decisi´on sobre la forma
Lectura de la base de datos
Feedback visual
Uso del flujo de video
Realidad aumentada
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
57. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i dev.app resumen
Origam-i dev.app
Amplio espacio de visualizaci´on
Esquinas y doblez: Realidad Aumentada
Pantalla t´actil: botones y edici´on manual
Botones para el uso de funciones
Tocar para a˜nadir
Ajuste fino con deslizamiento
Base de datos: CoreData
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
58. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i dev.app resumen
Origam-i dev.app
1 Indicaci´on de comienzo
2 Toma de fotograf´ıa / Carga desde carrete
3 Eliminaci´on de sombras:
RGB→HSV→V=1→RGB
4 Detecci´on de esquinas (FAST)
5 Visualizaci´on
6 Seleccionar doblez e introducir texto
7 Almacenamiento
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
59. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i dev.app: Integraci´on del procesado
Imagen Original Value=1
Detecci´on esquinas
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
60. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
La aplicaci´on del usuario final: Origam-i.app
Inicio Selecci´on de figuras Principal
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
61. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i.app: Flujo de uso
1 Selecci´on de figura
Carga desde la ddbb
2 Procesado continuo del flujo de v´ıdeo
C´alculo Harris en GPU
Detecci´on forma correcta/incorrecta: Matching
C´alculo RA
3 Visualizaci´on: fotograma + RA
4 Interacci´on del usuario (interrupci´on)
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
62. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i.app: Realidad Aumentada
Mostrar texto de ayuda
Mostrar esquinas detectadas
Botones OK/Atr´as
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
63. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i.app: Realidad Aumentada
Mostrar texto de ayuda
Mostrar esquinas detectadas
Botones OK/Atr´as
Mostrar doblez
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
64. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i.app: Realidad Aumentada
El problema del doblez
La escena tiene perspectiva
diferente al original
Nuevo sistema de coordenadas
Transformaci´on lineal a
partir de dos puntos
emparejados
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
65. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Origam-i.app: Realidad Aumentada
Mostrar texto de ayuda
Mostrar esquinas detectadas
Mostrar im´agenes
superpuestas
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
66. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Control de estado de red
Sin conexi´on Conexi´on WiFi Conexi´on red m´ovil
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
67. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Conclusiones
Juego educativo de origami con Realidad Aumentada para iOS
Estudiar caracter´ısticas de smartphone. Test ante apps exigentes
Divisi´on en dos aplicaciones: desarrollador y usuario
Crear diferentes aplicaciones cambiando la base de datos
Uso de lo ofrecido por Apple: frameworks, librer´ıas,...
FAST obtienen buenos resultados y es r´apido
Medida Harris permite usar OpenGL ES (GPU)
GPU–RAM es cuello de botella
Realidad Aumentada mediante CoreGraphics
Uso de redes sociales permite autopromoci´on
Internacionalizaci´on y Localizaci´on de manera simple
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014
68. Introducci´on Caracter´ısticas Procesado de imagen Aplicaciones Conclusiones
Trabajos futuros
Paso a la tercera dimensi´on: m´as figuras
Comercializaci´on de la aplicaci´on
Mejoras de rendimiento: emparejado, doblez
Portar la app a otros sistema m´ovil: Windows Phone/Android
Aumentar la virtualidad de la escena
Origam-i: Juego basado en procesado de imagen para iPhone Santiago Garc´ıa Guill´en Mayo 2014