Procesador por Lotes
De cientos de fotos sueltas a un catálogo consistente, en un paso.
- Node.js
- JavaScript
- Canvas API
El problema
Procesar cientos de fotos de producto una por una no escala, y hacerlo a mano garantiza que no queden iguales: cada imagen termina con un recorte, un margen y un fondo ligeramente distintos. En un catálogo, esa inconsistencia se ve.
La solución
Se define el criterio una vez —recorte, fondo, formato de salida, convención de nombres— y el pipeline lo aplica a todo el lote. El trabajo humano pasa de procesar 400 imágenes a revisar las pocas que el proceso marca como dudosas.
Arquitectura
- 01
Reutiliza el motor de remoción de fondo del proyecto anterior en vez de reimplementarlo: una sola lógica de recorte para mantener.
- 02
Procesamiento por streaming en Node.js: el lote se recorre de a una imagen para que 400 fotos no signifiquen 400 imágenes en memoria.
- 03
Salida idempotente: correr el lote dos veces produce el mismo resultado, lo que permite reintentar sin miedo a duplicar.
Stack
- Node.js
- JavaScript
- Canvas API
Retos técnicos
Que un lote largo no muera a mitad de camino
Cargar todo el lote en memoria funciona con diez imágenes y se cae con cuatrocientas. El proceso pasó a ser secuencial y reanudable: cada imagen se escribe al terminar, así que una interrupción cuesta una imagen, no el lote completo.
Resultados
- Lote de referencia
- ~400 imágenes de producto