简单的彩色图像分割

先看下原始图像和最终分割后的图像
原始图像:
这里写图片描述
分割后:
这里写图片描述

具体步骤:
1.在红色区域内选择一个矩形(这个矩形要基本能代表花的颜色,比如在花内部选一个矩形区域)
2.计算矩形区域内的均值和方差
3.规定如果大于均值-1.25倍的方差并小于均值+1.25倍的方差则认为是这朵花

clc,clear
rgb=imread('flower.jpg');
rgb1=im2double(rgb);
r=rgb1(:,:,1);
g=rgb1(:,:,2);
b=rgb1(:,:,3);
%在红色分量中选择一块矩形区域
r1=r(200:310,400:500);
%矩形区域的均值
r1_u=mean(mean(r1(:)));
[m,n]=size(r1);
%计算标准差
sd1=0.0;
for i=1:m
    for j = 1:n
        sd1=sd1+(r1(i,j)-r1_u)*(r1(i,j)-r1_u);
    end
end
r1_d=sqrt(sd1/(m*n));
r2=zeros(size(rgb1,1),size(rgb1,2));
%找到符合条件的点
ind=(r>r1_u-1.25*r1_d)&(r<r1_u+1.25*r1_d);
%符合条件的点灰度设为1
r2(ind)=1;
rgb2=rgb1;
[m2,n2]=size(r2);
for i =1:m2
    for j =1:n2
        if r2(i,j)==0
            rgb2(i,j,:)=0;
        end
    end
end

figure
subplot(2,3,1),imshow(rgb1),title('RGB原始图像')
subplot(2,3,2),imshow(r),title('R分量')
subplot(2,3,3),imshow(g),title('G分量')
subplot(2,3,4),imshow(b),title('B分量')
subplot(2,3,5),imshow(r2),title('红色分割')
subplot(2,3,6),imshow(rgb2),title('根据红色分割')

注意:
矩形区域的选择很重要,否则分割的效果会很不好,如果你是使用跟我不同的花就需要选择跟我不同的矩形区域

输出结果:
这里写图片描述

  • 13
    点赞
  • 102
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
图像实验报告全文共9页,当前为第1页。图像实验报告全文共9页,当前为第1页。《图像分析技术》实验报告 图像实验报告全文共9页,当前为第1页。 图像实验报告全文共9页,当前为第1页。 专业:控制工程 姓名:王昌龙 学号:6161913026 实验介绍 根据所给的车辆图片,找出对应车牌所在的区域,并用红色方框在图中标记。本次试验中,采用了在HIS颜色空间中检测车牌特征的方法,找到车牌所在区域。 实验方法 根据所给的图像特征,可以将这些车辆图片按照车牌类型的不同分为三类:第一类是普通小型车的蓝底白字车牌,第二类是带红色字的大使馆等涉外车牌、警车车牌;第三类是黑底白字车牌。 由于采集到的车辆图像均为RGB模型,且该模型下R、G、B这三个分量堆光线的强弱比较敏感,受亮度干扰较大,所以RGB模型不是进行车牌图像分割。这里才用HIS颜色模型对图像进行描述,H、S、I分别表示图像的色度、饱和度和亮度。转换公式如下: Hθ,(B G)360-θ,(B>G) θ=arccos12R-G+(R-B)(R-G)2+(R-G)(G-B) S=1-3R+G+B[min (R,G,B)] I=13(R+G+B) 检测第一类车牌,根据文献[1],蓝色对应的HIS区域分别是:161 H 301, 0.25 S 1,0.25 I 1。对所选图片中的每个点进行逐一检测,记录符合上述条件的点。建立一个与检测图像相同大小的矩阵type,将所记录的点对应位置的值记为255(表示灰度值),其余点记为0。则type为符合条件点所组成的二值图像矩阵,以第三幅图像为例,结果如下图 图像实验报告全文共9页,当前为第2页。图像实验报告全文共9页,当前为第2页。 图像实验报告全文共9页,当前为第2页。 图像实验报告全文共9页,当前为第2页。 对上述图像进行腐蚀,膨胀处理,结果如下图。 对图2分别进行y,x轴方向垂直投影,得到每一行,每一列所具有的检测点的个数,其分布图像如下图。 图像实验报告全文共9页,当前为第3页。图像实验报告全文共9页,当前为第3页。 图像实验报告全文共9页,当前为第3页。 图像实验报告全文共9页,当前为第3页。 设置阈值threshold=0.71,对所得到的垂直投影进行分析,找出其最大值Ymax,Xmax,丛左右两端进行检测,找到第一个超过阈值的个数点,并记录,得到PX1,PX2,PY1,PY2.。该四个点分别为所检测出车牌四个角点的位置。中国的汽车车牌标准轮廓尺寸为440*140mm,长宽比为3.14,考虑到某些检测图像中汽车位置角度的偏差,本次实验选取的长宽比为3.3。故在得到车牌四个角点位置后,根据长宽比对角点位置进行调整。所得最终结果如下。 检测第二类车牌,也就是带有红字的涉外车牌、警车车牌时,同是利用HIS空间进行检测,但检测内容有些区别。考虑到这类车牌都有一个共同特点就是红字开头,而车身本身是黑色或是白色,所以可以利用这一特性对车牌进行定位。 以大使馆车牌为例,同是利用HIS颜色空间,找出红色字所处的颜色空间位图像实验报告全文共9页,当前为第4页。图像实验报告全文共9页,当前为第4页。置。经过实验,红色字的颜色空间特征为H 12,或者H 350、0.3 S 0.5、 图像实验报告全文共9页,当前为第4页。 图像实验报告全文共9页,当前为第4页。 I 0.55。与检测蓝底车牌方法相同,检测红字结果如图。 经过腐蚀膨胀后结果如下。 利用车牌长宽比例为3.14,本次试验取3.3。因为红色字位于车牌首位,所以经过垂直投影,确定红色字位置后,便可计算出车牌所在位置。结果如下图。 . 第三类车牌也就是黑底白字车牌,方法与第一类检测方法类似,只需要修改相关参数,将蓝色区域换成黑色区域进行检测即可。最终结果如下图。 图像实验报告全文共9页,当前为第5页。图像实验报告全文共9页,当前为第5页。 图像实验报告全文共9页,当前为第5页。 图像实验报告全文共9页,当前为第5页。 实验结果 所有图像检测结果如下。 图像实验报告全文共9页,当前为第6页。图像实验报告全文共9页,当前为第6页。图像实验报告全文共9页,当前为第7页。图像实验报告全文共9页,当前为第7页。 图像实验报告全文共9页,当前为第6页。 图像实验报告全文共9页,当前为第6页。 图像实验报告全文共9页,当前为第7页。 图像实验报告全文共9页,当前为第7页。 实验总结 本次实验主要利用了车牌的特征是颜色信息,包括蓝色、红色、黑色信息。只要确定这三种颜色在HIS空间中的分布就可以就可以对图像中的车牌特征进行检测,之后利用垂直投影的方法对车牌位置进行确定。利用车牌长宽比例对候选区域进行调整,可以有效地去除一些干扰因素,得到比较理想的效果。 本次实验也有一些未解决的问题和不足之处: 将车牌分为三类,需要
彩色图像分割是指将一幅彩色图像分成若干个区域,使得同一区域内的像素具有相似的性质,而不同区域之间的像素有较大的差异。Matlab提供了多种用于彩色图像分割的函数和工具箱,下面介绍其中一些常用的方法。 1. 基于K-means聚类的分割方法 K-means聚类是一种常用的无监督学习算法,可以用于彩色图像分割。在Matlab中,可以使用kmeans函数实现该算法。首先需要将RGB彩色图像转换为Lab色彩空间,然后将a和b通道合并为一个矩阵,作为输入数据进行聚类。聚类完成后,将每个像素点的类别标签作为输出图像的像素值即可。 2. 基于图论的分割方法 基于图论的分割方法彩色图像看作一个图,每个像素点为图中的一个节点,边权值为像素之间的相似度。通过对图进行分割,可以得到彩色图像分割结果。在Matlab中,可以使用GraphCut工具箱实现该算法。 3. 基于分水岭算法的分割方法 分水岭算法是一种基于图像拓扑的分割方法,可以将彩色图像分成若干个互不重叠的区域。在Matlab中,可以使用watershed函数实现该算法。首先需要对图像进行预处理,如灰度化、平滑滤波等操作,然后使用梯度图像计算分水岭线,并将其作为输入传递给watershed函数,即可得到彩色图像分割结果。 以上是一些常用的彩色图像分割方法,在实际应用中需要根据具体情况选择合适的方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值