⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rgb.m

📁 这是一个计算机仿真技术用matlab编的小程序
💻 M
字号:
im=imread('0.bmp'); %读图
ir=imresize(im,1/2); 
f=figure; %截取红色色块
imshow(ir); 
t1=getrect(f); 
ic1=imcrop(ir,t1);
r1=ic1(:,:,1);%显示红色色块的r、g、b分量
g1=ic1(:,:,2);
b1=ic1(:,:,3);
r1max=max(max(r1));%求出各自的极大和极小值
r1min=min(min(r1));
g1max=max(max(g1));
g1min=min(min(g1));
b1max=max(max(b1));
b1min=min(min(b1));
r=ir(:,:,1);%显示原图的r、g、b分量
g=ir(:,:,2);
b=ir(:,:,3);
figure
subplot(131),imhist(r1),title('红色分量');%对截取红块的红色分量进行直方图分析
subplot(132),imhist(g1),title('绿色分量');%对截取红块的绿色分量进行直方图分析
subplot(133),imhist(b1),title('蓝色分量');%对截取红块的蓝色分量进行直方图分析
[m n]=size(ir(:,:,1)); %判断阈值
rgb=zeros(m,n); 
for i=1:m
    for j=1:n
      if(((double(r1min)-0)<r(i,j))&(r(i,j)<(double(r1max)+0)))%可以修改参数
      if(((double(g1min)-0)<g(i,j))&(g(i,j)<(double(g1max)+0)))
      if(((double(b1min)-0)<b(i,j))&(b(i,j)<(double(b1max)+0)))
           rgb(i,j)=1;
      end
      end
      end
    end 
end 
figure;
imshow(rgb); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -