matlab图像处理——平滑滤波
平滑濾波——matlab圖像處理
平滑濾波的目的是消除或盡量減少噪聲,改善圖像的質(zhì)量。假設(shè)加性噪聲是隨機(jī)獨(dú)立分布,這樣利用圖像像素領(lǐng)域的平均或加權(quán)平均即可有效地抑制噪聲干擾。從信號(hào)分析的觀點(diǎn)來看,圖像平滑本質(zhì)上是低能濾波,信號(hào)的低頻部分可通過,高頻的噪聲信號(hào)被阻截。但由于圖像邊緣也處于高頻部分,這樣往往帶來另一個(gè)問題:在對(duì)圖像進(jìn)行平滑處理時(shí),往往對(duì)圖像的細(xì)化造成一定程度的損壞。
領(lǐng)域運(yùn)算可用領(lǐng)域與模版的卷積得到,這極大地方便了計(jì)算。
MATLAB中提供的imfliter函數(shù)用于實(shí)現(xiàn)圖像的平滑處理,其調(diào)用格式如下。
B=imfliter(A,H):使用多維濾波器H對(duì)圖像A進(jìn)行濾波(平滑)。參數(shù)A可以是任意維的二值或非奇異數(shù)值型矩陣。參數(shù)H為矩陣,表示濾波器。H常由函數(shù)fspecial輸出得到。返回值B與A的維數(shù)相同。
B=imfliter(A,H,optional1,optional2,…)
| X | 輸入圖像的外邊界通過X來擴(kuò)展,X默認(rèn)值為0 |
| symmetric | 輸入圖像的外部邊界通過鏡像反射其內(nèi)部邊界來擴(kuò)展 |
| circular | 輸入圖像的別界通過假設(shè)輸入圖像為周期函數(shù)來擴(kuò)展 |
| relicate | 輸入圖像的外部別界通過復(fù)制內(nèi)部別界的值來擴(kuò)展 |
| same | 輸入和輸出圖像大小相等,默認(rèn)操作 |
| full | 輸出圖像比輸入圖像大 |
| corr | 使用相關(guān)進(jìn)行濾波(平滑) |
| conv | 使用卷積進(jìn)行濾波(平滑) |
matlab中提供的fspecial函數(shù)用于創(chuàng)建二維濾波器:
h=fspecial(type):
type可以是:average,disk,gaussian,laplacian,log,motion,prewitt,sobel,unsharp。
h=fspecial(type,parameters):創(chuàng)建指定類型和指定參數(shù)的二維濾波器h。參數(shù)parameters為與濾波器有關(guān)的參數(shù)。
parameters可以是:n,radius,(hsize,sigma),alpha,(n,sigma),(len,theta)。
對(duì)含有高斯噪聲的圖像進(jìn)行平滑處理。
clear all; I = imread('coins.png'); Inoised = imnoise(I,'gaussian',0.1,0.005);%對(duì)圖像進(jìn)行高斯噪聲加噪 %制定卷積核 h=ones(3,3)/5; h(1,1) = 0; h(1,3) = 0; h(3,1) = 0; h(1,3) = 0; %平滑運(yùn)算 I2=imfilter(Inoised,h); subplot(1,3,1);imshow(I); xlabel('(a)原始圖像'); subplot(1,3,2);imshow(Inoised); xlabel('(b)帶噪聲圖像'); subplot(1,3,3);imshow(I2); xlabel('(c)平滑后圖像');有問題還請(qǐng)多多指教。剛剛?cè)腴T。謝謝各位大牛。
總結(jié)
以上是生活随笔為你收集整理的matlab图像处理——平滑滤波的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows10环境tensorflo
- 下一篇: pytorch求导