基于序贯细化的二值图像快速骨架提取方法

文档序号:8319877阅读:517来源:国知局
基于序贯细化的二值图像快速骨架提取方法
【技术领域】
[0001] 本发明涉及图像压缩、工业检测、农业生产与管理、交通、公共安全等应用领域,具 体是一种基于序贯细化操作的二值图像快速骨架提取方法。
【背景技术】
[0002] 区域骨架是区域形状的一种集约表示,被广泛用于图像压缩以及工农业生产检 测、交通与公共安全检测等广泛领域的对象识别和图像理解任务之中。提取骨架(骨架化) 的方法已有多种,主要包括迭代使用数学形态学细化的方法、基于最大球球心轨迹的中轴 变换方法等不同技术途径。相比之下,基于序贯数学形态学细化的方法得到的骨架为区域 的同伦骨架,即骨架的拓扑结构与原区域一致,从而在利用骨架进行对象表示和识别的应 用中更为适用,而诸如基于最大球的其他方法在这一点上则无法保证。
[0003] 标准的序贯细化骨架提取方法的原理简单,实现便捷,对于较小尺寸的二值图像 十分实用。但当图像尺寸较大时,标准的序贯细化骨架提取方法的计算速度明显下降,常常 无法适用于具有一定的交互响应要求的应用场合,更无法应用于实时应用。
[0004] 因此,有必要找到一种改进的基于序贯细化的骨架提取方法,在保证所得骨架的 同伦性的同时,有效提高骨架提取的速度,使之能适用于面向较大二值图像、交互响应性较 高的应用场合,显著提升骨架提取方法的应用潜力。

【发明内容】

[0005] 本发明所要解决的技术问题是在现有的基于序贯细化的骨架提取方法基础上,针 对较大尺寸的图像,提供一种能够快速完成同伦骨架提取的方法。
[0006] 为解决上述技术问题,本发明提出的解决方案为:利用红黑树数据结构高效地记 录序贯细化过程中需要移除的区域点,并在每一步细化操作后将更新红黑树内容所需的考 察范围限定在上一步移除的区域点的8邻域之中,从而最大程度地减少重复运算,以有效 提高运算速度。具体包括以下步骤:
[0007] i.将待提取骨架的、高为H且宽为W的二值图像B在上、下、左、右四个方向上分别 进行宽度为1个像素的延拓,得到高为(H+2)、宽为(W+2)的二值图像P,延拓部分的像素值 置为逻辑〇(黑色);
[0008] ii.初始化8个红黑树结构TQ~T7,(红黑树的原理与实现可参考"Τ· H. Cormen,C. E. Leiserson, R. L. Rivest, C. Stein著,潘金贵,顾铁成,李成法,叶懋译,《算法导论》,北京: 机械工业出版社,2006,第163-175页")用于管理每轮细化中待移除的P中的区域点(逻 辑值为1的点或白色点),置currentTree = 0 ;
[0009] iii.初始化一个高为(H+2)、宽为(W+2)的矩阵L,L的元素为具有TreeIndex和 Visited等两个字段的结构体;L的每个元素的Treelndex字段初始化为0, Visited字段初 始化为FALSE ;
[0010] iv.遍历P中第1行(最顶部的一行为第〇行)到第H行、第1列(最左侧的一列为 第O列)到第W列范围内的每个像素点(i,j),其中i为行号,j为列号,判断该点是否是需 要移除的区域点,若是,则将该点的索引值插入相应的红黑树Tk中,并置L (i,j). TreeIndex =k+1,其中L(i,j)为矩阵L中第i行第j列上的元素;像素点索引值可按认为方便的方 式加以定义,例如当把P视为由左至右的各列像素由上至下首尾连接而成的一个一维数组 时,则位于第i行第j列的像素点(i,j)的索引值可定义为ind = j(H+2)+i ;
[0011] v.若Ttl~T7均为空,则抽取P的第1行到第H行、第1列到第W列所构成的子图 像作为B的骨架二值图像S返回;否则,至第vi步;
[0012] vi.置 round = 0 ;
[0013] vii.若round = 8,则至第V步;否则,至第viii步;
[0014] viii.获取中的所有待移除区域点的索引值,并将它们存放于列表R中; 清空 TcurrentTree;置 currentTree = currentTree+Ι,若 currentTree = 8,则置 currentTree =〇 ;
[0015] ix.根据R对P、L和Τ0~T 7进行更新;
[0016] X. round = round+l ;清空 R ;至第 vii 步。
[0017] 所述的第iv步及第ix步中待移除区域点及其对应的红黑树索引的确定方法(方 法A),其具体步骤如下:
[0018] (A.1)对于二值图像P中的像素点(i,j),如果其值P(i,j)为逻辑0,则当前像素 点不是待移除的区域点,返回;
[0019] (A. 2)根据当前像素点(i,j)所在的3X3邻域确定该像素点的查找表索引值V, V是一个9位无符号整型值,每一位对应(i,j)所在的3X3邻域中一个特定位置上的像素 值;本发明中按如下约定计算查找表索引值:V的第〇位(最低位)对应P(i_l,j-Ι)的值, 第1位对应P (i,j-1)的值,第2位对应P (i+1,j-1)的值,第3位对应P (i-1,j)的值,第4 位对应P (i,j)的值,第5位对应P (i+1,j)的值,第6位对应P (i-1,j+Ι)的值,第7位对应 P (i,j+Ι)的值,第8位(最高位)对应P (i+1,j+Ι)的值;
[0020] (A. 3)根据查找表索引值V,从如下数组TreeNum中读取当前像素点(i,j)所适用 的红黑树数目TreeNum(V):
[0021]
【主权项】
1. 一种基于序贯细化操作的二值图像区域同伦骨架快速提取方法;本发明所提出的 方法包括W下步骤:
1. 将待提取骨架的、高为H且宽为W的二值图像B在上、下、左、右四个方向上分别进行 宽度为1个像素的延拓,得到高为(H+2)、宽为(W+2)的二值图像P,延拓部分的像素值置为 逻辑〇(黑色); ii. 初始化8个红黑树结构T。~T,,用于管理每轮细化中待移除的P中的区域点(逻 辑值为1的点或白色点),置currentTree = 0 ; iii. 初始化一个高为化+2)、宽为(W+2)的矩阵L,L的元素为具有Treeindex和 Visited等两个字段的结构体;L的每个元素的Treeindex字段初始化为0, Visited字段初 始化为FALSE ; iv. 遍历P中第1行(最顶部的一行为第0行)到第H行、第1列(最左侧的一列为 第0列)到第W列范围内的每个像素点(i,j),其中i为行号,j为列号,判断该点是否是需 要移除的区域点,若是,则将该点的索引值插入相应的红黑树Tk中,并置L(i,j). Treeindex =k+1,其中L(i,j)为矩阵L中第i行第j列上的元素;像素点索引值可按认为方便的方 式加W定义,例如当把P视为由左至右的各列像素由上至下首尾连接而成的一个一维数组 时,则位于第i行第j列的像素点(i,j)的索引值可定义为ind = j〇l+2)+i ; V.若T。~T ,均为空,则抽取P的第1行到第H行、第1列到第W列所构成的子图像作 为B的骨架二值图像S返回;否则,至第Vi步; vi. 置 round = 0 ; vii. 若round = 8,则至第V步;否则,至第viii步; viii. 获取TtwaMTtw中的所有待移除区域点的索引值,并将它们存放于列表R中;清空 TcurrentTree遣州rrentTree = currentTree+1,若 currentTree = 8,则置 currentTree = 0 ; ix. 根据R对P、L和T。~T 7进行更新; X. round = round+1 ;清空 R ;至第 vii 步。
2. 根据权利要求1所述的第iv步及第ix步中待移除区域点及其对应的红黑树索引的 确定方法,其特征在于如下步骤: a. 对于二值图像P中的像素点(i,j),如果其值P(i,j)为逻辑0,则当前像素点不是待 移除的区域点,返回; b. 根据当前像素点(i,j)所在的3X3邻域确定该像素点的查找表索引值v,v是一个 9位无符号整型值,每一位对应(i,j)所在的3X3邻域中一个特定位置上的像素值;本发 明中按如下约定计算查找表索引值;V的第0位(最低位)对应P(i-1,j-1)的值,第1位 对应P(i,j-1)的值,第2位对应P(i+1,j-1)的值,第3位对应P(i-1,j)的值,第4位对应 P(i,j)的值,第5位对应P(i+1,j)的值,第6位对应P(i-1,j+1)的值,第7位对应P(i,j+1) 的值,第8位(最高位)对应P (i+1,j+1)的值; c. 根据查找表索引值V,从如下数组TreeNum中读取当前像素点(i,j)所适用的红黑 树数目 TreeNum(v); TreeNum 巧 12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,0, 0, 1,1,0 ,0, 1,2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,1,0, 0, 1,2, 0, 0, 0, 0, 0, 0, 0, 1,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,1,2, 0, 0, 1,1,0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, 0, 0, 0, 0, 0, 0, 0, 1,1,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1