




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中值濾波原理及MATLA毆現(xiàn)摘要 :圖像是一種重要的信息源,通過圖像處理可以幫助人們了解信息的內(nèi)涵。本文將純凈的圖像加入椒鹽噪聲, 然后采用中值濾波的方法對(duì)其進(jìn)行去噪。中值濾波是一種常用的非線性信號(hào)處理技術(shù),在圖像處理中,它對(duì)濾除脈沖干擾噪聲最為有效。文章闡述了中值濾波的原理、算法以及在圖像處理中的應(yīng)用。MATLAB是一種高效的工程計(jì)算語言,在數(shù)據(jù)處理、圖像處理、神經(jīng)網(wǎng)絡(luò)、小波分析等方面都有廣泛的應(yīng)用。關(guān)鍵詞 :圖像 , 中值濾波 , 去噪 ,MATLAB1. 引言20 世紀(jì) 20 年代 , 圖像處理首次得到應(yīng)用。上個(gè)世紀(jì)60 年代中期 , 隨著計(jì)算機(jī)科學(xué)的發(fā)展和計(jì)算機(jī)的普及, 圖像處理得到廣
2、泛的應(yīng)用。60 年代末期 , 圖像處理技術(shù)不斷完善, 逐漸成為一個(gè)新興的學(xué)科。圖像處理中輸入的是質(zhì)量低的圖像,輸出的是改善質(zhì)量后的圖像。為了改善圖像質(zhì)量, 從圖像中提取有效信息, 必須對(duì)圖像進(jìn)行去噪預(yù)處理。根據(jù)噪聲頻譜分布的規(guī)律和統(tǒng)計(jì)特征以及圖像的特點(diǎn), 出現(xiàn)了多種多樣的去噪方法。 經(jīng)典的去噪方法有:空域合成法, 頻域合成法和最優(yōu)合成法等, 與之適應(yīng)的出現(xiàn)了許多應(yīng)用方法, 如均值濾波器, 中值濾波器, 低通濾波器, 維納濾波器, 最小失真法等。 這些方法的廣泛應(yīng)用, 促進(jìn)數(shù)字信號(hào)處理的極大發(fā)展, 顯著提高了圖像質(zhì)量。2. 中值濾波在圖像濾波中,常用的方法是線性濾波技術(shù)和非線性濾波技術(shù),線性濾波
3、以其完美的理論基礎(chǔ),數(shù)學(xué)處理簡(jiǎn)單、易于采用和硬件實(shí)現(xiàn)等優(yōu)點(diǎn),一直在圖像濾波領(lǐng)域中占有重要的地位。線性濾波對(duì)加性高斯噪聲有較好的平滑作用,但對(duì)脈沖信號(hào)和其它形式的高頻分量抑制效果較差,且模糊信號(hào)邊緣。非線性濾波是基于對(duì)輸入信號(hào)序列的一種非線性投影關(guān)系,常把某一特定的噪聲近似為零而保留信號(hào)的重要特征,一定程度上克服線性濾波器的不足,非線性濾波早期運(yùn)用較多的是中值濾波器,其應(yīng)用于多維信號(hào)處理時(shí),對(duì)窄脈沖信號(hào)具有良好的抑制能力,但中值濾波器對(duì)中拖尾(如均勻分布噪聲)和短拖尾分布噪聲(如高斯噪聲),濾波性能較差, 且拖尾越短, 其濾波能力越差。中值濾波是一種典型的低通濾波器,屬于非線性濾波技術(shù),它的目的
4、是保護(hù) 圖像邊緣的同時(shí)去除噪聲。所謂中值濾波,是指把以某點(diǎn)( x,y)為中心的小窗 口內(nèi)的所有象素的灰度按從大到小的順序排列,若窗口中的象素為奇數(shù)個(gè),則將中間值作為(x , y)處的灰度值。若窗口中的象素為偶數(shù)個(gè),則取兩個(gè)中間值的平 均值作為(x , y)處的灰度值。中值濾波對(duì)去除椒鹽噪聲很有效。 中值濾波器的缺 點(diǎn)是對(duì)所有象素點(diǎn)采用一致的處理,在濾除噪聲的同時(shí)有可能改變真正象素點(diǎn)的 值,引入誤差,損壞圖像的邊緣和細(xì)節(jié)。該算法對(duì)高斯噪聲和均勻分布噪聲就束 手無策02.1 中值濾波基本原理中值濾波是一種非線性濾波,由于它在實(shí)際運(yùn)算過程中并不需要圖像的統(tǒng)計(jì) 特性,所以比較方便。中值濾波首先是被應(yīng)用
5、在一維信號(hào)處理技術(shù)中,后來被二維圖像信號(hào)處理技術(shù)所應(yīng)用。在一定的條件下,可以克服線性濾波器所帶來的圖 像細(xì)節(jié)模糊,而且對(duì)濾除脈沖干擾及圖像掃描噪聲最為有效。 但是對(duì)一些細(xì)節(jié)多, 特別是點(diǎn)、線、尖頂細(xì)節(jié)多的圖像不宜采用中值濾波的方法。中值濾波的基本原理是把數(shù)字圖像或數(shù)字序列中一點(diǎn)的信用該點(diǎn)的一個(gè)鄰 域中各點(diǎn)值的中值代替。設(shè)有一個(gè)一維序列fi, f2,,fn,取窗口長度為m(m為奇數(shù)),對(duì)此序列進(jìn)行中值濾波,就是從輸入序列中相繼抽出 m個(gè)數(shù),fiv,,片,6,,m 1fi i ,,fi v,其中i為窗口的中心位置,v ,再將這m個(gè)點(diǎn)按其數(shù)值大 2小排列,取其序號(hào)為正中間的那作為輸出。用數(shù)學(xué)公式表示
6、為:一 一 一m 1Y Med fi v, , fi, , fi vi Z,v (2-2)2例如:有一個(gè)序列為0, 3, 4, 0, 7,則中值濾波為重新排序后的序列0, 0, 3, 4, 7中間的值為3。此例若用平均濾波,窗口也是取 5,那么平均濾波輸 出為0 3 4 0 7/; 2.8。因此平均濾波的一般輸出為:Zi fi v fi v ififi v .- m i Z (2-3)對(duì)于二維序列Xj進(jìn)行中值濾波時(shí),濾波窗口也是二維的,但這種二維窗口 可以有各種不同的形狀,如線狀、方形、圓形、十字形、圓環(huán)形等。二維數(shù)據(jù)的中值濾波可以表示為:丫 jMed Xj, A為濾波窗 口(2-4)A在實(shí)際
7、使用窗口時(shí),窗口的尺寸一般先用3 3再取5 5逐漸增大,直到其濾波效果滿意為止。對(duì)于有緩變的較長輪廓線物體的圖像,采用方形或圓形窗口為宜, 對(duì)于包含尖頂角物體的圖像,適宜用十字形窗口。使用二維中值濾波最值得注意的是保持圖像中有效的細(xì)線狀物體。與平均濾波器相比,中值濾波器從總體上來說,能夠較好地保留原圖像中的躍變部分。2.2 中值濾波的去噪過程本文給定的圖像為二維信號(hào),在信號(hào)中加入指定的椒鹽噪聲, 然后利用中值濾波進(jìn)行去噪。雖然有關(guān)中值濾波的函數(shù)是在matlab 函數(shù)庫中已經(jīng)提供,但在圖像處理中利用中值濾波去除圖像中的椒鹽噪聲噪聲卻是一種有效的方法,利用中值濾波函數(shù)去除圖像中的噪聲過程如下:(
8、1)使用 imread() 讀入原始的彩色圖像。( 2)因?yàn)槭褂弥兄禐V波器只能對(duì)灰度圖像進(jìn)行處理,所以利用rgb2gray() 將彩色圖像轉(zhuǎn)化為灰度圖像。( 3)用imnoise() 在灰度圖像中加入椒鹽噪聲。( 4)利用medfilt2() 函數(shù)進(jìn)行中值濾波, 并在 matlab 環(huán)境下運(yùn)行。相應(yīng)的MATLA厭程序如下:clc;clear all;close all;img=imread('3_1.bmp');img_0=rgb2gray(img);img_1=imnoise(img_0,'salt & pepper',0.02);img_2=medf
9、ilt2(img_1);subplot(2,2,1);imshow(img);title(' 原始圖像');灰度圖像 ');加入噪聲后圖像');中值濾波后圖像');subplot(2,2,2);imshow(img_0);title('subplot(2,2,3);imshow(img_1);title('subplot(2,2,4);imshow(img_2);title('MatLab 自編的均值濾波、中值濾波、高斯濾波圖像處理函數(shù)。%自編的均值濾波函數(shù)。x是需要濾波的圖像,n是模板大小(即nxn)function d=ave
10、filt(x,n)a(1:n,1:n)=1; %a即nxn模板,元素全是1 p=size(x); % 輸入圖像是 pxq 的,且 p>n,q>n x1=double(x);x2=x1;%A(a:b,c:d) 表示 A 矩陣的第a 到 b 行 ,第 c 到 d 列的所有元素for i=1:p(1)-n+1for j=1:p(2)-n+1c=x1(i:i+(n-1),j:j+(n-1).*a;% 取出 x1 中從 (i,j) 開始的 n 行 n 列元素與模板相乘s=sum(sum(c);% 求 c 矩陣 (即模板 )中各元素之和x2(i+(n-1)/2,j+(n-1)/2)=s/(n*
11、n); %將模板各元素的均值賦給模板中心位置的元素 end end % 未被賦值的元素取原值 d=uint8(x2);%自編的中值濾波函數(shù)。x是需要濾波的圖像,n是模板大小(即nxn)function d=midfilt(x,n)p=size(x); % 輸入圖像是 pxq 的,且 p>n,q>nx1=double(x);x2=x1;for i=1:p(1)-n+1for j=1:p(2)-n+1c=x1(i:i+(n-1),j:j+(n-1);%取出x1中從(i,j)開始的n行n列元素,即模板(n xn的) e=c(1,:);% 是 c 矩陣的第一行for u=2:n e=e,c
12、(u,:);% 將 c 矩陣變?yōu)橐粋€(gè)行矩陣endmm=median(e);%mm 是中值x2(i+(n-1)/2,j+(n-1)/2)=mm;% 將模板各元素的中值賦給模板中心位置的元素end end % 未被賦值的元素取原值 d=uint8(x2);% 自編的高斯濾波函數(shù),S 是需要濾波的圖象,n 是均值,k 是方差function d=gaussfilt(k,n,s)Img = double(s);n1=floor(n+1)/2);% 計(jì)算圖象中心for i=1:nfor j=1:nb(i,j) =exp(-(i-n1)A2+(j-n1)A2)/(4*k)/(4*pi*k);endend%
13、 生成高斯序列b 。Img1=conv2(Img,b,'same'); %用生成的高斯序列卷積運(yùn)算,進(jìn)行高斯濾波d=uint8(Img1);% 此為程序主文件,包含主要功能單元,以及對(duì)子函數(shù)進(jìn)行調(diào)用try% 實(shí)驗(yàn)步驟一:彩色、灰度變換h=imread('photo.jpg'); % 讀入彩色圖片c=rgb2gray(h); % 把彩色圖片轉(zhuǎn)化成灰度圖片,256 級(jí)figure,imshow(c),title(' 原始圖象'); % 顯示原始圖象g=imnoise(c,'gaussian',0.1,0.002);% 加入高斯噪聲fi
14、gure,imshow(g),title(' 加入高斯噪聲之后的圖象');% 顯示加入高斯噪聲之后的圖象% 實(shí)驗(yàn)步驟二:用系統(tǒng)預(yù)定義濾波器進(jìn)行均值濾波n=input(' 請(qǐng)輸入均值濾波器模板大小n');A=fspecial('average',n);% 生成系統(tǒng)預(yù)定義的3X3 濾波器Y=filter2(A,g)/255;% 用生成的濾波器進(jìn)行濾波,并歸一化figure,imshow(Y),title(' 用系統(tǒng)函數(shù)進(jìn)行均值濾波后的結(jié)果'); % 顯示濾波后的圖象% 實(shí)驗(yàn)步驟三: 用自己的編寫的函數(shù)進(jìn)行均值濾波Y2=avefilt(
15、g,n);% 調(diào)用自編函數(shù)進(jìn)行均值濾波,n 為模板大小figure,imshow(Y2),title(' 用自己的編寫的函數(shù)進(jìn)行均值濾波之后的結(jié)果'); % 顯示濾波后的圖象% 實(shí)驗(yàn)步驟四: 用 Matlab 系統(tǒng)函數(shù)進(jìn)行中值濾波n2=input(' 請(qǐng)輸入中值濾波的模板的大小n');Y3=medfilt2(g,n2 n2);% 調(diào)用系統(tǒng)函數(shù)進(jìn)行中值濾波,n2 為模板大小figure,imshow(Y3),title(' 用 Matlab 系統(tǒng)函數(shù)進(jìn)行中值濾波之后的結(jié)果');% 顯示濾波后的圖象%實(shí)驗(yàn)步驟五:用自己的編寫的函數(shù)進(jìn)行中值濾波Y4=m
16、idfilt(g,n2);%調(diào)用自己編寫的函數(shù)進(jìn)行中值濾波,figure,imshow(Y4),title('用自己編寫的函數(shù)進(jìn)行中值濾波之后的結(jié)果);%實(shí)驗(yàn)步驟六:用matlab系統(tǒng)函數(shù)進(jìn)行高斯濾波n3=input(' 請(qǐng)輸入高斯濾波器的均值n');k=input('請(qǐng)輸入高斯濾波器的方差n');A2=fspecial('gaussian',k,n3);% 生成高斯序列Y5=filter2(A2,g)/255;%用生成的高斯序列進(jìn)行濾波figure,imshow(Y5),title(' 用Matlab函數(shù)進(jìn)行高斯濾波之后的結(jié)果)
17、;%顯示濾波后的圖象%實(shí)驗(yàn)步驟七:用自己編寫的函數(shù)進(jìn)行高斯濾波Y6=gaussfilt(n3,k,g);%調(diào)用自己編寫的函數(shù)進(jìn)行高斯濾波,n3為均值,k為方差figure,imshow(Y6),title('用自編函數(shù)進(jìn)行高斯濾波之后的結(jié)果);%顯示濾波后的圖象catch%捕獲異常disp(lasterr); %如果程序有異常,輸出end分享到搜狐微博*高斯噪聲去噪thr,sorh,keepapp = ddencmp('den','wv',x);x1= wdencmp('gbl',J1,'sym4',2,thr,sorh,keepapp);%x為要處理得原始圖像%x1為處理后的圖像*/運(yùn)行結(jié)果如圖所示原始圖像灰度圖像加入噪聲后圖像中值濾波后圖像3. 結(jié)束語在圖像處理過程中,消除圖像的噪聲干擾是一個(gè)非常重要的問題 ,本文利用 matlab軟件,采用中值濾波的方式,對(duì)帶有椒鹽噪聲的圖像進(jìn)行處理,經(jīng)過濾波 后的圖像既適合人眼的視覺感覺又能夠消除圖像中的干擾影響。通過本次試驗(yàn)我們可以看到中值濾波對(duì)于濾除圖像的“椒鹽”噪聲非常有效,它可以做到既去除 噪聲又能保護(hù)圖像的邊緣,從而獲得較滿意的復(fù)原效果,尤其在濾除疊加白噪
溫馨提示
- 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年電氣工程師職稱評(píng)定考試試卷及答案
- 2025年湖南省長沙市長雅實(shí)、西雅、雅洋八下英語期末教學(xué)質(zhì)量檢測(cè)試題含答案
- 前臺(tái)收銀結(jié)賬操作規(guī)范
- 最美勞動(dòng)者主題活動(dòng)方案
- 2025年深圳駕??荚嚱叹殕T從業(yè)資格證
- 車隊(duì)交通安全知識(shí)培訓(xùn)
- 社會(huì)公益活動(dòng)志愿者證明(5篇)
- 辯論賽上的發(fā)言稿演講稿作文14篇
- 農(nóng)民合作農(nóng)產(chǎn)品深加工合同
- 我最喜歡的動(dòng)物動(dòng)物描寫作文(10篇)
- 煤礦安全規(guī)程露天部分參考題庫(含答案)
- 紫銅材質(zhì)證明
- 新產(chǎn)品評(píng)審管理辦法
- (參考)菲達(dá)公司國內(nèi)電除塵器業(yè)績表
- 游泳池水質(zhì)檢測(cè)記錄表
- 大學(xué)生職業(yè)生涯規(guī)劃與就業(yè)指導(dǎo)教案第5講:興趣探索
- 門店電表記錄表
- 七年級(jí)勞技 花卉種植 花卉用途 PPT學(xué)習(xí)教案
- 隧道換拱專項(xiàng)施工方案
- 國際金融托馬斯普格爾復(fù)習(xí)資料整理
- 基于單片機(jī)的報(bào)警器與旋轉(zhuǎn)燈設(shè)計(jì)(共21頁)
評(píng)論
0/150
提交評(píng)論