公开一种图像区域像素面积的高效计算方法,已知二值图像I中图像区域中心点C(x
1.一种图像区域像素面积的高效计算方法,已知二值图像I(x,y),其中,x=1~M,y=1~N,M为x轴方向上的最大像素个数,N为y轴方向上的最大像素个数,图像区域I(x,y)等于1,x=1~M,y=1~N,M为x轴方向上的最大像素个数,N为y轴方向上的最大像素个数,中心点为C(xc,yc),其特征在于:通过如下步骤实现:(1) 设置链表L={ai},其中ai=(p,q),i=1,2,3......,设置表尾指针ep,指向链表L中最新数据的位置,初始值为0,设置兴趣区域的像素面积s,初始值为1;(2) 初始化链表L,如果I(xc+1,yc)等于1,则s=s+1,ep=ep+1,aep=(xc+1,yc),I(xc+1,yc)=0;如果I(xc,yc+1)等于1,则s=s+1,ep=ep+1,aep=(xc,yc+1),I(xc,yc+1)=0;如果I(xc‑1,yc)等于1,则s=s+1,ep=ep+1,aep=(xc‑1,yc),I(xc‑1,yc)=0;如果I(xc,yc‑1)等于1,则s=s+1,ep=ep+1,aep=(xc,yc‑1),I(xc,yc‑1)=0;(3) 对于链表L,如果ep等于0,则计算完成,得到图像区域的像素面积值s,结束该过程;如果aep.p‑xc>0,并且aep.q‑yc≥0,执行步骤4;如果aep.p‑xc≤0,并且aep.q‑yc>0,执行步骤5;如果aep.p‑xc<0,并且aep.q‑yc≤0,执行步骤6;如果aep.p‑xc≥0,并且aep.q‑yc<0,执行步骤7;(4) 建立临时变量(m,n),令m=aep.p,n=aep.q,然后ep=ep‑1;如果I(m+1,n)等于1,则s=s+1,ep=ep+1,aep=(m+1,n),I(m+1,n)=0;如果I(m,n+1)等于1,则s=s+1,ep=ep+1,aep=(m,n+1),I(m,n+1)=0;返回步骤3;(5) 建立临时变量(m,n),令m=aep.p,n=aep.q,然后ep=ep‑1;如果I(m‑1,n)等于1,则s=s+1,ep=ep+1,aep=(m‑1,n),I(m‑1,n)=0;如果I(m,n+1)等于1,则s=s+1,ep=ep+1,aep=(m,n+1),I(m,n+1)=0;返回步骤3;(6) 建立临时变量(m,n),令m=aep.p,n=aep.q,然后ep=ep‑1;如果I(m‑1,n)等于1,则s=s+1,ep=ep+1,aep=(m‑1,n),I(m‑1,n)=0;如果I(m,n‑1)等于1,则s=s+1,ep=ep+1,aep=(m,n‑1),I(m,n‑1)=0;返回步骤3;(7) 建立临时变量(m,n),令m=aep.x,n=aep.y,然后ep=ep‑1;如果I(m+1,n)等于1,则s=s+1,ep=ep+1,aep=(m+1,n),I(m+1,n)=0;如果I(m,n‑1)等于1,则s=s+1,ep=ep+1,aep=(m,n‑1),I(m,n‑1)=0;返回步骤3。
本文链接:http://www.vipzhuanli.com/tech/sell/s_2014852.html,转载请声明来源钻瓜专利网。