Tag Archives: Catchoom

’12 tips on Django Best Practices’ en la PyConES 2013

En Noviembre de 2013 se celebró por primera vez una PyCon en España. La PyConES reunió en Madrid a la flor y nata del panorama Python español. Muchas caras conocidas, y mucha gente por fin desvirtualizada.

Durante ese fin de semana se realizaron multitud de charlas (3 tracks en paralelo durante 2 días), y eventos de la comunidad. Es importante felicitar el excelente trabajo que hizo la organización, asegurándose de que todo transcurriese con normalidad y no nos faltase de nada: ¡todos los detalles estaban pensados al milímetro!. También me sorprendió el gran número de patrocinadores: eso demuestra que Python está en auge 😀

Os dejo con el vídeo y la presentación de mi ponencia, ‘12 tips on Django Best Practices‘:

Además, el reunirnos tanta gente nos ha inspirado para re-lanzar el Python Barcelona Meetup: el propósito de año nuevo es hacer reuniones mensuales.

¡Nos vemos en la Pycon 2014! 🙂

La plataforma de reconocimiento de imágenes de Catchoom

Durante los últimos meses he estado trabajando en el Catchoom Recognition Service. Aprovechando que acabamos de rediseñarlo por completo, voy a explicar un poco de qué va el proyecto. Antes de nada, te invito a probarlo:

  1. Registra una cuenta gratuita, y probando la plataforma de Image Recognition:

    catchoom_recognition_service

  2. Usa la librería Python (catchoom-python), para integrar las APIs. Aunque no uses Python (ehem, empieza a usarlo ;-)), puedes aprovechar las herramientas de subir/reconocer imágenes y las imágenes de ejemplo.
  3. Visita la nueva web Catchoom.

Agradeceré mucho las opiniones, críticas y sugerencias 🙂

 

¿Qué es el “Image Recognition”?

Básicamente, el reconocimiento de imágenes consiste en enviar una foto (por ejemplo, desde el móvil), compararla contra una base de datos de imágenes de referencia, y reconocer qué objeto aparece en esa foto.

A partir de ahí, los retos están en hacerlo lo más rápido posible (<0.5s), mejorar la detección (varios objetos en la misma imagen, imágenes borrosas/distorsionadas, 3D…), asociar metadatos a cada objeto (cada cliente tiene necesidades distintas), ofrecer estadísticas de uso, y, en general, tener una plataforma segura, escalable y automatizada.

Vale, ¿y para qué sirve el reconocimiento de imagen? ¿Qué se puede hacer con esto? Pues lo que se te ocurra:

  • integrarlo en aplicaciones móviles para reconocer logotipos o marcas comerciales
  • añadirlo a un videojuego para reconocer objetos (y darte bonus dentro del juego)
  • reconocer objetos para aplicar realidad aumentada encima, utilizarlo para reconocer cuadros, edificios, portadas de CDs, catálogos/revistas…
  • o, mi uso favorito: sustituir (y enterrar) a los códigos QR 😉

Catchoom rediseñado

Arquitectura de la plataforma de Catchoom

La plataforma está implementada en Python, los componentes usan Django, Tornado y Gevent. Toda la infrastructura está en Amazon Web Services.

A destacar, usamos Redis para varios servicios. Expliqué las ventajas de usar Redis en el NoSQL matters@Barcelona2012, el pasado Octubre, así que puedes ver el vídeo:

Y la presentación: (inexplicablemente llegó a portada en Slideshare, de ahí las visitas)

 

Gracias de antemano por probar el reconocimiento de imagen de Catchoom, espero tu feedback 😀