将像素合并为区域

1 view (last 30 days)
Valeriya Gmyria
Valeriya Gmyria 2021年10月9日
评论: Valeriya Gmyriaon 12 Oct 2021
大家好!有这样的任务。
在处理后,在处理后,背景的亮度= 0,对象具有非零的亮度。它需要在区域上组合这些对象并为它们分配一个ID。这个想法是这样的:该算法将逐行扫描图像,如果它检测到非零像素,存储其坐标和强度(亮度)并开始检查相邻的像素。如果它检测到邻居中的非零一个,那么它也会存储它们的坐标和强度。以后将需要这些值进行计算。当以这种方式选择第一个区域时,应将强度= 0分配给其中包含的所有像素。之后,该算法继续逐行搜索非零像素,并重复上述步骤。到目前为止,我已经有了:
img = imread('t.png');
[x,y] = size(img);
为了i = 1:x
为了j = 1:y
如果img(i,j)〜= 0
%store coordinates and brightness
如果img(i,j+1)〜= 0%%检查正确的邻居像素
%存储坐标和亮度
J = J + 1;
结尾
如果img(i+1,j)〜= 0%%检查下邻居像素
%存储坐标和亮度
i = i + 1;
结尾
结尾
结尾
结尾

接受的答案

图像分析师
图像分析师 2021年10月9日
这是这项作业,他们要求您编写自己的版本的BWLabel()或BWConnComp吗?否则,为什么不简单地使用其中一个功能呢?
3条评论

登录发表评论。

更多答案(0)

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

Start Hunting!