matlab簡單影象處理的程式,共執行了均值,中值濾波,然後計算各個處理後影象的MSE,PSNR等值

2022-09-22 06:01:44 字數 5926 閱讀 8136

1樓:匿名使用者

其實你列舉的幾種方法和增強處理之間是有重疊的,建議你看一些影象增強的例子,先有個直觀感受,然後才好理解這些概念。 學影象處理,未必要把各種方法妥善,qaazbi

2樓:匿名使用者

做影象處理別總用matlab,多用用vc

matlab中值濾波影象處理 40

3樓:普_化

medfilt2(a,[m n])---[m n]表示濾波器的大小,即是m*n的濾波器,m行n列的濾波器;

你如果只是問程式出錯的問題,我覺得樓上的答得是對的;你想要的處理結果 是中值濾波可以達到的嗎???

4樓:匿名使用者

這句g=medfilt2(i);%中值濾波改成g(:,:,1)=medfilt2(i(:,:,1));

g(:,:,2)=medfilt2(i(:,:,2));

g(:,:,3)=medfilt2(i(:,:,3));

其他不變

5樓:匿名使用者

%%%%中值濾波得加窗

%中值濾波

figure;

imshow(g);

基於matlab,對彩色影象進行中值濾波

6樓:浪小客

1、閱讀**,以pout.tif為例,加上鹽和胡椒噪音。

2、分別建立3×3高斯濾波器模板和平均濾波器模板,並對經過雜訊新增的影象進行濾波。顯示原始影象,雜訊影象和由高斯和平均模板過濾的影象。

3、**結果如圖所示。可以看出,平均模板濾波後的雜訊非常明顯。高斯模板濾波的雜訊影響相對較小。

4、之後我們選擇輸入**進行過濾,並顯示處理後的影象。

5、中值濾波影象基本上不顯示雜訊的影響。效果如下。

7樓:酷呆愛死呆

找到**存放的位置,

i=imread('寫入**存放的位置,字尾.影象格式');

i1=rgb2gray(i);

i2=medfilt2(i1,[m,n]);

%%%i2就是中值濾波後的影象,medfilt2是matlab中中值濾波函式,直接呼叫即可,m和n是選取的平滑視窗,一般為3*3,可以進行調整

要分離的話,可以這樣做:

m=imread('d:\ebook\lena.bmp'); %讀取matlab中的名為cameraman的影象

subplot(2,2,1)

imshow(m) %顯示原始影象

title('original')

p1=imnoise(m,'gaussian',0.02); %加入高斯躁聲

subplot(2,2,2)

imshow(p1) %加入高斯躁聲後顯示影象title('gaussian noise');

g1=medfilt2(p1(:,:,1));%%紅g2=medfilt2(p1(:

,:,2));%%綠g3=medfilt2(p1(:,:

,3));%%藍g(:,:,1)=g1;

g(:,:,2)=g2;

g(:,:,3)=g3;

subplot(2,2,3)

imshow(g)

title('medfilter gaussian');

8樓:匿名使用者

網上**多數只針對一種,常常還會誤導其他人,要想學真東西必須會自己思考,我給你提供思路,濾波多數是針對灰度影象的,因為他是2唯的,我做過很多影象設計,你可以分開rgb,(用r=ima(:,:,1)等),這時的r就變成2唯的了,然後分別做中值濾波,用自帶的medfilt2就可,最後通過cat函式進行整合來復原影象,這些函式都是基本的,整個**也就幾句,希望對你有啟發!

如果不會的話可加為好友交流!

用matlab,選一幅影象,加入椒鹽雜訊後,對其進行中值濾波和均值濾波,對比其效果。

9樓:匿名使用者

%%中值

i=imread('lena.bmp'); %讀原圖

j1=imnoise(i,'salt & pepper',0.02); %加均值為0,方差為0.02的椒鹽雜訊

j2=imnoise(i,'gaussian',0.02); %加均值為0,方差為0.02的高斯雜訊。

subplot(2,2,1),imshow(j1); %顯示有椒鹽雜訊影象

subplot(2,2,2),imshow(j2); %顯示有高斯雜訊影象

i1= medfilt2(j1,[5,5]); %對有椒鹽雜訊影象進行5×5方形視窗中值濾波

i2= medfilt2(j2,[5,5]); %對有高斯雜訊影象進行5×5方形視窗中值濾波

subplot(2,2,3),imshow(i1); %顯示有椒鹽雜訊影象的濾波結果

subplot(2,2,4),imshow(i2); %顯示有高斯雜訊影象的濾波結果

%%均衡

i=imread('lena.bmp'); %將圖讀入到i

imshow(i); %顯示影象

figure,imhist(i); %直方圖

i2=histeq(i); %均衡化

figure;imshow(i2); %處理後影象顯示

figure;imhist(i2); %均衡化後直方圖

imwrite(i2,'lena2.bmp'); %儲存影象

matlab 中值濾波

10樓:肥仙女

1、中值濾波的原理:對於一串連續輸入的訊號(量化後是一組資料)。如下圖所示,是輸入的原訊號。中值濾波的原理為,重新計算每乙個x的輸出值(y),新的輸出值。

相當於y=new(x),new的操作是,從在以x為中心,長度為2k的原訊號中(區間為[x-k+1,x+k]),提取出這段區間內中間的那個值,作為y=new(x)的結果。

2、舉例來說,輸入:y[1-10]:1,2,3,4,5,6,7,8,9,10.

取區間2k=4,所以k=2;執行中值濾波k=中值濾波(y)、由x-k+1>=1,所以當k=2時,x>=2、濾波時:

k[1]=y[1]

k[2]=(y[1]、y[2]、y[3]、y[4])的中間值,即為2或3。

3、matlab的中值濾波實現方式:呼叫函式:a=medfilt1(b,n)、b為輸入訊號,a為濾波後的訊號,即結果。

4、對於輸入訊號(最開頭的圖),以下分別為設定區間n=8和n=16得到的濾波影象。中值濾波可以過濾尖峰脈衝。目的在於我們對於濾波後的資料更感興趣。

濾波後的資料保留的原影象的變化趨勢,同時去除了尖峰脈衝對分析造成的影響。

11樓:匿名使用者

中值濾波medfilt2,用法b = medfilt2(a, [m n])

你的兩點錯誤

一、輸入影象a,應該是二維矩陣

你用輸入影象b是由imread得到的a加上雜訊得到的而imread讀到的影象a通常是3維rgb圖,是三維矩陣直接用medfilt2是不對的,可以先用rgb2gray(a)將a先轉換為灰度矩陣

二、中值濾波也要指定濾波模版的大小

medfilt2需要兩個輸入引數,第乙個是影象a第二個引數需要輸入乙個長度是二的向量,[m n]指定模版的大小,m行n列

matlab影象去噪演算法裡 均值濾波跟中值濾波降噪為什麼必須轉換成灰度影象才可以處理

12樓:

其實都可以對彩色影象處理的,只是matlab裡面的實現不一致。均值濾波和中值濾波matlab函式只考慮了單通道當然就必須轉換成灰度影象;小波降噪的matlab函式不知道你是用的那個,肯定也需要把三通道的彩色影象先轉換成單通道,分別去噪以後再整合成彩色影象。總的來說一般影象去噪都是對單通道來處理的,因為大部分的filter都是對二維矩陣來操作的,要是對三通道處理也需要分別對不同的通道處理再整合。

給出如下圖象採用3×3中值濾波後的結果。

13樓:我要那個妾

用matlab,中值濾波函式b=medfilt2(a);

均值濾波是用卷積實現的。設定乙個3x3的矩陣,每個元素都是1/9。

b=filter2(b,a)%實際上filter2函式就是進行了一次2維卷積。可以用conv2替換。

用matlab進行中值濾波

14樓:匿名使用者

b=medfilt2(a,[m,n]);

b是中值濾波後的圖象矩陣,a是原圖矩陣,m和n是處理模版大小,預設3×3。

15樓:玩虐

要先變成rgb灰度影象吧

i=rgb2gray(i);

已經跑出來了 你試下

matlab怎麼用中值濾波來處理乙個意味陣列

16樓:匿名使用者

b=medfilt2(a,[m,n]);

b是中值濾波後的圖象矩陣,a是原圖矩陣,m和n是處理模版大小,預設3×3。

17樓:枯木葳蕤

%給你個程式參考,中值濾波效果不一定好,你可以依據你的資料進行改進:

clc;clf

clear all

%載入資料 test1.mat 資料檔案

load('test1'); % 也可以直接定義: test=[1 2 ……]

% test1 陣列長度

n1=size(test1,1);

x1=1:n1;

test1=test1(x1);

figure(1)

plot(x1,test1,'b-')

title('test1的原始資料圖')

%中值濾波法濾除雜訊

figure(2)

w=7; %取視窗值為7,可自己設定其它的值試試看效果for i=1:n1-w

v=i:i+w-1;%取滑動視窗的元素向量%將視窗中元素排序

qr=sort(test1(v));

%取排序後的中間元素

me=qr(fix(w/2)+1);

end%畫圖

plot(x1,test1)

title('test1的濾波後資料圖')%設定圖形的軸限,觀察後設定的,便於對比

axis([0,100,0,100])

matlab影象處理教程,如何學習matlab影象處理技術

文庫精選 內容來自使用者 rob 2011 04 19 11 42fmmu王孜 分類 影象處理軟體 瀏覽39735次 選擇任一256級灰度點陣圖影象,編寫程式實現下述的影象處理操作 一 點陣圖格式影象基本操作1 影象的讀取2 影象的儲存 二 影象的灰度及修正1 對比度展寬 灰度窗方法,a,b位置自選...

matlab中,使用什麼程式能增加影象的對比度

matlab中,使用什麼程式能增加影象的對比度的方法。如下參考 1 介紹影象在matlab中的運算。首先,介紹影象閱讀。複製使用imread命令 如aa png檔案,我們要讀取,有兩種方式 一是直接雙擊,下面出現對話方塊,點選完成。二是使用命令 aa imread aa png 2 影象生成後,以a...

求MATLAB簡單潮流計算程式,求MATLAB簡單潮流計算程式。。。。 20

function lianxuchaoliu clear clc n 9 節點數 nl 9 支路數 isb 1 平衡節點號 pr 0.00001 誤差精度 b1 1 4 0.0576i 0 1.05 1 4 5 0.017 0.092i 0.158i 1 0 5 6 0.039 0.17i 0.35...