中机外洋工程狡计扣问院有限职守公司插吧插吧网,湖南 长沙
收稿日历:2023年3月30日;托福日历:2023年6月30日;发布日历:2023年7月7日
摘要
测绘时刻的高速发展,使得地舆空间三维模子的数据收罗更为简陋与高效,基于大范围三维模子的数据的空间分析是发掘三维模子价值的迫切利用点。何如高效地检索所感酷好的指标模子,是进行三维空间分析的基础。本文基于八叉树与R树构造O & R树,收尾空间模子的快速索引,并在此基础上,通过序列化的二进制模子数据存储,收尾了外存空间中三维模子坐标数据的快速检索。本文通过履行数据考据了循序的可行性,可为空间分析功能的迷惑提供三维模子的检索基础,并可为大范围三维GIS系统迷惑,以及相应专科系统迷惑提供模仿。
要道词
空间索引,八叉树,R树,大范围模子,动态模子检索
Fast Index and Dynamic Retrieval Method of Large-Scale Vector Models Based on Octree and Rtree
Wenhui Zhou, Shiyang Liao, Hao Li
China Machinery International Engineering Design & Research Institute Co., Ltd., Changsha Hunan
Received: Mar. 30th, 2023; accepted: Jun. 30th, 2023; published: Jul. 7th, 2023
ABSTRACT
The rapid development of surveying and mapping technology has made the data collection of 3D geospatial models simpler and more efficient. Spatial analysis based on large-scale 3D models is an important application point for discovering the value of 3D models. How to efficiently retrieve the target model of interest is the basis for three-dimensional space analysis. This paper constructs an O & R tree based on the Octree and Rtree to realize the rapid indexing of the spatial model. On this basis, through the serialized binary model data storage, the fast retrieval of the coordinate data of the 3D models in the external storage space is realized. The feasibility of the method is verified by actual data, can provide a basis for retrieval of 3D models for the development of spatial analysis functions. This method can provide reference for the development of large-scale 3D GIS systems and the development of corresponding professional systems.
Keywords:Spatial Index, Octree, Rtree, Large-Scale Models, Dynamic Model Retrieval
Copyright © 2023 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
1. 序文
三维模子是咱们在计较机造谣寰宇中重建现实场景的迫切技能 [1] ,跟着测绘科学时刻与计较机时刻的高速发展,如:歪斜照相 [2] 等时刻,当今的三维模子获取正在变得容易,然则数据范围亦然更仆难数,变得极其稠密 [3] 。计较机可视化时刻的发展,使得三维可视化渲染武艺变得愈加强劲,当今仍是有诸多循序收尾这些模子的动态渲染 [4] ,然则仅收尾模子的渲染不及以粗犷咱们对三维模子的诉求,基于模子的空间分析才能更进一步体现模子的价值,然则要基于这稠密的三维模子进行空间运算,快速且高效地模子索引与模子数据的检索是咱们必须最初处治的问题。
模子索引是三维模子查找时至关迫切的时刻,在三维索引时刻中,最常见的三维空间索引循序有网格、四叉树 [5] 和八叉树 [6] 等,这些数据结构不错将三维空间永别为不同的单位,从而使查询经由更高效;此外,基于图论的R树 [7] 索引,通过自安妥地调节索引结构以安妥不章程空间模子的索引循序,亦然三维空间索引中至关迫切的循序。然则这些索引循序在处理不章程空间模子的时候,经常因其结构原因,有着一些无法处理的局限,如八叉树会导致遍及的重迭冗尾数据,而R树在模子范围遍及加多的时候,索引后果出现较大的镌汰。对此,复合索引的形状不错在幸免某一索引弱点的时候 [8] ,确认各自的上风。
空间索引不错匡助快速找到所需要的三维模子的编号,然则基于此编号快速找到对应模子的三角形,及模子的动态检索,亦是咱们所需要良善的迫切问题。旧例的模子存储形状经常很难处治三角形的快速检索,如:OBJ、STL等模子,需要将模子的极点与面信息都读取到内存,方可凭证编号收尾三角形的获取,这极地面限定了模子的快速检索;此外,一些常见的模子瓦片数据,如cesium建议来的3d tiles瓦片数据 [9] ,其对数据进行瓦片处理,并树立了各瓦片数据的空间包围盒,这给模子索引与检索提供了可能,但其所独到的数据投影形状,使得咱们在进行数据获取的时候,还需要进行投影变换,给咱们数据获取带来了较大的迤逦。
为了省略同期模子快速检索与高效的模子检索,本文会通八叉树与R树索引酿成O & R树索引,从而收尾模子的快速空间检索,此外,通过序列化的二进制形状的三角形坐标数据存储,酿成不错快速检索三角形坐方针模子文献,从而收尾三角形的高性能检索与快速动态检索。
2. 八叉树 + R树索引
2.1. 八叉树
八叉树(Octree)是一种常用的空间分割数据结构,被平凡利用于计较机图形学、物理模拟、当然言语处理等畛域 [10] 。它的基本想想是将空间递归地永别为八个子空间,以此组成一棵树。通过不停的递归永别,最终不错将总共这个词空间永别红好多小块,每个小块都代表一个叶子节点。在地舆信息科学中,格林童话八叉树被平凡利用于空间数据检索等方面,不错加快对指标区域内的干系矢量面的查找,尤其适用于三维点云的快速检索,以及点云之间的聚拢运算。然则八叉树自己的章程永别的特点,无法适用于复杂的空间模子的永别,这使得其在以三角形为基础的不章程三维模子中利用中极其未便,为了省略掩饰总共模子,树立八叉树索引的时候,经常需要重复存储遍及的模子数据,这使得树结构中存在遍及的冗尾数据,况兼数据检测时会检测到遍及的无关数据,从而使得数据检索后果大大镌汰。
2.2. R树
R树是一种高效的空间索引数据结构,被平凡利用于地舆信息系统、数据库查询等畛域 [11] 。其基本想想是将空间对象递归地永别为多个矩形区域,以此构建出一棵树。通过不停地递归永别,最终不错将总共这个词空间永别红好多小块,每个小块都代表一个叶子节点。在地舆信息系统中,R树被平凡利用于点、线和面等空间对象的索引和查询。通过使用R树,不错快速地查找给定范围内的总共空间对象,从而收尾高效的地舆信息查询。
上述八叉树适用于三维点云快速索引,然则,无法处理苟且形态三维模子的空间索引,这使得八叉树的适用范围较为局限;比较八叉树,R树可弥补其弱势,用于苟且复杂模子的快速检索(如以三角形组成的空间曲面模子),然则R树的结构较八叉树更为复杂,当模子范围加多的时候,R树的索引深度与重迭都会增大,而查找都是从根节点运行,侦察的分支数与节点数都会大范围加多,使得索引的后果不尽东谈主意。本文在实践中发现,当模子范围达到20万三角形时,R树索引构建与检索就需要消耗较多的时辰。
2.3. 八叉树 + R树索引
为了兼容八叉树索引的高效,以及R树索引的适用性,本文将八叉树与R树组合酿成O & R (Octree and Rtree)树索引,构建适用于大范围矢量模子的空间索引。O & R索引履行上不错看作念一棵荒谬的八叉树,该八叉树的叶子结点指向一棵与其对应索引空间干系联的R树(图1),以在大范围空间内通过八叉树快速过滤,以普及检索后果,在局部通过R树精准检索,以减小检索经由中的冗尾数据。
在此模子搜索结构中,八叉树的检索后果要远高于R树,因此,R树的快速检索是本索引告成的要道,R树的检索后果与面片范围加多并非呈线性关系,因此,本搜索结构需要处治R树搜索节点上所包含的最大面片数阈值的问题,亦即八叉树瓦解经由中,叶子节点上所包含的最大的面片数为几许的问题。在R树建就地,若其模数目小于此阈值,则树结构永别太过细碎,若模子数目大于此阈值,则R树检索后果大大镌汰,本文在此基于实验教学领受模子数目阈值为30,000。
3. 模子快速检索
当空间模子的范围达到一定进度的时候,仍是不可能将其沿路读取到内存空间中进行计较,一者需要大范围的时辰进行数据读取,二者在计较机内存有限的情况下,内存空间将无法容纳总共的模子数据,因此需要一种省略在外存中快速检索模子的模子快速检索的战略,本文通过将模子以二进制形状存储在文献之中,然后在读取数据的时候,以文献指针快速定位到模子数据,从而收尾数据的快速检索。
图1. O & R树
3.1. 模子存储
基于上述的O & R树,不错快速检索到所需要的模子面片的索引号,因此,只需要省略在模子面片的索引号的基础上,快速收尾模子数据的检索即可收尾指标区域处模子数据的快速检索。基于此研究,需要模子数据以高度结构化的形状进行存储,同期研究到文本文献形状的数据存储在读取的时候,以读行的形状亦无法快速收尾数据定位,因此,本文领受一种二进制形状的三角形数据存储,具体存储设施如下:
1) 获取三角形中的三个极点的数据,将每个极点所包含的x、y、z坐标数据齐迁移为二进制数据形状,本文的坐标数据齐以双精度浮点形状进行存储,因此,每个坐标值将迁移为8个字节的二进制数据;
2) 将每个三角形的数据,按照原始的三角形的点位限定,并按照x、y、z的限定,以二进制形状将数据输出到指标文献中,因为每个坐标值占用8个字节空间,每个极点将占用24字节,每个三角形将占用72字节的数据空间。
基于此存储模式,每个三角形的占用空间一致,可粗犷结构化的数据存储条款。
3.2. 模子快速检索
基于此模子数据存储形状,领受文献指针的形状,可凭证三角形的索引号快速定位到模子对应三角形数据的位置,由于每个三角形的存储空间为72字节,因此,关于索引号为n的三角形的空间肇始位置为:
L = ( n − 1 ) × 72
通过退换文献指针的肇始位置,读取接下来的72字节的内容,按照每8个字节转机为双精度浮点数的章程,取得9个坐标值,即可获取指标三角形对应的数据。由于本文实验中采取C++言语收尾,因此,此处领受fseek循序收尾三角形数据定位,具体循序(图2)描写如下:
1) 最初通过文献指针掀开一个文献,此时文献指针指向文献的首端;
2) 然后通过上述公式计较指标三角形对应的文献位置,通过fseek循序将文献指针迁移到对应的位置;
3) 然后通过memcpy循序获取接下来的72字节内容;
4) 终末将此二进制内容见识为对应的三角形坐标值,即可取得指标三角形数据。
图2. 模子快速检索
4. 算法考据
通过上述时刻决议,将中国南边某地区的歪斜照相测量模子进行循序测试,研究到本文循序并不需要瓦片组织形状的歪斜照相模式,因此,本文所领受的测试模子为软件导出来的不进行瓦片永别的OBJ模子,即进行了二级永别,然则二级节点为仅包含一个概括模子的OBJ模子,而不再是层级结构的瓦片形状数据,在此结构中,模子包含共1,678,938个三角形。
基于此歪斜照相模子自己的组织结构,本文在一个八叉树根节点的基础上,将这些模子分为21个二级子节点,然后,在罢休每个叶子节点上不逾越30,000个三角形的基础上,对每个二级节点在进行子节点永别,最终得到了204个八叉树叶子结点,即204个R树根节点。在此数据的基础上,本文通过计较向此歪斜模子上进行高程投射计较,针对不同范围的点数,本文对算法进行了时辰统计,时辰统计表1,凭证统计已矣可知,本文算法的单点检索,不错抑制在3毫秒内,10,000个点的高程投射计较仅26秒多,极大粗犷了咱们在工程面孔中关于高程投射计较的条款。
表1. 计较时辰与计较点数关系表
凭证此时辰统计,本文绘图了其干系度弧线,弧线绘图如图3,可见计较时辰与计较点数呈现线性正干系性,标明算法具有较强的鲁棒性。
图3. 计较时辰与计较点数的关系
5. 论断与瞻望
测绘时刻的高速发展,使得在计较机寰宇中重建丰富的现实场景变得容易,然则,大范围模子在供三维展示之余,在数据运算时模子的检索却存在诸多瓶颈,本文概括八叉树与R树酿成O & R树,可收尾模子的高性能的检索,并基于序列化的二进制模子的存储,可收尾模子的高效索引与快速的模子检索,主要包括:
1) 基于O & R树的索引模式,不错幸免八叉树的结尾冗尾数据,也不错幸免R树的索引已矣过于稠密,从而收尾三角形数据的快速检索;
2) 基于序列化的二进制模子存储神情,可幸免在获取定向三角形数据的时候,需要读取总共的三角形数据,可大大普及数据的精准检索后果;
3) 此两个循序的使用不错使指标区域三角形数据的检索变得高效,从而使得运算瓶颈不再存在于模子的查找中,使得计较资源不错更多分拨于需要进走运算的场所。
固然本文收尾模子的快速检索与高效动态检索,然则本文建议的形状并不成无缺兼容现行的主流的模子形状,后续拟在现存的模子形状的基础上,作念更深刻的会通,从而使得本文的循序具有更高的适用性与推论性。
致谢
感谢望城经开区投资诞生集团有限公司的张三秀女士在本文图表绘图、著作用词修改,以及干系英文翻译中提供的建议与匡助。
情色调教著作援用
周文辉,廖诗扬,李 浩. 基于八叉树与R树的大范围矢量模子的快速索引与动态检索循序Fast Index and Dynamic Retrieval Method of Large-Scale Vector Models Based on Octree and Rtree[J]. 测绘科学时刻, 2023, 11(03): 184-190. https://doi.org/10.12677/GST.2023.113020
参考文献插吧插吧网