Detección de defectos con Lookout for Vision
  • 08 Jan 2025
  • 7 Minutos para leer
  • Colaboradores

Detección de defectos con Lookout for Vision


Resumen del artículo

Detección de defectos con Lookout for Vision

Implemente una inspección visual automática de defectos con Tulip Vision y AWS Lookout for Vision

La inspección visual es un aspecto clave para mantener la calidad de la producción, pero es difícil de implementar sin dejar de ser lean, ya que los costes de los recursos humanos dedicados a la inspección son elevados. La inspección visual manual también es una operación de alto rendimiento; es muy repetitiva y puede suponer un desafío visual.

La inspección visual automática con cámaras y el aprendizaje automático cambian por completo la situación. Los algoritmos de inspección visual basados en el aprendizaje automático han avanzado hasta el punto de superar el rendimiento humano, tanto en tiempo como en precisión.

Con Tulip puedes implementar la inspección visual automática conectando las salidas de tus cámaras Vision a un servicio en la nube de detección de anomalías visuales de primera clase. Lookout for Vision de Amazon es uno de estos servicios, que ofrece un potente algoritmo en un simple punto final REST API que se puede integrar fácilmente en Tulip.

En este artículo te mostramos cómo configurar las cosas rápidamente en AWS con Cloud Formation, así como dentro de Tulip con una aplicación de biblioteca pre-empaquetada. Vea el siguiente video para un tutorial en vivo sobre este proceso.

Requisitos previos

Antes de comenzar este proceso, por favor asegúrate de que tienes los siguientes recursos disponibles:

NOTE

Currently, Lookout for Vision is only available in specific AWS regions.

Configuración de Lookout for Vision en la consola de AWS

Para ayudar a configurar la infraestructura de nube requerida en la consola de AWS, proporcionamos una Plantilla de Formación de Nube(descargar). La CFT es un breve script que aprovisiona todo lo necesario en la nube de AWS para entrenar y ejecutar modelos de detección de Lookout for Vision (LfV) con Tulip. Creará un proyecto LfV, algunas funciones AWS Lambda para activar el modelo LfV y una API Gateway de AWS para comunicarse con las funciones. Tulip llamará a los endpoints de AWS API Gateway y así ejecutará comandos al modelo LfV desde dentro de Tulip Apps - donde se realiza la inspección visual.

  1. Descarga el CFT.
  2. Ve a Cloud Formation en la consola de AWS.

  1. Crear una pila y cargar el archivo CFT.

  1. Ejecuta el script de creación de pila de CloudFormation.

  1. Anote las salidas.

  1. Anota el valor apiGatewayInvokeURL, ya que lo utilizaremos de nuevo en breve para configurar nuestras funciones de conector.

Ahora que AWS fue aprovisionado por Cloud Formation, podemos seguir adelante y entrenar un modelo de aprendizaje automático visual con Lookout for Vision. Para ello debemos tener un conjunto de datos de imágenes anotadas. Aunque podrías crear el conjunto de datos manualmente, ofrecemos una forma sencilla de recopilar datos con Tulip mediante nuestra aplicación de recopilación de datos [enlace]. Los datos se almacenan en una tabla Tulip y se pueden exportar fácilmente desde ella. Supondremos que se ha recopilado un conjunto de datos en Tulip para los siguientes pasos.

  1. Exportar el conjunto de datos desde Tulip Table.

  1. Subir el conjunto de datos al bucked S3 creado por Lookout for Vision.

  1. Cree un conjunto de datos en Lookout for Vision y seleccione el bucket de S3 como fuente.

Asegúrese de seleccionar Adjuntar etiquetas automáticamente:

Ahora que un conjunto de datos está listo en Lookout for Vision - podemos entrenar un modelo. El proceso dura aproximadamente 45 minutos, y es un proceso sencillo en la consola de AWS.

  1. Haz clic en Entrenar modelo.

  1. Compruebe el estado del entrenamiento.

  1. Revise los resultados del entrenamiento.

Una vez que el modelo ha terminado el entrenamiento, no hay nada más que tengamos que hacer en el lado de AWS. Todas las conexiones se han hecho para nosotros por la formación en la nube, y estamos claros para conectar Tulip a Lookout for Vision.

Configuración de Tulip para llamar a los modelos de Lookout for Vision

Tulip es muy capaz de integrarse a servicios externos a través de APIs, por lo que es fácil integrarlo con AWS Lookout for Vision. Usaremos el REST API endpoint de la última sección para controlar el modelo LfV a través de Tulip Connector Functions. Sin embargo, en lugar de crear las funciones desde cero las estamos proporcionando pre-construidas en nuestra Library App "Defect Detection with Lookout for Vision". Esto le ahorrará mucho tiempo, y asegurarse de que los conectores se construyen correctamente. En primer lugar, sin embargo, tendremos que rellenar la función de conector con los datos correctos de su cuenta específica de AWS.

  1. Encuentra las funciones del conector en Tulip.

  1. Para el conector establece la URL correcta del punto final de AWS, que has copiado anteriormente de Cloud Formation:

  1. Para cada función establece la API KEY de AWS.

Asegúrate de hacer esto para las 4 funciones.

Uso de Lookout for Vision en Tulip Apps

En la app de Detección de Defectos proporcionada por la librería hemos configurado un proceso muy rudimentario para ejecutar la inspección visual. Puedes modificar la aplicación o copiar partes de ella a otras aplicaciones para satisfacer tus necesidades. Para utilizar la aplicación, tendrás que hacer algunas pequeñas modificaciones para trabajar con tu configuración específica de Tulip Vision. Tendrás que apuntar el disparador de captura a la configuración de tu cámara Vision, así como el widget de vista previa de la cámara para obtener información visual.

  1. Configurar el widget de cámara de Tulip App con la configuración de cámara correcta.

  1. Configure el disparador "Detectar anomalías" con la configuración de cámara correcta.

Ahora todo está listo para ejecutar su modelo en Tulip. Antes de que el modelo esté disponible para la inferencia (evaluación de una imagen) tiene que ser "alojado", lo que significa que ocupará algún recurso de computación en la nube, como una máquina virtual en la nube, para servir el modelo a su aplicación. Para ello hemos creado un botón en la Tulip App proporcionada.

NOTE

Once the model is "Hosted" it is consuming resources that have a cost attached to them. Remember to turn off your models whey they are not in use, or you are risking spending money for no return. AWS LfV pricing can be learned about in here. Keep in mind AWS also offer a Free Tier for LfV. Tulip is not responsible for resources hosted privately on AWS, but you are welcome to contact us with inquiries.

Siga adelante y ejecute la aplicación de detección de defectos en el PC reproductor con la cámara de inspección conectada. Los siguientes pasos se realizan en la aplicación en ejecución:

  1. Encendido del modelo ("Hosting").

NOTE

Once you start the model it will begin incurring costs. Remember to turn it off.

  1. Compruebe el estado del modelo alojado.

Busque el estado "HOSTED". Mientras el estado no sea "HOSTED" el modelo no aceptará consultas.

  1. Ejecutar una solicitud de inferencia en el modelo.

El modelo debería ahora hacer predicciones sobre si el objeto es un defecto o una pieza normal. Hemos añadido botones para dar información sobre la precisión de la detección en caso de que el modelo haga una predicción errónea. Estos botones añadirán más datos a la tabla Tulip y a su conjunto de datos. Reentrene periódicamente el modelo proporcionándole más imágenes de muestra, para aumentar la robustez de su modelo.

Conclusión

Hemos visto un proceso fácil de seguir para empezar con el aprendizaje automático basado en la inspección visual automática en Tulip. Este proceso puede ahorrarte recursos manuales para la inspección visual realizada por una persona. La aplicación de este proceso también le da inherentemente un conjunto de datos visuales de todos los defectos que surgen en su producto, que puede utilizar de otra manera que la inspección.

Puede aplicar e implementar fácilmente el aprendizaje automático con Tulip utilizando sus funciones de conectividad. Opte por utilizar otros servicios de ML en la nube de forma muy similar.

Más información


¿Te ha sido útil este artículo?