日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Matlab 均值滤波与中值滤波

發(fā)布時間:2023/12/31 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Matlab 均值滤波与中值滤波 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

%%以下是本人在學習中的個人理解,如有錯誤請指出

所謂的濾波就是一個系數(shù)矩陣(也稱為模板,濾波器,濾波模板,核,掩模或者窗口),然后用這個模板對應圖像矩陣(填充0后的圖像矩陣)進行乘積和運算。

均值濾波就是這個濾波器每個值都是一樣大小,每個值是1/k(k為濾波器矩陣的大小),用于去噪
濾波器可通過 w=fspecial(‘type’,parameters)得到,其中type指定濾波器類型,parameters進一步定一規(guī)定的濾波器
用fspecial(‘a(chǎn)verage’)可以創(chuàng)建一個均值濾波器,默認33,每個值都是1/(33)=0.1111

>> h=fspecial('average')h =0.1111 0.1111 0.11110.1111 0.1111 0.11110.1111 0.1111 0.1111

然后創(chuàng)建個簡單矩陣

>> x=[1,2,3;4,5,6;2,2,2]x =1 2 34 5 62 2 2

使用filter2(h,x)進行濾波,h為濾波器,x為要濾波的數(shù)據(jù),將h放在x上移動進行模板濾波。

y=filter2(h,x)y =1.3333 2.3333 1.77781.7778 3.0000 2.22221.4444 2.3333 1.6667

下面分析過程
填充0后的圖像矩陣x:

x =0 0 0 0 0 0 00 0 0 0 0 0 00 0 1 2 3 0 00 0 4 5 6 0 00 0 2 2 2 0 00 0 0 0 0 0 00 0 0 0 0 0 0

然后進行乘積和運算
x中
0 0 0
0 1 2
0 4 5
分別和h對應的各元素做乘積然后求和:即(1+2+4+5)*0.1111=1.3333
所得結果即為濾波后圖像y的y(1,1)(對應著x(1,1)),以此類推。

(1+2+4+5)*0.1111=(1+2+4+5+6)/9=1.3333
其原理其實就等于用該點的像素值得領域矩陣的均值來代替這點的像素值
即對以該點為中心點的領域矩陣求和 / 領域矩陣大小
下面是均值濾波實現(xiàn)代碼:

function [c]=junzhilvbo(j,k) [m,n]=size(j); b=zeros(m+2*k,n+2*k);%創(chuàng)建0矩陣 b(k+1:m+k,k+1:n+k)=double(j(:,:)); % 0 0 0(k行0,其他方向也是) %b= 0 j 0 % 0 0 0 c=zeros(m,n); for i=k+1:m+kfor j=k+1:n+kb(i,j)=sum(sum(b(i-k:i+k,j-k:j+k)))/((2*k+1).^2);%b(i,j)這個點為中心點的(2*k+1)^2的大小的矩陣的和*(1/(2*k+1))end %這里就是均值均值濾波 end c(:,:)=b(k+1:m+k,k+1:n+k); %figure,imshow(c,[]);

中值濾波法是一種非線性平滑技術,它將每一像素點的灰度值設置為該點某鄰域窗口內的所有像素點灰度值的中值,對去椒鹽噪聲十分有效。
工具箱提供的函數(shù)是
g=medfilt2(f,[m,n],padopt)
[m,n]定義一個大小為mn的領域(在該領域上計算中值),padopt指定三個可能的邊界填充選項之一(zeros默認值,symmetric,indexed)
默認形式為
g=medfilt2(f)
使用一個33的領域并用0填充邊界來計算中值
下面看例子

f=imread('caise.jpg');f=rgb2gray(f);fn=imnoise(f,'salt & pepper',0.2);%用函數(shù)imnosie產(chǎn)生椒鹽噪聲,0.2代表圖中白點黑點出現(xiàn)的概率為0.2figure,imshow(fn);gm=medfilt2(fn);%中值濾波figure,imshow(gm);


%%%文章為作者手打,記錄和分享自己的學習,如有錯誤請指出,轉載請注明出處

總結

以上是生活随笔為你收集整理的Matlab 均值滤波与中值滤波的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。