Funzioni > Elaborazione immagini > Convoluzione e filtri > Esempio: filtro mediano e quantile
  
Esempio: filtro mediano e quantile
Utilizzare le funzioni medsmooth e getnoise per trovare l'intensità mediana (quantile 0,5) di ogni elemento in un'immagine e i relativi otto vicini più prossimi (kernel quadrato 3 x 3). La funzione medsmooth restituisce l'immagine filtrata, mentre getnoise restituisce la differenza tra l'immagine originale e quella filtrata.
Utilizzare quantfilt se al posto della mediana sono necessari il quantile e il kernel definiti dall'utente.
Oltre a rimuovere il rumore, il filtro mediano tende anche a rimuovere da un'immagine piccole caratteristiche nitide.
Per informazioni sull'utilizzo di questo esempio, fare riferimento a Esempi di elaborazione delle immagini.
medsmooth
1. Leggere un'immagine.
Fare clic per copiare questa espressione
2. Aggiungere rumore all'immagine.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Confrontare l'immagine originale e quella a cui è stato aggiunto rumore.
(fruit.bmp)
(fruit_n.bmp)
4. Filtrare l'immagine con medsmooth.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(fruit_f.bmp)
getnoise
Questa funzione sottrae la versione originale della matrice di un'immagine dalla relativa versione filtrata mediana.
1. Applicare la funzione getnoise all'immagine con rumore.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(fruit_gn.bmp)
La funzione getnoise esegue un'operazione equivalente alla sottrazione del rumore dall'immagine filtrata:
Fare clic per copiare questa espressione
2. Calcolare e visualizzare la differenza assoluta tra le due immagini.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
(fruit_an.bmp)
quantfilt
In alcuni casi, il filtro mediano con kernel quadrato 3 x 3 potrebbe non essere sufficientemente generale per un filtraggio corretto. Se, ad esempio, un'immagine con numerosi angoli vivi viene filtrata in questo modo, i pixel degli angoli vengono spesso rimossi. Evitare questo effetto utilizzando la funzione quantfilt con un kernel di filtro mediano a forma di segno più anziché il kernel uniforme 3 x 3 specificato il precedenza.
Considerare la serie usuale e aggiungervi rumore:
1. Leggere l'immagine della serie.
Fare clic per copiare questa espressione
2. Aggiungere rumore all'immagine.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Confrontare l'immagine originale e quella a cui è stato aggiunto rumore.
(pattern.bmp)
(pattern_n2.bmp)
4. Filtrare l'immagine a cui è stato aggiunto rumore utilizzando la funzione quantfilt con un quantile di 0,5 per il valore mediano e un kernel quadrato 3 x 3.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Filtrare l'immagine a cui è stato aggiunto rumore utilizzando la funzione quantfilt con un quantile di 0,5 per il valore mediano e un kernel a forma di segno più.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Confrontare le due serie filtrate.
(pattern_sq.bmp)
(pattern_cr.bmp)
Il kernel quadrato provoca una degradazione di angoli, linee e bordi quadrati molto maggiore del kernel a forma di segno più.
Quantili non mediani
Un'altra applicazione della funzione quantfilt consiste nella scelta di quantili diversi dal valore mediano (0,5), con una conseguente modifica dell'intensità globale dell'immagine. Scegliendo, ad esempio, il quantile 0,0, si prende il valore minimo del pixel e dei relativi vicini, mentre il quantile 1,0 consente di ottenere il valore massimo. Questo comportamento è analogo, per alcuni aspetti, alla dilatazione e all'erosione morfologica in scala di grigi.
1. Provocare la dilatazione delle regioni più scure della serie originale e l'erosione delle regioni più chiare impostando il quantile su 0,0.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Provocare la dilatazione delle regioni più chiare della serie originale e l'erosione delle regioni più scure impostando il quantile su 1,0.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Confrontare la serie originale con le versioni scura e chiara.
(pattern.bmp)
(pattern_drk.bmp)
(pattern_lit.bmp)