Abbiamo sviluppato un sistema di visione basato su componenti standard di commercio.
questo sistema e' il cuore delle nostre applicazioni con visione artificiale.
di seguito sono illustrate alcune informazioni sugli algoritmi sull' hardware utilizzato.
ArtificialInspection è un sistema di visione versatile e completo.
Grazie a questo sistema è possibile risolvere le più svariate problematiche richieste dal cliente, esso infatti implementa algoritmi sempre più
sofisticati ed al passo con il continuo sviluppo nel settore della visione artificiale.
ArtificialInspection si presenta come un pacchetto completamente programmabile dall’utente finale.
Supporta tutti i tipi di telecamere 2D/3D, monocromatiche e a colori.
Si tratta di un sistema di alto livello che racchiude le potenzialità della libreria HALCON ©, quindi con accesso a funzioni non
presenti nei più noti sistemi commerciali.
È inoltre possibile abilitare solo le categorie di funzioni necessarie all'applicazione in modo da ridurre il costo del sistema finale.
Sono disponibili numerosi filtri da applicare per migliorare l'immagine e semplificare il processo di elaborazione.
Tra le modifiche che possono apportare i filtri disponibili ci sono:
Il sistema contiene potenti funzioni per l'elaborazione di blob e la successiva estrazione di numerose caratteristiche.
Inoltre, è possibile filtrare e sottoporre i blob a mutamenti morfologici per meglio eseguire le successive elaborazioni necessarie.
Il Deep Learning, è una sottocategoria del Machine Learning e indica quella branca dell’Intelligenza Artificiale
che fa riferimento agli algoritmi ispirati alla struttura e al funzionamento del cervello chiamate reti neurali artificiali.
I principali algoritmi disponibili sono:
Consente di riconoscere lettere e numeri grazie ad un approccio basato sul deep-learning,
che fornisce molti font pre-addestrati inclusi da un'ampia gamma di settori (font a matrice di punti,
semi font, font industriali, font scritti a mano, ecc.).
Questo aumenta le performance e riduce il rischio di interpretazione errata con caratteri simili tra loro, garantendo
eccellenti tassi di riconoscimento.
L'esclusiva capacità di impostare regioni di interesse arbitrarie, combinata con i principali strumenti di analisi dei blob
e tecniche complete di filtraggio delle immagini, consente di isolare ed estrarre efficacemente i caratteri da sfondi
complessi con conseguente classificazione dei caratteri più accurata e migliori velocità di lettura.
Le comuni tipologie di codici a barre possono essere lette con qualsiasi orientamento e dimensione,
con moduli più piccoli di 2x2 pixel.
Un robusto riconoscimento permette la lettura dei dati su immagini distorte e in condizioni di illuminazione variabili.
Oltre ai codici stampati, il software legge in modo affidabile i codici "Direct Part Mark" (DPM) e
i codici incisi su diverse superfici e in condizioni di illuminazione variabili superfici diverse.
Tra i codici che possono essere riconosciuti vi sono ECC 200, QR, QR Micro, DotCode, Aztec e PDF417.
L'identificazione degli oggetti senza codifiche è possibile tramite un algoritmo basato sull'apprendimento dei campioni di identificazione.
A fronte di un addestramento minimo dell'algoritmo, esso è in grado di distinguere svariate tipologie di oggetti
basandosi su caratteristiche come il colore o la trama, eliminando così la necessità di usare codifiche speciali
come codici a barre o codici di dati per l'identificazione di tali oggetti.
Funziona anche con oggetti deformati o viste prospettiche diverse dell'oggetto, piuttosto che su scenari con basso contrasto ed elevato rumore.
Sofisticati e robusti algoritmi di Pattern Matching rilevano la posizione degli oggetti appresi, permettendo
la manipolazione con robot antropomorfi.
È anche possibile effettuare la localizzazione di oggetti deformati in modo irregolare utilizzando la prospettiva.
La posizione e l'orientamento degli oggetti all'interno di immagini 2D possono essere identificati con diverse tecnologie quali:
Tale funzione determina la posizione e l'orientamento degli oggetti, rappresentati dal loro modello CAD, all'interno di immagini 3D.
L’impostazione del punto di vista che definisce la posizione del sensore è facoltativa, aumentando la fruibilità di questa particolare funzione.
L’utilizzo di piccoli dettagli quali fori o tacche degli oggetti per determinarne l’orientamento aumenta l’accuratezza
e la robustezza del risultato, anche a fronte di nuvole di punti particolarmente disturbate.
Tra le modalità di elaborazione troviamo:
È possibile eseguire misurazioni di oggetti per la verifica delle tolleranze dei pezzi in produzione, raggiungendo anche precisioni fino ad alcuni micron metro.
Tramite la ricostruzione 3D si può eseguire la misura di oggetti nelle tre dimensioni.
Vi è la possibilità di misurare ed estrarre varie caratteristiche dalle nuvole di punti 3D e dalle nuvole di punti segmentate.
I punti relativi allo sfondo possono essere facilmente rimossi tramite sogliatura e le nuvole di punti possono essere intersecate
da un piano per creare un profilo di sezione trasversale 2D.
Il sistema è in grado di eseguire un'ispezione automatica delle superfici di materiali diversi che consente il riconoscimento e la segmentazione di
difetti delle stesse come fori, rughe, crepe sui bordi, incisioni, contaminanti, mancanza di rivestimento, graffi, macchie o ammaccature.
La regolazione dei parametri necessari avviene in automatico ed è sufficiente un numero limitato di immagini modello per ciascun difetto
affinchè sia possibile riconoscerli in modo infallibile ed indipendente l’uno dall’altro su qualsiasi acquisizione successiva.
Inoltre, possono essere ispezionati anche alcuni oggetti con superfici riflettenti, utilizzando il principio della deflettometria.
Grazie a questa funzionalità è possibile eseguire controlli qualità e integrità veloci e precisi sulla produzione,
permettendo di ispezionare al 100% diverse caratteristiche dei particolari più svariati durante la fase di produzione.
E' possibile analizzare serigrafie e stampe su qualsiasi superfice acquisita, piana o tonda.
Tra i difetti rilevabili ci sono:
La classificazione è l'assegnazione di un oggetto a una delle diverse categorie di interesse in base alle caratteristiche selezionate.
Nelle immagini, gli oggetti classificati sono in genere pixel o regioni. Pertanto, per assegnare un oggetto a una classe specifica,
essi devono prima essere definiti tramite una procedura di addestramento.
Quando si classifica un oggetto sconosciuto, viene restituita la classe con la maggiore corrispondenza tra le caratteristiche utilizzate
per l'addestramento e le caratteristiche dell'oggetto sconosciuto.
Alcune applicazioni tipiche della classificazione sono:
Dalle immagini acquisite tramite Telecamera 3D
e' possibile comparare due oggetti sovrapponendo le rispettive nuvole di punti.
In alternativa, l'oggetto acquisito può essere confrontato direttamente con il suo modello CAD per identificarne le differenze.
Il sistema segnala quindi le parti fuori tolleranza che si discostano dal modello.
L’estrapolazione dei contorni mediante deep-learning può essere settata con poche immagini modello, ottenendo un riconoscimento
affidabile dei bordi desiderati anche su immagini con diverse linee di contorno, basso contrasto ed elevato rumore.
ArtificialInspection è disponibile principalmente su tre diversi controllori ,in base alle richieste dell' applicazione,
ad esempio il numero di telecamere e il tempo di elaborazione dell'immagine.
Con queste configurazioni il sistema copre tutte le possibili applicazioni.
Applicazioni base
Applicazioni intermedie
Applicazioni avanzate
ArtificialInspection è in grado di interfacciarsi sia con telecamere matriciali che lineari,
con qualsiasi risoluzione, a colori oppure in bianco e nero, ed è pertanto compatibile con le telecamere dei principali produttori.
ArtificialInspection supporta gli standard di interfaccia più comuni come USB, USB3Vision, FireWire e GigEVision GenIcam.
Il sistema di visione è in grado di interfacciarsi e gestire telecamere 3D dei principali Brand.