MATLAB è uno strumento di programmazione che può essere utilizzato per il segnale completo e l'analisi e l'elaborazione delle immagini . Un'operazione comune nel trattamento di segnali singoli o multidimensionali è la rimozione del rumore ad alta frequenza . Un filtro passa-basso per definizione è progettato per rimuovere segnale al di sopra di una certa soglia di frequenza . Utilizzando la funzione filtro2 ( ) in MATLAB è un modo di implementare un filtro passa-basso . Istruzioni
1
importare i dati in MATLAB . Spesso, i segnali grezzi che necessitano di filtraggio sono registrati in formato binario , che richiede una funzione di I /O ad importare , come fread ( ) file di basso livello . Tuttavia, MATLAB contiene built-in importatori di immagine per la maggior parte dei formati di file più comuni
my_data = fread ( file_handle , n_samples , data_type ) . Mia_immagine = imread ( ' my_image_file.tif ', ' TIFF ');
2
convertire i dati in una matrice bidimensionale prima di elaborare con la funzione filtro2 ( ) . È possibile farlo tramite la conversione di dati binari ad una dimensione per una matrice utilizzando la funzione di rimodellare ( ) , oppure selezionando un'immagine da una serie di immagini . Utilizzare la funzione di compressione ( ) per rimuovere dimensioni singleton quando si seleziona una porzione di una matrice con più di due dimensioni
mia_immagine = rimodellare ( my_data , larghezza , altezza ) ; my_other_image = squeeze ( my_image_series ( : . , : , image_number ) ) ;
3
progettazione vostro filtro e memorizzare il risultato come bidimensionale a matrice H. Una finestra gaussiana è comunemente utilizzato per le applicazioni di filtro passa-basso e può essere creato con il funzione fspecial ( ) . I filtri possono anche essere progettati in funzione del segnale di elaborazione dello strumento SPTool di MATLAB ( ) . È possibile visualizzare la risposta in frequenza della finestra del filtro mediante la funzione wvtool ( ) . Nel codice di esempio , H è una matrice di 24 -by -24 contenente una finestra gaussiana di deviazione standard 10
H = fspecial ( ' gaussiana ' , [ 24 24 ] , 10), . Wvtool ( H ) ;
4
esegui il filtraggio utilizzando l' algoritmo di convoluzione bidimensionale implementato da filtro2 ( ) . Per impostazione predefinita , il risultato di filtro2 ( ) è delle stesse dimensioni dei dati di input
my_filtered_data = filtro2 ( my_data , H); .