欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Matlab形态学图像处理:二值图像分割 标记连通区域和重心位置 删除连通区域

发布时间:2024/4/15 48 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Matlab形态学图像处理:二值图像分割 标记连通区域和重心位置 删除连通区域 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Matlab形态学图像处理:二值图像分割 标记连通区域和重心位置 删除连通区域

【尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/71440949     Matlab中可以使用graythresh(Img)函数设置二值化的阈值,再用im2bw转化为二值图像。在Matlab中,可以使用bwlabel()和bwlabeln()函数来标记二值图像的连通区域。需要注意的是:所谓的连通区域标记是指对二值图像中白色像色而言,即值为1的像素进行标记,而黑色像素看作是背景颜色。当然,Matlab中还有个regionprops()函数可以用于统计图像区域的属性,如面积大小,重心位置。关于bwlabel()、bwlabeln()和regionprops()的用法,请查看相关博客吧

    本博客Matlab代码将实现的功能:将图像转为二值图像,分割出感兴趣的区域,并用“红色矩形线框”标记连通区域的面积,用蓝色点标记连通区域的重心位置,为了减少噪声的干扰,代码中将连通区域面积(像素个数)不足100的区域认为是噪声点,并将其删除(即置为背景黑色)。本人用PS制作了一个GIF动画图,以便大家观看效果图:

clc;clear all;close all %% 清空变量,读取图像,并显示其属性 clear;close all src = imread('rice.jpg'); %显示原始图像 figure, subplot(2,2,1),imshow(src),title('原图')%用ostu方法获取二值化阈值,进行二值化并进行显示 level=graythresh(src); bw=im2bw(src,level); subplot(2,2,2),imshow(bw),title('二值图像')%运用开操作消去噪点 se = strel('disk',2); openbw=imopen(bw,se);%对白色点而言 subplot(2,2,3),imshow(openbw),title('开运算后的效果图')%获取连通区域,并进行显示 % L = bwlabel(openbw,8); [L,num] = bwlabel(openbw,8); RGB = label2rgb(L); subplot(2,2,4),imshow(RGB),title('用rgb颜色标记不同区域')%获取区域的'basic'属性, 'Area', 'Centroid', and 'BoundingBox' % stats = regionprops(openbw, 'basic');stats = regionprops(openbw, 'BoundingBox' ,'Area','Centroid' ,'PixelList' ); %统计白色的连通区域 centroids = cat(1, stats.Centroid);%% noiseArea=100; figure,imshow(openbw),title('2') hold on for i=1:size(stats)imshow(openbw)rectangle('Position',[stats(i).BoundingBox],'LineWidth',2,'LineStyle','--','EdgeColor','r'),plot(centroids(i,1), centroids(i,2), 'b*'); %每个连通区域的重心位置area = stats(i).Area; %连通区域的面积if area<noiseArea %若当前连通区域面积小于噪声点的面积,则该区域设置为0pointList = stats(i).PixelList; %每个连通区域的像素位置rIndex=pointList(:,2);cIndex=pointList(:,1);pointList = stats(i).PixelList; %连通区域的像素坐标openbw(rIndex,cIndex)=0; %连通区域的面积不足100,置为背景颜色endpause(1);saveas(gcf,sprintf('img/%d',i),'jpg') %保存图片 end hold off




总结

以上是生活随笔为你收集整理的Matlab形态学图像处理:二值图像分割 标记连通区域和重心位置 删除连通区域的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。