EN | ES | FR

Cómo configuramos el recuento y reconocimiento de pan en la cinta transportadora con una cámara de vídeo

Resumen

Cliente. Productor de pan. La empresa produce 14 tipos populares de pan: baguettes, 8 granos, hogaza finlandesa, pan rústico y otros.

Tarea. Cuente y reconozca los productos producidos en la cinta transportadora. Al final del día elabore una tabla con los resultados.

Resultado. CamContador reconoce y cuenta todos los tipos de pan, incluidos los rechazados, con una precisión del 99,8%. Se elabora un informe sobre la producción en tiempo real y se envía al departamento de contabilidad al final del turno.

Situación

La panadería trabaja 24 horas al día sin fines de semana. Cada día, la empresa envía 14 tipos de pan a los mostradores de los comercios y cadenas minoristas.

Con tales volúmenes de producción, las discrepancias en el recuento de productos son inevitables. Por ejemplo, se utilizaron materias primas para producir 1.000 unidades de pan, pero en el envase aparecían 980 unidades. Para conocer el número exacto de productos fabricados, los responsables de la panadería decidieron instalar un contador de productos por vídeo.

Anteriormente, la tecnología no permitía contar los productos en la cinta transportadora mediante una cámara de vídeo. Las soluciones tradicionales: láser, infrarrojos y contadores de pulsos requieren un presupuesto adicional para la compra de equipos, su instalación y puesta a punto. Por lo tanto, el cliente contaba los productos fabricados en la fase de envasado.

Hoy en día, la tecnología de visión por ordenador permite contar los productos en movimiento directamente en la cinta transportadora. No importa si el pan sale del horno en filas sobre palés o esparcido caóticamente por la cinta. CamContador cuenta y reconoce los productos en cualquier forma.

Javi Martínez, Jefe de Proyecto

Reto

En la empresa funcionan dos líneas de producción. La primera produce 11 tipos de pan, la segunda tres. Los productos de la cinta cambian constantemente: primero baja por la cinta transportadora un tipo de pan, unos minutos después otro, y luego un tercero.

El cliente tiene la tarea de reconocer y contar todos los productos producidos. El contador debe reconocer qué tipo de pan hay en la cinta transportadora, contar su cantidad y, al final del día, mostrar una tabla con los resultados.

Solución

El cliente envió vídeos para cada tipo de pan. Al principio eran 9, pero poco a poco el número creció hasta 14 tipos. Para cada producto, seleccionamos 30 capturas de pantalla, las marcamos para contarlas y entrenamos al algoritmo para que reconociera los productos.

Tardamos 3 días en preparar y entrenar la red neuronal. Cuando todo estuvo listo, pusimos en marcha el contador de vídeo en modo de prueba y, junto con el cliente, empezamos a detectar errores.

Errores debidos al color del pan

Sale del horno una hornada de pan con distintos grados de dorado. El algoritmo puede confundirse al contar este tipo de productos. El panadero puede verse en la parte inferior del fotograma; también se encuentra en la zona de recuento, pero no afecta a la precisión del funcionamiento del contador de vídeo.

A veces, el pan cambia de color debido a las condiciones de horneado. Un lote puede ser pálido y el siguiente rubicundo. Un algoritmo entrenado con productos pálidos puede equivocarse con productos rojizos. Tienen la misma forma pero diferentes colores de corteza.

Sale del horno una hornada de pan con distintos grados de dorado. El algoritmo puede confundirse al contar este tipo de productos. El panadero puede verse en la parte inferior del fotograma; también se encuentra en la zona de recuento, pero no afecta a la precisión del funcionamiento del contador de vídeo.

El cliente registró estos errores y nos envió el vídeo. Reorganizamos los fotogramas y volvimos a entrenar el algoritmo. Después de eso, los errores desaparecieron.

Panes similares en el encuadre

Cuando el cliente envió un vídeo del 14º tipo de pan, parecía similar a los otros dos tipos, sólo que era ligeramente más ligero. Si hay varias unidades de pan caminando por la línea, las diferencias son inmediatamente visibles. Pero cuando sólo había una unidad en el cuadro, el algoritmo se confundía.

Las tomas muestran diferentes tipos de pan, redondos y de color claro. Visualmente pueden distinguirse, pero no siempre de forma inequívoca.

Un entrenamiento adicional de la red neuronal no resolvería el problema. Por lo tanto, aplicamos un refinamiento a nivel de recuento.

Pasan varios minutos entre diferentes lotes de pan. Esto significa que si, por ejemplo, se ven 24 productos en el marco, todos son iguales. No puede haber panes diferentes en la cinta transportadora al mismo tiempo. Si el sistema detectaba en un lote un pan diferente de los demás, eliminábamos este error por software.

Gracias a esta modificación, CamContador ha aprendido una lógica cercana a la humana. El contador ha aprendido que no puede haber diferentes productos en una masa homogénea de pan. Si el algoritmo encuentra varios panes diferentes, la contadora seguirá contándolos junto con la masa principal de pan.

Un montón de pan en la cinta

A veces el pan baja por la cinta amontonado. Los panes están unos encima de otros, uno más abajo, otro más arriba, y un tercero se esconde debajo. Hay que retirar esos montones de pan. La cámara no puede ver lo que hay debajo.

El pan se coloca en la cinta transportadora uno encima de otro. Es imposible contar los productos inferiores, ya que no son claramente visibles.

El pan se coloca en la cinta transportadora uno encima de otro. Es imposible contar los productos inferiores, ya que no son claramente visibles.

Afortunadamente, este problema se resuelve rápidamente instalando una barra encima del transportador. Esto es exactamente lo que hizo el cliente. Ahora, cuando los panes se colocan unos encima de otros, el travesaño deja caer la barra superior sobre la cinta. El resultado es una sola capa de pan, fácil de contar y reconocer.

Dificultades técnicas

Calidad de captura. Normalmente, cuando hay muchas cámaras en una planta de producción, el CamContador se limita a contar los productos, sin reconocerlos. Es el caso, por ejemplo, del recuento de huevos o de canales de aves de corral. Pero en este proyecto, la situación era más complicada.

Aunque sólo había dos cámaras, no sólo teníamos que contar, sino también reconocer 14 tipos de productos. En primer lugar, para evitar sobrecargar la red y el procesador, redujimos drásticamente la calidad del flujo de vídeo. Redujimos la tasa de bits y la frecuencia de imagen de las cámaras. Sin embargo, más tarde, junto con el representante del cliente, decidimos mejorar la calidad de la imagen. Aumentaron la tasa de bits a 4000 kbps y los FPS a 25 fotogramas. Gracias a ello, las imágenes se volvieron más nítidas y aumentó la precisión del recuento.

Fotograma superior – antes, fotograma inferior – después de cambiar los ajustes de la cámara.

Ángulo de toma. Al principio, una cámara colgaba demasiado lejos de la línea de producción. Este ángulo dificultaba el reconocimiento de los productos. En la cinta había tres tipos de pan: blanco, negro y gris. El algoritmo se equivocó en el pan gris: el contador lo asignó al pan negro y al pan blanco.

El cliente bajó la cámara para que se vieran mejor los panes. Volvimos a entrenar la red neuronal con los fotogramas del nuevo ángulo y reiniciamos el contador. Después de eso, los errores de reconocimiento del pan gris desaparecieron y la precisión del recuento superó el 99%.

Problemas con Windows 11. Normalmente, los clientes utilizan los sistemas operativos Windows 10 y Ubuntu. CamContador es totalmente compatible con estos sistemas. La panadería fue el primer cliente que llegó con Windows 11. Pensábamos que técnicamente la versión 11 no era muy diferente de la 10, pero resultó ser diferente.

Hubo un problema imprevisto con los drivers para la tarjeta gráfica NVIDIA y la librería CUDA. Por alguna razón desconocida, la carga de la tarjeta gráfica saltaba constantemente del 30 al 100%. En los momentos de máxima carga no le daba tiempo a procesar el flujo. Esto provocaba errores de conteo.

Gráfico de carga de la tarjeta de vídeo. La carga fluctúa sin motivo e impide que funcione el contador de vídeo.

Durante un mes cambiamos la configuración y reinstalamos los controladores. El problema no desapareció. Entonces, tras consultar con el cliente, decidimos cambiar al sistema operativo gratuito Ubuntu.

La transición fue rápida y sencilla. Tras instalar Ubuntu y reiniciar el contador, los errores de la tarjeta de vídeo desaparecieron. Ahora el sistema funciona de forma estable y fiable.

El resultado

En la actualidad, CamContador reconoce y cuenta con éxito 14 tipos de pan. Técnicamente, el algoritmo cuenta incluso 15 tipos de productos, incluidos los rechazos de producción.

Las cámaras están instaladas en dos líneas de producción y cuentan ambos flujos de productos. La precisión del recuento es del 99,8%.

Esto es lo que ve el cliente en su monitor. El número de tipos de pan contados por la cámara se muestra en rojo en la parte superior izquierda.

Al final del turno, el cliente recibe un informe sobre la producción por tipo de producto. Estos informes ayudan a controlar la cantidad de pan producido. A continuación, esta información se envía al departamento de contabilidad del cliente.

Desde la primera comunicación con el cliente hasta la puesta en marcha del contador en la línea de producción pasó un mes. Es más tiempo que los proyectos habituales de recuento de productos en la cinta transportadora, que se ponen en marcha en pocos días. Sin embargo, en este caso no nos limitamos a contar los mismos productos, sino que reconocimos 14 tipos diferentes de pan y rechazos.

El pan es un producto bastante específico, cuyo aspecto cambia según las condiciones de horneado. Tras el lanzamiento, volvimos a entrenar la red neuronal 12 veces para reducir la tasa de error y, como resultado, la precisión del recuento fue del 99,8%. Es decir, sólo hay 1-2 errores por cada mil unidades de pan. Se trata de un porcentaje de precisión muy elevado en comparación con los equipos de recuento convencionales. Sin embargo, en el caso del contador CamContador, una precisión del 99,7-99,9% es la cifra habitual que mostramos en cada proyecto y garantizamos en el contrato.

Javi Martínez, Jefe de Proyecto

Ejemplo de vídeo:

¿Quieres contar tus productos?

Escribe a info@camcontador.com