温州自助建站公司,分销商城系统源码,做网站代理商,网站开发网站常用彩色模型有RGB和HSV模型#xff0c;有时候在RGB颜色空间进行背景分割比较困难的问题#xff0c;转换为HSV模型然后对色调和饱和度图像进行处理会得到比较理想的处理结果,下面通过一个实例讲解该方法的MATLAB实现#xff0c;该方法对其他图像检测也具有一定的参考价值。 … 常用彩色模型有RGB和HSV模型有时候在RGB颜色空间进行背景分割比较困难的问题转换为HSV模型然后对色调和饱和度图像进行处理会得到比较理想的处理结果,下面通过一个实例讲解该方法的MATLAB实现该方法对其他图像检测也具有一定的参考价值。
主要步骤读入RGB彩色图像转换为灰度图像并进行二值化发现背景分割效果不好。故改变思路先将RGB彩色图像转换为HSV图像提取H色调和S(饱和度)分量发现色调分量的灰度直方图具有比较明显的双峰特性且谷底平且宽因此对其采用OTSU方法进行二值化然后对其进行孔洞填充取得了比较理想的图像分割效果。最后对原始RGB彩色图像分割的主要图像处理过程进行显示。 详细代码如下
%RGB图像转HSV进行图像分割
clear all;
close all;
clc;
Iimread(h:\3.jpg);
IrI(:,:,1);
IgI(:,:,2);
IbI(:,:,3);
imshow(I);
Igrayrgb2gray(I);% 彩色图像转灰度图像 Gray0.299*R0.587*G0.114*B
figure,imshow(Igray);
figure,imhist(Igray);%显示灰度直方图
objim2bw(Igray,graythresh(Igray));
figure,imshow(obj);
Ihsvrgb2hsv(I);
figure,imshow(Ihsv);
IhIhsv(:,:,1);%提取hue色调分量
figure,imshow(Ih);
figure,imhist(Ih);%显示色调分量的灰度直方图-发现其具有比较明显的双峰特性且谷底平且宽
imtool(Ih);
IsIhsv(:,:,2);%提取Saturation饱和度分量
figure,imshow(Is);
figure,imhist(Is);
imtool(Is)
%objimbinarize(Ih);
obj2im2bw(Ih,graythresh(Ih));
figure,imshow(obj2);
obj2Fillimfill(obj2,holes);
figure,imshow(obj2Fill);
flowercat(3,uint8(obj2Fill).*Ir,uint8(obj2Fill).*Ig,uint8(obj2Fill).*Ib);
figure,imshow(flower);
figure,
subplot(2,4,1),imshow(I),title(RGB彩色图像);
subplot(2,4,2),imshow(Igray),title(灰度图像);
subplot(2,4,3),imhist(Igray),title(Igray灰度直方图);
subplot(2,4,4),imshow(obj),title(二值图像);%分割效果差
subplot(2,4,5),imshow(Ihsv),title(HSV图像);
subplot(2,4,6),imshow(Ih),title(H图像);
subplot(2,4,7),imhist(Ih),title(Ih灰度直方图);
subplot(2,4,8),imshow(obj2Fill),title(二值图像);%分割效果好
%本程序在MATLAB 2018a检测通过
最后运行结果如下图所示 原始图像 如果觉得本文章对大家今后的编程有帮助请点赞和收藏谢谢