Capitolo 1 - Introduzione 1 Elaborazione di Immagini e Visione Articiale Elaborazione Digitale di Immagini: l'immagine viene rilevata da un apposito sensore (tipicamente una telecamera), convertita in un adeguato formato digitale e trasferita nella memoria di un calcolatore che eettua l'elaborazione. Per Elaborazione di immagini \in senso stretto" (Image Processing) si intende un processo di elaborazione che ha come obiettivo la trasformazione dell'immagine di ingresso in una nuova immagine avente qualit a \migliore" rispetto ad un determinato criterio (casi tipici: riduzione del rumore, esaltazione del contrasto). Per Visione Articiale (Computer Vision, Machine Vision) si intende un processo di elaborazione dell'immagine avente come obiettivo l'estrazione di informazioni sulla scena osservata (ad esempio: determinazione della presenza/assenza di un oggetto avente una forma nota, verica dell'integrit a di un oggetto sicuramente presente, conteggio degli oggetti, riconoscimento degli oggetti ....). L'obiettivo che si pone la visione articiale e aascinante e molto ambizioso: dotare una macchina, se pur in misura molto limitata, di quella che e sicuramente la forma di percezione pi u potente e pi u complessa che possiedono gli esseri umani, la percezione visiva. L'elaborazione di immagini e spesso utilizzata come passo preliminare di un procedimento di visione per eettuare pre-elaborazioni tendenti a migliorare la qualit a dell'immagine da analizzare. L'enfasi del corso sar a sulla visione articiale, ma verrano anche studiate tecniche di elaborazione di immagini. Perch e studiare la visione articiale ? { Interesse per le complesse problematiche della percezione visiva da parte dei ricercatori dell'intelligenza articiale e delle neuro-siologia. { I sistemi di visione articiale trovano impiego in moltissimi settori. Descriviamo a titolo di esempio alcune applicazioni. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 2 Ispezione Automatica I sistemi di visione vengono impiegati nelle linee di produzione per l'ispezione di manufatti (sovente in alternativa ad operatori umani). All'interno di questo settore e possibile distinguere fra { Esecuzione di misure: impiego di un sistema di visione per vericare che siano soddisfatte le tollerenze di lavorazione sugli oggetti prodotti. { Controllo dell'integrit a: verica che gli oggetti prodotti abbiano la forma desiderata e/o che non presentino difetti (ad esempio difetti superciali). L'ispezione automatica e il settore che vanta di gran lunga il maggior numero di applicazioni di visione articiale (alcune stime parlano del 70 - 80 % dell'intero mercato della visione). La ragione di tale diusione risiede sia nella (relativa) semplicit a che spesso caratterizza le problematiche di visione da arontare sia nella possibilit a di esercitare un controllo abbastanza rigoroso sulle condizioni ambientali (illuminazione, posizione relativa fra oggetto e telecamera). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 3 Ispezione di piastrelle ceramiche La bicottura e un processo di produzione, costituito da due fasi, mediante cui vengono realizzate le piastrelle ceramiche. Nella prima fase la piastrella viene formata mediante pressatura e poi cotta in modo da ottenere un semilavorato solido (biscotto) che pu o essere maneggiato e trasportato. Successivamente (spesso in un'altro stabilimento) il biscotto viene smaltato e poi cotto nuovamente per ssare lo smalto. I biscotti non integri devono essere scartati prima della smaltatura (risparmio di smalto, di energia per la seconda cottura, danneggiamento dei retini di smaltatura). Il sistema tradizionale per questo tipo di ispezione si basa sull'impiego di forocellule: Con questo approccio non e possibile ispezionare per intero i lati normali alla direzione del moto. Inoltre il sistema e molto sensibile a piccole rotazioni della piastrella e poco essibile (il cambio di formato richiede un'accurato riposizionamento delle fotocellule). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 4 Ispezione di piastrelle ceramiche Recentemente e stato realizzato un sistema di visione che fornisce prestazioni molto migliori in termini di accuratezza, robustezza e essibilit a : Il sistema emula il comportamento delle fotocellule eettuando un'analisi visiva dei bordi della pistrella: Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 5 Ispezione di circuiti stampati (PCB) I sistemi di visione vengono impiegati per vericare l'integrit a delle piste dei circuiti stampati: I difetti mostrati non possono essere in alcun modo rilevati mediante i test elettrici, per cui l'ispezione visuale si rende indispensabile ai ni del monitoraggio e controllo del processo di produzione. Un altro tipo di ispezione molto importante che viene eettuata tramite sistemi di visione e la verica del montaggio dei componenti sulla scheda (\component placement inspection"). In questa tipo di ispezione il sistema rileva l'eventuale assenza di componenti o la presenza di componenti non montati correttamente (ad esempio, al rovescio). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 6 Ispezione 3D di circuiti stampati (PCB) Sono oggi disponibili anche sistemi di ispezione 3D per PCB, che hanno l'obiettivo di misurare il volume della pasta salda depositata sui pad dei componenti SMT (\Solder Paste Inspection"). Una tecnica di visione 3D che e stata utilizzata per questa applicazione e la luce strutturata. Con questo approccio un pattern luminoso regolare di forma nota viene proiettato sull'oggetto ed visto da una posizione angolata mediante una telecamera: la deformazione subita dal pattern consente di risalire alla forma 3D dell'oggetto. ϑ h s s=h sin(ϑ) Reference Plane L'immagine di sinistra mostra un pad con il pattern proiettato mentre quella di destra mostra il risultato dell'elaborazione, con i valori di intensit a che codicano le altezze dei punti rispetto alla supercie del PCB (i punti pi u scuri hanno altezza maggiore). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 7 Individuazione di \cricche" in pezzi metallici Produzione di pezzi metallici (maglie per cingolati: trattori, carri armati) forgiati ad alta temperatura. Durante il trattamento termico possono crearsi fratture (cricche) superciali, e sotto-supercie, non visibili all'occhio umano. I pezzi contenenti delle cricche sono difettosi e devono essere scartati. L'individuazione delle cricche viene eettuata mediante magnetoscopia: il pezzo viene magnetizzato e bagnato con una sospensione di acqua e particelle di limatura di ferro uorescenti (vernice uorescente, riette solo la luce ultravioletta). Poich e le particelle vengono attratte dalle cricche (discontinuit a del campo magnetico), illuminando il pezzo con luce ultravioletta (lampada di Wood o lampada nera) si ottiene l'evidenziazione delle cricche che risultano come forme uorescenti allungate e rettilinee. Tradizionalmente, un operatore specializzato controlla visivamente il pezzo alla ne del trattamento. Recentemente e stato sviluppato un sistema di visione per l'individuazione automatica delle cricche. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 8 Robotica ed Automazione Le tecniche di visione articiale consentono la realizzazione di robot essibili in grado di interagire con l'ambiente esterno sulla base di informazioni ottenute mediante la percezione visiva. Manipolatori Intelligenti { Nel processo di assemblaggio di parti vengono impiegati robot manipolatori che eseguono vari compiti tra cui la presa di oggetti, la loro movimentazione, l'assemblaggio vero e proprio. { L'uso di tecniche convenzionali implica la rigida denizione di una specica modalit a operativa e l'esecuzione deterministica della procedura programmata. { L'impiego di un sistema di visione in grado di individuare un numero limitato di parti e determinarne posizione ed orientamento permette di adattare la modalit a di esecuzione del processo ad un insieme molto vasto di disposizioni di parti non determinate a priori. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 9 Robotica ed Automazione Guida di veicoli { Esistono poi applicazioni robotiche in cui un veicolo deve essere in grado di { { { { muoversi autonomamente all'interno di un determinato ambiente. Nell'industria i veicoli autonomi vengono utilizzati principalmente per il trasporto di materiale fra le stazioni di una linea di produzione e per le applicazioni di magazzino automatizzato. Altre applicazioni riguardano la sorveglianza di edici (ad esempio banche) ed impianti industriali (in particolar modo quelli caratterizzati da ambienti pericolosi per l'uomo, ad esempio le centrali nucleari). Nelle realizzazioni convenzionali i veicoli si muovono su percorsi ssi e preimpostati. Come nel caso della manipolazione l'uso della visione conferisce potenzialmente essibilit a rispetto alle possibili variazioni delle condizioni ambientali, supportando compiti quali l'autolocalizzazione del veicolo, la determinazione della traiettoria, l'individuazione di ostacoli. Allo stato attuale la guida visiva di veicoli e realizzata solo su prototipi realizzati in laboratori di ricerca, e principalmente nel caso di guida di un veicolo in un ambiente noto (disponibilit a della planimetria). Tuttavia, sono stati realizzati alcuni veicoli in grado di costruire autonomamente un modello di un ambiente sconosciuto e muoversi all'interno di esso evitando gli ostacoli (INRIA, Esprit P940 "Depth and Motion Analysis"). E' possibile realizzare macchine automatiche in cui gli attuatori sono pilotati sulla base di informazioni acquisite mediante la visione. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 10 Robot-Picking Su una linea di produzione sono presenti due tipi di bielle per motociclette, aventi rispettivamente uno o due fori in corrispondenza della testa. Un robot manipolatore deve prelevare le bielle dalla linea e smistarle in funzione del tipo. Si tratta di un problema classico, che richiede fondamentalmente l'individuazione di posizione ed orientamento degli oggetti unitamente alla capacit a di riconoscere un oggetto all'interno di un insieme limitato di oggetti possibili. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 11 Monitoraggio e controllo di un circuito idraulico L'applicazione e un esperimento realizzato al ne di dimostrare i risultati del Progetto Finalizzato Robotica (CNR, 1994). Un manipolatore installato su un veicolo deve eseguire operazioni di supervisione e controllo su un circuito idraulico simile a quelli presenti nelle centrali idroelettriche. L'insieme dei compiti assegnati al robot comprende la lettura di strumenti ad indice (manometri e termometri) e la manipolazione di valvole. Le principali problematiche di visione riguardano l'individuazione di oggetti di forma circolare e la determinazione dell'orientazione di oggetti di forma allungata: Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 12 Un'applicazione nell'ambito dell'automazione Determinazione mediante un sistema di visione della linea di inserzione fogliaria e taglio automatico delle barbabietole da zucchero. Il pagamento di un carico di barbabietole da parte di uno zucchericio viene eettuato pesando il carico totale e sottraendo la tara. La tara viene determinata sulla base di un campione di bietole da cui viene tagliata via la parte superiore su cui insistono le foglie (\colletto"), che e caratterizzata da basso contenuto di glucosio. La \scollettatura" delle bietole viene eettuata manualmente da un operatore che deve stimare visivamente la posizione della linea di inserzione fogliaria (separazione fra colletto e parte utile della bietola). Il lavoro dell'operatore e ripetitivo e richiede costante attenzione e precisione. Inoltre, la tara risultante e troppo dipendente dalla stima eettuata dagli operatori. Recentemente, un'azienda produttrice di zucchero ha sviluppato una \scollettatrice automatica" che si basa su un sistema di visione in grado di determinare la posizione della linea di inserzione fogliaria e comandare una macchina che eettua il taglio. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 13 Applicazioni di OCR (Optical Character Recognition) Con il termine di OCR ci si riferisce alle tecniche aventi che hanno come obiettivo la lettura automatica di testo (manoscritto o dattiloscritto ) a partire da immagini. Principali settori applicativi: Automazione d'ucio: archiviazione documenti e \data-entry". { Nell'archiviazione documenti l'impiego di OCR consente di leggere un docu- mento cartaceo per convertirlo in formato testo. Attualmente esistono sistemi che consentono la lettura di documenti \multifont" dattiloscritti di elevata qualit a (tipicamente stampa laser) con percentuali di errore dell'ordine di 1/1000. { Nelle applicazioni di \data-entry" l'obiettivo e acquisire automaticamente dei dati da un modulo cartaceo per poterli memorizzare in un database. Attualmente vengono utilizzati moduli (\form") orientati al carattere (ciascun carattere deve essere inserito in un apposito \box") e si fa largo uso di informazioni contestuali ai ni dell'interpretazione del campo. Questi sistemi sono in grado di leggere caratteri manoscritti in stampatello. In questo settore le percentuali di errore sono inferiori al 20%. Automazione postale { Il problema e la lettura dell'indirizzo per lo smistamento (\sorting") automatico della corrispondenza. E un problema estremamente dicile: l'indirizzo (manoscritto o dattiloscritto) deve essere prima localizzato e segmentato (suddivisione in linee, parole e caratteri) e poi letto. { Il sistema pi u avanzato e attualmente in funzione negli Stati Uniti: un primo sistema suddivide la corrispondenza sulla base del tipo di indirizzo (dattiloscritto - manoscritto), quindi vengono usati due sistemi di OCR distinti per i due casi. La percentuale di successo nella lettura degli indirizzi dattiloscritti e dell'80%, per quelli manoscritti del 40% (la maggior parte degli errori e dovuta agli indirizzi manoscritti in corsivo). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 14 Applicazioni nel settore ITS (Intelligent Transportation Systems) Nel settore dei trasporti si va sempre pi u diondendo l'impiego di sistemi basati su tecnologie informatiche avanzate (ITS). In questo scenario la Visione Articiale gioca un ruolo molto importante. Sono oggi disponibili sistemi di visione in grado di raccogliere dati sui ussi di traco (conteggio classicato dei veicoli in transito, stima delle velocit a , rilevazione e misura delle code, rilevazione di infrazioni..). Tali sistemi presentano numerosi vantaggi rispetto alle tecnologie tradizionali (ad esempio, loop induttivi annegati nell'asfalto). Video-Enforcement: sono stati realizzati sistemi in grado di leggere automaticamente la targa dei veicoli (ancora OCR !) per controllare l'accesso a zone a traco limitato (ad esempio, sistema SIRIO a Bologna) oppure rilevare infrazioni quali il transito di un veicolo non autorizzato in una corsia preferenziale (ad esempio, sistema RITA a Bologna) o il sorpasso di un mezzo pesante in autostrada (sistema realizzato da ELSAG). Sistemi in-vehicle: sono allo studio sistemi di visione di supporto alla guida basati sul riconoscimento della carreggiata e degli ostacoli (veicoli o pedoni). Le principali case automobilistiche iniziano a realizzare sistemi di visione per il riconoscimento dello stato di aaticamento del guidatore. E stato sviluppato un sistema sperimentale per la stima automatica del grado di aollamento delle stazioni nella metropolitana (Londra, King's College). Sono allo studio sistemi in grado di classicare automaticamente i veicoli ai ni dell'esazione del padaggio autostradale. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 15 Videosorveglianza I sistemi tradizionali di videosorveglianza (CCTV) prevedono l'invio di immagini ad una centrale di controllo presidiata da operatori cui e adato il compito di analizzare visivamente tali immagini al ne di rilevare eventuali situazioni anomale o di allarme. Sebbene i sistemi tradizionali costituiscano tutt'ora la porzione pi u rilevante del mercato, a seguito della sempre crescente domanda di sicurezza proveniente dalla societ a si registra oggi una fortissima domanda di mercato di sistemi di videosorveglianza signicativamente pi u evoluti, in particolare di sistemi di visione dotati di capacit a di analisi automatica dei ussi video. Una prima risposta a tale domanda di mercato e costituita dai videoregistratori digitali dotati di funzionalit a di motion-detection. Tali sistemi salvano su disco solo le sequenze video in cui sono presenti oggetti in movimento. Sono per o oggi allo studio in tutto il mondo sistemi di videosorveglianza dotati di capacit a di analisi delle sequenze video signicativamente pi u avanzate e nalizzate alla rilevazione automatica di eventi quali ad esempio un tentativo di furto di un'auto in un parcheggio, la presenza di un'oggetto abbandonato in una stazione o in un'areoporto, il vericarsi di atti di vandalismo, di una rapina in una banca, di episodi di violenza contro persone.... Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 16 Sistemi Biometrici I sistemi biometrici mirano a vericare o riconoscere l'identit a di un soggetto sulla base di quelle informazioni relative alle caratteristiche siche che rendono ogni individuo diverso rispetto agli altri (ad esempio: le impronte digitali, il timbro vocale, i tratti del viso, la distanza interpupillare, il fondo della retina, la conformazione dell'iride, la geometria della mano, la struttura 3D della testa...). Le principali applicazioni dei sistemi biometrici riguardano la sicurezza (con clienti quali le forze dell'ordine o le societ a di gestione degli scali aereoportuali), il settore dell'e-governament (ad esempio, inserimento di dati biometrici in una carta d'identit a elettronica) ed il controllo accessi, sia sico (accesso ad un edicio) sia logico (accesso ad un sistema informatico). Allo stato attuale la maggior parte delle tecniche di biometriche si basa sull'acquisizione, memorizzazione ed analisi di immagini digitali (ad esempio: immagini di impronte digitali, dell'iride, del volto ..). Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 17 Altri settori applicativi Medicina { Elaborazione Immagini La vasta gamma di immagini mediche oggi disponibile costituisce un'importante supporto alla diagnosi. Sovente per o tali immagini sono caratterizzate da insufciente nitidezza e/o dalla presenza di disturbi, alterazioni, rumore che riducono il contenuto informativo eettivamente fruibile dal medico. Le tecniche di image processing trovano largo impiego nel miglioramento della qualit a delle immagini mediche. Esempi: esaltazione del contrasto e riduzione del rumore in radiograe, ecograe, immagini TAC, termograe . . . { Visione Sono state sviluppate anche applicazioni aventi l'obiettivo di estrarre informazioni da immagini mediche. Un esempio e l'estrazione e la visualizzazione delle isoterme nelle termograe. Inoltre le tecniche di visione vengono impiegate per l'analisi automatica di immagini microscopiche. Gli obiettivi tipici di questo genere di applicazioni sono il conteggio e la classicazione di cellule. Eempi: classicazione automatica dei globuli bianchi (leucociti) nelle 5 classi (neutroli, eosinoli, basoli, linfociti, monociti), conteggio automatico delle cellule nervose . . . Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 18 Altri settori applicativi Telerilevamento Impiego di sensori collocati su aerei o satelliti in grado di acquisire immagini di porzioni della supercie terrestre relative a diverse bande dello spettro elettromagnetico (visibile, infrarosso, microonde). Le immagini telerilevate sono fonte di una grande quantit a di importanti informazioni utilizzate in numerosissimi settori (metereologia, geologia, agricoltura e foreste, cartograa . . . ). Le tecniche di image processing sono utilizzate per migliorare la qualit a delle immagini telerilevate ai ni dell'interpretazione della stessa da parte dell'utente (fotointerpretazione). La tecniche di visione sono impiegate ai ni della interpretazione automatica delle immagini telerilevate. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 19 Metodologie e tecniche di base All'interno del pur vastissimo scenario applicativo che caratterizza la visione e possibile identicare un insieme signicativo di problematiche di base che generalmente si ritrovano in numerose applicazioni. In conseguenza di ci o, per arontare tali problematiche sono state sviluppate metodologie e tecniche ragionevolmente consolidate che possono oggi essere considerate \di base". Fra le principali problematiche di base ricordiamo: { miglioramento della qualit a dell'immagine (image enhancement, noise clean{ { { { { { { { ing) estrazione di \features" locali (edges, corners, texture) stima della profondit a da una scena 3D (active ranging, stereo-vision) stima ed analisi del moto (motion estimation, tracking) segmentazione dell'immagine (binarization segmentation, labeling \matching" di sotto-immagini (pattern matching) individuazione e localizzazione di oggetti aventi forma nota (ad esempio circolare, rettilinea, forma arbitraria assegnata) rappresentazione e caratterizzazione di forme elementari (skeleton, polygonal approximation, shape descriptors) riconoscimento di congurazioni (statistical - structural pattern recognition). Molte applicazioni possono essere realizzate utilizzando, combinando, modicando opportunamente determinate tecniche di base. In questo processo e di fondamentale importanza che l'approccio al problema sia il pi u possibile \goal-oriented" e che vengano sfruttate adeguatamente tutte le informazioni a priori disponibili. Il corso avr a per oggetto lo studio e la sperimentazione di alcune delle principali tecniche di base impiegate nella visione articiale. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 20 Classicazione delle tecniche impiegate nella visione Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 21 Perche i problemi di visione sono di cili ? La straordinaria capacit a del sistema visivo umano di interpretare un'immagine e spesso considerata come \normale". Tuttavia, l'interpretazione dell'immagine diviene anche per noi estremamente dicoltosa quando questa e rappresentata come una matrice di numeri: 250 200 60 150 50 100 40 50 30 0 0 20 10 20 30 40 10 50 60 70 80 0 Questo tipo di rappresentazione e esattamente quella che deve essere elaborata ed analizzata da un calcolatore in un problema di visione articiale. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 22 Riconoscimento di oggetti nel caso 2D Supponiamo che l'obiettivo assegnato al sistema di visione articiale sia il riconoscimento degli oggetti presenti nell'immagine di una scena noto che sia l'insieme degli oggetti che possono essere presenti (classicazione). La gura seguente illustra il procedimento generale che, concettualmente, consente di raggiungere questo obiettivo nel caso 2D: Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano Capitolo 1 - Introduzione 23 Segmentazione L'obiettivo della segmentazione e suddividere l'immagine nelle parti (\oggetti") che la costituiscono. La segmentazione deve rendere disponibile l'informazione su quanti sono gli oggetti presenti nell'immagine e quali sono i pixel ad essi associati. La segmentazione e tipicamente il passo cruciale di ogni procedimento di visione articiale: e raro che non si riescano ad estrarre le informazioni desiderate una volta che l'immagine sia stata segmentata correttamente, ed e praticamente impossibile estrarre informazioni utili a fronte di una segmentazione errata. La segmentazione di tipo region-based fornisce direttamente le regioni dell'immagine che corrispondono agli oggetti. La segmentazione di tipo boundary-based fornisce invece i contorni che separano le regioni dell'immagine che corrispondono agli oggetti. Elaborazione dell'Immagine L-S, A.A. 2003-2004 Luigi Di Stefano