用MATLAB将RGB图像中的显示为相同颜色的像索点提取出来

来源:互联网 发布:java主流技术 编辑:程序博客网 时间:2024/05/16 06:04
首先必须要了解黄色的rgb分别的空间分布,可以截图一部分(如只是截取车的黄色部分),然后利用imhist得到黄色部分的r、g、b的直方图分布……

然后利用直方图分布进行分割就是了……

我试了一下:分割结果如下,你应该在进一步分析,多截几个图像,得到一个相对精确的黄色分布区间……

利用截取的图像分析直方图分布

 
clear all;clc
I=imread('gold.jpg');
imhist(I(:,:,1));
figure,imhist(I(:,:,2));
figure,imhist(I(:,:,3));


分割程序:

 
clear all;clc
Y=imread('car.jpg');
imshow(Y);
R=Y(:,:,1);
G=Y(:,:,2);
B=Y(:,:,3);
[m,n]=size(R);
for i=1:m
    for j=1:n
      if (R(i,j)>80&&R(i,j)<250)&&(G(i,j)>50&&G(i,j)<200)&&(B(i,j)>0&&B(i,j)<50)
        car(i,j)=1;
      else
        car(i,j)=0;
      end
    end
end
figure,imshow(car);

原创粉丝点击