欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦]

      時間:2019-05-12 01:56:51下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦]》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦]》。

      第一篇:數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦]

      數(shù)字圖像處理實驗二

      15生醫(yī)

      一、實驗內容

      產生教材104頁題圖4.18(右圖)所示的二值圖像(白為1,黑為0),編程實現(xiàn)習題4.18所要求的處理(3x3的平均濾波和中值濾波)功能(圖像四周邊界不考慮,處理結果按四舍五入仍取0或1),顯示處理前后的圖像,比較其異同。

      二、運行環(huán)境 MATLAB R2014a

      三、運行結果及分析

      1.四種不同的窗的3x3平均濾波

      4鄰域平均濾波后圖像8鄰域平均濾波后圖像4鄰域加權平均濾波后圖像8鄰域加權平均濾波后圖像

      ①在MATLAB圖形窗界面進行放大可以看出四者之間的差別: 4領域與8鄰域之間沒有明顯差別,但是加權與未加權之間的差別較為明顯,體現(xiàn)在:加權后每個矩形塊的四個尖角部分都被保留了下來(圖像四周邊界不考慮),而未加權的尖角處黑色變?yōu)榘咨"谠蚍治觯?/p>

      加權后尖角處原來白色的點(1)進行計算3/5=0.6四舍五入后值為1,保持白色,原來黑色的點(0)進行計算2/5=0.4四舍五入后值為0,保持黑色;而未加權尖角處無論原來是黑色還是白色,進行計算2/4=0.5四舍五入后值為1,所以原先的黑色(0)也變成了白色(1)。③下圖為放大后的截圖:

      2.中值濾波與原圖像的對比 原圖像中值濾波后圖像

      ①在MATLAB圖形窗界面進行放大后可觀察出:

      使用3x3方形中值濾波模板的效果與4領域、8領域加權平均濾波的效果相同,每個矩形塊的四個尖角部分都被保留了下來(圖像四周邊界不考慮)。②原因分析:

      套用3x3方形中值濾波模板后,尖角處原來白色的點(1)在窗內1多于0,取中值后仍保持白色,原來黑色的點(0)在窗內0多于1,取中值后仍保持白色。③下圖為放大后的截圖:

      四、心得體會

      通過MATLAB編程更加理解了課后題的計算結果,直觀地看出了黑白像素點灰度值變化前后的取值異同。同時,對MATLAB實現(xiàn)像素點灰度值的替換機理也有所掌握,比如后邊附的程序中會提到的“%”標注的思考。

      五、具體程序

      % 生成黑白塊圖像

      unit=zeros(64,64);f=zeros(256,256);for i=1:1:32 for j=1:1:32 unit(i,j)=1;% 1/4白塊 end end for i=33:1:64 for j=33:1:64 unit(i,j)=1;% 1/4白塊 end end for i=1:64:256 for j=1:64:256 f(i:i+63,j:j+63)=unit;end end

      % 對原圖像進行3x3平均濾波 for i=2:1:255 for j=2:1:255 fave4(i,j)=(f(i-1,j)+f(i+1,j)+f(i,j-1)+f(i,j+1))/4;

      fave8(i,j)=(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j+1)+f(i+1,j-1)+f(i+1,j)+f(i+1,j+1))/8;

      fave4_weighted(i,j)=(f(i-1,j)+f(i+1,j)+f(i,j-1)+f(i,j+1)+f(i,j))/5;

      fave8_weighted(i,j)=(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j+1)+f(i+1,j-1)+f(i+1,j)+f(i+1,j+1)+f(i,j))/9;end end fave4=round(fave4);%平均后灰度值有可能是小數(shù),要取整 fave8=round(fave8);fave4_weighted =round(fave4_weighted);fave8_weighted =round(fave8_weighted);subplot(2,2,1);imshow(fave4);title('4鄰域平均濾波后圖像');subplot(2,2,2);imshow(fave8);title('8鄰域平均濾波后圖像')subplot(2,2,3);imshow(fave4_weighted);title('4鄰域加權平均濾波后圖像')subplot(2,2,4);imshow(fave8_weighted);title('8鄰域加權平均濾波后圖像')

      4鄰域平均濾波后圖像8鄰域平均濾波后圖像4鄰域加權平均濾波后圖像8鄰域加權平均濾波后圖像

      % 對原圖像進行3x3方形中值濾波 for i=2:1:255 for j=2:1:255

      a=[f(i-1,j-1),f(i-1,j),f(i-1,j+1),f(i,j-1),f(i,j),f(i,j+1),f(i+1,j-1),f(i+1,j),f(i+1,j+1)];b=sort(a);% 排序函數(shù)

      fmid(i,j)=b(5);% 9個數(shù)排序的中值 end end subplot(1,2,1);imshow(f);title('原圖像');subplot(1,2,2);imshow(fmid);title('中值濾波后圖像')

      原圖像中值濾波后圖像

      第二篇:數(shù)字圖像處理_領域平均濾波_中值濾波

      東華大學實驗報告

      課程 數(shù)字圖像處理 名稱 數(shù)字圖像變換

      實驗名稱: 鄰域平均法(box模板)和中值濾波處理

      一、實驗目的

      圖像變換是數(shù)字圖像處理中的一種綜合變換,如直方圖變換、幾何變換等。通過本實驗,使得學生掌握兩種變換的程序實現(xiàn)方法。

      二、實驗任務

      請設計程序,分別用鄰域平均法,其模板為:

      ?111?

      ?1??11*1? 9??111?? ??和中值濾波法對testnoise圖像進行去噪處理(中值濾波的模板的大小也設為3×3)。

      三、實驗環(huán)境

      本實驗在Windows平臺上進行,對內存及cpu主頻無特別要求,使用VC或者MINGW(gcc)編譯器均可。

      四、設計思路

      介紹代碼的框架結構、所用的數(shù)據(jù)結構、各個類的介紹(類的功能、類中方法的功能、類的成員變量的作用)、各方法間的關系

      試驗要求中以給出大致的編程思路和源代碼以及代碼注釋,只有黑框部分需要自己填寫。在此不進行贅述。

      五、具體實現(xiàn)

      實現(xiàn)設計思路中定義的所有的數(shù)據(jù)類型,對每個操作給出實際算法。對主程序和其他模塊也都需要寫出實際算法。

      注意:源代碼中要加上注釋。代碼:(紅色為重點代碼)<鄰域平均法>(3*3)/*------利用第一次實驗課提供的 dhc.h 和 dhc.c文件以獲取位圖的高 寬 以及從文件頭到實際的位圖數(shù)據(jù)的偏移字節(jié)數(shù),從而實現(xiàn)對位圖實際數(shù)據(jù)的操作。------*/ #include #include #include #include “hdr.h” /*------定義結構指針------*/ struct bmphdr *hdr;//定義用于直方圖變量

      unsigned char *bitmap,*count,*new_color;/*------main()函數(shù)編寫------*/ int main(){ //定義整數(shù) i,j 用于函數(shù)循環(huán)時的,nr_pixels為圖像中像素的個數(shù)

      int i, j ,nr_pixels,nr_w,nr_h;//定義兩個文件指針分別用于提取原圖像的數(shù)據(jù)和生成直方圖均衡化后的圖像

      FILE *fp, *fpnew;//定義主函數(shù)的參數(shù)包括:輸入的位圖文件名和輸出的位圖文件名,此處內容可以不要,在DOS下執(zhí)行命令的時候再臨時輸入也可,為了方便演示,我這里直接把函數(shù)的參數(shù)確定了。

      // argc=3;// argv[1]=“test.bmp”;// argv[2]=“testzf.bmp”;

      //參數(shù)輸入出錯顯示

      /* if(argc!= 3){ printf(“please input the name of input and out bitmap filesn”);exit(1);}*/ // 獲取位圖文件相關信息

      // hdr = get_header(argv[1]);hdr = get_header(“testnoise.bmp”);if(!hdr)exit(1);//以二進制可讀方式打開輸入位圖文件

      fp = fopen(“testnoise.bmp”, “rb”);if(!fp){

      printf(“File open error!n”);

      exit(1);} // 文件指針指向數(shù)據(jù)區(qū)域

      fseek(fp, hdr->offset, SEEK_SET);

      //計算位圖像素的個數(shù) nr_pixels = hdr->width * hdr->height;nr_w = hdr->width;nr_h = hdr->height;bitmap = malloc(nr_pixels);new_color = malloc(nr_pixels);count = malloc((nr_w+2)*(+nr_h+2));//讀取位圖數(shù)據(jù)到bitmap中

      fread(bitmap, nr_pixels, 1, fp);fclose(fp);

      //因為圖像邊緣無法使用鄰域平均,所以根據(jù)鄰近顏色填補圖像的周圍一圈,存入count[]數(shù)組中

      //中心圖像存入count[] for(i=nr_w+3;i<(nr_w+2)*(+nr_h+2)-nr_w-3;i++){

      j=i/(nr_w+2);

      if(i%(nr_w+2)!=0&&(i+1)%(nr_w+2)!=0)count[i]=bitmap[i-nr_w-1-2*j];} //填補第一排

      for(i=1;i

      count[i]=bitmap[i-1];} //填補最后一排

      for(i=1;i

      count[(nr_w+2)*(nr_h+1)+i]=bitmap[nr_w*(nr_h-1)+i-1];} //填補左邊一排

      for(i=0;i

      count[i*(nr_w+2)]=count[i*(nr_w+2)+1];} //填補右邊一排

      for(i=0;i

      count[(i+1)*(nr_w+2)-1]=count[(i+1)*(nr_w+2)-2];}

      //鄰域平均3*3 for(j=nr_w+3,i=0;j<(nr_w+2)*(+nr_h+2)-nr_w-3;j++){

      if(j%(nr_w+2)!=0&&(j+1)%(nr_w+2)!=0)

      new_color[i]=(count[j]+count[j-1]+count[j+1]+count[j-nr_w-2]+count[j-1-nr_w-2]+count[j+1-nr_w-2]+count[j+nr_w+2]+count[j-1+nr_w+2]+ count[j+1+nr_w+2])/9,i++;}

      //結果存入bitmap[]中

      for(i = 0;i < nr_pixels;i++)

      bitmap[i]=new_color[i];

      // 打開一個以輸出文件名命名的文件,設為可寫的二進制形式

      fpnew = fopen(“test_lynoise.bmp”, “wb+”);

      //由于位圖文件的頭部信息并沒有因直方圖均衡化而改變,因此輸出圖像的頭部信息從原位圖文件中拷貝即可:

      fwrite(hdr->signature, 2, 1, fpnew);fwrite(&hdr->size, 4, 1, fpnew);fwrite(hdr->reserved, 4, 1, fpnew);fwrite(&hdr->offset, 4, 1, fpnew);fwrite(&hdr->hdr_size, 4, 1, fpnew);fwrite(&hdr->width, 4, 1, fpnew);fwrite(&hdr->height, 4, 1, fpnew);fwrite(&hdr->nr_planes, 2, 1, fpnew);fwrite(&hdr->bits_per_pixel, 2, 1, fpnew);fwrite(&hdr->compress_type, 4, 1, fpnew);fwrite(&hdr->data_size, 4, 1, fpnew);fwrite(&hdr->resol_hori, 4, 1, fpnew);fwrite(&hdr->resol_vert, 4, 1, fpnew);fwrite(&hdr->nr_colors, 4, 1, fpnew);fwrite(&hdr->important_color, 4, 1, fpnew);if(hdr->offset > 54)

      fwrite(hdr->info,(hdr->offset54), 1, fpnew);

      //直方圖均衡化的數(shù)據(jù)(bitmap)賦值 fwrite(bitmap, nr_pixels, 1, fpnew);//關閉

      fclose(fpnew);//釋放內存(優(yōu)化程序必需)free(hdr);free(bitmap);free(new_color);free(count);return 0;

      得出實驗結果圖像后,比較這兩種方法去噪的效果好壞,并分析具體原因。

      通過比較,鄰域平均法在降低噪聲的同時,會使圖像產生模糊;中值濾波在降低噪聲的同時,能夠較好的保持圖像邊緣,不過我感覺有點水粉畫的效果,讓圖像有點失真。

      完成上述工作后,使用程序進行驗證分析:使用鄰域平均法時,3×3和5×5模板大小對圖像進行處理的效果有何差別?并分析原因。

      程序及源代碼都放在文件夾中,不放進報告了。上面是對比圖,顯然5×5模板比3×3模版模糊,因為使用鄰域平均法時,模版尺寸越大,則圖像模糊程度越大。

      六、心得體會

      這次實驗是對兩種去噪方法的比較。而在書本中,我們已經看過兩種去噪方法的效果了,通過上機驗證,果然如此。

      在編寫代碼中,我把算法設計的比較繁瑣,因為圖像每一個像素的信息是由一維數(shù)組bitmap記錄的,所以在算均值與中值時花了很大的力氣。主要是添補周圍一圈的圖像比較繁瑣,還有就是在一維數(shù)組中找模版中心和模版中的其他點。雖然我覺得用二維數(shù)組會使算法比較簡單,但是我忘了二維數(shù)組如何動態(tài)分配空間,所以只能硬著頭皮用一維數(shù)組做。

      第三篇:淺談 中值濾波

      淺談中值濾波

      1.中值濾波的現(xiàn)狀

      在數(shù)字信號處理和數(shù)字圖像處理的早期研究中,線性濾波是主要的處理手段。線性濾波簡單的數(shù)學表達式以及某些理想特性使其很容易設計和實現(xiàn)。然而,當信號中含有非疊加性噪聲時,例如非線性引起的噪聲或非高斯噪聲等,線性濾波的處理效果就很難令人滿意。在處理圖像時,線性濾波將破壞邊緣,而且不能有效濾除脈沖噪聲。為了克服線性濾波方法的局限性,研究非線性濾波的方法為數(shù)字信號處理重要課題之一。

      非線性濾波基于對輸入信號序列的一種非線性映射關系,??砂涯骋惶囟ǖ脑肼暯朴成錇榱愣A粜盘柕闹匾卣?因而可以在一定程度上克服線性濾波的不足。

      1971年著名學者J.W.Tukey在他的開拓性論文中提出了中值濾波的概念并用作時間序列平滑。中值濾波一出現(xiàn)就因其具有對尖脈沖的良好抑制能力,在平滑加性噪聲時能保持信號的邊緣特征等優(yōu)點而備受矚目。

      常用的中值濾波是非線性濾波的代表,由于經典的中值濾波算法在濾除噪聲的同時會使信號中重要的細節(jié)信息受損,因此,許多改進的中值濾波算法相繼被提出。2.中值濾波

      在數(shù)據(jù)處理中我們經常使用的是滑動中值濾波,即取定中值濾波的跨度N(一般 N 為奇數(shù)),在數(shù)據(jù)序列中順次取得 N 個數(shù)據(jù),然后將該數(shù)據(jù)列的中值作為中心位置的值輸出以形成新的數(shù)據(jù)序列,在濾波中應將原數(shù)據(jù)序列的兩個邊界各補充(N-1)/2(N為奇數(shù)時)個等于邊界的點以使濾波后的新數(shù)據(jù)序列長度與原始的數(shù)據(jù)序列長度一致。2.1一般中值濾波

      2.1.1一般中值濾波的基本原理

      設有一個序列:x1,x2,x3,x4,x5,將它們按照絕對值大小重新排列此序列

      x3, x5,x2, x4,x1

      重排以后的中值是x2,此值就作為濾波的輸出。顯然,x2不能表示成輸入數(shù)據(jù)和濾波系數(shù)的褶積的線性組合。其主要特點有:(1)一般中值濾波絕對阻止噪聲峰值,因為中值濾波只取中位數(shù),絕對不會取異常數(shù)。例如有一組數(shù)(x1,x2,x3,x4,x5)正常數(shù) ? a≤xn≤a,n=2,3,4,5 異常數(shù) x1 >>a a 表示一個數(shù),將以上數(shù)組自小到大排列后為(x3, x5,x2, x4,x1)取中位數(shù)x2,決不會取異常數(shù)x1。

      (2)一般中值濾波是低通濾波器,中值濾波取中值為序列的輸出,可以看作是對數(shù)據(jù)序列進行局部平滑,這種局部平滑實質就是低通濾波。

      (3)一般中值濾波不改變階越函數(shù)在空間、時間上的位置,這一性質對于信號處理中的保護邊緣有著重要的作用。

      (4)當中值濾波的濾波窗口足夠長時,有限寬度的三角波和矩形波可以被完全平滑。

      (5)中值濾波由于沒有統(tǒng)計效應,對隨機出現(xiàn)的小的振幅值有時不能完全平滑,所以通常信號在中值濾波處理以后需要再進行帶通濾波。2.1.2一般中值濾波(MF)的數(shù)學基礎

      中值濾波對數(shù)字序列有平滑作用,平滑也就是數(shù)據(jù)逼近,這樣則存在誤差,如何利用誤差最小來確定平滑參數(shù),一般常見的有兩種準則:(1)使誤差的平方和達到最?。?2)使誤差的絕對值和達到最小。平均值平滑的數(shù)學原理應用準則(1),即符合誤差的平方和最小。中值濾波則是利用準則(2)來實現(xiàn)對數(shù)據(jù)序列的平滑。

      設x是 n 個數(shù)據(jù)序列的中位數(shù),xi 表示一組序列。x與xi之差的絕對值和為:

      Q??x?xi(3.1.1)

      i?1n要使Q最小,則

      ?Q?0(3.1.2)?xnnx?xi?Q?n2即 ?(x?xi)????Sign(x?xi)?0 ??x?xi?1i?1x?xii?1式中:Sign——符號函數(shù)。

      當xi >x 時,Sign 為負; 當xi

      這樣在選擇x時,使得在 n 個數(shù)中,有 n/2 個xi大于x,同樣有 n/2 個xi小于x,中間的xi即為x;如果 n 為偶數(shù),則取中間的兩個xi的平均值為x。2.2 加權中值濾波

      2.2.1 加權中值濾波(WM)的基本原理

      由上可以看出通過改變加權系數(shù),完全可以改變中值濾波的性質,來達到我們的要求。

      2.3 一維中值濾波對信號作用的結果分析

      由于中值濾波是一種特殊的非線性濾波手段,它對脈沖的響應為零,(在一個輸入上施加一個脈沖函數(shù)引起的時間響應。)所以在傅氏域沒有“真正的”振幅譜和相位譜。我們只能通過它對已知信號及其頻譜特征的響應來分析其各種濾波特性。雖然中值濾波的理論比較完善,但是由于多數(shù)情況處理的信號是對稱信號,所以并沒有人注意到中值濾波對信號相位的影響。

      2.3.1一般中值濾波對對稱信號相位的影響

      (1)在頻譜圖中,一般中值濾波引入了假高頻成分,并且在子波的頻帶范圍內,濾波后子波的主要頻帶向低頻方向移動,此特點在數(shù)據(jù)處理時應該著重注意,要根據(jù)數(shù)據(jù)處理時的具體要求來判斷,同時也成為選擇濾波長度的一個條件。

      (2)經過一般中值濾波后對稱信號的相位不發(fā)生移動,這使得我們在處理由對稱信號(例如雷克子波、奧姆斯比子波等)作為子波的合成地震記錄時,不需要考慮相移問題。但由此就得出結論說中值濾波處理后的所有類型的信號的相位都不發(fā)生移動則是片面甚至錯誤的。2.3.2 一般中值濾波對非對稱信號相位的影響

      一般中值濾波對非對稱信號的處理效果不同于處理對稱信號,如果 用處理對稱信號的規(guī)律來對待非對稱信號則往往不能達到預期的效果。對應濾波后的頻譜同樣向低頻方向移動,但假高頻現(xiàn)象卻并不如對稱信號濾波后明顯。處理非對稱信號的同時必須注意選擇的濾波點數(shù)是否使相位的改變在要求的范圍內。從濾波后和濾波前的最大振幅平方比來看濾波前后的能量變化,發(fā)現(xiàn)在同等情況下,一般中值濾波對非對稱信號的衰減能力大于對對稱信號的衰減。2.3.3 加權中值濾波對對稱信號相位的影響

      (1)在頻譜圖中,加權中值濾波也引入了假高頻成分;并且濾波后的子波的主要頻帶向低頻方向移動,說明了加權中值濾波的低通濾波特性。

      (2)同樣加權中值濾波對對稱信號的相位不產生影響。2.3.4 加權中值濾波對非對稱信號相位的影響

      當濾波長度大于一定的子波寬度時,波形已經失去了原有的形態(tài),但是在波形失去原有形態(tài)之前,經過加權中值濾波后的子波表現(xiàn)出較好的分辨率特性;在頻譜上加權中值濾波仍然表現(xiàn)出低通特性;信號的相位也因濾波而產生了畸變。

      2.3.5 一般、加權中值濾波對不同信號作用的比較 一般中值濾波和加權中值濾波對于同一種信號表現(xiàn)出相似的特性:二者在處理對稱信號時,都起到了衰減的作用,并且對信號的相位都不產生影響,同時使信號的頻譜中摻入了假高頻成分,還表現(xiàn)出了中值濾波的低通特性;在處理非對稱信號時,除了對信號產生衰減作用外,還使信號的相位發(fā)生了畸變。

      盡管一般和加權中值濾波有相似之處,但是它們還是存在著較大的差異:

      在處理對稱信號時,一般和加權中值濾波分別對同一信號進行濾波以后,信號的峰值很接近,但是加權中值濾波比一般中值濾波更有利于提高信號的分辨率,在頻譜上加權中值濾波比一般中值濾波表現(xiàn)出更加嚴重的假高頻現(xiàn)象。

      在處理非對稱信號時,加權中值濾波比一般中值濾波表現(xiàn)出的更好的提高分辨率的性質。而在相位譜分析中,盡管加權和一般中值濾波都使信號的相位發(fā)生改變,但是在濾波長度較小的情況下,經過一般中值濾波得到的信號的相位曲線雖然已經發(fā)生改變,但是仍然與原始信號的相位曲線有相同的趨勢,并沒有偏離太多;而此時即使在濾波長度較小的情況下,經過加權中值濾波得到的信號的相位曲線已經變得不可辨認了。

      經過以上的討論,我們可以認識到在實際地震資料的處理中,應用中值濾波除了應該考慮信噪比和分辨率以外,更加不容忽視的就是信號的相移問題,這對于資料的可信度起著至關重要的作用。由于在實際中,經常用到的一維中值濾波是不加權的,所以常常把一維不加權中值濾波簡說成一般中值濾波,但是隨著對處理手段的進一步要求,加權中值濾波的地位日益突出,并且畢竟不加權的情況只是一種特殊的加權中值濾波,所以一般中值濾波的概念也應該擴充為加權中值濾波。

      通過對兩種不同加權中值濾波(一般、加實數(shù)權)的討論,總結出了一些關于一維中值濾波方面的經驗:

      (1)通過不同權系數(shù)的選取,中值濾波表現(xiàn)出不同的特性,我們可以根據(jù)對實際情況的分析來選取不同的權系數(shù)以適應各自的需要。

      (2)本次只是選取了兩種特殊的權系數(shù)來分析,而在實際中存在著更多的權系數(shù)的選取方法,但是不管權系數(shù)的形式如何,都可以仿照本文的方法加以研究。

      (3)雖然中值濾波可以滿足一定的要求,但是我們同時也應該注意到它們存在的問題:①中值濾波會引起信號形態(tài)上的畸變,而且畸變程度和濾波長度有關;②中值濾波會引入假高頻,因此信號在經過中值濾波后可以根據(jù)情況做一次低通濾波;③中值濾波對非對稱信號進行處理時,會引起相位畸變,因此在使用中值濾波之前應該試驗相位畸變是否在處理的允許的范圍內;④雖然選取適當?shù)臋嘞禂?shù)后,加權中值濾波可以使信號提高分辨率,但是同時帶來“小臺階”效應,因此經過加權中值濾波處理后的信號推薦做一次平滑處理。

      由于中值濾波是一類特殊的濾波方法,因此我們利用它進行信號處理時應該格外注意。為了得到預期的效果,處理之前做一下試驗以確定最佳的濾波長度是非常必要的。3中值濾波在地震資料處理中的應用 3.1中值濾波在井間地震資料處理中的應用

      中值濾波是一種簡便有效且信號失真較小的信號處理方法。在不同的道集域下,井間地震資料中的直達波、一次反射波和多次反射波在相鄰道間的時差具有不同的表現(xiàn)形式,利用這一特點,應用中值濾波在不同道集域內對井間地震資料進行濾波處理,可以得到很好的效果。

      對于井間地震資料,我們所需要的有效反射波是來自于激發(fā)點與接收點下方的一次反射波(上行反射)和來自于激發(fā)點與接收點上方的一次反射波(下行反射),其它波均視為相關干擾或無效信息。中值濾波是以正常時差不同為基礎的多道濾波技術,在井間地震特殊的觀測系統(tǒng)中,中值濾波可以發(fā)揮其自身的優(yōu)點。

      通過對井間地震不同道集域下道間時差的分析可以知道,僅運用中值濾波即可達到較好的波場分離效果。為了驗證不同道集域下中值濾波對數(shù)據(jù)處理的效果,進行直達波與多次波的衰減、一次反射波的增強以及上下行波場的分離。3.1.1直達波和多次波的衰減

      首先對數(shù)據(jù)進行帶通濾波,消除有效頻帶之外的噪音干擾,將共炮點道集重排為共偏移距道集。在共偏移距道集下,根據(jù)(1)式和(3)式可知,直達波和多次波除了受速度影響外,其相鄰道間時差為0,通過共偏移距道集對初至時間拉平排齊,在一定程度上消除了速度的影響,然后選擇適當?shù)臅r窗參數(shù),采用中值濾波消除相鄰道時差為0的波組記錄,使直達波和多次反射波得到衰減。3.1.2反射波的增強

      把衰減了直達波和多次波的數(shù)據(jù)體重新抽道組成共中心點道集,對于共中心點道集,由于△s=-△g,根據(jù)(2)式可知,一次反射波在不受速度影響的情況下其相鄰道間的時差為0,通過共中心點道集對反射波時間拉平排齊,消除速度的影響,再次做中值濾波處理,本次中值濾波是為了保留相鄰道時差為0的波組記錄,而相鄰道時差不為0的波組記錄將被減弱,因而一次反射波同相軸得以增強,而其它 波場(如直達波和多次波)再次得到衰減(圖4,虛線圈)。3.1.3上、下行波場的分離

      首先對上行反射波進行拉平(圖5中的②),然后通過中值濾波使上行反射增強而下行反射減弱(圖5中的③),最后返回原始時間剖面得到上行反射波場(圖5中的④);反之,得到下行反射波場(圖5中的⑤)。圖6為通過中值濾波最終獲得的上行和下行反射波場。

      在波場分離中,對于資料相對較好的地震數(shù)據(jù),僅應用中值濾波即可達到較好的波場分離效果;對于信噪比較低的資料,可以用中值濾波技術使資料的有效波場加強,并得到上、下行反射信息,然后再利用中值濾波進行波場分離。

      井間觀測系統(tǒng)所具有的特殊性,使得同一種地震波在不同道集域下的時差表現(xiàn)形式不同,因此可以在井間地震處理中利用中值濾波技術實現(xiàn)直達波和多次波的衰減,反射波的增強以及上、下行反射波的分離。同時,由于中值濾波處理對地震原始資料畸變程度較小,因此可以提高井間地震資料反射成像的質量。3.2多道中值濾波在分離VSP波場中的應用?

      多道中值濾波處理流程圖

      4.中值濾波特點

      中值濾波是一個非線性過程,最大優(yōu)點是算法簡單且去噪效果明顯。中值濾波具有 如下特點:(1)中值濾波絕對阻止噪聲峰值。

      (2)中值濾波不改變階躍函數(shù)在空間、時間上的位置。(3)消除尖峰波以及增強部分有效波;

      (4)對野外原始地震資料信息的畸變和負面影響較小等優(yōu)點。(5)中值濾波平滑三角波,其平滑作用隨著中值濾波長度N的增加而增加,當其達到一定長度時,可將三角波平滑為具有相等幅度的理想的直流分量。

      (4)中值濾波平滑矩形波,若中值濾波足夠長時,矩形波被完全平滑。

      (6)中值濾波由于沒有像計算均值那樣的統(tǒng)計效應,對隨機出現(xiàn)的小的振幅值有時不能完全平滑。中值濾波實際上是一個平滑濾波,經過其處理之后,主頻向低頻移動,高頻成分受到損害,正是由于其平滑作用,使處理后的地震數(shù)據(jù)波形過于一致而顯呆板,有一些信息不可能客觀反映出來。

      5.總結

      中值濾波器是一種特殊的非線性濾波器,與線性濾波器不同。線性濾波器的振幅、相位譜完全決定了濾波器在頻率域和時間域的特征。與之相比,中值濾波器對脈沖的響應是零,在頻率域沒有“真正”的振幅譜和相位譜。所以,盡管中值濾波器原理很簡單,但了解其特性比了解線性濾波器特性要困難得多。

      雖然中值濾波技術在信號處理領域得到很大的重視,特別在非平穩(wěn)信號的處理中取得了較大的成功,然而中值濾波的一個嚴重不足是引起相對濾波窗口而言較為“細小”的信號細節(jié)結構的破壞和丟失,在圖象處理中,中值濾波的這一缺憾要比在一維信號的處理中更加顯著。原因主要來自兩個方面:

      第一,二維信號幾乎沒有根信號,也就是說幾乎所有的二維信號經中值濾波以后都要受到不同程度的破壞;

      第二,圖象中的某些諸如細線,拐角等細節(jié)結構往往包含重要的信息,這些結構的破壞或丟失往往比噪聲本身更為不可接受。所以,保護細節(jié)的中值類濾波器的研究成為非線性濾波器研究的一個重要方面。多級中值濾波則正是人們在努力尋求的兼有細節(jié)保護和噪聲抑制的優(yōu)良特性的濾波器結構。研究表明,長度較小的窗口能夠較好地保護信號的細節(jié)信息,但卻不能有效地濾除隨機噪聲;而長度較大的滑動窗口能更好地抑制噪聲,同時卻嚴重地損失重要信息。根據(jù)噪聲性質自動改變?yōu)V波窗口長度的滑動加權中值濾波器,更好地適應去噪的需求。

      第四篇:Matlab頻域濾波練習

      %% fftshift 對數(shù)變換,所應用的圖片本身很簡單,就只有黑白2種顏色 clc clear

      f = imread('.imagesdipum_images_ch04Fig0403(a)(image).tif');imshow(f)

      title('原始圖像')

      imfinfo('.imagesdipum_images_ch04Fig0403(a)(image).tif');%此處如果用Imfinfo(f)就會報錯fft

      %沒有居中的傅里葉頻譜

      F=fft2(f);%進行二維快速傅里葉變換,其結果和DFT的一樣,只是計算機的計算速度變快了而已,因而叫fft S=abs(F);%求傅里葉變換后的幅值 figure,subplot(121),imshow(S,[])

      title('傅里葉頻譜圖像1');%title函數(shù)一定要放在坐標顯示的下一句才有效。

      subplot(122),imshow(S),title('傅里葉頻譜圖像2')

      %居中的傅里葉頻譜

      Fc=fftshift(F);%將頻譜圖像原點移至圖像矩形中間 S1=abs(Fc);

      figure,subplot(121),imshow(S1,[]);%加了第二個參數(shù)后顯示的圖像正常

      subplot(122),imshow(S1);%當沒有第二個參數(shù)時,顯示的圖像為豎線加一些孤立的黑點,why?

      %使用對數(shù)后視覺增強后的傅里葉頻譜 S2=log(1+S1);imshow(S2,[]);

      %%用fftshift對數(shù)變換顯示稍復雜的圖片

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0409(a)(bld).tif');imshow(f);

      f=double(f);%其實這句不要試過對后面的變換結果也沒有影響 F=fft2(f);

      Fc=fftshift(F);S=abs(Fc);

      S2=log(1+S);%如果沒有這句的話,那么根本看不到細節(jié)的圖,所以一定要用對數(shù)壓縮增加對比度

      figure,imshow(S2,[])

      %%試一下ifft功能

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0409(a)(bld).tif');imshow(f);

      f=double(f);f(1:8,1:8)F=fft2(f);

      f=ifft2(F);%取傅里葉變換后的反傅里葉變換,直接是整數(shù),并不需要像某些代碼一樣取real部分 f(1:8,1:8)

      %%先0擴充再濾波 clc clear f=imread('.imagesdipum_images_ch04Fig0405(a)(square_original).tif');imshow(f);

      [M N]=size(f);

      F=fft2(f);%沒有經過0擴充直接計算fft sig=10;%高斯濾波參數(shù)

      H=lpfilter('gaussian',M,N,sig);

      G=H.*F;%加了.號的乘法表示對應每個元素都相乘,沒加.號的乘法說明是真正的矩陣乘法

      g=real(ifft2(G));

      figure,imshow(g,[]);

      PQ=paddedsize(size(f));%PQ為0擴展的面積,這里設置為與圖像的大小相同?這里size(f)的大小為256*256

      Fp=fft2(f,PQ(1),PQ(2));%如果fft2有3個參數(shù)的話,則是進行了0擴展了

      Hp=lpfilter('gaussian',PQ(1),PQ(2),2*sig);%構造高斯濾波器 Gp=Hp.*Fp;%對0擴展后的圖像進行高斯濾波 gp=real(ifft2(Gp));figure,imshow(gp,[])'

      gpc=gp(1:size(f,1),1:size(f,2));%取gp圖像的1到f的第一維的行,1到f第二維的列部分,即取與圖像大小相同的部分

      figure,imshow(gpc,[]);%此時顯示的結果應該與g圖像一樣。

      %直接使用空間域濾波

      h=fspecial('gaussian',15,7);gs=imfilter(f,h);

      figure,imshow(gs,[])

      %% clc clear

      f=imread('.imagesdipum_images_ch04Fig0405(a)(square_original).tif');f=double(f);imshow(f);

      PQ=paddedsize(size(f));%size(f)的大小為256*256

      sig=10;

      H = lpfilter('gaussian',PQ(1),PQ(2),2*sig);% PQ=[512 512] figure,mesh(abs(H(1:10:512,1:10:512)));%畫出濾波器的三維空間圖 g=dftfilt(f,H);

      figure,imshow(g,[])

      %%空間濾波和頻域濾波的比較

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0409(a)(bld).tif');imshow(f);

      F=fft2(f);

      S=fftshift(log(1+abs(F)));

      S=gscale(S);%用gscale來進行將數(shù)據(jù)縮放到默認值0~255 figure,imshow(S);

      h=fspecial('sobel');%構造sobel空間濾波器 figure,freqz2(h);%查看濾波器的圖形

      PQ=paddedsize(size(f));

      H=freqz2(h,PQ(1),PQ(2));%將空間濾波器h轉換成頻域濾波器H,但是濾波器的原點在矩陣的中心處

      H1=ifftshift(H);%原點遷移到左上角

      figure,mesh(abs(H1(1:20:1200,1:20:1200)));figure,subplot(121),imshow(abs(H),[]);subplot(122),imshow(abs(H1),[]);

      gs=imfilter(double(f),h);%空間濾波,其實就是邊緣檢測 gf=dftfilt(f,H);%頻域濾波

      subplot(121),imshow(gs,[]),subplot(122),imshow(gf,[]);%將2種濾波結果顯示出來

      figure,imshow(abs(gs)>0.2*abs(max(gs(:))));%只顯示最大值的20%的邊緣

      figure,imshow(abs(gf)>0.2*abs(max(gf(:))));

      d=abs(gs-gf);a=max(d(:))b=min(d(:))

      %%構造低通濾波器

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0413(a)(original_test_pattern).tif');

      imshow(f)

      F1=fft2(f);

      imshow(log(1+abs(fftshift(F1))),[]);%直接顯示取對數(shù)后的傅里葉變換

      PQ=paddedsize(size(f));

      [U V]=dftuv(PQ(1),PQ(2));%這個函數(shù)還真不明白什么意思,help中解釋的是計算網格頻率矩陣U和V,這2個矩陣是用來頻率濾波的 D0=0.05*PQ(2);

      F=fft2(f,PQ(1),PQ(2));%用0擴充大小為PQ(1)*PQ(2),然后fft變換 figure,imshow(log(1+abs(fftshift(F))),[]);%顯示0擴充后的fft變換圖

      H=exp(-(U.^2+V.^2)/(2*(D0^2)));%構造頻域濾波算子 figure,imshow(fftshift(H),[]);%顯示平移后濾波器算子 g=dftfilt(f,H)

      figure,imshow(g,[]);

      %%繪制一個低通濾波器的mesh圖 clc clear

      H1=lpfilter('gaussian',500,500,50)%構造一個中心點在左上角的高斯低通濾波器,size為500*500

      H2=fftshift(H1);%將中心點平移至矩陣中心

      mesh(H1(1:10:500,1:10:500)),figure,mesh(H2(1:10:500,1:10:500));%繪出2者的mesh圖

      axis([0 50 0 50 0 1]);%xy軸范圍0~50,z軸范圍0~1

      figure,subplot(121),imshow(H1,[]),subplot(122),imshow(H2,[]);%繪出2者的灰度圖

      %%繪制一個低通濾波器的mesh圖 clc clear

      H=fftshift(hpfilter('ideal',500,500,100));%構造理想的高通濾波器 mesh(H(1:10:500,1:10:500));axis([1 50 1 50 0 1]);colormap([0 0 0]);%mesh網格全部用黑色畫 axis off%關掉坐標軸顯示 grid off%關掉網格顯示 figure,imshow(H,[])

      %%使用高通濾波器

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0413(a)(original_test_pattern).tif');

      imshow(f)

      title('原始圖像')

      PQ=paddedsize(size(f));D0=0.05*PQ(1);

      H=hpfilter('gaussian',PQ(1),PQ(2),D0);g=dftfilt(f,H);

      figure,imshow(g,[])

      %%將高通濾波和直方圖均衡結合起來

      clc clear

      f=imread('.imagesdipum_images_ch04Fig0419(a)(chestXray_original).tif');imshow(f)

      title('原始圖像')

      PQ = paddedsize(size(f));D0 = 0.05*PQ(1);

      HBW=hpfilter('btw',PQ(1),PQ(2),D0,2);%構造高通Butterworth濾波器,截斷頻率為D0 H=0.5+2*HBW;

      gdw=dftfilt(f,HBW);

      gbw=gscale(gdw);%將灰度值自動縮放到0~255之間 figure,subplot(121),imshow(gdw,[]);title('高通濾波后圖像');

      gbe=histeq(gbw,256);%直方圖均衡化 subplot(122),imshow(gbe,[]);title('高通濾波且直方圖均衡化后圖像');

      ghf=dftfilt(f,H);%H是HBW的線性變換 ghf=gscale(ghf);

      figure,subplot(121),imshow(ghf,[]);title('高頻強調濾波后圖像');

      ghe=histeq(ghf,256);

      subplot(122),imshow(ghe,[]);title('高頻強調且均衡化后圖像');

      %%fftshift和ifftshift的加深理解 clc clear

      A=[2 0 0 1

      0 0 0 0

      0 0 0 00 0 4]

      B=fftshift(A)%中心點平移

      C=fftshift(fftshift(A))%還原成A

      D=ifftshift(fftshift(A))%也同樣還原成A E=ifftshift(A)%平移結果和B一樣

      第五篇:基于matlab的語音信號濾波處理——數(shù)字信號處理課程設計

      數(shù)字信號處理課程設計

      題目: 學院: 專業(yè): 班級: 學號: 姓名: 指導教師:

      基于matlab的語音信號濾波處理

      物理與電子信息學院電子信息工程

      摘要:

      語音信號處理是研究用數(shù)字信號處理技術和語音學知識對語音信號進行處理的新興學科,是目前發(fā)展最為迅速的學科之一,通過語音傳遞信息是人類最重要,最有效,最常用和最方便的交換信息手段,所以對其的研究更顯得尤為重要。

      Matlab語言是一種數(shù)據(jù)分析和處理功能十分強大的計算機應用軟件,它可以將聲音文件變換成離散的數(shù)據(jù)文件,然后用起強大的矩陣運算能力處理數(shù)據(jù)。這為我們的本次設計提供了強大并良好的環(huán)境!

      本設計要求自己錄制一段自己的語音后,在MATLAB軟件中采集語音信號、回放語音信號并畫出語音信號的時域波形和頻譜圖。再在Matlab中分別設計不同形式的FIR數(shù)字濾波器。之后對采集的語音信號經過不同的濾波器(低通、高通、帶通)后,觀察不同的波形,并進行時域和頻譜的分析。對比處理前后的時域圖和頻譜圖,分析各種濾波器對于語音信號的影響。最后分別收聽進行濾波后的語音信號效果,做到了解在怎么樣的情況下該用怎么樣的濾波器。

      目錄

      1.設計內容……………………………………………………………4 2.設計原理……………………………………………………………4 2.1語音信號的時域分析…………………………………………4 2.2語音信號的頻域分析…………………………………………5 3.設計過程……………………………………………………………5 3.1實驗程序源代碼………………………………………………6

      3.1.1原語音信號時域、頻域圖………………………………6

      3.1.2低通濾波器的設計………………………………………6

      3.1.3高通濾波器的設計………………………………………7

      3.1.4帶通濾波器的設計………………………………………8

      3.1.5語音信號的回放………………………………………9 3.2調試結果描述…………………………………………………10 3.3所遇問題及結果分析…………………………………………15

      3.3.1所遇主要問題…………………………………………16

      3.3.2結果分析………………………………………………16 4.體會與收獲…………………………………………………………17 5.參考文獻……………………………………………………………17

      1.設計內容:

      1.首先錄制好一段自己的語音。

      2.用Matlab分別設計好3種類型的濾波器(指標自己確定):低通型、高通型、帶通型。3.用Matlab將語音信號進行采樣,并分別將其通過所設計的3種濾波器。4.用Matlab自帶的語音返回函數(shù)收聽濾波后的語音信號,分析并比較其與原語音信號的差異。

      2.設計原理:

      語音信號時一種非平穩(wěn)的時變信號,它帶著各種信息。在語音編碼、語音合成、語音識別和語音增強等語音處理中無一例外需要提取語音中包含的各種信息。語音信號分析的目的就在于方便有效的提取并表示語音信號所攜帶的信息。語音信號處理可以分為時域和變換域等處理方法,其中時域分析是最簡單的方法,直接對語音信號的時域波形進行分析,崎嶇的特征參數(shù)主要有語音的短時能量,短時平均過零率,短時自相關函數(shù)等。2.1語音信號的時域分析

      信號提取:通過圖形用戶界面上的菜單功能按鍵采集電腦上的一段音頻信號,完成音頻信號的頻率,幅度等信息的提取,并得到該語音信號的波形圖。

      信號調整:在設計的用戶圖形界面下對輸入的音頻信號進行各種變化,如變化幅度、改變頻率等操作,以實現(xiàn)對語音信號的調整。

      2.2語音信號的頻域分析

      信號的傅里葉表示在信號的分析和處理中起著重要的作用。因為對于線性系統(tǒng)來說,可以很方便地確定其對正弦或復指數(shù)和的響應,所以傅里葉分析方法能完善地解決許多信號分析和處理問題。另外,傅里葉表示使信號的某些特性變得更明顯,因此,它能更深入地說明信號的各項紅物理現(xiàn)象。

      由于語音信號時隨著時間變化的,通常認為,語音是一個受準周期脈沖或隨機噪聲源激勵的線性系統(tǒng)的輸出。輸出頻譜是聲道系統(tǒng)頻率響應與激勵源頻譜的乘積。身份到系統(tǒng)的頻率響應及激勵源都是隨時間變化的,因此一般標準的傅里葉表示雖然適用于周期及平穩(wěn)隨機信號的表示,但不能直接用于語音信號。由于語音信號可以認為在短時間內,近似不變,因而可以采用短時分析法。

      1.信號變換:在用戶圖形界面西啊對采集的語音信號進行Fourier等變換,并畫出變換前后的頻譜圖和倒譜圖。

      2.信號濾波:濾除語音信號中的噪音部分,可以采用抵用濾波、高通濾波、帶通濾波,并比較各種濾波后的效果。

      3.設計過程:

      3.1實驗程序源代碼(原語音信號存放在e:下):

      3.1.1.原語音信號的時域、頻域圖

      [x1,fs,bits]=wavread('e:txwz.wav');%sound(x1,fs,bits);figure(1);

      plot(x1);%做原始語音信號的時域圖形 title('原始語音信號');xlabel('時間 t');ylabel('音量 n');figure(2);y1=fft(x1);%做length(x1)點的FFT y1=fftshift(y1);%平移,是頻率中心為0 derta_fs = fs/length(x1);%設置頻譜的間隔,分辨率 plot([-fs/2:derta_fs: fs/2-derta_fs],abs(y1));%畫出原始語音信號的頻譜圖

      title('原始語音信號的頻譜');grid on;3.1.2低通濾波器的設計

      %低通濾波:截止頻率4000,阻帶衰減20dB,過渡帶寬0.1π

      fc1=4000;N1=2*pi*0.9/(0.1*pi)wc1=2*pi*fc1/fs;if rem(N1,2)==0 N1=N1+1;end Window= boxcar(N1+1);%長度為N1的矩形窗Window b1=fir1(N1,wc1/pi,Window);

      figure(3);freqz(b1,1,512);title('低通濾波器的頻率響應');x1_low = filter(b1,1,x1);%對信號進行低通濾波 figure(4);plot(x1_low);title('信號經過低通濾波器(時域)');figure(5);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_low))));title('信號經過低通濾波器(頻域)');3.1.3高通濾波器的設計

      %高通濾波:截止頻率4000,阻帶衰減40dB,過渡帶寬0.1π

      fc2=4000;N2=2*pi*3.1/(0.1*pi)wc2=2*pi*fc1/fs;N2=N2+mod(N2,2);Window=hanning(N2+1);b2=fir1(N2,wc2/pi,'high',Window);figure(6);freqz(b2,1,512);%數(shù)字濾波器頻率響應 title('高通濾波器的頻率響應');

      x1_high = filter(b2,1,x1);%對信號進行高通濾波 figure(7);plot(x1_high);title('信號經過高通濾波器(時域)');figure(8);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_high))));title('信號經過高通濾波器(頻域)')3.1.4帶通濾波器的設計

      %帶通濾波:下截止頻率4000,上截止頻率8000,阻帶衰減20dB,過渡帶寬度0.1π

      f1=4000;f2=8000;%帶通濾波器的通帶范圍 w1=2*pi*f1/fs;w3=w1+0.1*pi;w2=2*pi*f2/fs;w4=w2-0.1*pi;w=[(w1+w3)/2,(w2+w4)/2];B=0.1*pi;N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);Window=boxcar(N3+1);b3=fir1(N3,w/pi,'stop',Window);%帶通濾波器

      figure(9);freqz(b3,1,512);%數(shù)字濾波器頻率響應 title('帶通濾波器的頻率響應');x1_daitong = filter(b3,1,x1);%對信號進行帶通濾波 figure(10);plot(x1_daitong);title('信號經過帶通濾波器(時域)');figure(11);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_daitong))));title('信號經過帶通濾波器(頻域)');3.1.5語音信號的回放(分別執(zhí)行)

      sound(x1,fs,bits);%原始信號

      sound(x1_low,fs,bits);%經過低通濾 sound(x1_high,fs,bits);%經過高通濾波 sound(x1_daitong,fs,bits);%經過帶通濾波

      3.2調試結果描述

      原始語音信號的時域圖形:

      原始語音信號頻譜:

      低通濾波器的頻率響應:

      信號經過低通濾波后的時域波形:

      信號經過低通濾波后的頻域波形

      高通濾波器的頻率響應:

      信號經過高通濾波后的時域波形:

      信號經過高通濾波后的頻域波形:

      帶通濾波器的頻率響應:

      信號經過帶通濾波后的時域波形:

      信號經過帶通濾波后的頻域波形:

      3.3所遇問題及結果分析

      3.3.1所遇主要問題

      1.在高通與帶通濾波器的設計時老是報錯,但同樣的用法在低通濾波器中就可以實現(xiàn)

      b2=fir1(N2,wc2/pi,'high',Window);??? Error using ==> fir1 The window length must be the same as the filter length.其要求在fir函數(shù)中所選用的窗長要和濾波器長度一致。但在參考書上指出,濾波器階數(shù)必須為窗長加1。經上網查詢后,原來高通、帶阻濾波器的階數(shù)應該控制為奇數(shù),因為如果階數(shù)為偶數(shù),則在π點必有一零點,這對于高通帶阻來說是不允許的,故取階數(shù)為奇數(shù),而你FIR1濾波器階數(shù)為M+1階,所以你的M必須為偶數(shù),所以可以將程序中去窗長算法由原程序的: N2=2*pi*0.9/(0.1*pi);if rem(N2,2)==0 N2=N2+1;End 和: N3=2*pi*0.9/(0.1*pi);if rem(N3,2)==0 N3=N3+1;End 改為了:

      N2=N2+mod(N2,2);和: B=0.1*pi;(B為過渡帶寬)N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);2.在設計高通濾波器時先是使用的矩形窗,用矩形窗驗證出來的結果中低頻語音分量依舊很強,不能將其全部抑制在0,之后換窗,選著了最小衰減可以到達53dB的海明窗,再次試驗,非常成功!3.3.2結果分析

      經過回放三個不同類型濾波器輸出的語音信號,并與原語音信號對比得到了如下結論。

      語音高頻成分音質非常尖銳,齒音中,聲音有些暗淡。語音低頻成分音質沉穩(wěn),空間感覺強,語音渾厚。語音中頻成分音質有力度,有通透感。

      4.體會與收獲

      以往都是通過課本來感性的認知語音信號,通過本次的課程設計,讓我對語音信號有了一個較為實際的認識。于此同時,讓我再次把數(shù)字信號處理及數(shù)字濾波器的設計方法重新進行了復習和學習。而對于Matlab,也再次讓我感受到了其功能的強大。最為重要的是,本次課 17

      程設計讓我重新審視了學習的過程:只去做實驗是不行的,首先還是要思考,遇到了問題查書籍,百度搜索也只是一種手段,更加重要的是想,再理解,只有這樣才能真正的做好實驗。

      5.參考文獻

      《數(shù)字信號處理》錢同惠、百度文庫

      下載數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦]word格式文檔
      下載數(shù)字圖像處理_平均濾波與中值濾波(含MATLAB代碼)[小編推薦].doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內容由互聯(lián)網用戶自發(fā)貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內聯(lián)系你,一經查實,本站將立刻刪除涉嫌侵權內容。

      相關范文推薦

        數(shù)字圖像處理_邊緣檢測算子與銳化算子(含MATLAB代碼)

        數(shù)字圖像處理實驗五 15生醫(yī) 一、實驗內容 對某一灰度圖像,進行如下處理: (1)分別用Roberts、Prewitt和Sobel邊緣檢測算子進行邊緣檢測; (2)將Roberts、Prewitt和Sobel邊緣檢測算子......

        基于MATLAB的數(shù)字圖像處理

        目 錄 1 引言 ................................................................................................................. 1 2 設計使用軟件.......................

        matlab數(shù)字圖像處理 膨脹和腐蝕

        基于Matlab的腐蝕和膨脹的邊緣檢測 一、實驗目的: 掌握運用Matlab軟件對灰度與二值圖像的膨脹與腐蝕的處理方法。 二、實驗環(huán)境(軟件條件): Windws2000/XP MATLAB 7.x 三、實......

        基于MATLAB數(shù)字圖像處理平臺設計

        基于MATLAB 數(shù)字圖像處理平臺設計 1 摘要 數(shù)字圖像處理技術在各個行業(yè)得到廣泛的應用,其交互式的圖形界面是操作者方便使用這些技術的途徑。本文主要介紹了基于MATLAB的圖形......

        數(shù)字圖像處理實驗 完整代碼(原創(chuàng)精心整理)

        實驗一圖象灰度變換(2學時) 一、實驗目的: 理解數(shù)字圖象處理的基本過程,掌握常用圖象灰度變換算法,觀察圖像圖象灰度變換的結果,加深對數(shù)字圖象基本概念的理解。 二、實驗內容: 1、......

        簡易photoshop代碼數(shù)字圖像處理實驗報告

        一.一個簡單的“photoshop”軟件 二.設計目的: 數(shù)字圖像處理,就是用數(shù)字計算機及其他有關數(shù)字技術,對圖像進行處理,以達到預期的目的。隨著計算機的發(fā)展,圖像處理技術在許多領域得......

        阿貝成像原理與空間濾波實驗報告

        阿貝成像原理和空間濾波【實驗目的】1.了解阿貝成像原理,懂得透鏡孔徑對成像的影響.2.了解透鏡的傅里葉變換功能及空間頻譜的概念.3.了解兩種簡單的空間濾波.4.掌握在相干光條件下調......

        《數(shù)字圖像處理與分析》課程教學大綱

        《數(shù)字圖像處理與分析》課程教學大綱 英文名稱:Digital Image Processing and Analysis 課程號:19139314 一、課程基本情況 1. 學分: 2 2. 學時: 32 3. 課程類別:選修課 4. 適用......