Sistema di Visione Artificial Inspection

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.

PERSONALIZZABILE

  • Programmazione e personalizzazione del front-end del sistema, tramite la scrittura di macro VbScript, in base al tipo di controllo ed al numero di telecamere presenti nel sistema.
  • Comunicazione personalizzabile con i vari dispositivi connessi al sistema, come PLC e ROBOT.
  • Creazione dei programmi di controllo di ogni telecamera inserendo variabili, tool e algoritmi di visione a piacere
  • Possibilità di implementare pagine o funzioni dedicate tramite Visual Studio, scrivendo librerie in VB.NET o C#.NET e richiamando le funzioni create tramite script.

POTENTE

  • Basato su libreria HALCON , una delle più avanzate a livello mondiale
  • Il sistema può sfruttare a pieno le potenzialità della libreria richiamando funzioni scritte con HALCON HDevelop ©.
  • Possibilità di collegamento con svariati modelli di telecamere Matriciali, Lineari, Telecamere 3D
  • Connessione mediante interfaccia USB, USB3Vision, GigaEthernet e i principali standard presenti in commercio.

PRATICO

  • Interazione con software mediante interfaccia grafica intuitiva e semplice da utilizzare per l'utente finale.
  • Funzioni di campionamento e salvataggio delle immagini acquisite oltre che di Backup/Restore del programma.

SICURO

  • Presenza di diversi livelli di autorizzazione all'accesso.
  • Gestione di utenti e password personalizzabile per accedere alle funzionalità del sistema con privilegi diversificati a seconda della mansione di chi utilizza il sistema.

SUPPORTO TECNICO

  • Teleassistenza mediante la rete Internet con possibilità di connettere il controllore in rete ed avere supporto da remoto.

Filtri

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:

  • miglioramento del contrasto;
  • correzione dell'illuminazione;
  • ridimensionamento;
  • equalizzazione dell'istogramma.

Morfologia e Blob Analisi

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.

Deep Learning

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:

  • classificazione;
  • segmentazione;
  • riconoscimento di oggetti;
  • riconoscimento di anomalie;
  • estrapolazione dei bordi.
  • Deep OCR & OCV

    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.

    Barcode, Dotcode e dataMatrix

    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.

    Sample-Based (SBI)

    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.

    Matching 2D per guida robot

    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:

    • Correlation-based matching;
    • Shape-based matching;
    • Descriptor-based matching.

    Matching 3D per guida robot

    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:

  • Shape-based 3D matching, partendo da una semplice immagine 2D;
  • Surface-based 3D matching, ricercando la forma dell’oggetto nella nuvola di punti 3D acquisita con apposita telecamere 3D a scansione laser, stereo visione o TOF.
  • Misurazioni 2D

    È possibile eseguire misurazioni di oggetti per la verifica delle tolleranze dei pezzi in produzione, raggiungendo anche precisioni fino ad alcuni micron metro.

    Misurazioni 3D

    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.

    Ispezione superfici

    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.

    Ispezione serigrafie

    E' possibile analizzare serigrafie e stampe su qualsiasi superfice acquisita, piana o tonda.
    Tra i difetti rilevabili ci sono:

  • mancanza o eccesso di stampa;
  • difetti di superficie;
  • stampa fuori posizione;
  • difetti di tonalità;
  • macchie di sporco o imperfezioni.
  • Classificazione

    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:

  • segmentazione delle immagini per suddividerle in regioni di colore o consistenza simili;
  • riconoscimento oggetti per l'individuazione di un tipo specifico all'interno di un insieme di diversi tipi di oggetti;
  • controllo qualità per decidere se un oggetto è conforme o difettoso;
  • rilevamento differenze tra oggetti per rilevare eventuali difetti degli stessi.
  • Comparazione 3D

    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.

    Estrapolazione dei bordi

    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.

    HX330

    Applicazioni base

    HX500

    Applicazioni intermedie

    KARBON803

    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.