查看: 616|回复: 0|关注: 0

[未答复] 多个不连通的条纹图像分区域处理

[复制链接]

新手

5 麦片

财富积分


050


1

主题

1

帖子

0

最佳答案
发表于 2018-4-24 23:13:51 | 显示全部楼层 |阅读模式
本帖最后由 scotties 于 2018-4-24 23:13 编辑

我目前得到了一张有多个条纹的图片,放大后如图。因为多个条纹在图片的不同区域,而我要求的是:1一个正方型内条纹的数目。2一个正方形的质心。现在只知道有bwboundaries和regionprops取质心,但因为条纹间不连通,所以取得的是每一个亮条纹的中心。而不是正方区域的质心。目前的想法是:1对比质心的数值算平均,但是由于条纹大小不一致所以判断困难,且后续工作中用的图片条纹大小不定。2在判断连通分割区域前先把正方形区域分割,每个正方形单独处理,但是目前只找到配合鼠标取图片中一个区域的方法。不能自动完成多张图片的处理。求各位提供思路
%图像处理
img = imread('E:\1.png');
img = im2bw(img);%(图像分割)转化为二值图
%%%%%添加噪声处理,平滑处理开运算
figure,imshow(img);
[B,L] = bwboundaries(img);%边界数组
stats = regionprops(L,'centroid');%读出质心
a=cat(1,stats.Centroid);%提取结构体数据


%鼠标选定区域
imshow(img)%显示原图像
h=imrect;%鼠标变成十字,用来选取感兴趣区域
pos=getPosition(h);%pos有四个值,分别是矩形框的左下角点的坐标xy和框的宽度和高度
imCp = imcrop( img, pos ); %拷贝选取图片
figure(2)
imshow(imCp);

2

2

1

1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表