Analisi della Tessitura

54
Analisi della Tessitura

description

Analisi della Tessitura. Nel campo della elaborazione delle immagini si è consolidato con il termine TESSITURA una qualunque disposizione geometrica e ripetitiva dei livelli di grigio di una immagine - PowerPoint PPT Presentation

Transcript of Analisi della Tessitura

Page 1: Analisi della Tessitura

Analisi della Tessitura

Page 2: Analisi della Tessitura

Nel campo della elaborazione delle immagini si è consolidato con il termine TESSITURATESSITURA una qualunque disposizione geometrica e ripetitiva dei livelli di grigio di una immagine

Il sistema visivo umano determina e riconosce facilmente diversi tipi di tessiture caratterizzandole in modo soggettivo. Infatti, non esiste una generale definizione di tessitura ed una metodologia di misura della tessitura accettata da tutti.

Il nostro approccio qualitativo nella caratterizzazione della tessitura può essere del tipo • grossolana, • granulare, • casuale, • ordinata, • filiforme, • punteggiate, • a grana fine, • ecc..

Page 3: Analisi della Tessitura

Analogamente il nostro sistema visivo è abile ad interpretare facilmente una tessitura composta da microstrutturemicrostrutture

•tipi di coltivazione di un territorio •oppure microstrutture associate ad un vestito e quelle osservate da una immagine al microscopio.

Possiamo dire che il nostro sistema visivo descrive in modo rigoroso le microstrutture di una tessitura?La risposta non sembra ovvia visto che spesso la caratterizzazione di una tessitura risulta molto soggettiva

Aggiungiamo inoltre che spesso la nostra soggettività dipende anche dalle condizioni di visibilità e dal particolare contesto

Il nostro sistema visivo determina facilmente macrostrutturemacrostrutture, ossia relazioni tra le strutture geometriche fondamentali che caratterizzano una determinata tessitura come può essere il rivestimento regolare di un fabbricato o di un pavimento.

Page 4: Analisi della Tessitura

Dal punto di vista di una macchina di visione possiamo associare la definizione di tessitura per una immagine come una particolare disposizione anche ripetitiva dei pixel con una data variazione locale dei livelli di grigio che identificano una o più regioni (regioni con tessitura).

L’interpretazione della tessitura dipende molto •dal fattore di scala con cui si osservano le primitive di tessitura, •da come sono illuminate •dalle dimensioni dell’immagine considerata

Mosaico Mosaico di di Brodatz Brodatz texturetexture

Page 5: Analisi della Tessitura

L’analisi della tessitura comprende tre aspetti:• classificazione• segmentazione• ricostruzione della superficie (shape from texture)

La classificazione della tessituraLa classificazione della tessitura riguarda la ricerca di particolari regioni di tessitura tra varie classi di tessitura predefinite.

Si possono usare metodi statistici che definiscono i seguenti descrittori della tessitura: • matrice di co-occorrenza, • contrasto, • omogeneità, • entropia, • banchi di filtri •ecc..

Le distorsioni prospettiche possono modificare i descrittori delle macrostrutture

Un altro metodo di classificazione della tessitura è quello di confrontare le caratteristiche della tessitura osservata con un modello di tessitura precedentemente sintetizzato.

Page 6: Analisi della Tessitura

La segmentazione della tessituraLa segmentazione della tessitura determina i confini tra regioni che presentano tessiture diverse.

Si ricorre alla segmentazione della tessitura quando gli approcci statistici non forniscono misure accurate delle caratteristiche di tessitura e pertanto sono insufficienti a caratterizzare la tessitura di una regione

Inoltre, la segmentazione di una tessitura è indispensabile quando non si ha nessuna conoscenza sia sul numero delle classi di tessitura che sulle caratteristiche a priori.

Gli algoritmi di shape from textureGli algoritmi di shape from texture invece sono fondamentali per la ricostruzione della superficie degli oggetti partendo dalle informazioni associate alle macrostrutture quali densità, dimensione e loro orientazione.

classificazione segmentazione

Page 7: Analisi della Tessitura

IspezionamentoIn campo tessile, sono stati utilizzati algoritmi per il riconoscimento automatico dei difettiA partire da maschere di convoluzione, banchi di filtri vengono selezionati in modo adattivo in base all’immagine da analizzare. Le features tessiturali vengono quindi estratte dalle immagini filtrate e date in input ad un classificatore basato per esempio sulla distanza di Mahalanobis per ricercare le aree in cui è presente il difetto

Analisi nel contesto della MedicinaLe applicazioni sono orientate alla discriminazione di tessuto normale rispetto a quello anomalo. In base al task dell’applicazione, le feature estratte catturano proprietà morfologiche, proprietà del colore o alcune proprietà dell’immagine

Elaborazione di documentiPer esempio l’uso dell’analisi della tessitura per la localizzazione di zone in cui è presente un codice a barre

APPLICAZIONIAPPLICAZIONI

Page 8: Analisi della Tessitura
Page 9: Analisi della Tessitura

METODI STATISTICI DELLA TESSITURA

Particolarmente adatto per l’analisi delle microstrutture.

Le primitive elementari delle microstrutture sono determinate analizzando le caratteristiche di tessitura associate a pochi pixel nell’immagine

Ricordiamo che per la caratterizzazione della tessitura è importante derivare la dipendenza spaziale dei pixel con i valori di livelli di grigio.

La distribuzione dei livelli di grigio in un istogramma non costituisce una utile informazione per la tessitura poiché non contiene nessuna proprietà spaziale.

Page 10: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

La relazione spaziale dei livelli di grigio è espressa dalla matrice di co-occorrenza PR(L1,L2) (istogramma istogramma bidimensionalebidimensionale)

L1=I(i,j) ed L2=I(l,k)

R relazione di distanza - per esempio i due pixel si trovano tra loro ad una distanza d = (dx,dy) espressa in pixel.

Quindi siamo interessati a matrici di co-occorrenza del tipo PR(L1,L2) dove R=(,d) indica la co-occorrenza di coppie di pixel a distanza d ed in direzione .

Page 11: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

Diverse di queste matrici possono essere calcolate per caratterizzare le microstrutture di tessitura ed alcune matrici di co-occorrenza di tipo simmetrico sono definite come segue:

P,d=(dx,dy)(L1=I(i,j),L2=I(l,k)) dx=|i-l| e dy=|j-k|.

Page 12: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

Alcune matrici significative sono:

• P0,d(L1,L2) con (i-l) = 0 e |j-k| = d

• P45,d(L1,L2) con (i-l) = d e (j-k) = -d o (i-l) = -d e (j-k) = d

• P90,d(L1,L2) con (i-l) = d e |j-k| = 0

• P135,d(or -d)(L1,L2) con (i-l) = d e (j-k) = d o (i-l) = -d e (j-k) = -d

Page 13: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

Per esempio, calcoliamo P0,1(L1,L2) per la seguente immagine che presenta massimo 4 livelli di grigio:

0 0 1 10 0 1 10 2 2 22 2 3 3

Quali informazioni estrarre ora????Quali informazioni estrarre ora????2100160100420124

3210

1,0P

3210

0200201301210312

3210

1,135P

3210L1

L2L1

L2

Page 14: Analisi della Tessitura

Quantitative Texture Measures Numeric quantities or statistics that describe a texture can be

calculated from the intensities (or colors) themselves

One problem with deriving texture measures from co-occurrence matrices is how to choose the displacement vector d.

The choice of the displacement vector is an important parameter in the definition of the GLCM.

Occasionally the GLCM is computed from several values of d and the one which maximizes a statistical measure computed from P[i,j] is used.

Zucker and Terzopoulos used a χ2 measure to select the values of d that have the most structure; i.e. to maximize the value:

i j dd

d

jPiPjiPd 1

][][],[)(

22

Page 15: Analisi della Tessitura

Windowing• Algorithms for texture analysis are applied to an

image in a series of windows of size w, each centered on a pixel (i,j).

• The value of the resulting statistical measure are assigned to the position (i,j) in the new pixel.

Page 16: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

• Energia o misura del grado di omogeneità della tessitura

corrisponde al momento angolare del secondo ordine.

Energy T P L LdLL

12

1 221

, ( , )

Page 17: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

• Entropia

L’entropia è alta quando ogni elemento della matrice di co-occorrenza ha valore uguale

ossia quando le frequenze P(L1,L2) sono equamente distribuite.

L’entropia ha valori bassi se la matrice di co-occorrenza è diagonale ossia esistono coppie di livelli di grigio dominanti spazialmente per una certa direzione e distanza.

Entropia T P L L P L LdLL

d 2 1 2 1 221

, ,( , ) log[ ( , )]

Page 18: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

3- Massima probabilità:

T P L LL L

d3 1 21 2

( , )

,max ( , )

4- Contrasto oppure misura della variazione locale di intensità:

1 2

),()( 21,2

214L L

d LLPLLT

Un basso valore del contrasto si ottiene se l’immagine ha livelli di grigio quasi costanti, viceversa presenta valori alti per immagini con forti variazioni locali di intensità ossia con tessitura molto pronunciata.

Calcolato con finestre w=21 e d=(2,2)

Page 19: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

5- MomentoMomento della differenza inversa:

21221

21,5 L Lcon

)(1),(

1 2

L L

d

LLLLP

T

Page 20: Analisi della Tessitura

Matrice di Co-occorrenza dei livelli di grigio

6- CorrelazioneCorrelazione:

dove le medie sono calcolate con:

2 11 2

),(),( 21,221,1L L

dyL L

dx LLPLLLPL

2 11 2

),()(),()( 21,2

221,2

1L L

dyyL L

dxx LLPLLLPL

Le medie e varianze sono calcolate rispetto a

P x P x L P y P L yd dL

d dL

( ) ( , ) ( ) ( , ), , 2 12 1

yx

L Ldyx LLPLL

T

1 2

)],())([( 21,21

6

Page 21: Analisi della Tessitura

Biometria - Riconoscimento Iride mediante descrittori estratti dalle matrici di cooccorrenza

Page 22: Analisi della Tessitura

Biometria - Riconoscimento Iride mediante descrittori estratti dalle matrici di cooccorrenza

[glcm] = graycomatrix(pattern,'NumLevels',255,'GrayLimits',[0 255],'Offset',[01; -1 1; -1 0; -1 -1; 0 3; -3 3; -3 0; -3 -3; 0 5; -5 5; -5 0; -5 -5; 0 10; -1010; -10 0; -10 -10]);

Il risultato finale dell'estrazione delle feature è un vettore di 112 elementi (16 matrici x 7 statistiche) per ogni immagine di un dato occhio.

Page 23: Analisi della Tessitura

Biometria - Riconoscimento Iride mediante descrittori estratti dalle matrici di cooccorrenza

Page 24: Analisi della Tessitura

Content based Image Retrieval

Page 25: Analisi della Tessitura

April 22, 2023 25

Content based Image Retrieval

Similarity Assessment

Retrieved Images

BuildingIndex

Query Image

Query BlobsImage Database

Feature Space

Page 26: Analisi della Tessitura

Caratteristiche di tessitura mediante autocorrelazione

Una caratteristica della tessitura è valutata mediante l’analisi delle frequenze spaziali. In questo modo sono identificate le strutture spaziali ripetitive della tessitura

Tessitura caratterizzate da strutture fini presentano alti valori di frequenze spaziali, viceversa primitive con strutture più grossolane risultano con basse frequenze spaziali.

La funzione di autocorrelazione di una immagine può essere utilizzata per valutare le frequenze spaziali ossia per misurare il misurare il livello di omogeneità o di ruviditàlivello di omogeneità o di ruvidità (fineness/coarseness) della tessitura presente nell’immagine

Page 27: Analisi della Tessitura

Caratteristiche di tessitura mediante autocorrelazione

Data una immagine f(i,j) di dimensione N×N il coefficiente di correlazione ff è dato da:

ffj

N k

i

N l

j

N

i

Nl k

NN l N k

f i j f i l j k

f i j( , )

( )( )( , ) ( , )

( , )

2

11

2

11

dove 0 k,l N-1.

tessitura grossolana → coefficiente di correlazione decresce lentamente con l’aumentare della distanza d

Tessitura fine → decresce rapidamente

Page 28: Analisi della Tessitura

Caratteristiche di tessitura mediante autocorrelazione

Un approccio alternativo per la misura delle frequenze spaziali è ottenuto mediante la trasformata di Fourier.

Consideriamo con F(u,v) la trasformata di Fourier dell’immagine f(i,j) di cui si vuole misurare la tessituracon |F(u,v)|2 lo spettro di potenza, che coincide con la trasformata di Fourier della funzione di autocorrelazione ff(l,k).

Page 29: Analisi della Tessitura

Caratteristiche di tessitura mediante autocorrelazione

2

0

21

2

21|),(|

r

rrr drdvuFf

2

1

21

0

2|),(|

drdvuFf

)/arctan(22 uvvur

Page 30: Analisi della Tessitura

TESSITURA DELLA FREQUENZA DEI BORDI

Una caratteristica della tessitura può essere espressa in relazione al numero di bordi presenti in una finestra.

Per tale scopo è necessario applicare all’immagine di input f(i,j) uno degli algoritmi già noti per l’estrazione dei bordi, per produrre una mappa di bordi B(i,j)

con • B(i,j)=1 se è presente un bordo • B(i,j)=0 nel caso contrario.

Normalmente, la mappa B è binarizzata con valori di soglia molto bassi.

T i jW

B i l j kk w

w

l w

w

( , ) ( , ) 1

2 W dimensione della finestra di interesse

Page 31: Analisi della Tessitura

Tessitura mediante filtraggio spaziale

Le caratteristiche di tessitura possono essere determinate mediante il filtraggio spaziale scegliendo una risposta impulsiva del filtro che accentua in modo efficace le microstrutture della tessitura

Laws ha proposto 9 misure di tessitura mediante la convoluzione dell’immagine f(i,j) con 9 maschere di filtraggio (3×3) che rappresentano le risposte impulsive del filtro per esaltare le microstrutture della tessitura

Page 32: Analisi della Tessitura

Tessitura mediante filtraggio spaziale

Dai risultati della convoluzione ge sono calcolate le relative dispersioni Te che costituiscono le caratteristiche di tessitura Te che esprimono la misura energetica delle microstrutture

Page 33: Analisi della Tessitura

Tessitura mediante filtraggio spaziale

Le maschere proposte da Laws sono le seguenti

121242121

361

101202101

121

121242121

121

121000121

121

101000101

41

121000121

41

121242121

121

101202

101

41

121242

121

41

Page 34: Analisi della Tessitura

Tessitura mediante filtraggio spaziale

Le microstrutture sono inizialmente estratte dall’immagine di input f con le convoluzioni

ge(i,j) = f(i,j) * he(i,j) e = 1,2,…,9

w

wm

w

wneee njminjmig

WjiT 2

2 )],(),([1),(

e en w

w

m w

w

i jW

g i m j n( , ) ( , ) 1

2

e(i,j) è la media locale sulla finestra W×W della misura di tessitura ge nelle vicinanze del pixel in elaborazione (i,j)

W = 2w + 1

Page 35: Analisi della Tessitura

Tessitura mediante filtraggio spazialeI risultati delle caratteristiche di tessitura con le maschere energetiche di Laws sono state applicate ad alcune immagini che rappresentano un mosaico campione dei campi di tessitura di Brodatz.

Risultati ottenuti nell’Identificazione dei campi al 90%

Le maschere di filtraggio di LAWS sono generate dalle tre maschere monodimensionali di base

h h h116 2

12 3

12

121

101

12

1

che possono essere convolute hi*hiT con se stesse una volta trasposte oppure

con ciascuno delle altre maschere monodimensionali hi*hjT per produrre le

maschere 3×3 bidimensionali hi di Laws

Page 36: Analisi della Tessitura

Tessitura mediante filtraggio spazialePer stimare caratteristiche di tessitura associate a microstrutture più grossolane possono essere utilizzate maschere di filtraggio più grandi (per esempio 5×5)

Le maschere monodimensionali di base 5×1 sono ricavate mediante convoluzione di quelle 3×1 come segue

51

31

31 1 2 1 1 2 1 1 4 6 4 1h h h * *

analogamente per h2 ed h3, mentre per

54

31

32 1 2 1 1 0 1 1 2 0 2 1h h h * *

55

32

33 1 0 1 1 2 1 1 2 0 2 1h h h * *

Da queste maschere di base 5×1 si possono derivare mediante convoluzione quelle bidimensionali 5×5 come segue

51con *5 ,..,i,jhhh jTii

Page 37: Analisi della Tessitura

Tessitura mediante filtraggio spazialeIn alternativa alle maschere di Laws, Haralick ha proposto quelle utilizzate per l’estrazione dei bordi per la misura della tessitura derivata con le seguenti maschere di base

h h h113 2

12 3

12

111

101

12

1

111111111

91

111000111

61

101101101

61

111222

111

61

101000101

41

121121121

41

101202101

41

121000121

41

121242

121

41

Page 38: Analisi della Tessitura

Metodo per la descrizione di tessiture orientate

In diverse applicazioni siamo di fronte a tessiture tessiture cosiddette orientate orientate ossia le primitive sono rappresentate da una selettività di orientamento locale che varia nei vari punti dell’immagine

La tessitura si presenta con una orientazione locale dominante ed in questo caso si parla di tessitura con elevato grado di anisotropiaanisotropia locale

Conviene pensare all’immagine di livello di grigio come una mappa di flussomappa di flusso dove ogni pixel rappresenta un elemento di fluido soggetto ad un moto nella direzione dominante della tessitura

Possiamo definire un campo di orientazione della tessitura chiamato semplicemente campo di tessitura orientato (Oriented Texture Field) costituito da

• immagine dell’orientazioneimmagine dell’orientazione: informazione locale di orientazione della tessitura per ciascun pixel

• immagine di coerenzaimmagine di coerenza: rappresenta il grado di anisotropia per ciascun pixel

Page 39: Analisi della Tessitura

Metodo per la descrizione di tessiture orientate

I campi di tessitura orientata (CTO) sono calcolati con le seguenti cinque fasi:

1. Filtraggio Gaussiano per attenuare il rumore presente nell’immagine

2. Calcolo del gradiente dell’immagine Gaussiana

3. Stima dell’angolo di orientazione locale usando la funzione arcotangente

4. Calcolo della media delle stime di orientazione locale per una data finestra centrata sul pixel in elaborazione

5. Calcolo di una stima della coerenza (informazione di flusso della tessitura) per ogni punto dell’immagine.

Page 40: Analisi della Tessitura

Stima della direzione locale dominante

Consideriamo una zona dell’immagine con diversi segmenti le cui orientazioni indicano la disposizione locale della tessitura

Si potrebbe calcolare come direzione dominante quella corrispondente al vettore risultante somma delle singole direzioni locali

Questo approccio però non può determinare una unica direzione in quanto si avrebbero due angoli e +

Altro inconveniente si verificherebbe se si considerassero segmenti orientati. Alcuni di questi con segno opposto si annullerebbero, invece di contribuire alla stima dell’orientazione dominante.

Rao suggerisce la seguente soluzione

Page 41: Analisi della Tessitura

Stima della direzione locale dominante

•Siano N i segmenti locali e consideriamo una retta orientata ad un angolo rispetto all’asse orizzontale x

Consideriamo un segmento j con angolo j e con Rj indichiamo la sua lunghezza

La proiezione del segmento sulla linea considerata è Rjcos(j - )

Page 42: Analisi della Tessitura

Stima della direzione locale dominante

La somma di valori assoluti di tutte le proiezioni dei segmenti è data da

dove S1 varia al variare dell’orientazione della linea

L’orientazione dominante si ottiene per un valore di dove S1 è massimo. In tal caso è calcolato ponendo a zero la derivata della funzione S1 rispetto a

S R j jj

N

11

| cos( )|

Page 43: Analisi della Tessitura

Stima della direzione locale dominante

Per eliminare il problema di differenziazione della funzione valore assoluto (non differenziabile) è conveniente considerare e differenziare la seguente somma S2:

che derivando rispetto a si ottiene:

e ponendola uguale a zero, si ottengono le seguenti equazioni:

S Rj jj

N

22 2

1

cos ( )

dSd

R sinj j jj

N2 2

12

cos( ) ( )

R sin R sin R sinj jj

N

j jj

N

j jj

N2

1

2

1

2

12 0 2 2 2 2( ) cos cos

Page 44: Analisi della Tessitura

Stima della direzione locale dominante

da cui

Se indichiamo con ‘ il valore di per cui si ottiene il massimo valore di S2 questo coincide con la stima migliore di orientazione locale dominante

tancos

22

2

2

1

2

1

R sin

R

j jj

N

j jj

N

02sin2cos1

2

N

jjjR

Page 45: Analisi della Tessitura

Stima della direzione locale dominante

Vediamo ora come viene utilizzata l’equazione precedente per il calcolo della orientazione dominante in ogni pixel dell’immagine

Consideriamo con gx e gy le componenti orizzontali e verticali del gradiente in ogni punto dell’immagine,

la quantità complessa gx + igy che costituisce la rappresentazione dello stesso pixel nel piano complesso

Il vettore gradiente in un punto (l,k) dell’immagine può essere rappresentato in coordinate polari con Rm,neim,n

Page 46: Analisi della Tessitura

Stima della direzione locale dominante

A questo punto possiamo calcolare l’angolo di orientazione locale dominante per un intero di (m,n) definita dalla finestra di N×N pixel come segue:

L’orientazione dominante nel punto (m,n) è data da +/2 poiché il vettore gradiente è perpendicolare alla direzione di anisotropia.

12

2

2

1 1

2

1

1

2

1

tan (cos

). ,

, ,

n

N

m n m nm

N

n

N

m n m nm

N

R sin

R

Page 47: Analisi della Tessitura

Coerenza della tessitura

Sia G(x,y) il modulo del gradiente calcolato nella fase 2 nel punto (x,y) del piano immagine. La misura della coerenza nel punto (x0,y0) è calcolata considerando in questo punto centrato una finestra di dimensioni W×W

Per ciascun punto (xi,yj) della finestra è proiettato il vettore gradiente G(xi,yj) considerato nella direzione (xi,yj) nel vettore unitario in direzione (x0,y0).

Il vettore gradiente proiettato è dato da:

G x y x y x yi i i i( , ) cos[ ( , ) ( , )] 0 0

Page 48: Analisi della Tessitura

Coerenza della tessitura

La somma normalizzata dei valori assoluti di tali proiezioni di vettori gradienti compresi nella finestra è considerata come stima della misura di coerenza:

G x y x y x yi i i i( , ) cos[ ( , ) ( , )] 0 0

| ( , ) cos[ ( , ) ( , )]|

( , )( , )

( , )

G x y x y x y

G x y

i i i ii j W

i ii j W

0 0

Questa misura è correlata con la Questa misura è correlata con la dispersione della direzionalità dei datidispersione della direzionalità dei dati

Page 49: Analisi della Tessitura

Coerenza della tessitura

Una migliore misura della coerenza è ottenuta pesando il valore dell’equazione precedente con il modulo del gradiente nel punto (x0,y0):

La coerenza si presenta pertanto con valori alti in La coerenza si presenta pertanto con valori alti in corrispondenza di valori alti del gradiente ossia di corrispondenza di valori alti del gradiente ossia di forti variazioni d’intensità nell’immagine forti variazioni d’intensità nell’immagine

G x yG x y x y x y

G x y

i i i ii j W

i ii j W

( , )| ( , ) cos[ ( , ) ( , )]|

( , )( , )

( , )

0 0

0 0

Page 50: Analisi della Tessitura
Page 51: Analisi della Tessitura

Caratterizzazione della Tessitura mediante un Banco di Filtri

Gabor Wavelet

Page 52: Analisi della Tessitura

April 22, 2023 52

Color-texture Feature

-1-0.8-0.6-0.4-0.2

00.20.40.60.8

1

Input color image

Gaussian color model

Gabor filters

Color-Texture Feature

Page 53: Analisi della Tessitura

April 22, 2023 53

Color-texture Segmentation

C1

C4

Ground truth

Page 54: Analisi della Tessitura

April 22, 2023 54

Color-texture Segmentation (cont.)

#134052

#66075