Riassunto Riconoscimento Linguistico e Visivo, Plebe
franciuzza
franciuzza22 maggio 2015

Questo è un documento Store

messo in vendita da franciuzza

e scaricabile solo a pagamento

Riassunto Riconoscimento Linguistico e Visivo, Plebe

DOCX (3 MB)
57 pagine
189Numero di visite
Descrizione
Riassunto quasi completo del libro "Riconoscimento Linguistico e Visivo" di Alessio Plebe
5.99
Prezzo del documento
Scarica il documento

Questo documento è messo in vendita dall'utente franciuzza: potrai scaricarlo in formato digitale subito dopo averlo acquistato! Più dettagli

Anteprima1 pagina / 57

Questa è solo un'anteprima

1 pagina mostrata su 57 totali

Scarica il documento

Questa è solo un'anteprima

1 pagina mostrata su 57 totali

Scarica il documento

RICONOSCIMENTO LINGUISTICO E VISIVO

INTRODUZIONE

Il senso del libro è cercare di spiegare come un computer possa capire il linguaggio parlato e dare il giusto significato a un’immagine.

Il RICONOSCIMENTO VISIVO (Image Processing - IP) e il RICONOSCIMENTO LINGUISTICO (Natural Language Processing - NLP) sono le parole-chiavi che caratterizzano la ricerca svolta dall’intelligenza artificiale negli ultimi 40 anni; ricerca che è stata ammirata e sfruttata dall’economia di massa e dall’informatica.

Questi concetti sono stati messi in pratica, dando vita, in ambito industriale, a macchine predisposte al riconoscimento vocale di determinati comandi o al riconoscimento, tramite telecamera, di difetti, ad esempio, della merce mentre quest’ultima scorre su un nastro trasportatore.

L’aspetto linguistico e quello visivo, in questo libro, tenderanno a unificarsi, anche se teoricamente vengono sempre trattati in modo specialistico, proprio per mettere in luce le affinità del loro processo di riconoscimento di voci o immagini e il loro obiettivo comune: copiare l’essere umano, per dotare il computer d’intelligenza, fornendogli la capacità di risolvere teoremi matematici (logica).

CAPITOLO 1: IL PROBLEMA DEL RICONOSCIMENTO

1.1 COSA VUOL DIRE RICONOSCERE?

Non esiste una definizione precisa. L’atto di riconoscere presuppone qualcosa di esterno, che si può spiegare non solo tramite la scienza ma anche tramite la filosofia, quindi non è spiegabile solo razionalmente. Rifacendoci alla vista e al linguaggio, riconoscere potrebbe significare rispettivamente riconoscere visivamente gli oggetti presenti in una scena e abbinare le loro immagini ai suoni delle parole corrispondenti agli oggetti medesimi. Tale definizione però non regge se, ad esempio, si riesce a definire lo stesso un oggetto che nella scena non c’è o che non si è mai visto.

Una definizione più pertinente sarebbe: capacità d’associare entità percepite (oggetti o parole) a rappresentazioni mentali (concetti). Anche questa spiegazione non è esente da critica ma, rispetto alla prima definizione di cui sopra, è condivisa da diverse altre discipline oltre l’intelligenza artificiale. Inoltre, affinché un’entità percepita rientri in una categoria mentale, essa deve soddisfare determinate condizioni necessarie ma sufficienti. L’associazione, nella mente umana, avviene prendendo in considerazione il prototipo cui poi si comparata l’elemento percepito per ritrovarne l’affinità, per farlo rientrare in una determinata categoria mentale.

Secondo WITTGENSTEIN comprendere una proposizione significa comprendere le sue parti costitutive (nomi di oggetti e parole che mettono in relazione tali nomi) e sapere cosa accade se essa è vera (sapere cosa succede se queste relazioni tra i nomi sono vere).

1.1.1 L’INGANNO DELLA FACILITÀ

Poiché il riconoscimento visivo e linguistico viene naturale all’uomo, è difficilissimo riuscire a spiegarlo scientificamente, perché non viene naturale chiedersi come ciò avvenga. Entrambi i tipi di riconoscimento, pur rappresentando un grande successo cognitivo, sono caratterizzati da limitazioni che, al contrario, non vengono considerate tali da un computer, ad esempio, il calcolo di una radice quadrata o la catalogazione in ordine alfabetico di un migliaio di indirizzi ecc.

Filosoficamente il problema del riconoscimento viene analizzato da due punti di vista:

1) COMPLESSITÀ del fenomeno, analizzata da HERMANN VON HELMHOLTHZ, secondo cui vedere comporta una serie di ragionamenti complessi ma che, essendo automatizzati grazie all’esperienza, avvengono all’interno dell’inconscio; 2) IMMEDIATEZZA nell’esecuzione del riconoscimento, analizzata da GIBSON, secondo cui la percezione è diventata naturale e immediata grazie all’evoluzione della specie che ha portato l’uomo alla posizione eretta e all’allargamento dell’orizzonte visivo, principalmente attraverso cui si relaziona con il mondo esterno (ecological approach to perception).

Un punto d’incontro tra immediatezza e complessità è dato dal concetto di ABDUZIONE, coniato da PEIRCE, ossia un processo razionale complesso che

44

permette di vedere improvvisamente chiaro qualcosa che prima non lo era. Questo meccanismo sarebbe alla base dei riconoscimenti.

1.1.2 LE AMBIGUITÀ

Il processo di cui non ci rendiamo conto durante i riconoscimento visivo è la DISAMBIGUAZIONE, ossia la scelta tra più possibili interpretazioni cui potrebbero esposti i dati sensoriali visivi. Tale ambiguità nel cervello umano viene risolta pressoché automaticamente mentre il computer deve vagliare tutte le interpretazioni possibili prima di decidere quale significato definitivo dare al dato sensoriale. Un esempio di disambiguazione è dato da un’immagine che contemporaneamente può rappresentare più cose, secondo come la si guarda (ad esempio un anatra che è anche un coniglio).

Per ciò che concerne il riconoscimento linguistico, l’uomo è soggetto agli effetti ambigui della POLISEMIA, che permette a una stessa parola di avere più significati, e di altre proprietà lessicali che possono far variare le relazioni all’interno degli elementi della frase, sconvolgendone il significato apparentemente univoco.

Il computer ha anche il problema della PRAGMATICA, secondo cui il significato non può essere dedotto soltanto tenendo conto delle intenzioni per cui il parlante ha parlato, ad esempio, alla domanda ‘sa che ore sono?’, un computer che ragioni in modo lineare dovrebbe rispondere ‘sì lo so, perché ho concezione del tempo grazie all’orologio interno’, quando in realtà, per le intenzione del parlante, dovrebbe rispondere dicendogli l’orario esatto.

1.2. UN’IDEA CHE NASCE CON TURING

L’idea di un computer capace di pensare come l’uomo nasce nel 1950 con ALAN TURING e lui dimostra la propria teoria attraverso il famoso IMITATION GAME o TURING TEST: una persona chiusa in una stanza può fare domande di qualsiasi genere e leggere le risposte, alternandosi tra due terminali, dietro i quali c’è, un computer, da un lato, e un essere umano, dall’altro. Se la persona che si trova nella stanza, che è all’oscuro di tutto, non riesce a distinguere chi ci sia dietro i due computer, allora il computer, in quanto macchina, può definirsi intelligente.

Il Turing test è stato criticato da SEARLE, il quale ha creato un contro test, attraverso cui s’evincerebbe che un computer, campione del Turing test, non riesce a distinguere l’elemento umano del test. Il funzionamento è il seguente: ad una persona chiusa in una stanza vengono inviati dei segni. Ad ogni sequenza di segni, attraverso un manuale in dotazione, l’uomo può far corrispondere delle risposte. I segni in realtà sono frasi in cinese e il manuale contiene le risposte sensate ad ogni possibile domanda. Presupposto che la persona nella stanza non sia cinese, è corretto pensare che tale individuo conosca il cinese, perché ha risposto correttamente alle domande? No. Il Turing test manca di sensorialità.

1.3 IL RICONOSCIMENTO MECCANICO OGGI

Negli anni ’90 il mercato dell’informatica muta profondamente in seguito alla nascita del Web e della diffusione di massa dei computer e l’attenzione si è spostata più sul RECUPERO DELLE INFORMAZIONI (Information Retrieval - IR) e sull’INTERFACCIA UOMO-MACCHINA (Human Machine Interface - HMI).

1.3.1 COMPRENSIONE DEL TESTO E RICERCA DI DOCUMENTI

L’informatica si è sviluppata grazie alla condivisione delle informazioni. Queste informazioni però non sono reperibili subito e in modo corretto perché il sistema del recupero delle informazioni non è dotato di riconoscimento linguistico. Un normale motore di ricerca seleziona i documenti al cui interno vi sono le stesse parole inserite dall’utente nella query (richiesta), senza tentare di attribuire loro alcun significato.

1.3.2 CERCARE IMMAGINI CON LE PAROLE

La ricerca d’informazioni, quando si tratta non di testi scritti ma di immagini, video, suoni ecc., si basa sull’utilizzo delle parole non in quanto tali ma sul loro significato (Content-base Retrival - CBR). Il problema, nell’utilizzare questo sistema di ricerca, riguarda la capacità del computer di identificare un’immagine tra le centinaia di migliaia presenti in rete, corrispondente alla richiesta fatta dall’utente tramite le parole.

Quindi l’utente può sfruttare l’elemento dell’ANNOTAZIONE per specificare con più ma poche parole il contenuto delle immagini. Non è detto, però, che tale metodo funzioni, perché è possibile ‘forzarlo’. Se ad esempio andassimo nella sezione delle 44

immagini di google.it e scrivessimo, cercando poi, ‘il vento tra gli alberi’, non otterremmo mai ciò che cerchiamo sul serio bensì un numero vario di immagini tra loro diverse e derivanti da diversi campi d’azione.

Il progetto ASSAVID, di cui fa parte anche l’università di Firenze, cerca di riconoscere gli eventi sportivi da video, riguardanti manifestazioni sportive quali le Olimpiadi e i campionati mondiali, sfruttando il sistema dell’annotazione automatica in seguito al riconoscimento visivo dello sport in questione.

1.3.3 PARLARE AL COMPUTER

Il rapporto uomo-macchina è limitato dalla fruizione delle potenzialità dei computer che sono parecchie di più rispetto alle potenzialità umane e l’ARPA, agenzia militare americana, ha studiato questo problema, migliorandone l’interazione. I progressi fatti in tal senso riguardano la grafica, il time sharing, l’interattività dei sistemi operativi, le periferiche di input/output ecc.

La comunicazione verbale tra uomo e macchina al momento comprende due tipi di canali: INTERFACCEDI COMANDI, per ordinare con poche frasi al computer di eseguire una determinata azione, e DETTATURA, affinché attraverso il riconoscimento vocale, le parole, che presuppongono il possedimento di un ampio vocabolario da parte del computer, vengano trasformate in testo scritto leggibile con qualsiasi programma di videoscrittura.

La ricerca informatica attraverso tanti progetti quali ad esempio il VODIS (Voice Operated Driver Information Systems) mira a migliorare la vita dell’uomo, permettendo attraverso l’uso della voce di compiere azioni che normalmente richiederebbero l’assistenza e le azioni dell’uomo, come ad esempio, il park assist che evita all’uomo tutte le manovre necessarie per il parcheggio, poiché, una volta messo in funzione il sistema del parcheggio automatico, la macchina fa tutte le manovre dovute senza che l’uomo debba usare lo sterzo o il cambio. Un altro progetto, il D- HOMME (Dialogues for the Home Machine Environment), è intenzionato a informatizzare tutta la tecnologia casalinga - macchine da caffè, tapparelle, luce ecc. - così da poterla comandare e azionare a piacimento senza doversi muovere.

1.3.4 UN VECCHIO SOGNO, TRADURRE CON IL COMPUTER

Un altro campo da cui ci si aspetta sempre più progressi è la traduzione automatica. La problematica, come del resto tutta l’informatica, è stata affrontata innanzitutto a livello militare e in un primo momento ci si è basati sulla semplice traduzione letterale delle parole da una lingua a un’altra, come farebbe un individuo che deve tradurre qualcosa in una lingua che non conosce affatto.

Oggi giorno, al contrario, si fa affidamento anche alla traduzione simultanea. Per ciò che concerne il testo scritto, invece, ci sono software e sistemi di traduzione online già in circolazione che offrono delle buone prestazioni di traduzione, come ad esempio il SYSTRAN. È ovvio che, se si tratta di terminologie tecniche, la traduzione deve essere pertinente e non ambigua.

CAPITOLO 2: IL PRIMO LIVELLO – I SEGNALI DEL MONDO ESTERNO

Alan Turing fu il primo a teorizzare la parte principale dei computer che fino ad oggi non è cambiata: l’essere DIGITALE, ossia esser capace di rappresentare un insieme di informazioni tramite un numero finito di simboli. Digit=dato/cifra. Il contrario di digitale è analogico.

2.1 SEGNALI LUMINOSI E MMAGINI DIGITALI

L’elemento di base attraverso cui il computer analizza un’immagine è il PIXEL (picture element) e con il termine di DIGITALIZZAZIONE si designa il procedimento attraverso cui i segnali luminosi vengono tradotti in linguaggio binario e quindi compresi dal computer. Tale procedimento è caratterizzato da vari elementi:

1) quanti pixel presenti nell’immagine; 2) quanti e quali colori impiegare per ogni pixel; 3) quanti simboli diversi usare per ogni colore di ogni pixel 44

Molti di questi fattori ancora oggi dipendono dalla tecnica televisiva la quale è stata la prima a occuparsi dell’immagine.

2.1.1 IL COLORE

I colori primari riconosciuti a livello globale sono ROSSOVERDEBLU (RGB) mentre nella realtà la luce è uno spettro continuo d’infinite diverse lunghezze d’onde. La TEORIA TRICROMATRICA ha senso in quanto nella retina dell’occhio umano sono stati riscontrati 3 coni-recettori che percepiscono principalmente questi tre colori, quindi tutti gli altri li ricaviamo dalla congiunzione di questi tre. Tra l’altro è possibile creare colori che sono diversi ma che sembrano uguali attraverso la resa identica di quei tre colori, che creano le cosiddette luci ingannatrici.

È possibile creare delle combinazioni di colori maggiori sfruttando più dei tre colori- base ma il costo di tali software che possono permettere tutto ciò è abbastanza elevato, tra l’altro non è sempre necessario ricorrere al colore per evidenziare una differenza cromatica. Si pensi alla prima televisione in bianco e in nero dove la differenza cromatica si avvertiva solo con una variazione della scala di grigio, dal nero al bianco passando per le varie gradazioni di grigio.

2.1.2 LA RISOLUZIONE SPAZIALE

Per discretizzare un’immagine, cioè per darle forma simile a quella analogica nella sua versione digitale, sul piano orizzontale si è partiti da un presupposto analogico mentre sul piano verticale l’immagine veniva attraversata dal pennello elettronico e per conservare la medesima proporzione reale si usava un numero fisso di pixel sia in senso orizzontale sia in senso verticale, ossia 512x512. Attualmente la RISOLUZIONE, cioè il numero complessivo in cui si è spezzettata l’immagine originale in elementi minimi non più divisibili, può sfruttare diversi milioni di pixel. In un pixel, a seconda di ciò che stiamo riprendendo, si possono racchiudere misurazioni piccolissime o grandissime (micron vs km2).

2.1.3 BIT PER PIXEL

Occorre fissare il numero di simboli per ogni pixel dell’immagine. Questi simboli si codificano con i BIT e l’operazione da effettuare per sapere quanti bit occorrono è la seguente N=2b dove N è il numero di simboli rappresentabili con un b bit e b è il numero di bit. La maggior parte delle volte però non si usa il bit, bensì il BYTE ossia 256 bit, perché con il byte si ha la capacità di rappresentare 256 simboli (ad esempio i 256 caratteri a stampa) e le altrettante gradazioni per ognuno dei colori RGB i quali possono tutti quanti avere solo due valori N. Nel caso del colore, avendo 8 bit per ogni piano di colore, abbiamo 24 bit totali per pixel ossia 2 24=16777216 diverse tinte. Tali tante possono anche servire per rappresentare anche una semplice immagine in bianco e nero, dove con 0 si rappresenta il nero e con il 255 il bianco, passando per i vari gradi di grigio.

2.2 I SENGALI DEL PARLATO E IL LORO TRATTAMENTO

Il segnale audio è una sequenza di valori dipendente dall’intensità della pressione sonora al variare del tempo. Una delle teorie più classiche per l’analisi del segnale audio è la FREQUENZA, ovvero l’analisi delle caratteristiche delle onde pure che compongono il segnale.

2.2.1 DAL DOMINIO DEL TEMPO A QUELLO DELLE FREQUENZE

In matematica la pressione sonora prodotta dalla voce nell’emettere un segnale si calcola tramite le FUNZIONI TRIGONOMETRICHE PRIMARIE (seno e seseno). I suoni più acuti sono caratterizzati da una frequenza più alta mentre quelli più gravi da una più bassa. L’intensità del segnale si misura in HERZ, ossia attraverso il numero di oscillazioni in un secondo.

Con la TRASFORMATA DI FOURIER dal segnale puro, che puro effettivamente non lo è mai in quanto il segnale è composto da vari fattori che s’aggiungono l’un l’altro, nascondendo a volte la/e frequenza/e principale/i, si ricava la frequenza e l’ascissa (asse x) di rappresentazione del grafico non riguarda più il tempo ma la frequenza, mentre l’ordinata (asse y) riguarda l’ampiezza di ciascuna frequenza nel segnale originale.

2.2.2 L’ABBINAMENTO TEMPO-FREQUENZA

44

Con la trasformata di Fourier nel grafico è presente vengono registrate tutte le frequenze relative al dato segnale sonoro, perdendo d’altra parte l’importanza del tempo, quindi si è pensato alla TECNICA DEGLI SPETTROGRAMMI, attraverso cui si mantiene la frequenze del parlato nel tempo e si effettuano tante analisi di Fouier su piccole porzioni temporali dell’ordine di decine di millesecondi. La frequenza viene calcolata e trovata sovrapponendo più porzioni temporali che si collegano tra loro e queste sovrapposizioni vengono disposte in strisce verticali di diverso livello di grigio, dove il nero è la potenza massima sonora mentre il bianco non equivale ad alcuna emissione.

2.3 CONTORNI, SPIGOLI E ALTRI INDIZI

In una scena per riconoscere gli oggetti, bisogna riconoscerne la SAGOMA (SHAPE) ed individuare il CONTORNO (BOUNDARY), il quale è un indicatore più o meno attendibile della sagoma e che dipende da vari fattori. Per le parti invece che non hanno sagoma, è importante individuare la TESSITURA (TEXTURE), ossia la struttura di dettaglio interna, come nel caso di un campo di grano o di una roccia. La linea immaginaria, al contrario, dove finisce un oggetto e inizia tutt’altro è definita comunemente SFONDO (BACKGROUND).

2.3.1 LA CONVOLUZIONE

La CONVOLUZIONE è un filtro che trasforma un’immagine iniziale, vista come matrice di numeri, in una nuova, detta KERNEL O ELEMENTO STRUTTURALE, con le stesse dimensioni in cui ogni pixel è modificato utilizzando i valori dei suoi vicini. È un processo generico che può servire a diverse elaborazioni. Il procedimento prevede l’applicazione ad un’immagine di una maschera in cui sono presenti dei numeri che vengono moltiplicati per i pixel corrispondenti e poi sommati. Il risultato sarà il valore del pixel nell’immagine risultante. La maschera viene mossa di una posizione lungo tutte le linee e tutte le colonne dell’immagine originale.

Se applichiamo la maschera ad un’immagine di pochi pixel ciò che andremo a fare sarà ammorbidire il contrasto (SMOOTHING) dell’immagine, sostituendo la media del valore di ogni pixel con i vicini. Il simbolo della convoluzione è un cerchio tagliato in 4 parti da due croci.

:

Esempio di convoluzione

Il quadratino contornato di rosso è il pixel di riferimento dell’immagine originale mentre il quadrato in verde designa i valori che verranno sottoposti a convoluzione. Sovrapponendo i valori del kernel a quelli dell’immagine originale e moltiplicandoli e poi sommandoli, otterremo il risultato della convoluzione.

[(40*0)+(42*1)+(46*0)+(46*0)+(50*0) +(55*0)+(52*0)+(56*0)+(58*0)] = 42.

2.3.2 GLI EDGE DETECTOR

Gli EDGE DETECTOR servono a individuare i contorni attraverso il gradiente gray- level. La EDGE, che è diversa dal contorno, è una zona di confine che di solito rappresenta una porzione del contorno, il quale non è detto che sia interamente composto dall’unione di porzioni di edge. La caratteristica della edge è la variazione brusca del segnale luminoso del gray-level. Un primo elemento attraverso cui notare la variazione è la lettura dei valori dei pixel vicini che, in prossimità di un contorno, dovrebbero aumentare di valore. 5 7 6 4 152 148 149

Tra il quarto e il quinto pixel è molto ipotizzabile la presenza di un contorno in quanto i valori tra i due pixel variano in modo brusco.

Il DETECTOR DI ROBERTS CROSS è una maschera particolare 2x2 che prevede che il contorno venga calcolato tramite l’utilizzo della somma dei quadrati dei valori dei pixel associati all’immagine, ed è tipico dei contorni che hanno un orientamento di 45 gradi. È, però, sensibile al rumore, ossia ai pixel non appartenenti alla figura originale ma dipendenti da fattori artificiali, quali la bassa risoluzione ecc.

44

L’EDGE DETECTOR DI SOBEL, invece, è una maschera 3x3 specifica per le linee verticali e non prende in considerazione i valori ai bordi di un’immagine per esser avere una migliore performance. Attraverso questo filtro è possibile ottenere un contorno più nitido rispetto al filtro di Roberts Cross.

Tali filtri sfruttano la tecnica della convoluzione per calcolare la DERIVATA, ossia la misura del gradiente/dell’intensità lungo una direzione dell’immagine.

2.3.4 PROBLEMI DI SCALA

La SCALA è il livello di dettaglio in cui cerchiamo discontinuità. In una scena i contorni si cercano e si analizzano oggetto per oggetto, secondo una scala di dettaglio di zoom sui particolari. La ricerca dei particolari è una particolarità della vista umana che

utilizza diverse scale di dettaglio in un continuum spaziale che permette di definire la scala come una dimensione aggiunta oltre a quelle normalmente conosciute.

Prendendo in considerazione un’immagine, non è possibile crearne un’altra di risoluzione maggiore, però è possibile creare la dimensione di scala verso l’uniformità fino al limite di un unico colore uguale per l’intera immagine. Tale scala si crea tramite lo SMOOTHING e l’utilizzo di maschere basate sulla FUNZIONE DI GAUSS, dove il pixel di partenza è quello più importante e viene miscelato con gli altri in misura via via minore tanto più lontani sono gli altri.

L’espressione matematica più semplice della funzione di Gauss è la seguente:

A una dimensione ha la classica forma a campana e i suoi parametri sono dati da µ (mu), ossia la posizione del centro, e da σ (sigma), ossia la larghezza della campana, mentre nella versione a due dimensioni rappresenta la maschera di convoluzione, il centro corrisponde al centro della maschera, ed è la seguente:

In tale funzione a due dimensioni, l’unico parametro è il sigma σ che può rendere più o meno piatta la campana e quindi può far variare l’effetto di smoothing. Se è stretta riguarda pochi pixel, se è piatta uniforma tutta l’immagine. Raramente σ > 4 perché la maschera deve riuscire a contenere i valori utili della funzione.

44

Confronto tra funzione di Gauss a 1D e a 2D

Con i filtri relativi alla derivata seconda influenzano la scala da applicare all’immagine perché tendono ad evidenziare discontinuità isolate e quindi a trovare un numero enorme di contorni inutili nei dettagli dell’immagine.

Esempio di edge detecting con la funzione gaussiana

L’OPERATORE MARR-HILDERTH ha combinato il filtro della derivata seconda di Laplace con la funzione gaussiana, portando l’immagine, prima a esser uniformata, facendo rimanere in contrasto i contorni degli oggetti d’interesse, e poi a calcolarne la derivata seconda per evidenziare i zero-crossing, ossia quali pixel corrispondono o si

avvicinano di più allo zero. Tale filtro è conosciuto anche come MEXICAN HAT e come meccanismo è stato riscontrato anche nella visione dei primati.

Esempio 1D e 2D del “sombrero”

Esempi di edge detecting con il filtro Marr-Hildreth:

1) filtraggio con Laplace

σ=2 Peso=13

2) zero crossing

3) Identificazione dei bordi con dipendenza dai valori di σ

σ=0,5 σ=1 σ=2 σ=4

Con la tecnica della NORMALIZZAZIONE si attribuiscono i valori più bassi al nero e quelli più alti al bianco.

CAPITOLO 3: UN LIVELLO INTERMEDIO – LA RAPPRESENTAZIONE

Dopo aver analizzato l’immagine dal punto di vista delle matrici di pixel, è necessario concentrarsi sugli oggetti dell’immagine e sulle loro proprietà; di qui l’esigenza di una rappresentazione.

3.1 SEGMENTAZIONE, OVVERO L’IMMAGINE A PEZZI

SEGMENTARE in senso lato significa dividere l’immagine in pezzi, mentre a livello matematico significa partizionare. In generale tale processo prevede la suddivisione dell’immagine in parti che corrispondono poi ai diversi oggi d’interesse dell’usufruente del computer. 44

La segmentazione ha lo scopo di attribuire la medesima identità ad un gruppo di pixel e riguarda le IMMAGINI BINARIE i cui valori dei singoli pixel possono essere solo due e vanno interpretati secondo la logica: questo pixel fa parte del segmento? Se è bianco allora il valore sarà VERO; se sarà nero allora il valore sarà FALSO.

La segmentazione permette di ottenere determinate informazioni: l’area, ossia quanti pixel ci sono, quanti pixel compongono il contorno ecc. ma per poter essere utile deve rappresentare in modo veritiero e proporzionato l’oggetto che stiamo andando ad analizzare.

3.1.1 L’OPERAZIONE DI THRESHOLD

Il THRESHOLDING consiste nello stabilire se un pixel appartiene o meno al segmento in base al suo valore, imponendo dei limiti al di fuori o all’interno dei quali esso viene accettato. Più alto è il valore dei pixel accettati, più pixel risulteranno nell’immagine finale e tale procedimento può essere applicato a qualsiasi tipo d’immagine, compresa quella a colori, che viene analizzata trattando in modo separato i 3 diversi colori primari. Inoltre, è ben applicabile in quelle immagini dove lo sfondo è in netto contrasto con tutto il resto e dove vi è un solo oggetto.

Esempio di thresholding che mette in evidenza le porzioni di pelle

3.1.2 SEGMENTARE PARTENDO DALLE EDGE

Ripartendo dall’utilizzo dell’edge, per poter segmentare l’immagine è necessario fissare un criterio attraverso cui attribuire il valore minimo d’intensità ai pixel per poterli considerare facenti parte realmente del contorno: è a questo ciò che servono i discriminanti VERO e FALSO.

Stabilendo i valori minimi positivi e negativi d’accettazione oltre lo 0 dei pixel, si mettono in evidenza i pixel del contorno, compresi quelli dello zero-crossing.

3.1.3 CHIUDERE UN CONTORNO

Nonostante si stabiliscano i valori attraverso cui identificare il contorno, possono verificarsi determinati inconvenienti:

1) il contorno è a tratti interrotto; 2) vi sono più linee di contorno parallele; 3) il percorso è più frastagliato e ridondante della realtà; 4) il contorno ha larghezza di diversi pixel.

Tali problematiche prevedono l’applicazione di diverse metodologie a seconda dell’immagine e dell’oggetto preso in considerazione. In alcuni casi si lavora localmente su ogni edge segmentata pixel per pixel e se la edge risulta troppo complicata, si cerca di semplificarla.

Per i contorni spezzati, si può seguire idealmente la direzione del contorno, vedendo se ne incontra un altro abbastanza allineato da esser considerato la sua continuazione. Da notare inoltre che, se si conosce già la forma dell’oggetto in esame, il problema dei contorni spezzati non è poi così insormontabile in quanto si possono ricreare i contorni in modo tale da fargli assumere la forma corretta. Ovviamente in tal caso si tratta di oggetti dalla geometria semplice.

La TRASFORMATA DI HOUGH si applica in generale per il riconoscimento delle linee e di determinate forme arbitrariamente definite e trasforma l’immagine segmentata delle edge nello spazio dei parametri di tali linee geometriche, ossia l’angolazione e il punto di attraversamento dell’asse orizzontale. Se l’oggetto si pensa che abbia forma circolare, invece, i parametri da tenere in considerazione sono tre e sono il raggio e le posizioni verticale e orizzontale del centro.

44

3.1.4 CONTORNI ATTIVI

La segmentazione basata sulle edge non tiene conto di un fattore importante che può influenzare il risultato sperato e cercato: le caratteristiche interne dell’oggetto in termini di colorazione e di tessitura. Si dà solo importanza solo al gradiente.

Il CONTORNO ATTIVO, noto anche come BALOON, è un contorno continuo di una certa forma che viene inizialmente posizionato interamente all’interno dell’oggetto da segmentare e poi dilatato, un po’ come un palloncino che si gonfia. I livelli d’intensità dell’immagine vengono trasformati in energia all’esterno di questo contorno- palloncino, in modo tale che ogni gradiente eserciti una resistenza all’avanzamento. Al contrario l’uniformità del gray-level all’interno del palloncino fa pressione, facendolo espandere. Inoltre s’introducono dei parametri che conferiscono elasticità al contorno, quindi le varie forze che agiscono sul palloncino si scontrano fino a giungere ad un equilibrio e a quel punto il contorno si fissa, diventando definitivo. I vantaggi di tale contorno sono che quest’ultimo non sarà mai spezzato e che sarà sempre abbastanza regolare, evitando così le operazioni di pulitura e di legatura attuate con gli edge detector. Ciò, però, non garantisce in pieno che dentro ci sia l’oggetto da segmentare.

3.3. IL PARSING, ALLA SCOPERTA DELLA FRASE

Il PARSING corrisponde alla segmentazione dell’immagine, solo che riferisce alla frase, e serve a stabilire i vari ruoli sintattici e quindi grammaticali assunti dalle parole all’interno della frase, prima del vero e proprio riconoscimento linguistico. A livello di computer non esiste un dispositivo capace di analizzare le parole dal punto di vista sintattico e quindi lo si è dovuto inventare, dandogli il nome di PARSER, mentre secondo Chomsky esso esiste come elemento naturale del cervello. Questo parser deve conosce la sintassi e le varie relazioni che le parole possono avere all’interno della frase, per poter permettere al computer di avvicinarsi al modello del cervello umano.

3.3.1 LE GRAMMATICHE

Le GRAMMATICHE GENERATIVE DI CHOMSKY sono un insieme di regole di produzione che fanno uso di elementi da due insiemi: gli ELEMENTI NON TERMINALI (CATEGORIE GRAMMATICALI) e gli ELEMENTI TERMINALI (LESSICO).

Esempi di regola di produzione sono:

SV ==> SN V SN ==> D N N ==> gatto Legenda: SV = sintagma verbale; SN = sintagma nominale; V = verbo; D = determinante/art. det.; N = nome

La regola dice che ciò che c’è a sinistra della freccia può essere sostituito da ciò che c’è alla sua destra. I simboli non sono altro che abbreviazioni delle categorie grammaticali e gli elementi non terminali sono abitualmente scritti in maiuscolo mentre gli elementi terminali sono scritti in minuscolo. x e y indicano una sequenza generica non terminale, mentre una sequenza mista di elementi terminali e non terminali si evidenzia con lettere greche del tipo ψ(psi), β (beta).

Le grammatiche di Chomsky si dividono in categorie concentriche:

1) la grammatica più completa è la GRAMMATICA ILLIMITATA o NON RISTRETTA (PHRASE STRUCTURE GRAMMAR - PSG) di TIPO 0, dove non vi sono regole di produzione definite e quindi la si rappresenta con la dicitura

ψ ==> β lasciando intendere che una combinazione qualsiasi di simboli terminali e non terminali si può trasformare in un’altra combinazione arbitraria.

2) la GRAMMATICA CONTESTUALE o SENSIBILE AL CONTESTO (CONTEST SENSITIVE GRAMMAR - CSG) è una grammatica di TIPO 1 caratterizzata da regole essenziali e chiare che limitano quanto basta l’illimitatezza della lingua, permettendo l’espansione solo di simboli non terminali uno per volta in funzione del contesto, ossia di ciò che viene subito prima o subito dopo. La regola tipo si esprime nel modo seguente:

β A y ==> β ψ y Tale grammatica è simile alla GRAMMATICA MONOTONA che funziona come la grammatica illimitata di tipo 0 con l’unica clausola che ψ non contenga più elementi di β.

3) la GRAMMATICA LIBERA DAL CONTESTO (CONTEST FREE GRAMMAR - CFG) è di TIPO 2 e prevede che, tramite delle regole stabilite, si possa espandere solo un 44

simbolo non terminale per volta ma a piacere, indipendentemente dal contesto. La regola si esprime nel modo seguente:

A ==> ψ Molti studiosi, in realtà, ritengono che il linguaggio sia sempre in qualche modo legato al contesto, perché molte regole linguistiche sono, infatti, funzione degli altri elementi, come ad esempio la produzione di un terminale

D ==> alcune che è corretto solo se a seguire c’è un sintagma nominale plurale e femminile. Tale precisazione creerebbe una regola di produzione del tipo

D SNp,f ==> alcune SNp,f ma questa non è una regola consentita nella grammatica libera dal contesto proprio perché è fondata sulla dipendenza dal contesto, i pedici p,f che stanno per plurale e per femminile, per poter creare la regola di produzione. È possibile ovviare a problemi del genere con la grammatica sensibile al contesto dove la suddetta regola è valida ed è quella addirittura tipica.

4) la GRAMMATICA REGOLARE o LINEARE (REGULAR GRAMMAR - REG) è di TIPO 3 e prevede che ogni regola espanda solamente un elemento non terminale nei modi seguenti:

A ==> x B A ==> x

l’elemento non terminale o si trasforma in un elemento terminale seguito da uno non terminale oppure si trasforma in uno terminale.

Uno dei problemi delle grammatiche è stato fin da subito quello di individuare una grammatica né troppo forte, ossia capace di creare linguaggi inesistenti, né troppo poco forte, ossia incapace di risolvere problemi sintattici che avvengono nel linguaggio reale e nel caso della grammatica regolare il problema riguarda L’ESPANSIONE ALL’INFINITO DELLE SUBORDINATE, che s’insinuano tra i due termini iniziali, impedendo la formulazione della frase.

Ad esempio:

il banchiere scappa il banchiere inseguito dal ladro scappa il banchiere inseguito dal ladro inseguito dalla polizia scappa

Tale problema è risolto dalla grammatica fuori contesto.

5) La GRAMMATICA A SCELTA FINITA (FINITE CHOICE GRAMMAR – FCG) è di TIPO 4, prevede di elencare da cosa è composto un non terminale ed è espressa dalla seguente regola di produzione:

A ==> x

Nel linguaggio parser, e quindi nel riconoscimento automatico, ad ogni classe grammaticale corrisponde una classe di algoritmi capace di riconoscere i linguaggi aderenti a quella grammatica.

Per i linguaggi di tipo 0 è stata dimostrata l’impossibilità di costruire un algoritmo di parsing. Le grammatiche di tipo 1 hanno la garanzia dell’esistenza di parser, ma costruirne uno efficiente è difficile. Buona parte della ricerca relativa al riconoscimento linguistico si è incentrata sulla grammatica di tipo 2, quindi sul parsing della contest free grammar. I parser per la grammatica di tipo 3 sono molto semplici e possono risolvere solo una minima parte delle frasi del linguaggio naturale.

3.3.2 ALBERI SINTATTICI

Gli ALBERI SINTATTICI sono la rappresentazione visiva di come è strutturata una frase e in matematica rappresentano un caso particolare dei GRAFI, una struttura teorizzata da Eulero nel 1736, con VERTICI e ARCHI che creano collegamenti. Il significato di entrambi è arbitrario e dipende dall’applicazione.

44

Esempio di albero sintattico a tre ramificazioni

Degli alberi si preferisce di gran lunga quello BINARIO, ossia l’albero dove sono presenti al massimo due diramazioni a partire dalla radice e non più di due termini al lato destro delle sue regole. Questa è la FORMA NORMALE DI CHOMSKY (CHOMSKY NORMAL FORM - CNF), che riprende la caratteristica delle grammatiche di tipo 2. Inoltre in codesta forma son presenti, oltre agli elementi terminali e non terminali, gli ELEMENTI PRETERMINALI che portano alle foglie, ad esempio D e N che portano ai terminali ‘il’ e ‘gatto’.

Esempio di albero binario

La forma normale di Chomsky si basa su due regole:

A ==> B C non più di due rami per ogni nodo A==> x impossibilità d’avere due rami di tipo diverso e A =

elemento preterminale

L’uso delle regole delle grammatiche permette di passare dalle une alle altre e permettono la creazione, in seguito a deduzione corrette a partire da una sola frase, di più alberi sintattici. Questa grammatiche, proprio per questo motivo, vengono dette AMBIGUE.

Il miope è il cinese

44

Il miope è Dagoberto

La differenza nei due alberi sintattici sta nell’espansione del SV che nell’albero in alto è amplificato come segue SV ==> V SN, mentre nell’albero in basso è espanso in SV ==> SV SP.

3.3.3 GRAMMATICA E LESSICO

Il LESSICO è un insieme di parole del linguaggio con associato il simbolo preterminale, cui ciascuna appartiene e a seconda di quanto debba essere dettagliata la differenziazione tra gli elementi, esistono due categorie: quella riguardante il ruolo dell’elemento all’interno della frase (PARTS-OF-SPEECH) che racchiude simboli preterminali come N, D, V ecc.; quella riguardante la grammatica quindi il maschile e il femminile, il singolare e il plurale dei simboli. I simboli preterminali solitamente hanno dei pedici che li distinguono gli uni dagli altri, ad esempio N f,s o Nm,p ecc.

Esistono ambiguità che non dipendono tanto dalla presenza di più regole correttamente dedotte, come il caso di Dagoberto e degli occhiali, quanto da regole lessicali che permettono l’esistenza di una stessa parola in due diverse attribuzioni categoriali, come la parola ‘pesca’ che può essere attribuita ai preterminali N, come l’atto della pesca o la pesca come frutto, e V, in quanto terza persona singolare del tempo presente del verbo pescare.

3.3.4 ALCUNI PARSER

Esistono vari tipi di parser, ma i più famosi sono due:

1) i TOP-DOWN o PREDICT-MATCH partono dall’alto, quindi dalla radice, che ha F come simbolo non terminale, per arrivare ai simboli terminali o foglie, cioè alle parole, attraverso l’utilizzo delle grammatiche e dell’espansione ipotetica dei simboli non terminali a partire da sinistra.

Il parser top-down oltre alla frase di partenza conosce il lessico e la grammatica costituenti la frase e sa che uno stesso simbolo non terminale si può espandere in modi diversi.

La metodologia usata è quella del BACKTRACKING: ogni volta che il parser incontra un simbolo non terminale, cui sono associate diverse regole di espansione, segue una regola d’espansione per volta, attraverso l’operazione PREDICT, verificando se essa è valida; se così non è, ritorna indietro e tenta un’altra regola d’espansione. Non appena il parser arriverà in presenza di un preterminale, dopo essersi mosso sempre a partire dall’elemento più a sinistra, esso cercherà di abbinare una parola della frase con il preterminale in oggetto, attraverso l’operazione MATCH. Se l’abbinamento riesce, si va avanti nella frase, altrimenti si riutilizza il backtracking.

44

Esempio di parser top-down

Uno dei primi algoritmi di tipo top-down è stato creato da FARLEY.

2) i BOTTOM-UP o SHIFT-REDUCE partono dal basso, dalle foglie o parole, analizzandole in sequenza, cercando le regole che combinino i vari costituenti in simboli non terminali e spostandole da sinistra, fino ad arrivare al simbolo non terminale per eccellenza: F.

Un algoritmo famoso, invece, sul versante dei parser bottom-up è stato inventato da COCKE, KASAM e YOUNGER, da cui prende il nome in codice CKY.

commenti (0)

non sono stati rilasciati commenti

scrivi tu il primo!

Questa è solo un'anteprima

1 pagina mostrata su 57 totali

Scarica il documento