Texture analysis Introduzione
Transcript
Texture analysis Introduzione
Texture analysis Introduzione Una regione di una immagine può essere rappresentata mediante le sue caratteristiche esterne – i contorni Descrittori per i contorni: lunghezza, orientazione, del segmento congiungente punti estremi, numero di concavità… Oppure mediante le sue caratteristiche interne – i pixel che appartengono alla regione Una rappresentazione interna è necessaria quando le caratteristiche principali della regione sono il colore e la texture Caponetti 1 Texture Un approccio fondamentale per la descrizione di una regone è quantificare il suo contenuto di texture Non c’è una definizione formale di texture: intuitivamente la texture descrive proprietà quali smoothness – levigatezza coarseness – grossolanità regularity - regolarità Caponetti Texture Consideriamo una superficie coperta da boschi L’immagine non è uniforme e contiene variazioni di intensità che formano particolari pattern ripetuti detti visual texture I pattern possono essere il risultato di proprietà della superficie quali Ruvidità, striature di particolare orientazione riflettanza Caponetti 2 Modelli di texture Proprietà intuitive che una texture potrebbe soddisfare: La texture è una proprietà di una regione; la texture di un punto è indefinita. La texture quindi è una proprietà contestuale e la sua definizione deve tenere conto di un intorno spaziale dei pixel La texture è in relazione alla distribuzione spaziale di livelli di grigio. Così istogrammi e matrici di cooccorrenza forniscono metodi per la descrizione di texture Caponetti Località La texture è una proprietà locale di un intorno del pixel Caponetti 3 Texture deterministiche Texture deterministica Caponetti Modelli di texture Proprietà intuitive che una texture può soddisfare: La texture in una immagine può essere percepita a differenti scale o livelli di risoluzione. Per esempio la texture di un muro di mattoni Ad una risoluzione grossolana la texture è percepita come formata da mattoni ed i dettagli di ciascun mattone sono persi Ad una risoluzione più elevata la texture mostra i dettagli dei mattoni Una regione è percepita come texture quando il numero di oggetti primitivi presenti è molto elevato Se solo pochi oggetti primitivi sono presenti allora un gruppo di oggetti è percepito e non una immagine con texture Caponetti 4 Scala Caponetti Proprietà di Law Laws definisce un insieme di proprietà da considerare nella descrizione di una texture: uniformity, density, coarseness, roughness, regularity, linearity, directionality, frequency, phase Caponetti 5 Texture Una definizione di texture Con texture si intende una qualunque disposizione geometrica e/o ripetitiva dei livelli di grigio di una immagine Una regione in una immagine ha una texture costante se un insieme di statistiche locali o altre proprietà sono costanti o variano lentamente oppure sono approssimativamente periodiche Caponetti Texture detection Per texture detection si intende un processo che separa, trovandone i bordi, le zone con texture differenti La figura b) contiene i bordi texture, della immagine a) a delle 5 regioni, di differente b Caponetti 6 Texture classification La classificazione tende a riconoscere a quale classe una texture appartiene Classificare una texture è più difficile che discriminarla, poiché quella stessa texture può apparire in un'immagine in modi anche assai diversi tra loro. Dipende da grado di luminosità, orientazione scala …. Applicazioni sono: ispezionamento, immagine mediche, immagini di documenti… Caponetti Ispezionamento Ad esempio in campo tessile, è stata utilizzata la texture per il riconoscimento automatico di difetti, basato sulla estrazione di features e sulla classificazione per ricercare le aree in cui il difetto è presente Caponetti 7 Immagini mediche In generale l’applicazione coinvolge la descrizione della texture di particolari regioni di interesse e l’applicazione di metodi classificazione ad esempio per distinguere tessuti normali da tessuti anormali. Ad esempio nello studio di malattie polmonari Caponetti Immagini di documenti Una applicazione è l’analisi di documenti basata sulla texture Ad esempio l’elaborazione di una immagine di un documento per segmentarla in regioni da classificare in: Regioni di testo Regioni uniformi – background Aree di transizione tra testo e background Input Caponetti b 8 Descrizione di texture Gli approcci principali per la descrizione della texture sono l’approccio statistico, strutturale e spettrale I metodi statistici consentono di caratterizzare texture come smooth, coarse, grainy e così via Le tecniche strutturali si occupano della disposizione di primitive, ad esempio descrizioni basate su linee disposte in modo regolare I metodi spettrali sono basati sull’analisi dello spettro di Fourier dell’immagine e sono utilizzati per rilevare periodicità presenti nella immagine. Le periodicità si manifestano nello spettro come picchi con un elevato contenuto energetico Caponetti Descrittori statistici I descrittori statistici della texture sono basati sulla distribuzione locale dei valori di grigio: Valor medio Momenti Matrice di Co-occorrenza Matrice di autocorrelazione Caponetti 9 Valore medio Siano: z una variabile random che denota i livelli di grigio p(zi) per i=0…L-1 l’istogramma di z La media m è una misura della intensità media: L −1 m= ∑ zi p( zi ) i =0 dove L è il numero dei livelli di grigio distinti Caponetti Momenti Momento n-esimo intorno alla media m L −1 µn ( z ) = ∑ ( zi − m) n p( zi ) i=0 dove n indica l'ordine del momento Il momento µ2(z)=σ2 è la varianza e fornisce una misura del contrasto medio Caponetti 10 Momento de secondo ordine Mediante la varianza si può definire per una regione una misura di smoothness relativa di intensità R = 1− 1 1 + σ 2 ( z) R=0 in una regione di intensità costante –dove la varianza è zero R tende a 1 per valori elevati della varianza R si può normalizzare nell’intervallo [0,1] dividendo σ2 per (L-1)2 Caponetti Matrice di co-occorrenza Le misure di texture basate su istogrammi presentano degli svantaggi poiché i momenti statistici non hanno informazione sulla posizione reciproca dei pixel E’ necessario considerare non solo la distribuzione di intensità ma anche le posizioni dei pixel aventi livello di grigio simile Si considerano quindi dei discrettori applicati alla matrice di co-occorrenza Caponetti 11 Matrice di co-occorrenza Sia P un operatore di posizione. Ad ogni punto p1 mediante P si può associare un unico punto p2 Sia Ap una matrice il cui elemento aij rappresenta l’occorrenza di tutte le coppie di punti p1 e p2 , aventi intensità zi, e zj, e tali che p2 è ottento da p1 mediante l’operatore P 2 2 1 0 0 2 0 0 0 0 3 1 0 0 0 1 Caponetti Matrice di co-occorrenza La matrice di co-occorrenza dei livelli di grigio Ap per un vettore posizione d=(dx,dy) è definita come segue: Ogni elemento (i,j) di Pd è il numero di occorrenze della coppia di livello di grigio i,j distanti d 2 2 1 0 0 2 0 0 0 0 3 1 0 0 0 1 d=(1,0) Caponetti 12 Matrice di co-occorrenza Per esempio, consideriamo un’immagine codificata secondo tre livelli di intensità, z1=0, z2=1, z3=2: 00012 11011 22100 11020 00101 Sia l’operatore posizione P come “un pixel in basso a destra”, si ottiene la seguente matrice 3• 3 elementi Ad esempio l’elemento 0,0 è il numero di occorrenze di coppie aventi livello di grigio 0 ed in posizione P – tratto verde nella immagine 421 232 020 Caponetti Matrice di co-occorrenza L’operatore P si può definire mediante Offset: definisce, preso il pixel di riferimento, a quale distanza andare a considerare il pixel neighbour Es: la tipica distanza è 1, il pixel adiacente Angolo: definisce verso quale direzione muoversi per individuare il pixel neighbour, orizzontale, verticale, diagonale Caponetti 13 Matrice di co-occorrenza Sia n il numero di coppie di punti a cui può essere applicato l’operatore P, cioè che soddisfano P (nell’esempio precedente n=16) Definiamo C una matrice ottenuta dividendo ciascun elemento di Ap per n cij è una valutazione della probabilità congiunta che una coppia di punti, che soddisfano P, abbia valore (zi, zj) La matrice C è detta matrice di co-occorrenza dei livelli di grigio Caponetti Descrittori di Haralick applicati alla matrice di co-occorrenza Probabilità massima max cij i, j Fornisce una indicazione della coppia di valori più frequente nella regione Momento del secondo ordine: è una misura del contrasto o variazione locale di intensità m= ∑ ∑ (i − j) c 2 i ij j Un valore basso si ottiene se l’immagine ha livelli di grigio quasi costanti cioè livelli vicini alla diagonale principale Un valore elevato se l’immagine ha variazioni locali di intensità elevata Caponetti 14 Descrittori di Haralick Momento della differenza inversa cij ∑ ∑ 1 + (i − j ) i j 2 Ulteriore misura di omogeneità della texture Ragiona in maniera inversa al contrasto, infatti il denominatore aumenta allontanandosi dalla diagonale principale Lungo la diagonale principale sono presenti le frequenze delle coppie di pixel con lo stesso valore di grigio Caponetti Descrittori di Haralick applicati alla matrice di co-occorrenza Uniformità ∑ ∑c i 2 ij j Questa misura è massima quando tutte le coppie di livello di grigio hanno uguale probabilità, cioè i valori cij sono uguali Caponetti 15 Descrittori di Haralick Entropia − ∑ ∑c i ij log cij j L’entropia è una misura di randomness” I descrittori possono essere utilizzati in un sistema di visione in grado di apprendere i valori dei descrittori rappresentativi di un insieme di texture differenti Caponetti Matrice di co-occorrenza Prima di poter operare con la matrice questa deve essere trasformata in matrice simmetrica rispetto alla diagonale La simmetricità è ottenuta contando ogni coppia di pixel due volte, nella direzione stabilita e poi nella direzione inversa. Questo si ottiene scambiando di volta in volta il reference pixel con il neighbour pixel 2 2 1 0 4 2 1 0 0 2 0 0 2 4 0 0 0 0 3 1 1 0 6 1 0 0 0 1 0 0 1 2 GLCM originale GLCM simmetrica Caponetti 16 Metodi strutturali I metodi strutturali si basano sul principio che una texture possa essere ottenuta replicando una texture primitiva secondo regole che ne limitano il numero delle possibili disposizioni Consente descrizioni basate su regole sintattiche mediante le quali possono essere espressi i vincoli cui deve soddisfare una struttura simbolica Una struttura simbolica può essere una parola o una frase di un linguaggio di programmazione, ma anche una descrizione del modo in cui si ripetono elementi di tessitura o texel per costruire una texture complessa Caponetti Metodi strutturali Supponiamo di avere una regola S -> aS che indica la possibilità di riscrivere il simbolo S come aS. Se poniamo che a rappresenti un cerchio e stabiliamo che preporre una a corrisponde ad aggiungere un cerchio a destra, allora la regola S -> aS consente di produrre un pattern con una texture costituita da una sequenza di cerchi (tramite la stringa aaaa…aS) Caponetti 17 Metodi strutturali Supponiamo di aggiungere alcune regole in modo che la presenza di una b significhi “cerchio in basso” e la presenza di c significhi “cerchio a sinistra” Ad esempio la stringa aaabccbaa corrisponderebbe a una matrice 3 • 3 di cerchi Caponetti Chapter 11 Representation & Description Caponetti 18 Metodi strutturali L’idea base dei metodi strutturali è nella individuazione delle primitive e delle regole con le quali le primitive si compongono per formare il pattern dominante della texture Se la regola di composizione è riscorsiva, ovvero la primitiva compone la texture seguendo la struttura della primitiva stessa, la texture è detta autosimilare – ad esempio texture frattali Caponetti Frattali http://www.frattali.net/ Caponetti 19 Metodi spettrali Le misure spettrali di texture sono basate sullo spettro di Fourier, utile nella descrizione della orientazione di pattern 2-D periodici o quasi-periodici Lo spettro di Fourier è simmetrico rispetto all’origine Caponetti Metodi spettrali I pattern periodici possono essere rilevati nello spettro considerando i picchi più elevati: i picchi più elevati restituiscono la direzione del pattern il posizionamento dei picchi nel dominio delle frequenze fornisce informazioni sul periodo spaziale del pattern Lo spettro di Fourier è utile per discriminare tra pattern periodici e non Mediante filtraggio si potrebbero eliminare le componenti periodiche della immagine Le componenti non periodiche potrebbero poi essere descritte con metodi statistici Caponetti 20 Metodi spettrali Data la natura simmetrica (rispetto all’origine) dello spettro di Fourier, si ha quindi che ogni pattern periodico è associato a 2 picchi. E’ conveniente considerare solo metà dello spettro di Fourier Coordinate polari (r, θ): Fissata una direzione θ S(r, θ) = Sθ (r) è una funzione 1-D e fornisce l’andamento lungo una direzione fissata θ, al variare di r Fissato un raggio r S(r, θ) = Sr(θ) è una funzione 1-D e fornisce l’andamento dello spettro lungo una circonferenza di raggio r e centro nell’origine Caponetti Coordinate polari Una descrizione globale si può ottenere sommando le funzioni: S (r ) = π ∑ Sθ ( r ) θ =0 S (θ ) = R ∑ S (θ ) r r =1 dove R è il raggio della circonferenza centrata nell’origine Le due funzioni 1-D costituiscono una descrizione basata sul contenuto di energia spettrale della texture in una regione o in una intera immagine Descrittori quantitativi di queste funzioni possono a loro volta essere determinati nel modo usuale (media e varianza, posizione del massimo, ecc.) Caponetti 21 Chapter 11 Representation & Description Texture 1 L’andamento di S(r) mostra la concentrazione prevalente dell’energia vicino all’origine L’andamento di S(θ) mostra la presenza di picchi prominenti a intervalli di 45°, che corrispondono alla periodicità della tessitura Texture 2 La texture sviluppa prevalentemente nelle due direzioni principali, S(θ) mostra una periodicità di 90° Caponetti Metodi spettrali Risultati più significativi possono essere ottenuti utilizzando: Filtri orientati lungo varie direzioni Filtri a multirisoluzione: Laplacian pyramids, Wavelets pyramids Filtri di Gabor (al variare di scala e orientazione) Caponetti 22 Riferimenti R C Gonzales, R E Woods, Digital image processing, Prentice Hall, 2008 The Handbook of Pattern Recognition and Computer Vision (2nd Edition), by C. H. Chen, L. F. Pau, P. S. P. Wang (eds.), pp. 207-248, World Scientific Publishing Co., 1998 Link http://www.frattali.net/ http://www.dmi.unict.it/~battiato/CVision0809/Par te_8_Texture.pdf Caponetti 23