Negli ultimi tempi, i Large Vision Language Models (LVLM) come LLava e MiniGPT-4 hanno dimostrato la loro sorprendente capacità di comprendere le immagini e ottenere risultati di elevata precisione ed efficienza in vari compiti visivi. Sebbene questi LVLM eccellano nel riconoscere oggetti comuni grazie ai loro ampi dataset di addestramento, è importante notare che mancano di conoscenze specifiche di dominio e spesso hanno una comprensione limitata dei dettagli nelle immagini stesse. Questa limitazione può rendere meno efficaci nei compiti di rilevamento di anomalie industriali (IAD). D’altra parte, i framework IAD esistenti spesso richiedono impostazioni manuali delle soglie per distinguere tra campioni normali e anomali, rendendo il loro utilizzo meno pratico in situazioni reali.
Il principale obiettivo di un framework IAD è individuare e localizzare anomalie in scenari industriali e nelle immagini dei prodotti. Tuttavia, a causa della rarità e dell’imprevedibilità delle anomalie nelle immagini del mondo reale, i modelli di solito vengono addestrati solo su dati normali e cercano di riconoscere le anomalie basandosi sulle deviazioni rispetto a ciò che è considerato “normale”. Attualmente, questi framework producono principalmente punteggi di anomalia per i campioni di test e richiedono spesso un’azione manuale per stabilire le soglie di rilevamento, il che li rende meno adatti alle applicazioni reali.
Per esplorare nuove possibilità nell’uso dei Large Vision Language Models per affrontare queste sfide nei framework IAD, è stato sviluppato AnomalyGPT, un approccio innovativo basato su LVLM per il rilevamento di anomalie. AnomalyGPT è in grado di individuare e localizzare anomalie senza la necessità di impostare manualmente le soglie. Inoltre, può interagire in modo interattivo con gli utenti, fornendo informazioni rilevanti sull’immagine e consentendo loro di fare domande di follow-up in base alle anomalie o alle loro esigenze specifiche.
Nel contesto dei framework IAD, esistono due approcci principali: il framework basato sulla ricostruzione e quello basato sull’incorporamento di feature. Nel framework basato sulla ricostruzione, l’obiettivo principale è riprodurre i campioni anomali utilizzando i campioni normali come riferimento e individuare le anomalie calcolando l’errore di ricostruzione. Ci sono diversi metodi, come SCADN, RIAD, AnoDDPM e InTra, che utilizzano diverse tecniche di ricostruzione, dalle Generative Adversarial Networks (GAN) agli autoencoder e ai modelli di diffusione. Nel framework basato sull’incorporamento di feature, l’attenzione è focalizzata sulla modellazione delle feature dei dati normali. Metodi come PatchSSVD cercano di definire una “iperfera” attorno ai campioni normali, mentre altri, come PyramidFlow e Cfl, proiettano i campioni normali su una distribuzione gaussiana mediante flussi di normalizzazione. Altri ancora, come CFA e PatchCore, creano un banco di memoria di campioni normali e utilizzano la distanza tra il campione di test e l’incorporamento normale per rilevare anomalie.
Tuttavia, entrambi questi approcci seguono il paradigma del “modello di una classe”, che richiede un gran numero di campioni normali per apprendere le distribuzioni delle classi di oggetti. Questo requisito li rende poco pratici per nuove categorie di oggetti e in ambienti di produzione dinamici. AnomalyGPT, d’altra parte, adotta un paradigma di apprendimento basato sul contesto per le categorie di oggetti, il che significa che può operare con un numero molto limitato di campioni normali.
Guardando al futuro, i modelli di linguaggio di visione di grandi dimensioni (LVLM) stanno attirando sempre più attenzione. Questi modelli, noti come LLM (Large Language Models), hanno già dimostrato il loro successo nella NLP e ora stanno esplorando nuove applicazioni nell’ambito delle attività visive. Ad esempio, il framework BLIP-2 integra funzionalità visive da Vision Transformer nei modelli Flan-T5, e MiniGPT collega il segmento delle immagini con il modello Vicuna attraverso uno strato lineare, ottimizzando il processo in due fasi utilizzando dati testo-immagine. Tuttavia, è importante notare che questi modelli LVLM sono stati addestrati su dati generali e potrebbero non avere la conoscenza specifica di settore necessaria per applicazioni più specializzate.
AnomalyGPT rappresenta un nuovo modello di linguaggio e visione di grandi dimensioni progettato appositamente per il rilevamento di anomalie industriali e la loro precisa localizzazione nelle immagini. Questo framework sfrutta un LVLM e un codificatore di immagini pre-addestrato per allineare le immagini con le relative descrizioni testuali basate su dati di anomalie simulati. Il modello introduce anche un modulo decodificatore e un modulo di apprendimento rapido per migliorare le prestazioni nei sistemi IAD e ottenere risultati di localizzazione a livello di pixel.
Nell’immagine allegata, puoi vedere l’architettura di AnomalyGPT, che inizia con l’elaborazione dell’immagine tramite un codificatore di immagini bloccate. Questo modello estrae le caratteristiche a livello di patch dagli strati intermedi, le confronta con i testi anormali e normali e restituisce i risultati di localizzazione. Uno “studente prompt” trasforma questi risultati in incorporamenti di prompt utilizzabili nel LVLM, insieme agli input testuali dell’utente. Il LVLM sfrutta questi incorporamenti di prompt, gli input delle immagini e i testi utente per individuare anomalie, localizzarle e fornire risposte finali.
Per ottenere una localizzazione precisa delle anomalie a livello di pixel, AnomalyGPT utilizza un decodificatore di immagini basato su funzionalità corrispondenti che supporta sia i framework IAD supervisionati che quelli non supervisionati. Il modello suddivide il codificatore di immagini in quattro fasi e estrae le funzionalità delle patch intermedie in ciascuna fase. Tuttavia, queste caratteristiche intermedie richiedono ulteriori allineamenti per essere confrontate direttamente con le caratteristiche di testo. Per risolvere questo problema, AnomalyGPT introduce ulteriori livelli per allineare le funzionalità intermedie con quelle di testo, rappresentando la semantica normale e anomala.
AnomalyGPT dispone anche di uno “studente prompt” che trasforma i risultati della localizzazione in incorporamenti rapidi per sfruttare meglio la semantica delle immagini a livello di dettaglio e per mantenere una coerenza semantica tra il decodificatore e gli output del LVLM. Inoltre, il modello incorpora incorporamenti di prompt apprendibili e indipendenti dagli output del decodificatore per fornire informazioni aggiuntive per il compito IAD. Infine, AnomalyGPT fornisce gli incorporamenti e le informazioni sull’immagine originale al LVLM.
Il “prompt learner” di AnomalyGPT è composto da incorporamenti di prompt di base apprendibili e da una rete neurale convoluzionale. Questa rete trasforma i risultati della localizzazione in incorporamenti di prompt e li combina con gli incorporamenti delle immagini nel LVLM.
Il modello AnomalyGPT fa uso del metodo NSA per generare dati anomali simulati. Questo metodo sfrutta la tecnica del “Taglia-incolla” utilizzando l’editing delle immagini di Poisson per ridurre le discontinuità introdotte durante il processo. Il “Taglia-incolla” comporta il ritaglio casuale di una parte di un’immagine e il suo inserimento in una posizione casuale in un’altra immagine, simulando così una parte anomala. Anche se questa tecnica è ampiamente utilizzata nei framework IAD, può spesso generare discontinuità evidenti. Il metodo di modifica di Poisson cerca di copiare perfettamente un oggetto da un’immagine all’altra risolvendo equazioni differenziali parziali di Poisson.
Nell’immagine allegata, è possibile confrontare l’editing delle immagini Poisson con il “Taglia-incolla”. Si nota che il metodo “Taglia-incolla” può generare discontinuità evidenti, mentre il metodo di modifica di Poisson produce risultati più naturali.
Infine, per garantire una messa a punto efficace del Large Vision Language Model di AnomalyGPT, il modello genera query testuali corrispondenti in base all’immagine dell’anomalia. Ogni query è composta da due parti principali. La prima parte fornisce una descrizione dell’immagine di input, indicando gli oggetti presenti nell’immagine e i loro attributi attesi. La seconda parte si concentra sulla rilevazione di anomalie all’interno degli oggetti, verificando se ci sono anomalie nell’immagine stessa. Questo approccio consente una comprensione più completa delle immagini e delle loro anomalie, migliorando così l’efficacia complessiva di AnomalyGPT nell’affrontare sfide IAD complesse.