MATLAB er et programmeringsverktøy som kan brukes for omfattende signal og bildeanalyse og behandling. En vanlig drift i behandlingen av én eller flerdimensjonale signaler er fjerning av høyfrekvent støy . Et lavpassfilter per definisjon er konstruert for å fjerne signalet over en viss frekvens terskel . Bruke filter2 ( )-funksjonen i Matlab er en måte å implementere en low-pass filter . Instruksjoner
en
Importer data til MATLAB . Ofte er rå signaler som har behov for filtrering registrert i binært format , som krever et lavt nivå fil I /O -funksjon for å importere , for eksempel fread ( ) . Imidlertid inneholder MATLAB innebygd bilde importørene for de fleste vanlige filformater
my_data = fread ( file_handle , n_samples , data_type ) ; . My_image = imread (' my_image_file.tif ', ' TIFF ');
2
Konverter data til en todimensjonal matrise før behandling med filter2 ( )-funksjonen . Du kan gjøre dette ved å konvertere endimensjonale binære data til en matrise ved hjelp av omskape ( )-funksjonen , eller ved å velge et bilde fra en bildeserie . Bruk klemme ()-funksjonen til å fjerne Singleton dimensjoner når du velger en del av en matrise med mer enn to dimensjoner
my_image = omskape ( my_data , bredde , høyde) ; my_other_image = klem ( my_image_series ( : . , : , image_number ));
3
Design din filter og lagre resultatet som todimensjonal matrise H. En Gaussian vindu er ofte brukt for low- pass filter applikasjoner og kan lages med fspecial ( )-funksjonen . Filtre kan også bli utformet i Matlab signalbehandling verktøy funksjon sptool ( ) . Du kan vise frekvensrespons av filteret vinduet ved hjelp av wvtool ( )-funksjonen . I det eksempel kode, er H en 24 -for- 24 matriks som inneholder et gaussisk vindu av standard avvik 10