CN110427952A - 一种逐点生长的平面图形骨架提取方法 - Google Patents
一种逐点生长的平面图形骨架提取方法 Download PDFInfo
- Publication number
- CN110427952A CN110427952A CN201910694276.7A CN201910694276A CN110427952A CN 110427952 A CN110427952 A CN 110427952A CN 201910694276 A CN201910694276 A CN 201910694276A CN 110427952 A CN110427952 A CN 110427952A
- Authority
- CN
- China
- Prior art keywords
- point
- skeleton
- branch
- skeletal
- neighborhood
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/34—Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明提出了一种逐点生长的平面图形骨架提取方法,包括:a)骨架点判别方法:先计算待判别的点沿其8邻域的离散方向导数,找出范围在[‑1,‑0.897]之内的所有方向;如果存在两个或以上的方向,那么对其中任意两个相邻方向围成的分枝进行检测,如果至少有一个真实分枝,就断定待判别的点是骨架点;b)从距离变换值最大的点开始,用步骤a)给出的方法考察当骨架点的8邻域上的每个点,如果有骨架点,则添加到骨架集中,直到骨架集内所有的点全部处理完。本发明提出的逐点生长的平面图形骨架提取方法给出了一个点是骨架点的必要条件——沿其邻域点的8个离散方向导数落在[‑1,‑0.897]的数量不少于2;离散方向导数和分枝检测结合的骨架点判别方法。
Description
技术领域
本发明属于计算机视觉、图像处理和人工智能领域的特征提取、图像理解和识别,涉及数学和计算机科学,可应用于形状表示、分析和识别,应用领域广泛,包括计算机图形学、影视娱乐和医学图像处理等。
背景技术
自从上世纪70年代Blum提出骨架概念以来,如何计算形状的骨架一直是图像处理领域的一个活跃的研究方向,先后提出了不少方法。下面对近期一些高质量的方法做个简要的综述。
2007年,Michel等人[1]提出了一个基于离散等分角和距离变换的骨架生成算法,这个方法容易漏掉形状狭窄区域的骨架。Chang[2]通过脊点检测和连接处理可以快速生成初步骨架,脊点是由离散梯度来确定的,因此该方法对边界噪声比较敏感。2010年,Saeed等人[3] 提出了骨架提取的迭代算法,由于每轮迭代涉及7个顺序阶段,因此它的计算量大。2011年, Shen等人[4]给出了一个判别点是否为骨架点的的重要性衡量指标—弯曲电位比,应用这个指标可以较好地去除伪骨架分枝。2013年,Krinidis等人[5]利用二维经验模式类似分解评估形状边界是否为真分枝,以消除错误的骨架点。这个方法的优点是抗边界噪声能力强,但依赖于输入的初始骨架。2015年,Leborgne等人[6]用拉普拉斯算子检测脊点,结合最大内切圆心,提出了一个骨架提取方法。Guo等人[7]提出了基于中性成本函数的最短路径计算方法,结合脊点检测,给出了一个骨架生成方法。这两个方法的共同缺点是对边界噪声敏感,容易产生假骨架分枝。2016年,Jalba等人[8]提出了一个基于质量传输过程的骨架生成方法,质量沿最短路径从边界流向内部,使用截断阀值从质量密度场中提取骨架。通过设置不同的截断阀值,这个方法可以提取曲面和曲线型骨架。2017年,Serino和Baja[9]建立骨架分枝的结构层次图,而后根据每个分枝对还原图形的贡献赋予重要性,在此基础上给出了一个骨架剪枝策略:不影响骨架复原图形的能力下,尽可能多地剪掉重要性弱的分枝。Cai等人[10]应用Snake 模型中的梯度向量场和拓扑分析提取二值或灰度图像的骨架,该方法对边界噪声敏感,有时会生成不连续的骨架。
综上所述,虽然骨架的提取方法众多,但大多数方法对边界噪声敏感,鲁棒性不强。稳定准确地提取骨架仍是一个挑战性的难题。
发明内容
本发明拟提出一个稳定性好、计算效率高的二维图形的骨架提取方法,具有抗噪声、边界局部变形的能力。
平面图形的骨架是图形的中轴线,等价于图形内部最大圆盘的圆心(CMD)的集合,最大内接圆与图形边界至少有两个接触点。然而,由于数字图形的离散属性,准确意义上的中轴线不一定存在,需要引入离散方法来判定骨架点。为此本发明给出离散方向导数和分枝检测确定骨架点的方法。
本发明提出的逐点生长的平面图形骨架提取方法,包括:
a)骨架点判别方法:先计算待判别的点沿其8邻域的离散方向导数,找出范围在[-1,-0.897] 之内的所有方向;如果存在两个或以上的方向,那么进一步对其中任意两个相邻方向围成的分枝进行检测,如果至少有一个真实分枝,就断定待判别的点是骨架点;
b)从距离变换值最大的点开始,用步骤a)给出的方法考察当骨架点的8邻域上的每个点,如果有骨架点,则添加到骨架集中,直到骨架集内所有的点全部处理完。
本发明提出的逐点生长的平面图形骨架提取方法,包括以下步骤:
步骤A:将图形二值化,并计算该图形的各像素点的距离变换值,记骨架点集为S,初始值为空集;
步骤B:距离变换值最大的点是骨架点,选取一个添加到S中;
步骤C:如果S的每个点的8邻域均已考察过,进入步骤E,否则进入步骤D;
步骤D:任取S中一个其8邻域未考察过的点,利用离散方向导数和分枝检测方法判别8 邻域的每个点q是否为骨架点,如果是则添加到S中,返回步骤C;
步骤E:优化S:对于部分宽度大于1的骨架分枝,沿分枝走向删除多余的点,使得分枝宽度为1;
步骤F:输出优化后的骨架S。
本发明中,所述的离散方向导数定义和骨架点判别方法:
a)定义:点p(x,y)的距离变换值记为D(p),Nn(p)表示点p的n邻域,定义p沿方向ppi的离散方向导数
b)骨架点判别方法
步骤1:输入像素点p,用N8(p)记p的8邻域,初始化计数变量v=0,点的集合
步骤2:对于所有q∈N8(p),计算离散方向导数如果该值在[-1,-0.897]内,v++, C=C∪{射线pq与形状边界的交点};
步骤3:如果v≥2,进入步骤4做分枝检测,否则进入步骤5;
步骤4:对C中的点按如下顺序编号:ti和ti+1∈C,那么两个向量pti和pti+1之间不含任何C中的点。两个编号相邻的点ti和ti+1把图形的边界一分为二,则长度短的那部分边界和线段pti、pti+1围成的区域为ti和ti+1的分枝,该边界的长度记为记以p为圆心,|pti|或|pti+1| 为半径,从ti到ti+1的圆弧长度为如果满足条件ε∈(0,1),则像素点p 是骨架点;否则进入步骤5;
步骤5:像素点p不是骨架点。
本发明提出的逐点生长的平面图形骨架提取方法主要创新点是:
1、给出了一个点是骨架点的必要条件——沿其邻域点的8个离散方向导数落在[-1,-0.897] 的数量不少于2;
2、离散方向导数和分枝检测结合的骨架点判别方法。
参考文献
[1]Michel Couprie,David Coeurjolly,Rita Zrour,Discrete bisectorfunction and Euclidean skeleton in 2D and 3D,Image andVision Computing 25(2007)1543–1556
[2]Sukmoon Chang,Extracting Skeletons from Distance Maps,International Journal of Computer Science andNetwork Security,VOL.7No.7,2007213-219
[3]KHALID SAEED,MAREK TABE DZKI,MARIUSZ RYBNIK and MARCINADAMSKI,K3M:A UNIVERSAL ALGORITHM FOR IMAGE SKELETONIZATION AND A REVIEW OF THINNINGTECHNIQUES,Int.J.Appl.Math.Comput.Sci.,2010,Vol.20,No.2,317–335
[4]Wei Shen,XiangBai,RongHua,et al.Skeleton growing and pruning withbending potential ratio,Pattern Recognition,44(2011)196–209
[5]Stelios Krinidis,Michail Krinidis,Empirical mode decomposition onskeletonization pruning,Image andVision Computing,31(2013)533–541
[6]Aurélie Leborgne,Julien Mille,Laure Tougne,Noise-resistant DigitalEuclidean Connected Skeleton for graph-based shape matching,J.Vis.Commun.Image R.31(2015)165– 176
[7]Guo Y,Sengur A.A novel 3D skeleton algorithm based on neutrosophiccost function[J], Applied Soft Computing,2015,36:210-217
[8]Jalba A C,Sobiecki A,Telea A C.An Unified Multiscale Framework forPlanar,Surface, and Curve Skeletonization.[J].Pattern Analysis&MachineIntelligence IEEE Transactions on, 2016,38(1):30-45.
[9]Luca Serino,Gabriella Sanniti di Baja,A new strategy for skeletonpruning,Pattern Recognition Letters,76(2016)41–48
[10]Yuanxue Cai,Chengguo Ming,Yueting Qin,Skeleton extraction basedon the topology and Snakes model,Results in Physics 7(2017)373–378
附图说明
图1是本发明方法在公开图像库上的分测试结果。
图2、3是本发明方法在复杂形状的测试结果。
图4a是Chang方法的测试结果,图4b是本发明方法的测试结果。
图5a是Jalba方法的测试结果,图5b是本发明方法的测试结果。
图6a、6b、6c是在字符识别方面的实施例。
图7a、7b、7c是医学图像处理方面的实施例。
具体实施方式
结合以下具体实施例和附图,对发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。
本发明在Windows系统,用Visual C#语言实现了这个方法,并在国际上公开的Kimia 99 and 216图像库上做了测试,均取得理想的效果,图1是部分测试结果。
图2、3是本发明方法在复杂形状的测试结果。
如图4所示,本发明方法提取的骨架准确光滑,图4a的骨架锯齿效果明显,而且部分骨架靠近形状的边界,如图4a中的矩形内的骨架,明显有误。而本方法提取的骨架均在形状的中心位置,作为对比,用矩形标出了同样区域的部分骨架。
如图5所示,本发明方法比Jalba方法具有更好的抗边界噪声的能力,在图5a和5b中用圆标注了两种方法提取的部分骨架,Jalba方法提取的骨架受到边界噪声的干扰出现错误,而本方法依然提取正确的骨架。
实施例1
骨架是图形形状的抽象表示,包含了图形的本质特征,在图形分析和识别方面具有很好的鲁棒性。图6a-6c是基于骨架的字符识别方法中的骨架提取过程,其中,图6a为字符图像,图6b为二值化图像,图6c为提取的骨架:
a)先计算待判别的点沿其8邻域的离散方向导数,找出范围在[-1,-0.897]之内的所有方向;如果存在两个或以上的方向,那么进一步对其中任意两个相邻方向围成的分枝进行检测,如果至少有一个真实分枝,就断定待判别的点是骨架点;
b)从距离变换值最大的点开始,用步骤a)给出的方法考察当骨架点的8邻域上的每个点,如果有骨架点,则添加到骨架集中,直到骨架集内所有的点全部处理完。
本发明实施例中的基于骨架的字符识别方法中的骨架提取方法,包括以下步骤:
步骤A:将图形二值化,并计算该图形的各像素点的距离变换值,记骨架点集为S,初始值为空集;
步骤B:距离变换值最大的点是骨架点,选取一个添加到S中;
步骤C:如果S的每个点的8邻域均已考察过,进入步骤E,否则进入步骤D;
步骤D:任取S中一个其8邻域未考察过的点,利用离散方向导数和分枝检测方法判别8 邻域的每个点q是否为骨架点,如果是则添加到S中,返回步骤C;
步骤E:优化S:对于部分宽度大于1的骨架分枝,沿分枝走向删除多余的点,使得分枝宽度为1;
步骤F:输出优化后的骨架S。
本实施例中,所述的离散方向导数定义和骨架点判别方法。
a)定义:点p(x,y)的距离变换值记为D(p),Nn(p)表示点p的n邻域,定义p沿方向ppi的离散方向导数
b)骨架点判别方法
步骤1:输入像素点p,用N8(p)记p的8邻域,初始化计数变量v=0,点的集合
步骤2:对于所有q∈N8(p),计算离散方向导数如果该值在[-1,-0.897]内,v++, C=C∪{射线pq与形状边界的交点};
步骤3:如果v≥2,进入步骤4做分枝检测,否则进入步骤5;
步骤4:对C中的点按如下顺序编号:ti和ti+1∈C,那么两个向量pti和pti+1之间不含任何C中的点;两个编号相邻的点ti和ti+1把图形的边界一分为二,则长度短的那部分边界和线段pti、pti+1围成的区域为ti和ti+1的分枝,该边界的长度记为记以p为圆心,|pti|或|pti+1| 为半径,从ti到ti+1的圆弧长度为如果满足条件ε∈(0,1),则像素点p 是骨架点;否则进入步骤5;
步骤5:像素点p不是骨架点。
实施例2
由于骨架包含了形状的几何结构和拓扑信息,在医学图像处理、血管分析、狭窄检测和手术路径规划等方面都要提取骨架。图7a-7c是一个头部投影图像提取骨架过程,其中,图7a 为头部投影图像,图7b为二值化图像,图7c为提取的骨架:
a)先计算待判别的点沿其8邻域的离散方向导数,找出范围在[-1,-0.897]之内的所有方向;如果存在两个或以上的方向,那么进一步对其中任意两个相邻方向围成的分枝进行检测,如果至少有一个真实分枝,就断定待判别的点是骨架点;
b)从距离变换值最大的点开始,用步骤a)给出的方法考察当骨架点的8邻域上的每个点,如果有骨架点,则添加到骨架集中,直到骨架集内所有的点全部处理完。
本发明实施例中的头部投影图像提取骨架方法,包括以下步骤:
步骤A:将图形二值化,并计算该图形的各像素点的距离变换值,记骨架点集为S,初始值为空集;
步骤B:距离变换值最大的点是骨架点,选取一个添加到S中;
步骤C:如果S的每个点的8邻域均已考察过,进入步骤E,否则进入步骤D;
步骤D:任取S中一个其8邻域未考察过的点,利用离散方向导数和分枝检测方法判别8 邻域的每个点q是否为骨架点,如果是则添加到S中,返回步骤C;
步骤E:优化S:对于部分宽度大于1的骨架分枝,沿分枝走向删除多余的点,使得分枝宽度为1;
步骤F:输出优化后的骨架S。
本实施例中,所述的离散方向导数定义和骨架点判别方法。
a)定义:点p(x,y)的距离变换值记为D(p),Nn(p)表示点p的n邻域,定义p沿方向ppi的离散方向导数
b)骨架点判别方法
步骤1:输入像素点p,用N8(p)记p的8邻域,初始化计数变量v=0,点的集合
步骤2:对于所有q∈N8(p),计算离散方向导数如果该值在[-1,-0.897]内,v++, C=C∪{射线pq与形状边界的交点};
步骤3:如果v≥2,进入步骤4做分枝检测,否则进入步骤5;
步骤4:对C中的点按如下顺序编号:ti和ti+1∈C,那么两个向量pti和pti+1之间不含任何C中的点;两个编号相邻的点ti和ti+1把图形的边界一分为二,则长度短的那部分边界和线段pti、pti+1围成的区域为ti和ti+1的分枝,该边界的长度记为记以p为圆心,|pti|或|pti+1| 为半径,从ti到ti+1的圆弧长度为如果满足条件ε∈(0,1),则像素点p 是骨架点;否则进入步骤5;
步骤5:像素点p不是骨架点。
本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。
Claims (3)
1.一种逐点生长的平面图形骨架提取方法,其特点在于:
a)骨架点判别方法:先计算待判别的点沿其8邻域的离散方向导数,找出范围在[-1,-0.897]之内的所有方向;如果存在两个或以上的方向,那么进一步对其中任意两个相邻方向围成的分枝进行检测,如果至少有一个真实分枝,就断定待判别的点是骨架点;
b)从距离变换值最大的点开始,用步骤a)给出的方法考察当骨架点的8邻域上的每个点,如果有骨架点,则添加到骨架集中,直到骨架集内所有的点全部处理完。
2.如权利要求1所述的逐点生长的平面图形骨架提取方法,其特点在于,所述离散方向导数定义和骨架点判别方法,包括:
a)定义:点p(x,y)的距离变换值记为D(p),Nn(p)表示点p的n邻域,定义p沿方向ppi的离散方向导数
b)骨架点判别方法
步骤1:输入像素点p,用N8(p)记p的8邻域,初始化计数变量v=0,点的集合
步骤2:对于所有q∈N8(p),计算离散方向导数如果该值在[-1,-0.897]内,v++,C=C∪{q};
步骤3:如果v≥2,进入步骤4,否则进入步骤5;
步骤4:对C中的点按如下顺序编号:qi和qi+1∈C,那么两个向量pqi和pqi+1之间不含任何C中的点;两个编号相邻的点qi和qi+1把图形的边界一分为二,则长度短的那部分边界和线段pqi、pqi+1围成的区域为qi和qi+1的分枝,并把这部分边界的长度记为记以p为圆心,|pqi|或|pqi+1|为半径,从qi到qi+1的圆弧长度为如果满足条件ε∈(0,1),则像素点p是骨架点;否则进入步骤5;
步骤5:像素点p不是骨架点。
3.如权利要求1所述的逐点生长的平面图形骨架提取方法,其特点在于,包括:步骤A:将图形二值化,并计算该图形的各像素点的距离变换值,记骨架点集为S,初始值为空集;
步骤B:距离变换值最大的点是骨架点,选取一个添加到S中;
步骤C:如果S的每个点的8邻域均已考察过,进入步骤E,否则进入步骤D;
步骤D:任取S中一个其8邻域未考察过的点,利用离散方向导数和分枝检测方法判别8邻域的每个点q是否为骨架点,如果是则添加到S中,返回步骤C;
步骤E:优化S:对于部分宽度大于1的骨架分枝,沿分枝走向删除多余的点,使得分枝宽度为1;
步骤F:输出优化后的骨架S。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910694276.7A CN110427952A (zh) | 2019-07-30 | 2019-07-30 | 一种逐点生长的平面图形骨架提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910694276.7A CN110427952A (zh) | 2019-07-30 | 2019-07-30 | 一种逐点生长的平面图形骨架提取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110427952A true CN110427952A (zh) | 2019-11-08 |
Family
ID=68413132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910694276.7A Pending CN110427952A (zh) | 2019-07-30 | 2019-07-30 | 一种逐点生长的平面图形骨架提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427952A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1562148A1 (en) * | 2004-02-06 | 2005-08-10 | Koninklijke Philips Electronics N.V. | Method and apparatus for encoding and decoding an image |
CN103514604A (zh) * | 2013-10-08 | 2014-01-15 | 天津工业大学 | 电子散斑干涉条纹图像骨架线提取方法 |
CN106276132A (zh) * | 2016-07-28 | 2017-01-04 | 天津工业大学 | 一种基于线激光图像的输送带纵向撕裂在线检测方法 |
CN108305321A (zh) * | 2018-02-11 | 2018-07-20 | 谢符宝 | 一种基于双目彩色成像系统的立体人手3d骨架模型实时重建方法和装置 |
-
2019
- 2019-07-30 CN CN201910694276.7A patent/CN110427952A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1562148A1 (en) * | 2004-02-06 | 2005-08-10 | Koninklijke Philips Electronics N.V. | Method and apparatus for encoding and decoding an image |
CN103514604A (zh) * | 2013-10-08 | 2014-01-15 | 天津工业大学 | 电子散斑干涉条纹图像骨架线提取方法 |
CN106276132A (zh) * | 2016-07-28 | 2017-01-04 | 天津工业大学 | 一种基于线激光图像的输送带纵向撕裂在线检测方法 |
CN108305321A (zh) * | 2018-02-11 | 2018-07-20 | 谢符宝 | 一种基于双目彩色成像系统的立体人手3d骨架模型实时重建方法和装置 |
Non-Patent Citations (2)
Title |
---|
JAYANT SHAH: ""Gray skeletons and segmentation of shapes"", 《ELSEVIER》 * |
朱维松 等: ""骨架提取算法的研究及在异形纤维中的应用"", 《东华大学学报》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jayaram et al. | Convex hulls in image processing: a scoping review | |
Saha et al. | A survey on skeletonization algorithms and their applications | |
Lam et al. | Thinning methodologies-a comprehensive survey | |
Wenyin et al. | From raster to vectors: extracting visual information from line drawings | |
Feng et al. | Robust and efficient algorithms for separating latent overlapped fingerprints | |
US20140125663A1 (en) | 3d model shape analysis method based on perception information | |
CN110751154B (zh) | 一种基于像素级分割的复杂环境多形状文本检测方法 | |
CN105138983B (zh) | 基于加权部件模型和选择性搜索分割的行人检测方法 | |
CN109887009B (zh) | 一种点云局部匹配方法 | |
Bataineh | An iterative thinning algorithm for binary images based on sequential and parallel approaches | |
CN117237493A (zh) | 基于拓扑分析与边缘检测融合技术的三维动漫 | |
CN109165551B (zh) | 一种自适应加权融合显著性结构张量和lbp特征的表情识别方法 | |
JP7323849B2 (ja) | 分割認識方法、分割認識装置及びプログラム | |
Bukhari et al. | Coupled snakelet model for curled textline segmentation of camera-captured document images | |
Torsello et al. | Correcting curvature-density effects in the Hamilton–Jacobi skeleton | |
Choi et al. | Relief extraction from a rough stele surface using svm-based relief segment selection | |
Faltin et al. | Improving symbol detection on engineering drawings using a key point-based deep learning approach | |
Kusuma et al. | Skeletonization using thinning method for human motion system | |
CN110427952A (zh) | 一种逐点生长的平面图形骨架提取方法 | |
CN115222895B (zh) | 图像生成方法、装置、设备以及存储介质 | |
KR101279484B1 (ko) | 영상 처리 장치 및 방법 | |
Huang et al. | Face contour detection using geometric active contours | |
Chen et al. | MAT-based thinning for line patterns | |
Shen et al. | Unsupervised human skeleton extraction from Kinect depth images | |
Kurnia et al. | Object detection on hindered condition by using chain code-based angle detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20191108 |