Capitolo 7 Analisi d’immagine Filtri a finestra mobile A. Dermanis, L. Biagi Finestre mobili per il filtraggio d’immagini Data una banda (F) di un’immagine, si applica ad ogni suo pixel fi,j una trasformazione lineare, invariante per posizione e localizzata, al fine di produrre i pixel gi,j di una nuova banda G. Applicazioni: attenuazione del rumore di osservazione, enfatizzazione di bordi e linee. A. Dermanis, L. Biagi Proprietà: filtri lineari, invarianti per posizione e localizzati lineari gij = h(i,j) k,m fkm k invarianti per posizione m h(i,j)k,m = hk–i,m–j gij = h k i+p localizzati gij = k–i,m–j fkm m j+p h k-i,m-j fkm k=i–p m=j–p Finestra (2p+1)(2p+1) A. Dermanis, L. Biagi Proprietà: filtri localizzati, lineari e invarianti per posizione Combinazione delle proprietà i+p gij = j+p h k–i,m–j fkm k=i–p m=j–p k = k – i m = m – j ovvero (i = 0, j = 0, k = k, m = m) p gij = p h k = –p m = –p p k,m fi+k,j+m g00 = p hk,m fk,m k = –p m = –p A. Dermanis, L. Biagi Proprietà: filtri localizzati, lineari e invarianti per posizione p g00 = hij p hk,m fk,m k = –p m = –p i–1 fij i i+1 j–1 j j+1 g00 = h–1,–1 f–1,–1 + h –1,0 f–1,0 + h –1,1 f–1,+1 + + h0,–1 f0,–1 + h0,0 f0,0 + h0,+1 f0,+1 + + h+1,–1 f+1,–1 + h+1,0 f+1,0 + h+1,+1 f+1,+1 Il processo di convoluzione discreta A. Dermanis, L. Biagi Dimensioni tipiche della finestra Le finestre non quadrate: un caso particolare di quelle quadrate A. Dermanis, L. Biagi Filtri passabasso p Filtri passaalto p h p k,m h =1 k = –p m = –p =0 fkm = C p p p hk,m C = C g00 = k = –p m = –p p hk,m C = 0 k = –p m = –p aree omogenee (basse frequenze) preservano il loro valore Esempi 1 9 k,m k = –p m = –p fkm = C g00 = p aree omogenee vanno a zero, le alte frequenze si enfatizzano Esempi 1 1 1 1 1 1 1 1 1 1 25 1 1 1 1 1 1 1 1 1 1 -1 -1 -1 1 -2 1 1 1 1 1 1 -1 -2 1 1 1 1 1 -1 -1 -1 1 1 1 1 1 8 -1 4 -2 1 -2 1 A. Dermanis, L. Biagi Filtro passabasso Originale: banda 3 di un’immagine TM Filtro: media mobile 33 and 55 Originale Media mobile 33 Media mobile 55 A. Dermanis, L. Biagi Filtro passalto Originale: la medesima immagine Filtro di enfatizzazione dei bordi 33 meglio visualizzabile in negativo Originale Filtro passaalto 33 Filtro passaalto 33 (negativo) A. Dermanis, L. Biagi Esempi di filtri passaalto direzionali per l’identificazione di bordi -1 0 1 -1 -1 -1 0 1 1 1 1 -1 0 1 0 0 0 -1 0 1 1 0 -1 -1 0 1 1 1 1 -1 -1 0 0 -1 -1 orizzontale diagonale diagonale verticale 0 Approssimazione numerica delle derivate direzionali. 1) Verticale: derivata direzionale E-O in ogni pixel della colonna 1 df - f k , -1 0 f k ,0 f k ,1 hk , m f k , m dj k m -1 k -1, 0, 1 2) Media (scalata di 3) delle 3 derivate direzionali. g 00 1 1 df df dj k -1 dj k k -1 1 h m -1 k ,m f k ,m Analogo approccio, per le altre direzioni, per gli altri tipi A. Dermanis, L. Biagi Il filtro Laplaciano 0 -1 0 -1 -1 -1 1 -2 1 -1 4 -1 -1 8 -1 -2 4 -2 0 -1 0 -1 -1 -1 1 -2 1 Approssimazione numerica discreta dell’operatore Laplaciano f 2 f i 2 2 f j 2 In alcuni casi si adotta il filtro Laplaciano sommato/sottratto al filtro identità 1 1 1 1 -7 1 1 1 1 = 0 0 0 -1 -1 -1 0 1 0 - -1 8 -1 0 0 0 -1 -1 -1 A. Dermanis, L. Biagi L’operatore Laplaciano 2 2 A= = + x2 y2 Esempi di filtro Laplaciano con diverse dimensioni della finestra Originale (banda 4 TM) Laplaciano 99 Laplaciano 1313 Laplaciano 1717 A. Dermanis, L. Biagi Esempi di filtro Laplaciano con diverse dimensioni della finestra Originale (banda 4 TM) Laplaciano 55 Originale + Laplaciano 55 A. Dermanis, L. Biagi I filtri di Roberts e Sobel per la detezione di bordi Approssimazioni numeriche per il calcolo del gradiente f Y y f X x 2 2 f f gradf X 2 Y 2 x y Roberts: asse X lungo la direzione NO-SE Sobel: asse X lungo la direzione E-O Sobel Roberts X 2+Y 2 X 2+Y 2 X Y X Y 0 0 0 0 0 1 -1 0 1 -1 -2 -1 0 1 0 0 -1 0 -2 0 2 0 0 0 0 0 -1 0 0 0 -1 0 1 1 2 1 A. Dermanis, L. Biagi I filtri di Roberts e Sobel per la detezione di bordi Sobel Roberts X 2+Y 2 X Originale (banda 4 TM) X 2+Y 2 Y X Y 0 0 0 0 0 1 -1 0 1 -1 -2 -1 0 1 0 0 -1 0 -2 0 2 0 0 0 0 0 -1 0 0 0 -1 0 1 1 2 1 Roberts Sobel A. Dermanis, L. Biagi Esempi di identificazione di bordi 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 Laplaciano 0 -1 0 -1 4 -1 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 7 7 7 7 7 7 7 7 -7 -7 -7 -7 -7 -7 -7 -7 -7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Sobel Roberts 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 10 10 10 10 10 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 28 28 0 28 28 0 28 28 0 28 28 0 28 28 0 28 28 0 28 28 0 28 28 0 28 28 0 Esempi di identificazione di linee 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 8 8 8 8 8 8 8 8 8 8 8 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 2 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 42 -21 -21 42 -21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 21 21 -21 -21 21 21 -21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 42 -21 -21 42 -21 -21 42 -21 -21 42 -21 -21 42 -21 -21 42 -21 -21 42 -21 -1 2 -1 -1 2 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -21 21 21 -21 -21 21 21 -21 -21 21 21 -21 -21 21 21 -21 -21 21 21 -21 -21 21 21 -21 -21 21 21 -21 Alcune note sui filtri passaalto Al termine del filtraggio, si potrebbero ottenere (ad esempio nel caso del calcolo delle derivate direzionali). valori negativi (–K), oppure valori superiori a L (W) per alcune celle In questo caso, l’immagine finale è ottenuta riscalando -K 1 W L A. Dermanis, L. Biagi L’interpolazione locale e le finestre mobili fkm h interpolazione km fkm f(x, y) A k, m gij valutazione g(x, y) A. Dermanis, L. Biagi