版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、題目四:中值濾波器設(shè)計(jì)及椒鹽噪聲濾除、實(shí)驗(yàn)背景在數(shù)字圖像的生成與采集過程中,由于受工作環(huán)境,器件等性能的影響,使得一幅未 經(jīng)處理的原始圖像,都存在著一定的噪聲干擾。這種噪聲具有以下性質(zhì):1圖像上的噪聲出現(xiàn)處呈現(xiàn)不規(guī)則分布;2、噪聲的大小也是不規(guī)則的。這些噪聲惡化了圖像質(zhì)量,使圖像模糊甚至淹沒目標(biāo)特征,給后續(xù)的處理分析帶來了困難 因此需要對(duì)圖像應(yīng)該進(jìn)行濾除噪聲處理。二、實(shí)驗(yàn)?zāi)康?. 通過利用c程序?qū)崿F(xiàn)數(shù)字信號(hào)處理的相關(guān)功能,鞏固對(duì)信號(hào)處理原理知識(shí)的理解, 培養(yǎng)快速解決實(shí)際問題的能力提高實(shí)際編程和處理數(shù)據(jù)的綜合能力,初步培養(yǎng)在解決 信號(hào)處理實(shí)際應(yīng)用問題中所應(yīng)具備的基本素質(zhì)和要求。2. 培養(yǎng)獨(dú)立思考
2、的能力與研發(fā)能力,通過設(shè)計(jì)實(shí)現(xiàn)不同的信號(hào)處理問題,初步掌握 在給定條件和功能的情況下,實(shí)現(xiàn)合理設(shè)計(jì)算法結(jié)構(gòu)的能力。3. 提高資料查詢和整理的能力。能夠在短時(shí)間內(nèi)找到適合自己的方法。并在文獻(xiàn)整 理的過程中學(xué)會(huì)科技文獻(xiàn)的寫作,提高語言表達(dá)能力。三、實(shí)驗(yàn)內(nèi)容1. 理解什么是椒鹽噪聲,中值濾波的原理及其特性。2. 設(shè)計(jì)一種中值濾波,對(duì)椒噪聲濾波有效,并分析濾波器的適用范圍。3. (擴(kuò)展訓(xùn)練)對(duì)設(shè)計(jì)的濾波器針對(duì)椒、鹽噪聲濾除分別進(jìn)行測(cè)試,并進(jìn)行性能比較分析, 并討論椒、鹽噪聲頻度(噪聲數(shù)目占圖像實(shí)際像素的百分比)對(duì)濾波器實(shí)際效果的影響。四、實(shí)驗(yàn)原理1. 椒鹽噪聲椒鹽噪聲又稱脈沖噪聲,是由圖像傳感器,傳輸
3、信道,解碼處理等產(chǎn)生的黑白相 間的亮暗點(diǎn)噪聲。椒鹽噪聲往往由圖像切割引起。Paz a椒鹽噪聲的PDF是:P ZPbZ b0其他如果b>a,灰度值b在圖像中將顯示為一個(gè)亮點(diǎn),a的值將顯示為一個(gè)暗點(diǎn)。若Pa或Pb 為零,則脈沖噪聲稱為單級(jí)脈沖。如果 Pa和Pb均不為零,尤其是他們近似相等時(shí),脈沖 噪聲值將類似于隨機(jī)分布在圖像上的胡椒和鹽粉微粒。形象的說,椒噪聲在圖像上是類似于黑胡椒顆粒的小點(diǎn),而鹽噪聲在圖像上是類似于 白色鹽粒的小點(diǎn)。2、平滑化去噪聲思想,疋曰一種經(jīng)典的平滑噪聲的方如何從一副有噪聲的圖像中把噪聲去除呢?此時(shí),因有隨機(jī)噪聲而把像素的真 值隱藏起來,而不被知曉,可表現(xiàn)為圖像變暗而
4、不清楚。我們的目的是要把干擾的噪 聲除去,得到視覺清晰的圖像。如右圖,噪聲的濃度與其周圍像素的濃度 間,存在著很大的濃度差,使人覺得很刺眼, 利用噪聲的這種性質(zhì)除去噪聲的方法,一般稱 為平滑化(smoothing )。3、中值濾波的原理及特性:中值濾波在圖像處理中,常用于用來保護(hù)邊緣信息 法。(1) 中值濾波原理中值濾波是基于排序統(tǒng)計(jì)理論的一種能有效抑制噪聲的非線性信號(hào)處理技術(shù),中值濾波的基本原理是把數(shù)字圖像或數(shù)字序列中一點(diǎn)的值用該點(diǎn)的一個(gè)拎域中各點(diǎn)值 的中值代替,讓周圍的像素值接近的真實(shí)值,從而消除孤立的噪聲點(diǎn)。方法是去某種 結(jié)構(gòu)的二維滑動(dòng)模板,將板內(nèi)像素按照像素值的大小進(jìn)行排序,生成單調(diào)上
5、升(或下降)的為二維數(shù)據(jù)序列。 二維中值濾波輸出為 g(x,y ) =medf(x-k,y-l),(k,l W),其中,f(x,y) ,g(x,y)分別為原始圖像和處理后圖像。 W為二維模板,通常為2*2,3*3 區(qū)域,也可以是不同的的形狀,如線狀,圓形,十字形,圓環(huán)形等。(2) 中值濾波器:中值濾波器:用該像素相鄰像素的灰度中值來代替該像素的值:?(x, y)medng(s,t)(S,t) Sxy實(shí)現(xiàn)方法:a. 通過從圖像中的某個(gè)采樣窗口取出奇數(shù)個(gè)數(shù)據(jù)進(jìn)行排序,位于采樣窗中間的中值作為輸出;b. 丟棄最早的值,用排序后的中值取代要處理的數(shù)據(jù)即可。(3) 中值濾波特性中值濾波是圖像處理中的一個(gè)
6、常用步驟,它對(duì)于斑點(diǎn)噪聲和椒鹽噪聲來說尤其有用。中值濾波方法以犧牲圖像清晰度為代價(jià)消除圖像中的椒鹽噪聲。中值濾波不能保證把噪聲去除,只能在有限的范圍內(nèi)減弱噪聲對(duì)圖像的影響。同時(shí),中值濾波不能多次使用,因?yàn)檫@樣會(huì)使圖像各個(gè)像素間趨于相同,整個(gè)圖像就會(huì)變得越來越模糊。另外,通過查閱資料發(fā)現(xiàn),中觀察窗的形狀有關(guān)。五、實(shí)驗(yàn)步驟1、根據(jù)題目要求,先畫出程序的流程圖結(jié)束結(jié)束2、源程序:(1 )基礎(chǔ)訓(xùn)練部分:#i nclude <win dows.h>#include <stdio.h>unsigned char*pBmpBuf=NULL;讀入圖像數(shù)據(jù)的指針unsigned char
7、*pBmpBuf2=NULL; 讀入圖像數(shù)據(jù)的指針int bmpWidth;/圖像寬度int bmpHeight;/圖像高度RGBQUAD *pColorTable; 顏色表指針int biBitCou nt; /圖像類型,每像素的位數(shù)/讀程序可讀取8,24位圖,本實(shí)驗(yàn)是對(duì)8位灰度圖進(jìn)行操作,滿足要求bool readBmp(char *bmpName,i nt lmageWidth,i nt ImageHeight)int i,j;/行列數(shù)BYTE *B;/分別對(duì)應(yīng)圖像的RGB本實(shí)驗(yàn)中RGB相等,故意義不大BYTE *R;BYTE *G;FILE *fp=fopen(bmpName,&quo
8、t;rb");/ 打開文件if(fp=0) retur n 0;fseek(fp,sizeof(BITMAPFILEHEADER),0);/ 找出頭文件BITMAPINFOHEADER head;fread(&head,sizeof(BITMAPINFOHEADER),1,fp);ImageWidth=head.biWidth;/ 圖像寬度賦值lmageHeight=head.biHeight;/ 圖像高度賦值bmpWidth=lmageWidth;bmpHeight=ImageHeight;biBitCou nt=head.biBitCou nt;int lineByte=
9、(bmpWidth*biBitCount/8+3)/4*4;/ 一行中信息點(diǎn)字節(jié)if (biBitCou nt=8)pColorTable=new RGBQUAD256; fread(pColorTable,sizeof(RGBQUAD),256,fp);pBmpBuf= new un sig ned charli neByte*bmpHeight; fread(pBmpBuf,1,li neByte*bmpHeight,fp);/開空間B=NULL;B=(BYTE*)malloc(sizeof(BYTE*)*bmpHeight);for(i=0; ivbmpHeight; i+)Bi = (
10、BYTE*)malloc(sizeof(BYTE)*bmpWidth);if(B=NULL)prin tf("fail to malloc Bn");exit(O);G=NULL;G=(BYTE*)malloc(sizeof(BYTE*)*bmpHeight);for(i=0; ivbmpHeight; i+)Gi = (BYTE*)malloc(sizeof(BYTE)*bmpWidth); if(G=NULL)prin tf("fail to malloc Gn"); exit(0);R=NULL;R=(BYTE*)malloc(sizeof(BYT
11、E*)*bmpHeight);for(i=0; ivbmpHeight; i+)Ri = (BYTE*)malloc(sizeof(BYTE)*bmpWidth); if(R=NULL)prin tf("fail to malloc Rn");exit(0);/讀圖像的RGBif (biBitCou nt=8) for(i=0;i<bmpHeight/50;i+)for(j=0;j<bmpWidth/50;j+)Bij=*(pBmpBuf+i*l in eByte+j);Gij=*(pBmpBuf+i*l in eByte+j);Rij=*(pBmpBuf+i*
12、l in eByte+j);prin tf("(B=%d,G=%d,R=%d)n",Bij,Gij,Rij); else if (biBitCou nt=24)for(i=0;i<bmpHeight/100;i+)for(j=0;j<bmpWidth/100;j+)Bij=*(pBmpBuf+i*l in eByte+j*3+0);Gij=*(pBmpBuf+i*l in eByte+j*3+1);Rij=*(pBmpBuf+i*l in eByte+j*3+2);prin tf("(B=%d,G=%d,R=%d)n",Bij,Gij,Rij
13、);fclose(fp);/釋放空間for(i=0; ivbmpHeight; +i)free(Bi);free(B);B=NULL;for(i=0; ivbmpHeight; +i)free(Gi);free(G);G=NULL;for(i=0; ivbmpHeight; +i)free(Ri);free(R);R=NULL;return 1;bool writeBmp(char *bmpName, i nt lmageWidth,i nt ImageHeight)un sig ned char *imgBuf=pBmpBuf2;if(!imgBuf)return 0;int colorTa
14、blesize=0;if(biBitCou nt=8)colorTablesize=1024;in t li neByte=(lmageWidth*biBitCou nt/8+3)/4*4;FILE *fp=fope n(bmpName,"wb");if (fp=0) retur n 0;BITMAPFILEHEADER fileHead;fileHead.bfType=0x4D42;fileHead.bfSize=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+colorTab lesize+li neByte*Imag
15、eHeight;fileHead.bfReserved 仁0;fileHead.bfReserved2=0;fileHead.bfOffBits=54+colorTablesize;fwrite(&fileHead,sizeof(BITMAPFILEHEADER),1,fp);BITMAPINFOHEADER head;head.biBitCou nt=biBitCou nt;head.biCIrlmporta nt=O;head.biClrUsed=O;head.biCompressi on=0;head.biHeight=lmageHeight;head.biPIa nes=1;h
16、ead.biSize=40;head.biSizelmage=li neByte*lmageHeight; head.biWidth=lmageWidth;head.biXPelsPerMeter=0;head.biYPelsPerMeter=0;fwrite(&&head,sizeof(BITMAPINFOHEADER),1,fp);if (biBitCou nt=8)fwrite(pColorTable,sizeof(RGBQUAD),256,fp);fwrite(imgBuf,ImageHeight*li neByte,1,fp);fclose(fp);return 1;
17、void Med()int i,j,a,b;BYTE p9,s;int lineByte=(bmpWidth +3)/4*4;/計(jì)算一行中儲(chǔ)存信息的字節(jié)數(shù)pBmpBuf2=new un sig ned charli neByte*bmpHeight;memcpy(pBmpBuf2,pBmpBuf,lineByte*bmpHeight);/ 將原圖復(fù)制/ 觀察窗取3*3的矩形窗for(i=1;i<bmpHeight-2;i+) / 邊緣不進(jìn)行處理for(j=3;j<bmpWidth*3-3;j=j+3)/ 每一個(gè)像素點(diǎn)由 RGBE個(gè)字節(jié)組成,故一個(gè)單元為三字節(jié),相對(duì)應(yīng)改變就需要將列數(shù)
18、值j設(shè)為每三字節(jié)取一次/取原圖像中該點(diǎn)周圍的一個(gè)矩形部分p0=*(pBmpBuf+(i-1)*l in eByte+j-3);p1=*(pBmpBuf+(i-1)*li neByte+j);p2=*(pBmpBuf+(i-1)*li neByte+j+3);p3=*(pBmpBuf+i*l in eByte+j-3);p4=*(pBmpBuf+i*l in eByte+j);p5=*(pBmpBuf+i*li neByte+j+3);p6=*(pBmpBuf+(i+1)*li neByte+j-3);p7=*(pBmpBuf+(i+1)*li neByte+j);p8=*(pBmpBuf+(i
19、+1)*li neByte+j+3);/排序for(a=0;a<5;a+)for(b=a+1;b<9;b+)if (pa>pb)s=pa;Pa=pb;pb=s; *(pBmpBuf2+i*lineByte+j)=p4;/ 取中值void main()char readPath="輸入圖像.bmp"readBmp(readPath,bmpWidth,bmpHeight);prin tf("width=%d,height=%d,biBitCou nt=%dn",bmpWidth,bmpHeight,biBitCou nt)JMed();ch
20、ar writePath="輸出圖像.bmp"writeBmp(writePath,bmpWidth,bmpHeight);delete pBmpBuf;delete pBmpBuf2;if(biBitCou nt=8)delete pColorTable;(2)擴(kuò)展訓(xùn)練部分#i nclude <win dows.h>#include <stdio.h>unsigned char*pBmpBuf=NULL;讀入圖像數(shù)據(jù)的指針unsigned char*pBmpBuf2=NULL; 讀入圖像數(shù)據(jù)的指針 2unsigned char*pBmpBuf3=N
21、ULL; 讀入圖像數(shù)據(jù)的指針 3int bmpWidth;int bmpHeight;RGBQUAD *pColorTable; 顏色表指針int biBitCou nt; / 圖像類型,每像素的位數(shù)bool readBmp(char *bmpName,i nt ImageWidth,i nt ImageHeight) int i,j;BYTE *B;BYTE *R;BYTE *G;FILE *fp=fope n(bmpName,"rb");if(fp=O) retur n 0;fseek(fp,sizeof(BITMAPFILEHEADER),0); BITMAPINFO
22、HEADER head;fread(&head,sizeof(BITMAPINFOHEADER),1,fp); lmageWidth=head.biWidth;lmageHeight=head.biHeight; bmpWidth=lmageWidth;bmpHeight=lmageHeight;biBitCou nt=head.biBitCou nt;in t li neByte=(bmpWidth*biBitCou nt/8+3)/4*4;if (biBitCou nt=8)pColorTable=new RGBQUAD256; fread(pColorTable,sizeof(R
23、GBQUAD),256,fp);pBmpBuf= new un sig ned charli neByte*bmpHeight; fread(pBmpBuf,1,li neByte*bmpHeight,fp);/開空間B=NULL;B=(BYTE*)malloc(sizeof(BYTE*)*bmpHeight);for(i=0; ivbmpHeight; i+)Bi = (BYTE*)malloc(sizeof(BYTE)*bmpWidth); if(B=NULL)prin tf("fail to malloc Bn"); exit(0);G=NULL;G=(BYTE*)m
24、alloc(sizeof(BYTE*)*bmpHeight);for(i=0; ivbmpHeight; i+)Gi = (BYTE*)malloc(sizeof(BYTE)*bmpWidth); if(G=NULL)prin tf("fail to malloc Gn"); exit(0);R=NULL;R=(BYTE*)malloc(sizeof(BYTE*)*bmpHeight);for(i=0; ivbmpHeight; i+)Ri = (BYTE*)malloc(sizeof(BYTE)*bmpWidth);if(R=NULL)prin tf("fail
25、 to malloc Rn");exit(0);/讀圖像的RGBif (biBitCou nt=8)for(i=0;i<bmpHeight/50;i+)for(j=0;j<bmpWidth/50;j+)/prin tf("(B=%d,G=%d,R=%d)n",*(pBmpBuf+i*l in eByte+j),*(pBmpBuf+i*li neByte+j),*(pBmpBuf+i*li neByte+j);Bij=*(pBmpBuf+i*l in eByte+j);Gij=*(pBmpBuf+i*l in eByte+j);Rij=*(pBmpBuf
26、+i*l in eByte+j);prin tf("(B=%d,G=%d,R=%d)n",Bij,Gij,Rij);else if (biBitCou nt=24)for(i=0;i<bmpHeight/100;i+)for(j=0;j<bmpWidth/100;j+)/prin tf("(B=%d,G=%d,R=%d)n",*(pBmpBuf+i*l in eByte+j*3+0),*(pBmpBuf+i*l ine Byte+j*3+1),*(pBmpBuf+i*l in eByte+j*3+2);Bij=*(pBmpBuf+i*l in
27、 eByte+j*3+0);Gij=*(pBmpBuf+i*l in eByte+j*3+1);Rij=*(pBmpBuf+i*l in eByte+j*3+2);prin tf("(B=%d,G=%d,R=%d)n",Bij,Gij,Rij);fclose(fp);/釋放空間for(i=0; ivbmpHeight; +i)free(Bi);free(B);B=NULL;for(i=0; ivbmpHeight; +i)free(Gi);free(G);G=NULL;for(i=0; ivbmpHeight; +i)free(Ri);free(R);R=NULL;retu
28、rn 1;bool writeBmp(char *bmpName, i nt lmageWidth,i nt ImageHeight)un sig ned char *imgBuf=pBmpBuf2;if(!imgBuf)return 0;int colorTablesize=0;if(biBitCou nt=8) colorTablesize=1024;in t li neByte=(lmageWidth*biBitCou nt/8+3)/4*4;FILE *fp=fope n(bmpName,"wb");if (fp=0) retur n 0;BITMAPFILEHEA
29、DER fileHead;fileHead.bfType=0x4D42;fileHead.bfSize=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+colorTab lesize+li neByte*ImageHeight;fileHead.bfReserved 仁0;fileHead.bfReserved2=0;fileHead.bfOffBits=54+colorTablesize;fwrite(&fileHead,sizeof(BITMAPFILEHEADER),1,fp);BITMAPINFOHEADER head;hea
30、d.biBitCou nt=biBitCou nt;head.biCIrlmporta nt=O;head.biClrUsed=O;head.biCompressi on=0;head.biHeight=ImageHeight;head.biPla nes=1;head.biSize=40;head.biSizelmage=li neByte*lmageHeight;head.biWidth=lmageWidth;head.biXPelsPerMeter=O;head.biYPelsPerMeter=O;fwrite(&&head,sizeof(BITMAPINFOHEADER
31、),1,fp);if (biBitCou nt=8)fwrite(pColorTable,sizeof(RGBQUAD),256,fp);fwrite(imgBuf,ImageHeight*li neByte,1,fp);fclose(fp);return 1;bool writeBmp2(char *bmpName, i nt ImageWidth,i nt ImageHeight)un sig ned char *imgBuf=pBmpBuf3;if(!imgBuf)return 0;int colorTablesize=0;if(biBitCou nt=8)colorTablesize=
32、1024;in t li neByte=(lmageWidth*biBitCou nt/8+3)/4*4;FILE *fp=fope n(bmpName,"wb");if (fp=0) retur n 0;BITMAPFILEHEADER fileHead;fileHead.bfType=0x4D42;fileHead.bfSize=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+colorTab lesize+li neByte*ImageHeight;fileHead.bfReserved 仁0;fileHead.bf
33、Reserved2=0;fileHead.bfOffBits=54+colorTablesize;fwrite(& fileHead,sizeof(BITMAPFILEHEADER),1,fp);BITMAPINFOHEADER head;head.biBitCou nt=biBitCou nt;head.biCIrlmporta nt=0;head.biClrUsed=0;head.biCompressi on=0;head.biHeight=ImageHeight;head.biPla nes=1;head.biSize=40;head.biSizelmage=li neByte*
34、lmageHeight;head.biWidth=ImageWidth;head.biXPelsPerMeter=0;head.biYPelsPerMeter=0;fwrite(& head,sizeof(BITMAPINFOHEADER),1,fp);if (biBitCou nt=8)fwrite(pColorTable,sizeof(RGBQUAD),256,fp);fwrite(imgBuf,lmageHeight*li neByte,1,fp); fclose(fp);return 1;void Med()int i,j,x,y;BYTE p5,s;in t li neByt
35、e=(bmpWidth+3)/4*4;pBmpBuf2= new un sig ned charli neByte*bmpHeight; memcpy(pBmpBuf2,pBmpBuf,li neByte*bmpHeight); for(i=1;i<bmpHeight-2;i+) for(j=3;j<bmpWidth*3-3;j=j+3)p0=*(pBmpBuf+(i-1)*li neByte+j); p1=*(pBmpBuf+i*l in eByte+j-3); p2=*(pBmpBuf+i*l in eByte+j); p3=*(pBmpBuf+i*li neByte+j+3)
36、; p4=*(pBmpBuf+(i+1)*li neByte+j);for(x=0;x<3;x+)for(y=x+1;y<5;y+)if (py>px)s=py; py=px; px=s;*(pBmpBuf2+i*l in eByte+j)=p2;/左下角為黑色/* int i,j;in t li neByte=(bmpWidth*biBitCou nt/8+3)/4*4; for(i=0;i<bmpHeight/2;i+)for(j=0;j<bmpWidth/2;j+) *(pBmpBuf+i*l in eByte+j)=0;*/ int x,y;中值濾波/ B
37、YTE p9,s;/BYTE *lpTemp=new BYTEbmpWidth*bmpHeight;/ int i,j;/* for(y=1;y<bmpHeight-1;y+)for(x=3;x<bmpWidth*3-3;x+)p0=lpBitsx-3+(y-1)*bmpWidth; p1=lpBitsx+(y-1)*bmpWidth; p2=lpBitsx+3+(y-1)*bmpWidth; p3=lpBitsx-3+y*bmpWidth; p4=lpBitsx+y*bmpWidth;p5=lpBitsx+3+y*bmpWidth; p6=lpBitsx-3+(y+1)*bmpW
38、idth; p7=lpBitsx+(y+1)*bmpWidth; p8=lpBitsx+3+(y+1)*bmpWidth; for(j=0;j<5;j+)for(i=j+1;i<9;i+)if (pj>pi)s=pj;pj=pi;pi=s; lpTempx+y*bmpWidth=p4;lpBits=lpTemp;*/void Med2()i nt i,j,x,y;BYTE p9,s;in t li neByte=(bmpWidth+3)/4*4;pBmpBuf3= new un sig ned charli neByte*bmpHeight;memcpy(pBmpBuf3,p
39、BmpBuf,li neByte*bmpHeight);for(i=2;i<bmpHeight-2;i+)for(j=6;j<bmpWidth*3-6;j=j+3)p0=*(pBmpBuf+(i-2)*li neByte+j);p1=*(pBmpBuf+(i-1)*li neByte+j); p2=*(pBmpBuf+i*li neByte+j-6); p3=*(pBmpBuf+i*li neByte+j-3);p4=*(pBmpBuf+i*l in eByte+j);p5=*(pBmpBuf+i*li neByte+j+3);p6=*(pBmpBuf+i*li neByte+j+
40、6);p7=*(pBmpBuf+(i+1)*li neByte+j);p8=*(pBmpBuf+(i+2)*li neByte+j);for(x=0;x<5;x+)for(y=x+1;y<9;y+)if (py>px)s=py;py=px;px=s;*(pBmpBuf3+i*l in eByte+j)=p4;void main()char readPath=" 輸入圖像.bmp" readBmp(readPath,bmpWidth,bmpHeight);prin tf("width=%d,height=%d,biBitCou nt=%dn&quo
41、t;,bmpWidth,bmpHeight,biBitCou nt)JMed();Med2();char writePath=" 輸出圖像 1.bmp" writeBmp(writePath,bmpWidth,bmpHeight);char writePath2="輸出圖像 2.bmp" writeBmp2(writePath2,bmpWidth,bmpHeight); delete pBmpBuf;delete pBmpBuf2;delete pBmpBuf3;if(biBitCou nt=8)delete pColorTable;六、實(shí)驗(yàn)效果及分析1
42、、基礎(chǔ)訓(xùn)練部分輸入圖像輸出圖像原圖像5次中值濾波后輸出圖像根據(jù)實(shí)驗(yàn)結(jié)果可以看出,中值濾波法能將圖片中的椒鹽噪聲很好地濾除掉,但與原圖 相比,清晰度也有了很大的損失。這也驗(yàn)證了中值濾波的特性:中值濾波方法以犧牲圖像清晰度為代價(jià)消除圖像中的椒鹽噪聲。中值濾波不能保證把噪聲去除,只能在有限的范圍內(nèi)減弱噪聲對(duì)圖像的影響。同時(shí),中值濾波不能多次使用,因?yàn)檫@樣會(huì)使圖像各個(gè)像素間趨于相同,整個(gè)圖像就會(huì)變得越來越模糊。2、擴(kuò)展訓(xùn)練部分(1)通過查閱資料,我們了解到中值濾波器的效果不僅和觀察窗的大小有關(guān),還和 觀察窗的形狀有關(guān)。觀察窗大小和形狀對(duì)中值濾波效果的影響輸入圖像5格十字窗可以看出:使用 5格十字窗口雖然對(duì)噪聲 有一定的濾除作用,但效果有些不盡人意。9格十字窗當(dāng)使用9格十字窗口時(shí)效果變好,但仍有一些噪聲點(diǎn)3*3矩形窗通過對(duì)比我們發(fā)現(xiàn):兩個(gè)同樣用9格窗口的濾波器的效果相近,當(dāng)使用十字窗口時(shí)圖 像的邊緣部分有一部分仍然清晰,但有一部分卻變得毛躁,整個(gè)圖像也在顏色變化時(shí)呈現(xiàn) 出條紋狀。取
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高新技術(shù)企業(yè)委托招聘與研發(fā)團(tuán)隊(duì)構(gòu)建合同3篇
- 2025年食材配送企業(yè)冷鏈物流服務(wù)合同3篇
- 2025版共享單車運(yùn)維服務(wù)與用戶租賃合同范本3篇
- 2025年度旅游汽車租賃及戶外活動(dòng)策劃合同4篇
- 二零二五版高端養(yǎng)殖牛場(chǎng)合伙經(jīng)營合同3篇
- 二零二五版科技創(chuàng)新園區(qū)黨建資源共享合作協(xié)議3篇
- 2025年度煤礦設(shè)備采購及安裝服務(wù)二零二五版合同4篇
- 鄭州城建職業(yè)學(xué)院《中國民事訴訟法》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024藥品采購及質(zhì)量管理體系認(rèn)證合同3篇
- 2025年度市政工程承攬合同建設(shè)施工合同模板4篇
- 課題申報(bào)書:GenAI賦能新質(zhì)人才培養(yǎng)的生成式學(xué)習(xí)設(shè)計(jì)研究
- 駱駝祥子-(一)-劇本
- 全國醫(yī)院數(shù)量統(tǒng)計(jì)
- 《中國香文化》課件
- 2024年醫(yī)美行業(yè)社媒平臺(tái)人群趨勢(shì)洞察報(bào)告-醫(yī)美行業(yè)觀察星秀傳媒
- 第六次全國幽門螺桿菌感染處理共識(shí)報(bào)告-
- 2024-2030年中國商務(wù)服務(wù)行業(yè)市場(chǎng)現(xiàn)狀調(diào)查及投資前景研判報(bào)告
- 高一英語必修一試卷(含答案)(適合測(cè)試)
- 中國的世界遺產(chǎn)智慧樹知到期末考試答案2024年
- 中國綠色食品市場(chǎng)調(diào)查與分析報(bào)告
- 手衛(wèi)生依從性調(diào)查表
評(píng)論
0/150
提交評(píng)論