Rilevamento dei difetti con analisi delle immagini

Introduction

La classificazione di immagini è un'area molto diffusa dell'intelligenza artificiale. Un'applicazione della classificazione di immagini già usata nel settore industriale è costituita dal rilevamento di problemi di qualità in una catena di montaggio durante la produzione. In una linea di produzione tipica i componenti si spostano lungo la catena di montaggio passando da una postazione alla successiva e alla fine della catena di montaggio un ispettore interviene per rilevare i problemi. Si tratta di un processo manuale e soggetto a errori. La classificazione di immagini basata su intelligenza artificiale riduce l'impegno umano e classifica automaticamente le immagini come esito positivo o negativo. Ciò migliora non solo l'efficienza degli operatori umani nel processo di convalida, ma anche la qualità del processo di produzione complessivo.

Prepare data

Durante la preparazione dei dati per una soluzione di classificazione di immagini sono necessari due set di immagini per il training del modello: uno per la rappresentazione di esempi con esito positivo e uno per la rappresentazione di esempi con esito negativo. Queste immagini possono essere scelte da un set di dati generico quale Kaggle o un set personalizzato per il tuo business. Prendi in considerazione l'uso di un set di immagini omogenee, ad esempio un set di file JPG con dimensioni simili con la stessa risoluzione. La preparazione dei dati richiede anche la suddivisione delle immagini in set di training e di convalida.

Build and train

Quando è disponibile un set di immagini omogeneo e organizzato, i dati vengono letti in un motore di analisi. Le reti neurali e Transfer Learning sono approcci utili per la gestione di dati di immagini in una soluzione di intelligenza artificiale. Transfer Learning ti consente di usare modelli con training che sono già in grado di classificare un'immagine. È possibile che un modello esistente esegua molto bene un'attività specifica, ad esempio il rilevamento di persone o gatti. L'attività per cui il modello è stato sottoposto a training è probabilmente diversa dallo scenario specifico per cui si vuole ottenere una soluzione. La ripetizione del training di un modello esistente risulta in genere molto più veloce rispetto alla creazione di un modello completamente nuovo, quindi Transfer Learning abbrevia in modo significativo il processo di training. Nella classificazione delle immagini, infine, una rete neurale viene a volte associata a un modello secondario per fornire la previsione finale. Un'architettura di rete neurale convoluzionale con 50 livelli nascosti, ad esempio, può essere usata per elaborare l'immagine. È possibile associarla a un albero delle decisioni con boosting per classificare l'immagine come esito positivo o negativo.

Deploy

Quando il modello di classificazione di immagini con training è pronto, può essere distribuito come servizio Web con un endpoint REST. I dashboard di analisi e gli avvisi possono chiamare il servizio Web per ottenere informazioni e previsioni. Poiché l'elaborazione di immagini richiede tendenzialmente molte risorse di calcolo, molte soluzioni simili usano distribuzioni di cluster basate sul cloud che possono essere ridimensionate in base alle esigenze. Un servizio come Azure Machine Learning può risultare utile in questo caso, creando un endpoint REST distribuito con facilità in un cluster Azure Kubernetes.

Customers are doing great things with AI