骨架是一种良好的形状表达方式[1], 简洁、准确的骨架能够表现物体的整体结构、形状拓扑和几何性质, 与图形图像的轮廓相比, 其在形变和噪声影响下更为稳定。骨架可以降低物体后期描述和度量的难度, 因此被广泛应用于各个领域, 如形状表示及变换[2]、形状匹配[3]、模式识别[4]、三维形状分割[5]等。同时, 如何提取简洁而准确的骨架特征信息成为相关领域的研究热点。
目前, 学术界尚无对骨架的准确定义。文献[6]指出, 所谓骨架是指拓扑结构、连通性与原图像形状一致的细曲线集合。文献[1]将目标形状内最大内切圆的圆心集合定义为骨架。本文采用文献[7]对骨架的定义, 即一个形状的骨架是到该图形状边界有2个或2个以上切点的内切圆(球)的圆(球)心集合。对二维图像与三维图形形状骨架的精确计算, 以及对骨架效果的优劣性评价是估计计算的2个难点。
二维骨架的计算方法较多, 主要分为基于学习的方法和基于几何的方法。基于学习的方法在给出训练集的条件下, 设计学习模型, 提取出骨架的特征, 再使用测试集验证所得骨架的准确性。例如, 文献[8]使用卷积网络提取图片的目标骨架, 不需要专门进行图像分割, 但该方法依赖于前期训练样本的选择与人为标定。常用的基于几何的骨架提取方法包括:形态细化法[9], 距离变换法[10]以及中轴变换法[11]。这些方法都是针对已分割好的图像进行骨架提取。其中, 形态细化法能够保持骨架的连续性, 但是往往会偏离真实骨架, 而且计算代价较大。距离变换法以一个点到边界点的最短距离来进行距离变换, 并设定阈值进行过滤, 得到骨架。该方法提取速度较快, 且能够重构原始形状, 但是不能保证骨架的连续性, 因而不能保持原形状的拓扑结构。
物体三维模型的中心线或中心面的集合可视作该物体的骨架, 其提取方法与二维骨架提取方法相似。由于三维骨架缺乏精确定义, 因此精确骨架的计算较为困难, 通常得到的是近似骨架。文献[12]使用平分线方法进行提取, 能够得到相对准确的骨架, 但其计算效率较低。文献[13]利用收缩球方法进行提取, 该方法易于执行和并行化, 效率较高。然而, 该方法对模型边界的采样精度有较高要求, 并且得到的是离散的骨架点云, 并非网格骨架。文献[14]使用拓扑细化方法, 通过不断迭代移除边界体素, 最终得到骨架。该方法能够保持原形状的拓扑结构, 但骨架的平滑性较差且对噪声敏感。文献[15]使用距离变换法提取骨架, 该方法高效且易于并行, 但其得到的骨架不连续, 拓扑结构也会发生变化。文献[16]结合矢状面深度信息和神经网络改进传统的骨架提取算法, 计算效率提高, 但是该方法依赖于训练样本的选择和人工标定。
上述方法所提取的骨架含有较多噪声, 会出现主次不分和结构混乱的情况, 影响对原始物体形状与连通关系的判断, 甚至会出现识别错误。针对以上问题, 本文使用中轴变换方法进行骨架特征提取, 并分别从二维和三维的角度定义骨架中边的稳定性度量, 改进二次误差度量(Quadric Error Metrics, QEM)方法, 在原始中轴上简化提取到的骨架特征。
1 相关工作 1.1 中轴变换方法中轴变换描述的对象是形状内最大内切圆(球)圆(球)心及半径的集合, 中轴的定义与骨架的定义一致, 二维图像中的中轴定义如下:
$ \begin{array}{l} M:\left\{ {v\left( {x,y,r} \right)\left| {v\left( {x,y,r} \right) \subseteq \mathit{\Omega ,}\forall v'\left( {x,y,r'} \right)} \right. \subseteq } \right.\\ \;\;\;\;\;\left. {\mathit{\Omega },v' \le v} \right\} \end{array} $ | (1) |
其中, Ω表示封闭形状S的外边界, v(x, y, r)表示以(x, y)为圆心, 以r为半径的圆, 中轴M就是在S内所有满足式(1)的圆心与半径的集合。图 1给出二维中轴的示意图, 其中, 图 1(c)中直线段的集合即为该矩形边界的中轴。
![]() |
Download:
|
图 1 中轴、中轴圆及毛刺 |
二维中轴点v均为三元组(x, y, r), 因而广义的中轴边eij即可定义为vivj, 其中vi和vj分别为2个中轴点。三维中轴的定义与二维一致。三维中轴点v为四元组(x, y, z, r), 表示以(x, y, z)为球心, 以r为半径的球。三维中轴边为柱状结构, 由3个中轴球以及3个外公切面组成中轴面, 如图 2所示。
![]() |
Download:
|
图 2 中轴图元示意图 |
目前常用Voronoi图计算中轴变换, Voronoi图与Delaunay三角剖分是对偶关系, 连接三角剖分后的三角形外心得到对应的Voronoi图, 因此, 其实质是对边界点进行Delaunay三角剖分。Voronoi图与中轴并非完全一致, 通过Voronoi图计算中轴时, 在原形状的非凸区域会产生Voronoi边, 这些Voronoi边常位于物体轮廓外部, 因而需要将其去除。根据过该点与轮廓边界的射线与轮廓交点的个数进行简化, 若交点的个数是偶数则将其去除, 反之则保留, 从而得到位于物体内部的原始中轴。
1.2 中轴简化利用中轴变换提取骨架时, 由于模型本身的复杂性和边界噪声的影响, 会产生很多冗余的刺状分支——毛刺。图 1给出二维中轴产生毛刺的过程:图 1(c)为矩形的轮廓以及理想中轴; 图 1(d)为边界具有微小噪声的矩形; 图 1(e)形状中的竖直线段即为因边界噪声而产生的符合定义的中轴。模型越复杂, 产生的毛刺越多。
使用三维的Delaunay三角剖分计算三维图形中轴, 再通过连接相邻四面体的外接球球心得到相应的Voronoi边。在三维图形中, 扁平四面体的外接球球心可能位于四面体外部, 且四面体越扁平, 外心偏离越远, 因此, 即使边界光滑, 扁平四面体的外心仍会偏离该四面体, 从而产生毛刺。
无论是二维中轴还是三维中轴, 在实际使用过程中都会产生很多毛刺, 因此需要进行简化处理。文献[17]使用基于角度滤波的方法进行中轴简化, 由于中轴的定义是最大内切圆圆心的集合, 该圆与形状边界至少有2个交点, 因此圆心与切点的连线会形成一个角度。当该角度大于某个阈值时, 认为该中轴稳定, 否则去除该中轴点, 使中轴得到简化。该方法能控制简化的程度、保证图像的局部特征, 但其不能保持图像形状的拓扑结构。文献[18-19]采用基于中轴圆半径的度量方法, 当半径小于给定阈值时认为其是毛刺, 去除该中轴点。该方法依赖于半径阈值的选择, 计算速度较快。当阈值较大时, 能得到简洁的骨架, 但所得骨架存在不连续的情况; 当阈值较小时, 能保持骨架的细节特征, 但不能得到简洁的骨架。文献[20]使用放缩中轴球半径的策略, 先将中轴球半径放大s倍, 然后使用基于角度滤波的方法进行简化, 将其缩小为原来的1/s。该方法能够控制简化程度, 得到简洁的骨架, 但其不能保证所得骨架拓扑正确, 另外, 该方法过于依赖s的选择, 若s较大则不能保持图像骨架的细节特征。文献[21-23]使用基于单边的Hausdoff距离对中轴进行简化, 首先要去除处于边缘的边, 若去除后的Hausdoff距离大于给定阈值, 则该边保留, 否则去除。该算法能够保证拓扑结构, 得到简洁、连续的骨架, 但单边Hausdoff距离的计算耗时较长, 且在极端简化的情况下, 容易丢失细节特征。
在网格简化中采用QEM算法进行边折叠, 即通过最小化二次错误代价来优化折叠后新点的位置。文献[24]对QEM进行改进, 得到球二次误差度量(Spherical Quadratic Error Measure, SQEM)方法。文献[25-26]在前人的基础上, 提出QMAT方法, 通过QEM方法简化三维模型中轴网格, 并进行三维重构。在SQEM与QMAT的启示下, 本文提出一种改进的QEM骨架提取算法, 该算法能够解决中轴变换计算过程中稳定性较差的问题, 得到简洁、鲁棒的骨架特征。
2 中轴骨架提取算法 2.1 中轴骨架简化误差度量受文献[24-25]启发, 本文使用改进的QEM方法进行中轴简化, 如图 3所示。在图 3中, 所有的圆均为中轴圆, v1v2是一条待简化的二维中轴边。通过边折叠算法, 将v1v2融合成一个新的中轴点vx, 把所有以中轴点v1、v2为端点的中轴边重新与中轴点vx建立联系。在简化过程中, 通过定义错误函数并使其最小化得到新中轴点vx的位置和, 并使简化代价最小。
![]() |
Download:
|
图 3 中轴简化过程 |
图 4给出使用QEM进行边折叠的示意图。在图 4中, v1v2为一条待折叠的中轴边, vx为得到的新中轴点。若新中轴圆恰好内切于原中轴圆的2条外公切线, 则其折叠代价为0。定义E(v1, v2)=D12+D22即为中轴边v1v2的折叠误差代价, D1、D2的定义如下:
$ \begin{array}{*{20}{c}} {D_1^2 = {{\left[ {\mathit{\boldsymbol{n}}_1^{\rm{T}} \cdot \left( {{v_1} - {v_x}} \right) + \left( {{r_1} - {r_x}} \right)} \right]}^2}}\\ {D_2^2 = {{\left[ {\mathit{\boldsymbol{n}}_2^{\rm{T}} \cdot \left( {{v_1} - {v_x}} \right) + \left( {{r_1} - {r_x}} \right)} \right]}^2}} \end{array} $ | (2) |
![]() |
Download:
|
图 4 QEM简化示意图 |
其中, n1、n2为以v1、v2为圆心的2个中轴圆的外公切线的外法向量。对E(v1, v2)进行简化得到三元组( A, b, c), 简化过程如下:
$ E\left( {{v_1},{v_2}} \right) = \mathit{\boldsymbol{v}}_x^{\rm{T}} \cdot \mathit{\boldsymbol{A}} \cdot {\mathit{\boldsymbol{v}}_x} + {\mathit{\boldsymbol{b}}^{\rm{T}}} \cdot {\mathit{\boldsymbol{v}}_x} + c $ | (3) |
其中, A = n1· n 1T+ n2· n 2T, b =-2 A · v, c= v T· A · v。若定义E(vx)=E(v1, v2), 则每个中轴点都有一个三元组与之对应, 当中轴边v1v2进行边折叠后, 得到新点vx, 则vx的三元组即为v1、v2对应系数的和, 即( A, b, c)=( A1+ A2, b1+ b2, c1+c2)。根据二次错误最小化, 在初始阶段, 每个中轴点的系数由所有与其相关的中轴点所组成的中轴边得到, 初始中轴点的错误代价为0。在进行边折叠后, 新点的位置由错误代价最小化确定, 中轴边v1v2进行边折叠时, 得到新点位置, 当 A 可逆时, 新点位置 v =-
使用边折叠算法进行中轴简化时, 边折叠的顺序即为中轴边的处理顺序。文献[18]使用中轴半径长度度量中轴边, 当中轴半径长度大于给定阈值时, 认为该中轴边是稳定的。文献[27]使用圆心距与半径之差的比值作为中轴边的稳定性衡量标准。本文通过稳定率衡量中轴边的稳定性, 其定义如下:
$ {s_{ij}} = \frac{{\max \left( {0,\left\| {{p_i} - {p_j}} \right\| - \left| {{r_i} - {r_j}} \right|} \right)}}{{\left\| {{p_i} - {p_j}} \right\|}} $ | (4) |
其中, pi、pj为中轴边的2个端点圆的圆心坐标, ri、rj表示相应端点圆的半径。
定义中轴边的稳定性和边折叠的代价后, 进行中轴简化, 该过程需要考虑2个方面的影响:1)由于边界噪声产生的中轴, 即毛刺; 2)模型自身复杂性产生的冗余中轴。将两者综合起来考虑定义边折叠代价, 具体如下:
${C_{ij}} = \left( {E\left( {{v_i}{v_j}} \right) + K} \right) \cdot s_{ij}^2$ | (5) |
其中, K为常量, 用来平衡边的稳定率与边折叠误差起作用的时间。在初始阶段, 边折叠代价为0, 主要去除毛刺, 随着时间推移, 边折叠代价不断增加, 由噪声影响所产生的中轴已处理完毕, 此时需按照边折叠错误代价去边。
基于QEM的二维图像骨架简化算法具体描述如下:
算法1 基于QEM的二维图像骨架简化算法
输入 二维中轴点集合P、中轴边集合L以及简化后中轴边条数ω
输出 中输点集合P
步骤1 计算P集合中每个中轴点的三元组系数( A, b, c)以及初始情况下L集合中所有中轴边的折叠代价s, 并根据s对中轴边进行排序。
步骤2 从L中选取折叠代价最小的中轴边e, 计算折叠后的新点vx的坐标, 从P中去除e的2个端点va、vb, 从L中去除该中轴边e。
步骤3 把vx放入P中, 建立va、vb相邻的中轴点与vx的关系, 重新计算相关中轴点的三元组系数和相关中轴边的折叠代价s, 并根据代价对中轴边进行重新排序。
步骤4 检查集合P中点的数量, 若小于ω则停止算法, 否则跳转至步骤2。
2.3 三维图形中的轴骨架特征提取三维网格近似骨架的提取与二维骨架相类似。在简化三维中轴边的误差代价时, 待简化边的误差代价如图 2(c)所示, 由3个球构成中轴薄片, 边简化后的新中轴球如果恰好嵌入该中轴薄片中, 则简化代价为0。否则, 简化代价公式与式(2)一致, 其中, 中轴点vi(xi, yi, zi, ri), 法向量 n j(xj, yj, zj, 1), xj2+yj2+zj2=1。n j(xj, yj, zj, 1)的计算较为困难, 本文计算方法如图 5所示。
![]() |
Download:
|
图 5 单位法向量计算示意图 |
假设3个中轴球存在外公切面, S1、S2、S3分别为中轴薄片的3个端点球, pi为端点球i在外公切面f上的切点, ri为端点球i的半径。向量 n 表示端点球在f上的外单位法向量, 则外公切面f的表达式为Ax+By+Cz+D=0, ( A, B, C)即为该公切面的单位法向量, 且A2+B2+C2=1。Si坐标为(ai, bi, ci), 则 p i= S i+ r i· n, 将 p i代入外公切面的方程中, 可得:
$ \left\{ \begin{array}{l} {a_0}A + {b_0}B + {c_0}C + D + {r_0} = 0\\ {a_1}A + {b_1}B + {c_1}C + D + {r_1} = 0\\ {a_2}A + {b_2}B + {c_2}C + D + {r_2} = 0 \end{array} \right. $ | (6) |
与A2+B2+C2=1联立, 可得:
$ \left\{ \begin{array}{l} {a_0}A + {b_0}B + {c_0}C + D + {r_0} = 0\\ {a_1}A + {b_1}B + {c_1}C + D + {r_1} = 0\\ {a_2}A + {b_2}B + {c_2}C + D + {r_2} = 0\\ {A^2} + {B^2} + {C^2} = 1 \end{array} \right. $ |
不考虑该非线性方程组无解以及具有无数解的情况, 则有:
$ \left\{ \begin{array}{l} A = \frac{{ - b \pm \sqrt {{b^2} - 4ac} }}{{2a}}\\ B = MA + N\\ C = WA + V\\ D = - \left( {A{a_0} + B{b_0} + C{c_0} + {r_0}} \right) \end{array} \right. $ |
其中:
$ \left\{ \begin{array}{l} a = 1 + {M^2} + {W^2}\\ b = 2\left( {MN + WV} \right)\\ c = {N^2} + {V^2} - 1 \end{array} \right. $ |
$ \left\{ \begin{array}{l} M = p/q\\ N = - r/q\\ W = - \frac{{\left. {q\left( {{a_0} - {a_1}} \right) - q\left( {{b_0} - {b_1}} \right)} \right)}}{{q\left( {{c_0} - {c_1}} \right)}}\\ V = \frac{{r\left( {{b_0} - {b_1}} \right) - q\left( {{r_0} - {r_1}} \right)}}{{q\left( {{c_0} - {c_1}} \right)}},{c_0} - {c_1} \ne 0,q \ne 0 \end{array} \right. $ |
$ \left\{ \begin{array}{l} p = \left( {{a_0} - {a_1}} \right)\left( {{c_0} - {c_1}} \right) - \left( {{a_2} - {a_1}} \right)\left( {{c_0} - {c_1}} \right)\\ q = \left( {{b_0} - {b_1}} \right)\left( {{c_2} - {c_1}} \right) - \left( {{b_0} - {b_1}} \right)\left( {{c_0} - {c_1}} \right)\\ r = \left( {{r_0} - {r_1}} \right)\left( {{c_2} - {c_1}} \right) - \left( {{r_2} - {r_1}} \right)\left( {{c_0} - {c_1}} \right) \end{array} \right. $ |
由上述式子可计算中轴球外公切面的单位法向量, 从而计算简化代价。三维网格骨架特征提取算法的具体描述如算法2所示。
算法2 基于QEM的三维图形骨架简化算法
输入 三维图形原始中轴网格, 中轴点集合P, 中轴边集合E以及中轴面集合F, 目标剩余中轴点个数Remain, 边阈值L
输出 中轴点集合P
步骤1 使用基于中轴半径的方法进行处理, 去除稳定率低且中轴边长度小于L的中轴边, 得到初步简化的中轴图形集合。
步骤2 计算P集合中每个中轴点的三元组系数( A, b, c)与初始情况下E集合所有中轴边的稳定率、二次误差、折叠代价和折叠后新点的位置, 并将中轴边根据折叠代价进行排序。
步骤3 选择折叠代价最小的中轴边e。
步骤4 将折叠e产生的新点p加入集合P中, 并对e的2个端点的中轴点设定移除标志。建立边集合中所有与e相连的边与新点p的联系, 并将e设定移除标志。若e是面集合F中的一条边, 则相关三角面设定为移除, 若E中的边只含有e的一个端点, 则使用新点p替换该端点。
步骤5 检测修改后是否发生网格翻转。若网格翻转, 则撤销移除标志并选取代价次之的边进行步骤4;若不发生翻转, 则移除相关元素并对边重新排序。
步骤6 检查P集合剩余中轴点的数量, 若小于Remain则停止; 反之则跳转至步骤3。
2.4 中轴骨架优劣性评价本文使用单边Hausdoff距离评价所得骨架的优劣性。单边Hausdoff距离定义如下:
$ \mathop {\max }\limits_{{p_j} \in M} \mathop {\min }\limits_{{q_j} \in S} \left( {\left| {\left\| {{p_j} - {q_i}} \right\| - {r_j}} \right|} \right) $ | (7) |
其中, M表示中轴点坐标的集合, S表示边界采样点坐标集合, pj、qi代表对应点的坐标, rj表示对应中轴点的半径, ‖·‖表示求解欧式距离, |·|表示取绝对值。单边Hausdoff距离的几何解释为中轴点距离边界点的最小距离的最大值, 该距离通过描述模型简化前后的差异来评价骨架的优劣。该距离越小, 表示简化所造成的模型改变越小。由于其计算时间复杂度较高, 因此本文仅在二维图像上使用该距离进行骨架结果评价。
3 实验结果与分析为验证中轴骨架特征提取算法的有效性, 本文分别在二维图像数据集SK506、MPEG7与自定义数据集, 以及三维图形数据集上进行实验。实验环境配置为:Windows7 64位, Intel i7处理器, 8 GB内存, 使用Visual Studio 2013运行算法程序。
对于二维图像骨架提取, 本文使用Onecut算法[28]得到的的二值图, 再通过OpenCV中的边缘检测算法Canny算子进行边缘检测, 并提取轮廓的坐标值。利用CGAL算法库提供的Delaunay三角化算法计算轮廓的Voronoi图, 得到轮廓中轴。使用QEM的边折叠骨架提取算法, 按照边折叠代价对中轴边进行排序, 时间复杂度为O(nlg n)。
对于三维图形近似网格骨架计算, 初始的中轴通过QMAT可执行程序[25]得到。在三维近似骨架提取过程中, 首先使用基于中轴半径的方法进行初步处理, 再使用改进的QEM方法进行简化。基于中轴半径的方法的时间复杂度为O(n), 而使用改进QEM进行中轴简化时, 由于进行边折叠需要更新相邻中轴点的信息, 其时间复杂度为O(n2)。
本文分别从二维图像、三维图形上提取骨架。二维骨架特征提取使用SK506数据集、MPEG7数据集以及自定义数据集进行实验。三维近似网格骨架特征使用QMAT提供的模型进行提取。
3.1 SK506数据集上的结果为了验证算法在自然图片数据集上的有效性, 在SK506[8]数据集上进行实验, 将本文算法与形态学细化算法、距离变换算法、FSDS算法和基于Hausdoff距离的算法进行对比, 结果如图 6和表 1所示。
![]() |
Download:
|
图 6 5种算法在SK506数据集上的骨架提取结果对比 |
![]() |
下载CSV 表 1 5种算法在SK506数据集上的结果对比 |
由图 6可以看出, 距离变换算法不能保证骨架的连续性, 形态学细化算法与基于Hausdoff距离的算法能够保持图像的拓扑和骨架的连续性, 但在极端简化情况下会丢失细节。本文算法在极端简化情况下, 依然能够较鲁棒地计算得到图像的骨架。表 1给出5种算法的对比数据, 其中, 形态学细化算法运行速度较快, 基于Hausdoff距离的算法由于需要计算单边Hausdoff距离, 因而较费时。本文算法的平均骨架提取误差率低于其他算法。
3.2 MPEG7数据集上的结果MPEG7数据集是用于形状匹配的图像库, 本文挑选其中397张动物类图片进行实验, 以验证本文算法对毛刺的简化效果, 结果如图 7和表 2所示。由表 2可以看出, 使用基于中轴半径的算法, 运行速度最快, 但是在骨架简化过程中, 对于细节的保持表现欠佳, 因此, 误差率较高。在极端简化情况下, 会导致中轴的不连续。基于Hausdoff距离的算法的结果虽然能保持形状特征, 但是在极端简化情况下也会丢失细节, 并且该算法由于需要计算单边Hausdoff距离, 运行时间在3种算法中最慢。本文算法在极端简化情况下, 仍然能够保持良好的细节, 并且运行速度介于两者之间。然而, 本文算法提取的骨架特征平滑性欠佳。
![]() |
Download:
|
图 7 3种算法在MPEG7数据集上的骨架提取结果对比 |
![]() |
下载CSV 表 2 3种算法在MPEG7数据集上的结果对比 |
本文使用自定义数据集验证算法在行人骨架提取时的有效性, 结果如图 8所示。通过选取视频流中的若干帧图片, 对不同姿态的行人进行骨架提取。由图 8可以看出, 本文算法对于视频行人骨架提取表现良好。
![]() |
Download:
|
图 8 行人骨架提取结果 |
在三维图形网格骨架提取中, 本文首先使用基于中轴半径的算法进行处理, 再使用改进的QEM方法进行中轴简化, 结果如图 9、图 10所示。
![]() |
Download:
|
图 9 三维图形骨架提取结果对比 |
![]() |
Download:
|
图 10 部分三维图形骨架提取结果 |
图 9给出本文算法与基于中轴半径的算法的对比结果, 图 10为本文算法计算得到的部分三维形状中轴结果。由于三维骨架比较复杂, 缺乏定量的描述方法来评估所得骨架的优劣, 通常采用主观判断方式进行评估。从图 9可以看出, 基于中轴半径的算法得到的结果不能保持模型的细节特征, 本文算法相对较好。
3.5 参数的影响在选择对哪条边进行简化时, 通过K值来衡量边稳定性和错误代价之间的优先顺序。在本文实验中, 如果没有特殊说明, 则K取值为10。在初始阶段, 由于边去除的错误代价为0, 因此先根据边的稳定率进行去边, 以去除大量毛刺, 达到简化目的。随着简化程度的加深, 去边的错误代价不断累积, 边的去除代价逐渐由去边的错误代价与边的稳定率共同决定。当简化进一步深入时, 边的简化由其错误代价主导。
当K值较大时, 边的错误代价起作用的时间被延迟, 主要由边的稳定率决定该去除哪条边。当K值较小时, 边去除错误代价很快就能累积且直接影响简化边的选择。因此, 边的稳定率与边的去除错误代价在简化过程中起作用的时间主要由K决定。在本文中, 当K取10时, 提取的骨架鲁棒性较好。
当使用三维中轴进行骨架提取时, 主要涉及3个参数:在初步简化过程中, 基于中轴半径算法的中轴球半径阈值λ、中轴边长度阈值η, 以及在使用改进的QEM方法过程中的参数K。在本文实验中, 若不加说明, 则λ取0.1, η取0.002, K取0.000 35。
4 结束语本文提出一种基于中轴变换的骨架提取算法, 并将其应用于二维图像与三维图形的骨架提取中。使用中轴变换方法计算原始中轴, 通过改进的QEM方法, 简化提取原始中轴上的骨架特征。实验结果表明, 该算法能够有效地提取简洁、鲁棒的骨架特征, 二维骨架在极端简化情况下仍能保持良好的稳定性。下一步将尝试提高骨架的平滑性和简洁性, 并将其运用到三维模型重构中。
[1] |
TAGLIASACCHI A, DELAME T, SPAGNUOLO M, et al. 3D skeletons:a state of the art report[J]. Computer Graphics Forum, 2016, 35(2): 573-597. DOI:10.1111/cgf.12865 ( ![]() |
[2] |
COSTA L F D, CESAR R M. Shape analysis and classification:theory and practice[M]. Boca Raton, USA: CRC Press, 2009: 220-234.
( ![]() |
[3] |
SUNDAR H, SILVER D, GAGVANI N, et al.Skeleton based shape matching and retrieval[C]//Proceedings of Shape Modeling International Conference.Washington D.C., USA: IEEE Press, 2003: 130-139.
( ![]() |
[4] |
ASLAN C, ERDEM A, ERDEM E, et al. Disconnected skeleton:shape at its absolute scale[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008, 30(12): 2188-2203. DOI:10.1109/TPAMI.2007.70842 ( ![]() |
[5] |
KUSTRA J, JALBA A, TELEA A. Computing refined skeletal features from medial point clouds[J]. Pattern Recognition Letters, 2015, 76: 13-21. ( ![]() |
[6] |
车武军, 杨勋年, 汪国昭. 动态骨架算法[J]. 软件学报, 2003, 14(4): 818-823. ( ![]() |
[7] |
GONZALES R, RAFAEL C, WOODS R, et al.Digital image processing[M].[S.l.]: Addison-Wesley Publishing, 2001: 440-441.
( ![]() |
[8] |
SHEN Wei, ZHAO Kai, JIANG Yuan, et al.Object skeleton extraction in natural images by fusing scale-associated deep side outputs[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2016: 222-230.
( ![]() |
[9] |
吕哲, 王福利, 常玉清, 等. 改进的形态学骨架提取算法[J]. 计算机工程, 2009, 35(19): 23-25. DOI:10.3969/j.issn.1000-3428.2009.19.008 ( ![]() |
[10] |
徐超, 肖潇, 骆燕, 等. 基于距离变换的新型骨架提取方法[J]. 仪器仪表学报, 2012, 33(12): 2851-2856. DOI:10.3969/j.issn.0254-3087.2012.12.031 ( ![]() |
[11] |
车武军.距离变换与中轴变换在变形问题中的应用研究[D].杭州: 浙江大学, 2003. http://cdmd.cnki.com.cn/article/cdmd-10335-2003123426.htm
( ![]() |
[12] |
CULVER T, KEYSER J, MANOCHA D. Exact computation of the medial axis of a polyhedron[J]. Computer Aided Geometric Design, 2004, 21(1): 65-98. DOI:10.1016/j.cagd.2003.07.008 ( ![]() |
[13] |
ARYA S, MOUNT D M, NETANYAHU N S, et al. An optimal algorithm for approximate nearest neighbor searching fixed dimensions[J]. Journal of the ACM, 1998, 45(6): 891-923. DOI:10.1145/293347.293348 ( ![]() |
[14] |
PUDNEY C. Distance-ordered homotopic thinning:a skeletonization algorithm for 3D digital images[J]. Computer Vision and Image Understanding, 1998, 72(3): 404-413. ( ![]() |
[15] |
CAO Thanh Tung, TANG Ke, MOHAMED A, et al.Parallel banding algorithm to compute exact distance transform with the GPU[C]//Proceedings of the 2010 ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games.New York, USA: ACM Press, 2010: 83-90.
( ![]() |
[16] |
黄新, 郝矿荣, 丁永生. 基于矢状面和神经网络的三维人体骨架提取[J]. 计算机工程, 2012, 38(4): 14-16. DOI:10.3969/j.issn.1000-3428.2012.04.005 ( ![]() |
[17] |
FOSKEY M, LIN Ming, MANOCHA D. Efficient computation of a simplified medial axis[J]. Journal of Computing and Information Science in Engineering, 2003, 3(4): 274-284. DOI:10.1115/1.1631582 ( ![]() |
[18] |
CHAZAL F, LIEUTIER A. The "λ-medial axis"[J]. Graphical Models, 2005, 67(4): 304-331. DOI:10.1016/j.gmod.2005.01.002 ( ![]() |
[19] |
CHAUSSARD J, COUPRIE M, TALBOT H.A discrete λ-medial axis[C]//Proceedings of International Conference on Discrete Geometry for Computer Imagery.Berlin, Germany: Springer, 2009: 421-433.
( ![]() |
[20] |
MIKLOS B, GIESEN J, PAULY M. Discrete scale axis representations for 3D geometry[J]. ACM Transactions on Graphics, 2010, 29(4): 101. ( ![]() |
[21] |
SUN Feng, CHOI Y K, YU Yizhou, et al.Medial meshes for volume approximation[EB/OL].[2018-12-01].https://arxiv.org/pdf/1308.3917.pdf.
( ![]() |
[22] |
SUN Feng, CHOI Y K, YU Yizhou, et al. Medial meshes:a compact and accurate medial shape representation[J]. IEEE Transactions on Visualization and Computer Graphics, 2016, 22(3): 1278-1290. DOI:10.1109/TVCG.2015.2448080 ( ![]() |
[23] |
ZHU Yanshu, SUN Feng, CHOI Y K, et al. Computing a compact spline representation of the medial axis transform of a 2D shape[J]. Graphical Models, 2014, 76(5): 252-262. DOI:10.1016/j.gmod.2014.03.007 ( ![]() |
[24] |
THIERY J M, GUY É, BOUBEKEUR T. Sphere-meshes:shape approximation using spherical quadric error metrics[J]. ACM Transactions on Graphics, 2013, 32(6): 1-11. ( ![]() |
[25] |
LI Pan, WANG Bin, SUN Feng, et al. Q-MAT:computing medial axis transform by quadratic error minimization[J]. ACM Transactions on Graphics, 2015, 35(1): 1-16. ( ![]() |
[26] |
李盼.基于二次误差最小化的中轴变换简化研究[D].北京: 清华大学, 2015. http://cdmd.cnki.com.cn/Article/CDMD-10003-1016712969.htm
( ![]() |
[27] |
FARAJ N, THIERY J, BOUBEKEUR T.Progressive medial axis filtration[C]//Proceedings of SIGGRAPH Asia 2013 Technical Briefs.New York, USA: ACM Press, 2013: 1-4.
( ![]() |
[28] |
TANG Meng, GORELICK L, VEKSLER O, et al.Grabcut in one cut[C]//Proceedings of IEEE International Conference on Computer Vision.Washington D.C., USA: IEEE Press, 2013: 1769-1776.
( ![]() |