回 帖 发 新 帖 刷新版面

主题:[原创]在二值图象里找孔洞的坐标

[color=FF00FF] 各位高手,能不能帮小女子看看这个程序。图象里我令孔洞为1即白色,不是孔洞就都为0即是黑色。下面我的程序进行的是逐行扫描孔洞,并把每行第一个为1的列记录下来,并就这个孔洞的最后一个1的列也记录下来。再进行下一行的扫描,当上一行和下一行孔洞的列有重合时,那么这个就是同一个孔洞。[/color][em21][em21][em21][em1]
   可是我发觉我的程序里无法把那些列的坐标给找出来,在程序里都变成中间变量了。各位能不能帮帮我哈。 。。谢谢了哈。。。小女子不胜感激!!
function erzhi000()
bw=imread('e:\0401030520\4.bmp');读入一幅二值图象
[row,col]=size(bw);  x1=0;x2=0;
while (bw([row,col])==1)     
  for row=1:572
        for col=1:2130
            if (bw([row,col])==1)
                x1=col;
            end
            for i=col+1:col-1
                if (bw([row,i])==0)
                    break;
                end
            end
            x2=i-1;
        end
    end
end  
disp(x1);
disp(x2);

回复列表 (共1个回复)

沙发

是不是想完成连通区域标记
你把问题复杂化了
再者,你没列的白点坐标可以用数组保存啊,
怎么一直用个变量保存,上一行的就被覆盖了

我来回复

您尚未登录,请登录后再回复。点此登录或注册