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...