Your SlideShare is downloading. ×
Realidad aumentada en Android: reconocimiento de imágenes y geolocalización usando Google Maps
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Realidad aumentada en Android: reconocimiento de imágenes y geolocalización usando Google Maps

6,783
views

Published on

Presentación utilizada para el evento Google DevFest Sur el 25/10/2013. En la charla revisamos el estado del arte en cuanto a bibliotecas de realidad aumentada para Android. Vimos cómo funcionan de …

Presentación utilizada para el evento Google DevFest Sur el 25/10/2013. En la charla revisamos el estado del arte en cuanto a bibliotecas de realidad aumentada para Android. Vimos cómo funcionan de manera general y estudiamos un ejemplo práctico de reconocimiento de imágenes y geolocalización con la biblioteca Wikitude.

Published in: Technology

0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,783
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
779
Comments
0
Likes
8
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. . Realidad aumentada en Android . Reconocimiento de imágenes y geolocalización usando Google Maps Nacho Álvarez  @neonigmacdb  neonigma@gmail.com 31 de octubre de 2013 . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 1 / 28
  • 2. Índice . 1 Acerca de mí . 2 ¿Realidad aumentada? . 3 Aplicaciones . 4 RA en Android . 5 Mi elección . 6 Demo . 7 Material . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 2 / 28
  • 3. Acerca de mí . Who? ▶ Trayectoria profesional: soporte UCO, desarrollador Web, desarrollador / integrador distribuciones GNU/Linux. ▶ Actualmente: WUL4 Córdoba (mobile + backend developer) ▶ Involucrado en: . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 3 / 28
  • 4. ¿Realidad aumentada? . Definición de realidad aumentada ▶ Superposición de información virtual sobre entornos reales a partir de una aplicación informática ▶ ¿Qué necesitamos? Una pantalla donde poder ver esta información añadida Un software que, controlando una cámara, un sensor o un GPS e interpretando los patrones o coordenadas del mundo real, nos generará esta información ▶ Multitud de aplicaciones . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 4 / 28
  • 5. Aplicaciones . Aplicaciones de realidad aumentada Educación Marketing / Publicidad . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 5 / 28
  • 6. Aplicaciones . Aplicaciones de realidad aumentada Eventos Videojuegos . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 6 / 28
  • 7. RA en Android . ¿Qué opciones hay? . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 7 / 28
  • 8. RA en Android . Demostración . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 8 / 28
  • 9. RA en Android OpenCV . OpenCV for Android ▶ Biblioteca libre de visión artificial originalmente desarrollada por Intel ▶ En 2008, la empresa Willow Garage asume el soporte. En 2012, lo hace la empresa ItSeez. ▶ Disponible para Windows, Linux, Mac, Android e iOS ▶ Para Android se proporciona la API Java con clases específicas, que es un subconjunto de la API de C ▶ SDK Quick start http://docs.opencv.org/doc/tutorials/introduction/ android_binary_package/O4A_SDK.html ▶ Utilizado en aeronaves no tripuladas, sistemas de vigilancia, reconocimiento facial, etc. . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 9 / 28
  • 10. RA en Android OpenCV . OpenCV for Android: ventajas e inconvenientes ▶ Ventajas: Licencia BSD Buen rendimiento Multiplataforma Soporte de la comunidad. Multitud de snippets. ▶ Inconvenientes: La API de Java es un subconjunto mínimo. Para obtener un conjunto mayor, se recomienda usar el NDK + JNI. Más info: http://www.nacho-alvarez.es/index.php/blog/2012/05/02/ conectar-programas-cc-con-aplicaciones-android/ El sobreimpresionado de elementos debe hacerse manualmente Se centra en visión por computador, así que no tenemos la parte GPS Hace falta una formación específica en visión artificial para utilizarla correctamente . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 10 / 28
  • 11. RA en Android OpenCV . OpenCV for Android: recursos ▶ OpenCV4Android: http://opencv.org/platforms/android.html ▶ Quick Start: http://docs.opencv.org/doc/tutorials/ introduction/android_binary_package/O4A_SDK.html ▶ Android development with OpenCV: http://docs.opencv.org/doc/tutorials/introduction/ android_binary_package/dev_with_OCV_on_Android.html ▶ Java API: http://docs.opencv.org/java/ . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 11 / 28
  • 12. RA en Android Vuforia . Vuforia ▶ Biblioteca que permite reconocer y hacer el seguimiento de imágenes planas (Image Targets) y objetos 3D simples ▶ Desarrollo de Qualcomm Austria Research Center Gmbh ▶ Disponible para Android, iOS y Unity ▶ Incluye la parte NDK + JNI pre-compilada. Sólo tenemos que incluir las bibliotecas y llamar a los métodos nativos. ▶ Targets disponibles: Image, Cylinder, Text-Word, User-defined, Cloud Recognition, Multi-Targets, Frame markers y Virtual buttons. . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 12 / 28
  • 13. RA en Android Vuforia . Vuforia: Cloud Recognition . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 13 / 28
  • 14. RA en Android Vuforia . Vuforia: ventajas e inconvenientes ▶ Ventajas: Licencia QTL: gratuito y puede usarse en apps comerciales. Aunque NO es libre. Gran rendimiento Posibilidad de reconocimiento en la nube Clases más sencillas que en OpenCV ▶ Inconvenientes: Dependencia de NDK + JNI. Si se quiere ampliar, se amplían los métodos nativos. Cloud recognition no es totalmente gratuito y no podemos montar nuestro propio server Se centra en visión por computador, así que no tenemos la parte GPS Foro de debate, con menor orientación a comunidad . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 14 / 28
  • 15. RA en Android Vuforia . Vuforia: recursos ▶ Descarga SDK: https://developer.vuforia.com/resources/sdk/android ▶ Instalación SDK: https://developer.vuforia.com/resources/dev-guide/ step-2-installing-vuforia-sdk ▶ Target Manager: https://developer.vuforia.com/targetmanager/project/ checkDeviceProjectsCreated?dataRequestedForUserId= ▶ Sample apps: https://developer.vuforia.com/resources/sample-apps ▶ Plan de precios Cloud: https://developer.vuforia.com/cloud-recognition-service . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 15 / 28
  • 16. RA en Android Metaio . Metaio ▶ Fundado en 2003 en Munich por Thomas Alt y Peter Meier ▶ Se estructura en canales Ofrecen un conjunto de productos: ▶ metaio SDK + metaio Cloud: SDK de desarrollo para metaio con cuenta de acceso a Cloud. metaio Creator + metaio Cloud: aplicación de escritorio para crear AR channels y visualizarlo en junaio. junaio: navegador de realidad aumentada. ▶ Los canales pueden gestionarse online: http://dev.junaio.com/index/mychannels ▶ Disponible para Android, iOS y Windows . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 16 / 28
  • 17. RA en Android Metaio . Metaio: ventajas e inconvenientes ▶ Ventajas: Posibilidad de reconocimiento en la nube Posibilidad de montar tu propia servidor de recursos SDK muy sencillo y bien documentado Buen soporte orientado a comunidad de desarrolladores ▶ Inconvenientes: Pequeño lag a veces Eliminar la marca de agua es caro No es libre La plataforma web es demasiado compleja . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 17 / 28
  • 18. RA en Android Metaio . Metaio: recursos ▶ Planes de precios: http://www.metaio.com/pricing/software-and-licensing/ ▶ Descarga demo metaio Creator: http://dev.metaio.com/creator/ ▶ Tutoriales: http://dev.metaio.com/sdk/tutorials/hello-world/ ▶ Channels manager: http://dev.junaio.com/index/mychannels . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 18 / 28
  • 19. RA en Android Layar . Layar ▶ Fundado en 2009 en Amsterdam por Raimo van der Klein, Claire Boonstra y Maarten Lens-FitzGerald ▶ Se estructura en campañas ▶ También proporciona acceso a su propia nube privada https://www.layar.com/creator/ ▶ Disponible para Android e iOS ▶ Utilizado por Nissan, Ford, Philips, WWF Panda, Dan Brown... . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 19 / 28
  • 20. RA en Android Layar . Layar: ventajas e inconvenientes ▶ Ventajas: Reconocimiento de imágenes por encima de la media Posibilidad de reconocimiento en la nube Web perfectamente preparada para la creación de campañas ▶ Inconvenientes: Pobre soporte y documentación Eliminar la marca de agua es más caro incluso que Metaio (7000e/año) No es libre No permite montar un servidor de recursos propios . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 20 / 28
  • 21. RA en Android Layar . Layar: recursos ▶ Descarga SDK: https: //www.layar.com/products/custom-solutions/sdk/request/ ▶ Target Manager: https://www.layar.com/creator/ ▶ Foro de desarrolladores: http://devsupport.layar.com/home ▶ Planes de precios: https://www.layar.com/pricing/ . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 21 / 28
  • 22. RA en Android Wikitude . Wikitude ▶ Lanzamiento inicial en 2008 en Austria por la empresa Wikitude Gmbh ▶ Se estructura en worlds ▶ También proporciona acceso a su propia nube privada http://studio.wikitude.com ▶ Disponible para Android, iOS, BlackBerry, Windows Phone, Phonegap y Titanium ▶ Ganador del premio Best Augmented Reality Browser, Augmented Planet en 2009, 2010, 2011 y 2012, entre muchos otros . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 22 / 28
  • 23. RA en Android Wikitude . Wikitude: ventajas e inconvenientes ▶ Ventajas: Documentación muy completa Más barato que Metaio y Layar (600e), incluyendo geolocalización Versión educacional con marca de agua a 0e Posibilidad de reconocimiento en la nube Web perfectamente preparada para la creación de campañas Soporte muy orientado a comunidad ▶ Inconvenientes: No es libre No permite montar un servidor de recursos propios . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 23 / 28
  • 24. RA en Android Wikitude . Wikitude: recursos ▶ Descarga SDK: http://developer.wikitude.com/download ▶ Construir worlds con Google Maps: http://www.wikitude.com/ build-wikitude-world-google-collaborative-maps/ ▶ Publicar world: http://devzone.wikitude.com/web/forum/tools/ publish-in-wikitude ▶ Target Manager: http: //developer.wikitude.com/tools/target-manager/?level=0 ▶ Foro de desarrolladores: http://developer.wikitude.com/developer-forum ▶ Ejemplos Android: http://developer.wikitude.com/documentation/android . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 24 / 28
  • 25. Mi elección . Mi elección personal ▶ Vuforia es buena herramienta gratis total para desarrollar una aplicación de realidad aumentada con reconocimiento de imágenes ▶ Sin embargo, la parte de geolocalización habría que desarrollarla manualmente, y el tándem JNI + NDK es más engorroso para desarrollar ▶ Wikitude tiene una versión Edu gratuita con marca de agua, y es realmente sencillo, casi todo se hace con Javascript ▶ Para aplicaciones comerciales de peso, la inversión de Wikitude es de 600e en un único pago y de 9e/mes por el uso de 3 imágenes en su nube. Si usamos la herramienta Target Manager nos sale gratis, pero desarrollaremos la parte Javascript manualmente . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 25 / 28
  • 26. Demo . Demostración . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 26 / 28
  • 27. Demo . Vídeos ▶ IR simple matching: Wikitude Examples -> 1. Image Recognition -> 1.1. Image On Target -> http://youtu.be/wbz0N7TQRCA ▶ IR multiple targets: Wikitude Examples -> 1. Image Recognition -> 1.2. Multiple Targets -> http://youtu.be/lIA3YItmO80 ▶ IR con playback de video: Wikitude Examples -> 6. Video -> 6.2. Playback States -> http://youtu.be/XZCaRuSka_k ▶ IR mostrando vídeo transparente: Wikitude Examples -> 6. Video -> 6.4. Bonus-Transparent Video -> http://youtu.be/VfavE33ZSnk ▶ Gestión de POIs en geolocalización: Wikitude Examples -> 5. Browsing POIs -> 5.5. Native Detail Screen -> http://youtu.be/OEyqvsoExDA ▶ Integración en aplicación propia: My own app -> http://youtu.be/nscPzcGQfQ8 . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 27 / 28
  • 28. Material . Material y preguntas ▶ ▶ ▶ ▶ Presentación Latex/Beamer: https://bitbucket.org/jialvarez/androidra Código de la aplicación: https://bitbucket.org/jialvarez/wikitude-example Enlace directo al apk: http: //nacho-alvarez.es/descargas/gdgdevfest-wikitude.apk ¿Preguntas? . Nacho Álvarez (WUL4) Realidad aumentada en Android . . . . 31 de octubre de 2013 . 28 / 28

×