Nuestro cliente necesitaba una solución inteligente para editar y mejorar las imágenes capturadas en un parque temático. Las fotografías deben ser entregadas con la mejor calidad posible para su posterior comercialización a cliente final. Por ello, es necesario realizar ajustes en la iluminación, nitidez en las personas, brillo y saturación. Las fotos iniciales se enviaban a través de un sistema de mensajería RabbitMQ. El principal desafío consistía en desarrollar un servicio que pudiera:
Leer mensajes desde RabbitMQ que contienen identificaciones de las imágenes.
Descargar las imágenes originales desde la API de nuestro cliente.
Procesar las imágenes con cada uno de los servicios solicitados en la petición, algunos de ellos utilizan un modelo de inteligencia artificial para detectar oscuridad.
Enviar las imágenes procesadas de vuelta a la API de cliente para su presentación y venta
Nuestra Solución
En nuestra consultora, desarrollamos un servicio completo denominado Photo Enhancer para abordar estos desafíos. A continuación, se detallan las principales características y mejoras implementadas:
Lectura de Mensajes desde RabbitMQ:
Implementamos un servicio en Python que se suscribe a la cola de RabbitMQ para leer los mensajes que contienen las identificaciones de las imágenes.
Interacción con la API de Barrel:some text
El servicio consulta la API para descargar las imágenes originales con sus respectivas variables de configuración para detectar los servicios a aplicar a cada imagen.
Detección de oscuridad con Inteligencia Artificial:
Desarrollamos y entrenamos un modelo de inteligencia artificial especializado en la detección de oscuridad. Este modelo, entrenado por nuestro equipo, asegura una alta precisión y eficiencia en la detección imagenes oscuras para definir si se ejecuta el servicio de mejora de iluminación.
Ejecución de los distintos servicios:
Mediante las variables recibidas el desarrollo esta configurado de tal manera que solo ejecuta el servicio para cada imagen dependiendo de su estatus, en el caso de que alguno no este activo no se procesara.
Envío de Imágenes Procesadas:
Las imágenes procesadas en los diferentes servicios solicitados se envían de vuelta a la API de Barrel para su visualización y venta en el parque temático.
Gestión de Errores y Testing Unitario:
Implementamos un sistema robusto de gestión de errores para manejar cualquier falla durante el proceso de descarga, procesamiento o subida de imágenes.
Se realizaron pruebas unitarias exhaustivas para asegurar la fiabilidad del servicio.
Antes:
Después:
Mejora en el negocio
Aumento de facturación para el cliente: al mejorar la calidad de las imágenes muchos más usuarios las compran. También hemos podido mejorar y aprovechar imágenes oscuras o borrosas que se hubieran tenido que desechar.
¿Qué hemos hecho?
Detectar defectos en las fotos mediante IA
Entrenar modelos de IA para editar imágenes de forma automática y eficiente
Enviar imágenes de alta calidad a la API de cliente final