n维海量点云的R树形位多目标结点分裂方法

文档序号:10725093阅读:451来源:国知局
n维海量点云的R树形位多目标结点分裂方法
【专利摘要】本发明提供一种n维海量点云的R树形位多目标结点分裂方法,属于产品逆向工程领域,用于解决n维海量点云R树索引的构建问题,其特征在于:将点云文件中的点数据读取到线性表存储结构中;将线性表中的点数据逐一插入R树索引中;若结点发生上溢,则将上溢结点进行分裂;选取位置分布函数与形状分布函数均为最小化的轴为分裂轴;将上溢结点子结点按其包围盒中心点在分裂轴方向的坐标分量升序排序,并以非根结点中所允许的最小结点个数为限制条件产生候选分裂解集Q;获取Q的Pareto最优解集P,并将P中Silhouette值最大的值作为结点分裂结果。该方法可为逆向工程中实物表面海量采样数据构建R树索引,所构建的R树索引具有构建效率快、数据查询效率快等特点。
【专利说明】
η维海量点云的R树形位多目标结点分裂方法
技术领域
[0001] 本发明提供一种η维海量点云的R树形位多目标结点分裂方法,属于产品逆向工程 领域。
【背景技术】
[0002] R树索引结构能够很好地满足曲面重建过程中的空间点、三角面片、分片曲面等数 据的动态插入、删除、查询等操作需求,其广泛应用于CAD/CAM、地理信息系统、医学图像分 析、古建筑修复等领域。
[0003] 对于目前有关R树结点分裂算法的文献检索发现,Sellis等在学术期刊《(^〇?/7扣61· ?Scie/jce 上发表的学术论文"The R+_tree: A dynamic index for multi- dimensional objects"中提出的R+树将某一特定数据对象存储于多个叶索引结点中,避免 了兄弟结点之间的重叠,改善了R树的检索效率。Beckmann等在论文集《Proceedings of the 2009 ACM SIGM0D International Conference on Management of data))2009 : 799-812上发表的学术论文"A revised r*_tree in comparison with related index structures"中提出的RR*树结点分裂时根据结点包围盒初始中心加权偏移选取最优分裂 解,使得数据插入与空间查询效率明显提高。Theodoridis等在论文集《Advances in Databases and Information Systems》2002:149-162上发表的学术论文"Revisiting r-tree construction principles"中提出的CR树将传统的两簇分裂转变为多簇分裂,利用k 均值聚类算法获取分裂解,降低了分裂过程中的计算代价,提高了建树效率,不需要强制重 插等复杂技术。Sleit等在学术期刊《Journal of Information Science》2014,40(2) :222-236 上发表的学术论文 "Corner-based splitting: An improved node splitting algorithm for R-tree"中提出的CBS树分裂结点时以每个结点包围盒顶点为分类中心,利 用对角顶点聚类实现结点分裂,减少了候选解,提高了建树效率。
[0004]上述R树变体在结点分裂时对R树结构所采用的优化策略本质上是多目标优化策 略.对于分裂所得的两个或更多个新结点,至少需对它们的包围盒空间及包围盒之间的重 叠空间进行最小化优化。实践表明,这一多目标优化策略能够在一定程度上改善R树结构, 因此,可将结点分裂问题视为一个多目标优化问题来解决。现有的主流R树变体是将这一 多目标优化问题转换为一系列级联的单目标优化问题来解决的,即主观的对多个目标予以 主次划分,逐一优化。由于结点分裂过程中所涉及的各个优化目标并非彼此独立,它们之间 存在一定的相关性,采用级联的单目标优化方法的求解结果可能导致最优性只满足了某个 主要目标,而在其他目标上表现却很差。
[0005] 综上所述,对于结点分裂时的多目标优化策略已成为本领域技术人员亟待解决的 技术问题。

【发明内容】

[0006] 本发明的目的在于提供一种η维海量点云的R树形位多目标结点分裂方法,该方法 利用Pareto优化方法求解结点分裂多目标优化问题,并根据子结点的位置与形状信息进行 选取分裂轴前序优化,其技术方案为: 一种n维海量点云的R树形位多目标结点分裂方法,其特征在于步骤依次为:一、将点云 数据文件中的数据点添加到线性表存储结构中;二、将线性表中的数据点逐一插入R树索引 中,若结点发生上溢,则对上溢结点进行选轴分裂:a)将子结点按其包围盒中心点在各轴 向的坐标分量升序排序,并以下溢参数为限制条件产生各轴向的候选分裂解集;b)选取候 选分裂解集所占据空间最小的轴为分裂轴;c)获取分裂轴轴向的候选分裂解集;d)从c) 获取的候选分裂解集中选取结点包围盒空间区域与重叠空间区域均最小化的候选分裂解 为结点分裂结果。
[0007] 为实现发明目的,所述的η维海量点云的R树形位多目标结点分裂方法,其特征在 于步骤二中的步骤b)中,综合考虑上溢结点子结点的位置与形状信息实现分裂轴的选取, 其步骤具体为:(1)设上溢结点子结点包围盒中心点集{^· },初始化坐标轴a为1;(2)计
),da ))与(0, 0)距离夂,并将夂添加到集合}中;(5)使3增1,返回(2),直至a =/3为止,η为结点包围盒的维度;(6)选取{c/a }中&值最大的a轴为分裂轴。
[0008] 为实现发明目的,所述的η维海量点云的R树形位多目标结点分裂方法,其特征在 于步骤二中的步骤d)中,采用多目标优化策略从候选分裂解集中获取结点分裂结果,其步 骤具体为:(1)设候选分裂解集为0 ,7?, )},0中元素个数1,初始化集合T为空集 合,i为1;(2)计算^中候选分裂解的周长之和识+ 与重叠 ' ' ^ 度0;二Ψ(取忍(?)Γ?(Α))),Ψ(,表示结点包围盒周长,并将(仍,0i )添加到Γ 中;(3)使i增1,继续执行(2),直至i =1为止;(4)利用Pareto排序方法获取Γ的Pareto 最优解集r,a)初始化?为i;b)若3? e:r,且,使得>ΓΛ成立,则执行c), 否则,将Γ?添加到集合Γ *中,其中7? >ΓΛ表示/? >办且〇? >〇Λ ;c)使?增1,继续执行 b),直至? =1为止;(5)根据Γ与0的一一对应关系,获取0的Pareto最优解集0,(6) 从中选取Silhouette值最大的分裂解(Zi,7? i )作为结点分裂结果,Silhouette值计 算公式为:
式中#为非根结点中所允许的最大子结点个数,? (/;)为上溢结点子结点/;的 Silhouette指标,设Ε 士,则sl;/))计算公式为:
式中a (乃)表示心分别与h中其它结点构成包围盒的周长之和的均值,/7 (乃)表示乃 分别与见中结点构成包围盒的周长之和的均值。
[0009]本发明与现有技术相比,具有以下优点: (1) 形位多目标选取分裂轴使得结点分布与数据分布更具一致性,并对候选分裂解集 进行了简化,提高了 R树构建效率,且能够处理存在狭长包围盒的情况,依赖较少的构建参 数,因此本文结点分裂算法具有较强的数据适应性,易于实现; (2) 基于Pareto优化方法求解结点分裂最优解选取问题,使得将周长之和、重叠度能 够并行最优,改善了R树性能,提高了空间近邻查询效率; (3) 采用R树的形位多目标结点分裂算法构建R树,使得结点分裂更为合理、结点重叠 度明显减少、k近邻查询效率有所提高,对提高曲面重建过程中空间点、三角面片、分片曲面 等数据的处理效率具有重要的意义。
【附图说明】
[0010]图1是利用本发明方法为三维海量点云构建R树的程序流程图; 图2是一组含狭长结点包围盒的结点集示意图; 图3-图5分别是采用RR*树算法、CR树算法、本发明方法分裂图2中结点集的结果图; 图6是实施结点分裂试验所采用的实物表面样点一一佛像点云模型; 图7-图9分别是采用RR*树算法为不同规模的佛像点云模型构建R树的各内部索引结点 层及叶索引结点层的结点包围盒分布结果图; 图10-图12分别是采用CR树算法为不同规模的佛像点云模型构建R树的各内部索引结 点层及叶索引结点层的结点包围盒分布结果图; 图13-图15分别是采用本发明方法为不同规模的佛像点云模型构建R树的各内部索引 结点层及叶索引结点层的结点包围盒分布结果图; 图16-18分别是采用RR*树算法、CR树算法、本发明方法为不同规模的佛像点云模型构 建R树的内部索引结点的重叠度结果图; 图19分别是采用RR*树算法、CR树算法、本发明方法为不同规模的佛像点云模型构建R 树所需时间对比结果图; 图20分别是采用RR*树算法、CR树算法、本发明方法为不同规模的佛像点云模型构建R 树的k近邻查询时间对比结果图。
【具体实施方式】
[0011]下面结合附图及实施例对本发明作进一步说明。
[0012]利用本发明方法为三维海量点云构建R树的程序流程图如附图1所示,其中实现程 序所用语言为C。该程序主要模块包括将点云数据存储于线性存储结构中、根据上溢结点各 轴向的形位分布函数选取分裂轴、根据子结点包围盒中心点在分裂轴上的坐标分量升序排 序并以非根结点中所允许的最小结点个数为限制条件获取上溢结点的分裂候选解集0、获 取0的Pareto最优解集P并选取P中Silhouette值最大的分裂解作为结点分裂结果等。
[0013] 如图2所示,是一组含狭长结点包围盒的结点集示意图,分别采用RR*树算法、CR树 算法、本发明方法中的结点分裂方法分裂图2中的结点集,其中非根结点所允许的最小结点 个数m取0.2M,结果图分别为图3、图4、图5所示。对比图3-图5发现,相对于RR*树算法、CR树 算法,利用本发明方法分裂图2中的结点集得到的分裂结果的包围盒形状大小较为均匀一 致。
[0014] 如图6所示,是实施结点分裂试验所采用的实物表面样点一一佛像点云模型,采用 光栅投影式三维测量仪获取,点云点数为54,298,并对其进行不同程度的精简,精简因子分 别为0.2、0.4、0.6、0.8、1.0,获取5个点集」、5、匚、汐、五,设 >?={^,5,匚,/?,五}。 [0015]分别采用RR*树算法、CR树算法、本发明方法为S构建R树索引,其中非根结点所允 许的最大结点个数Μ取30,非根结点所允许的最小结点个数m取0.2M,图7-图9为利用RR*树 算法构建R树的内部索引结点层及叶索引结点层的结点包围盒分布结果图,图10-图12为利 用CR树算法构建R树的内部索引结点层及叶索引结点层的结点包围盒分布结果图,其中图 13-图15为利用本发明方法构建R树的内部索引结点层及叶索引结点层的结点包围盒分布 结果图。对比图7-图15发现,相对于RR*树算法、CR树算法而言,在佛像点云孔洞处,利用本 发明方法构建的R树在叶结点层无跨界包围盒及大包围盒出现,且各结点索引层的包围盒 大小较为一致,这就说明,与CR树、RR*树算法相比,本发明方法的结点分布与数据分布更具 一致性。
[0016] 如图16-18所示,分别是采用RR*树算法、CR树算法、本发明方法为S构建R树索引 的内部结点重叠度结果图,其中非根结点所允许的最大结点个数Μ取30,非根结点所允许的 最小结点个数m取0.2Μ。对比图16-图18发现,相对于RR*树算法、CR树算法,本发明方法的重 叠度值最小。
[0017] 分别利用RR*树算法、CR树算法、本发明方法为S所构建的R树索引结构,并运用c语 言的时间函数统计三种方法的R树构建时间,则这三种方法的时间对比结果图如图19所示, 其中非根结点所允许的最大结点个数Μ取30,非根结点所允许的最小结点个数m取0.2M。由 图19可知,相对于RR*树算法、CR树算法,本发明方法建树时间最小,说明本发明方法可有效 提高R树的构建效率。
[0018] 分别利用RR*树算法、CR树算法、本发明方法为S所构建的R树索引结构,为S进行k 近邻查询并运用c语言的时间函数统计三种方法的k近邻查询时间,则这三种方法的k近邻 查询时间对比结果图如图20所示,其中非根结点所允许的最大结点个数Μ取30,非根结点所 允许的最小结点个数m取0.2M,k取20。由图20可知,相对于RR*树算法、CR树算法,本发明方 法的k近邻查询时间最小,说明本发明方法可有效提高R树的空间近邻查询效率。
[0019]以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任 何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等 效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所 作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
【主权项】
1. 一种η维海量点云的財对形位多目标结点分裂方法,其特征在于步骤依次为:一、将点 云数据文件中的数据点添加到线性表存储结构中;二、将线性表中的数据点逐一插入財对索 引中,若结点发生上溢,则对上溢结点进行选轴分裂:a)将子结点按其包围盒中屯、点在各 轴向的坐标分量升序排序,并W下溢参数为限制条件产生各轴向的候选分裂解集;b)选取 候选分裂解集所占据空间最小的轴为分裂轴;C)获取分裂轴轴向的候选分裂解集;d)从 C)获取的候选分裂解集中选取结点包围盒空间区域与重叠空间区域均最小化的候选分裂 解为结点分裂结果。2. 根据权利要求1所述的η维海量点云的R树形位多目标结点分裂方法,其特征在于步 骤二中的步骤b)中,综合考虑上溢结点子结点的位置与形状信息实现分裂轴的选取,其步 骤具体为:(1)设上溢结点子结点包围盒中屯、点集},初始化坐标轴a为1; (2)计算<为^^,·在a轴的投影坐标,为 {<}中的最小值,怎W a )表示扭/严}的均值,似为上溢结点中的子结点个数;(3)计算,If为第i个子结点包围盒第a维的边长;(4)计算(a ), S (a ))与(0, 0)距离c/a,并将c/a添加到集合Wa }中;(5)使a增1,返回(2),直至a =n 为止,η为结点包围盒的维度;(6)选取Wa }中c/a值最大的a轴为分裂轴。3. 根据权利要求1所述的η维海量点云的R树形位多目标结点分裂方法,其特征在于步骤二 中的步骤d)中,采用多目标优化策略从候选分裂解集中获取结点分裂结果,其步骤具体为:(1) 设候选分裂解集为0 {(心,&· )},0中元素个数A,初始化集合T为空集合,i为1;(2)计 算0 J中候选分裂解的周长之和巧=守(丑巧,)) +平(扔友与重叠度。:;二及風王,)厂巧器;狱, 表示结点包围盒周长,并将,〇,' )添加到Γ中;(3)使i增1,继续执行(2),直 至i =A为止;(4)利用化reto排序方法获取Γ的化reto最优解集Γ *:a)初始化m为l;b) 若Βζ εΓ,且;? ± W,使得Γ.〉Γ。成立,则执行C),否则,将Γ.添加到集合Γ *中,其中 〉Γ。表示化〉化且〇。〉〇。;c)使m增1,继续执行b),直至m =Α为止;(5)根据Γ与0 的一一对应关系,获取0的化reto最优解集0 *;(6)从0 *中选取Si化ouette值最大的分裂 解Uj,7? j )作为结点分裂结果,Silhouette值计算公式为:式中#为非根结点中所允许的最大子结点个数,S (/;)为上溢结点子结点的 Si化ouette指标,设/.1: 贝^ (巧计算公式为;式中a (&·)表示分别与心中其它结点构成包围盒的周长之和的均值,6 (&·)表示 分别与7? j中结点构成包围盒的周长之和的均值。
【文档编号】G06F17/30GK106095968SQ201610437506
【公开日】2016年11月9日
【申请日】2016年6月20日
【发明人】孙殿柱, 聂乐魁, 李延瑞, 薄志成
【申请人】山东理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1