Si spera che si disponga della casella degli strumenti Elaborazione immagini. Se è così, allora si può creare un filtro gaussiano con la fspecial function in questo modo:
myfilter = fspecial('gaussian',[3 3], 0.5);
ho utilizzato i valori predefiniti per hsize ([3 3]) e sigma (0,5) qui, ma si potrebbe desiderare di giocare in giro con loro. hsize è solo la dimensione del filtro, in questo caso è una matrice 3 x 3. Sigma è il sigma della funzione gaussiana (vedi la parte inferiore della pagina delle funzioni speciali).
Ora è possibile utilizzare imfilter per filtrare l'immagine:
myfilteredimage = imfilter(unfilteredimage, myfilter, 'replicate');
qui ho semplicemente passata nel unfilteredimage, il filtro, e un parametro che dice come il filtro dovrebbe gestire i confini. In questo caso, ho scelto la replica che imposta i valori degli array di input al di fuori dei limiti dell'array sul valore del bordo dell'array più vicino, ma è possibile provare altri valori (o lasciare tale opzione imposta tutti i valori di valori esterni a 0).
fonte
2010-05-05 07:12:22
Dovresti accettare la risposta migliore se ritieni di aver risolto il problema (che di sicuro sembra essere il caso). Per farlo basta fare clic sul segno di spunta accanto alla risposta. Benvenuto nella community :) –