i am new to matlab can anyone please explain this lines

1 次查看(过去 30 天)
filename=uigetfile('.jpg');
I=imread(filename);
I=imresize(I,[256 256]);
figure,imshow(I);
title('input image')
%----imnoise
I_n=I;
J=zeros(size(I_n));
for iclr=1:3
I_n = I(:,:,iclr);
[m n]=size(I_n);
BH=imhist(I_n);
[v p1]=max(BH);
pn=find(BH~=v);
[v p2]=max(BH(pn));
s_p=[p1-1 p2-1];
I_sp=zeros([m n]);
sp1=find(I_n==s_p(1));
I_sp(sp1)=1;
sp2=find(I_n==s_p(2));
I_sp(sp2)=1;
J(:,:,iclr)=I_n;
for i=2:m-1
for j=2:n-1
b_3=I_n(i-1:i+1,j-1:j+1);
if I_sp(i,j)==1
J(i,j,iclr)=median(double(b_3(:)));
end
end
end
end
%-----filtered image
figure,imshow(uint8(J));

采纳的回答

vijay sai
vijay sai 2014-1-26
i think the program u have given is a incomplete one.. it's also erroneous...it's trying to plot histograms for individual image plans r,g,b,...when I tried finishing the program and debug it...the loop is never ending ...giving the full program ..someone may be helpful to you..

更多回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2014-1-26
编辑:Azzi Abdelmalek 2014-1-26
If you are new with Matlab, the best thing to do is to read the getting started with Matlab. You can also learn what each function do by typing
help imhist
help size
and so on

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by