• 学术交流 国土综合整治三维模型碎片加载优化与调度
    发布日期:2022-06-23 03:47   来源:未知   阅读:

  澳门论坛六肖资料网址。国土整治作为一项国家战略, 是解决社会经济发展过程中土地利用问题的重要手段, 能有效促进国土空间优化和治理土地退化, 对于实施乡村振兴战略和推进生态文明建设具有重大意义。随着我国工业化、城镇化的推进, 生产、生活、生态之间矛盾日益凸显, 国土整治在全国各地广泛开展, 尤其是三维可视化技术的应用发展迅速。但对于国土整治业务而言, 三维模型存在数据量大、数据复杂且碎片化程度高等特点, 使得三维数据的存储管理和加载调度难度大, 制约了其在国土整治中的应用。本文针对国土整治三维数据, 提出了存储结构优化方法、三维模型碎片加载优化方法和三维模型调度优化方法, 并开展了试验验证和应用示范, 验证了本文提出的方法能够有效支撑国土整治中的三维可视化相关业务。

  国土整治是世界各国解决社会经济发展过程中土地利用问题的重要手段[1-2]。随着我国社会经济飞速发展,土地整治规模也逐步扩大[3-5],新时期的土地整治从小规模向集中连片推进,国家开展以乡镇为单元的全域土地综合整治、山水林田湖草沙生态保护修复试点工程和蓝色海湾整治项目,项目投资额度达到几亿元至上百亿元[6]。国土整治规模大、空间广、要素多[7-8],整治任务的全面升级对项目规划设计合理性、实施质量可靠性、监测监管有效性等提出新要求[9]。我国传统的土地整治规划设计采用CAD及二维GIS技术设计[10-12],绘制出二维平面图像,该方法工作效率低、成本高、数据处理能力弱,且无法准确、直观地描述地理要素[13],非专业人员理解困难。

  三维模型可用于各类空间分析和辅助决策,是集数据、结构、功能为一体的三维数据智能表达模型[14],可视化是在空间现象的表达中进行信息交流的重要手段,较之二维空间数据的图形可视化表达,三维模型的可视化有着更为丰富的内涵[15],将土地整治规划设计从二维转化为三维可视化形式,对项目区的情况进行全局展示,更有利于相关部门分析情况查找问题[16]。目前,三维可视化技术服务于国土整治,主要目标在于实现项目全域可看、问题可甄别、工程量可量算,能够辅助规划设计,达到有利于监管的目的;以及大比例尺与小比例尺的有机衔接,特别是大比例尺应能够满足工程尺度设计比例要求[17]。综合实际应用情况与预期目标,三维可视化技术在国土整治中的应用依然面临以下难点:①国土整治项目数据量大。我国土地综合类型丰富,包含山地、林地、沙地、水湖、田地、草原等[18],国土整治项目周期长、环节多、涉及部门广,各阶段数据成果通常服务于阶段目标的完成,因此,完成一个国土整治项目,会堆积大量的数据,如城乡结合部2.8 km2 5 cm精度的三维倾斜数据量约为100 GB。②三维模型碎片化程度高。三维空间数据模型管理复杂且分布不均,在三维地理信息管理系统中,需要动态调度和显示大量的城市建筑、地形地貌等三维模型,通常城市市区400 km2左右种类齐全的精细模型需要存储空间数百GB,管理模型碎片约几百万个,加上其他相关文件,需存储的文件数量通常达百万甚至千万规模[19]。目前,大多数三维可视化模型的数据管理仍然采用的是二维GIS的数据管理模式,只在可视化时以三维方式表达空间实体[20],然而以上两种数据的数据量都十分庞大,现有系统的数据管理与操作能力难以妥善应对[21]。③三维可视化引擎渲染加载慢。在三维模型加载过程中,庞大的数据体量导致三维可视化引擎渲染加载慢,影响其视觉效果,这也是三维模型在国土整治规划设计中面临的挑战[20]。

  改进三维可视化系统中数据的组织与管理方式是提高三维场景可视化效率的有效途径,在智慧城市等应用场景下,国内学者大多采用数据分层[22]和基于四叉树空间索引[23]对数据进行组织和管理。由于国土整治项目本身的特殊性和复杂性,常规方法并不适用于高碎片化和大数据量的三维场景渲染与加载。本文针对上述问题,分别从数据管理、模型加载两个角度提出优化算法,为国土综合整治的三维可视化提供了有效的技术手段。

  高精细化的国土整治三维数据结构复杂、数据量大、碎片多,不便于检索和计算。解决这一问题的基本思路是降低冗余数据、优化存储结构[24]。通常情况下,典型方法大多基于四叉树索引和数据分层管理。本文通过数据合并、点云抽稀、曲面重建,形成了相对完整的方法,其中包括通过改进的地形点云抽稀算法实现点云抽稀、通过改进的三维点云TIN构建算法实现曲面重建,以达到降低数据复杂度、优化模型存储结构的目标,为模型加载和调度做好数据准备。

  数据合并的难点在于减少冗余数据的同时需要保持原始图元的拓扑关系和纹理的精细程度。本文按照以下方法实现高效、可靠的数据合并。

  (1) 节点合并:数据合并从根节点开始,逐层深入,直到四叉树叶节点,如图 1所示。在根节点内部合并图元信息,外部则合并四叉树空间索引。

  (2) 几何图元合并:将顶点数组、顶点索引数组、法线数组、纹理坐标数组进行合并,同时对于顶点索引数组,需要改变其索引值。

  (3) 纹理合并:纹理合并的本质是栅格图像合并,图像合并可以是任意方向合并,为简化三维地形模型中纹理合并后的坐标计算,按照模型的空间位置进行纹理合并。

  (4) 纹理映射:为保证模型精细程度,在合并过程中重新计算了定点纹理坐标。

  (5) 空间索引合并:对模型信息的合并,节点是场景图形树的一部分,节点合并之后其对应的子节点也需要进行合并。场景图形树的核心是四叉树,因此空间索引的本质是四叉树的合并,先将父节点合并,再根据父节点找到其对应的子节点,将子节点按照对应象限进行合并,如图 2所示。

  (6) 子节点合并:与节点合并原理相同,将节点合并和空间索引合并迭代一次即完成子节点合并。值得注意的是,当节点为叶节点时该过程终止,即叶节点合并为节点合并迭代过程的终止条件。

  高密度的点云数据对复杂地形的描述起到较好的作用,但是对于较为平坦的区域,高密度的点云带来了大量的数据冗余,这些冗余数据将会直接影响数据存储、处理,三维模型加载速度和效率等。本文在保证地物形貌基本不变前提下进行抽稀,以降低存储难度、提升模型加载速度。

  本文的地形点云抽稀算法是在PCL抽稀算法的基础上进行改进,该算法融合了边界点判别算法、点的邻近三角形判别算法和局部地形平均算法,整体流程如图 3所示。

  边界点判别一直是点云处理中较难掌握的算法之一,主要难度在于点云的无序性[25]。在地形模型抽稀算法中,由于边界点对于维持地形模型基本形状至关重要,因此边界点判别算法准确性对于抽稀结果影响巨大。为解决此问题,本文基于地形模型的边界点判别算法(图 4)来提高边界点判别准确性,处理过程如下。

  (3) 判断投影后点周围的三角形是否闭合;若闭合,则该点为内点,否则为边界点。

  该算法主要是从地形模型中读取几何图元信息当中包含的三角网信息。利用该三角网信息,能够获得点周围的三角形,通过判断三角形是否闭合来判断该点是否为边界点,速度快,准确率高。具体如图 4所示。图 4的三维空间中,点A邻接4个三角形表达地形,均被投影到二维平面xoy中判断其闭合性。

  同时遍历顶点表和三角形表,对于每一个顶点,在三角形表中搜索其所在的三角形,该算法时间复杂度为O(m×n)。

  通过计算点周围的三角形围成的局部区域高程平均值,将该平均值与该点的高程值做比较,若大于给定阈值,则表明该点对地形贡献度较大,应保留;否则该点对地形贡献度较小,应删除。

  一般空间点云构建Delaunay三角网基本做法是先将点云投影到平面,得到空间点云与平面点集映射关系,再对平面点集进行基于Delaunay准则的TIN构建,得到平面点集拓扑关系,最后将该拓扑关系反射到空间点云。这种方式对于表面平滑的点云TIN构建,具备较好的效果。但是三维地形中,对于地物表面突变严重的区域,常规空间点云基于狄洛尼准则的TIN构建算法便不适用,且对于地物表面容易造成粘连的情况,如图 5所示。

  (1) 地形曲面重建优化:在常规空间点云TIN构建算法上加入了地形突变限制条件,以约束三角网构建。同时为提高算法效率,对表面平滑区域使用常规TIN构建算法,对表面突变区域使用限制性TIN构建算法。

  (2) 表面突变判别:突变判别是将常规TIN构建算法和限制性TIN构建算法结合起来而产生的中间算法,目的是判断目标区域是否存在表面突变,表面突变侧视如图 6所示。

  图 6中的直线为三角形相对于水平面的方向线,首先计算每个三角形平面法线,然后根据法线的方向余弦可以获取该三角形倾斜程度,最后根据三角形倾斜程度来判断该区域是否存在突变。

  (3) 限制性TIN构建算法:在突变区域,通过设定样本点搜索邻域大小限制、三角化内角大小限制、连接点距离限制等,可以约束三角形的构建(图 7)。

  三维可视化数据的加载速率及数据调度是影响用户使用体验的直接因素。针对国土综合整治应用中高精细海量三维数据模型加载速度慢、调度困难的问题,本文提出基于多路复用的三维模型碎片加载优化方法、基于事件驱动和非阻塞I/O模型的三维模型调度方法,以实现海量碎片数据的快速加载和高效调度。

  三维场景的构建是由上千乃至上万个碎片文件拼接而成,若每次只允许在一个TCP连接上发起一个请求,当客户端需要发起多次模型请求时,会存在严重的请求延迟。为了解决这一难题,本文采用多路复用和二进制分帧的方法对三维模型碎片加载进行优化。

  单一的连接是HTTP/2的主要优势,即使客户端的请求包含上百个资源,只需创建一条TCP连接即可。该方法能有效减少TCP握手带来的时延,并提高吞吐量。

  为了保证信息的完整性,使用单一连接在逻辑上被分成了很多部分。HTTP/2将要传输的信息分割成多个二进制帧,同一个请求或者响应的帧必须是有序的,保证FIFO的不同请求或者响应帧之间可以相互穿插,在另一端则根据流标识符和首部进行重新组装。HTTP/2的多路复用避免HTTP旧版本的队头阻塞问题,充分利用了网络带宽,提高了并发度(图 8)。

  本文通过新增二进制分帧层来改进传输性能,实现低延迟和高吞吐量。实现方法是在应用层和传输层之间增加一个二进制分帧层。在二进制分帧层上将所有传输的信息分割为更小的消息和帧,并采用二进制格式的编码,所有通信都在一个连接上完成,该连接可以承载任意数量的双向数据流。每个数据流以消息的形式发送,而消息由一或多个帧组成,这些帧可以乱序发送,最后根据每个帧首部的流标识符重新组装(图 9)。

  在客户端和服务器端使用“首部表”来跟踪和存储之前发送的键-值对,首部表在连接存续期内始终存在,对于相同的数据不再通过每次请求和响应发送;通信期间几乎不会改变的通用键-值对只需发送一次。

  国土综合整治三维模型可视化需要支撑多用户并发服务和展示应用,然而三维模型数据文件数目多,场景渲染速度受制于磁盘读取或网络请求速度[26]。为了实现最大程度的资源利用,当CPU处于闲置状态等待I/O操作时,释放处于闲置状态CPU。调度引擎把I/O操作等耗时较多的操作及相关回调一并交给I/O处理库去处理,而调度引擎继续执行后续代码。当获取到数据后,I/O处理库把事件回调函数放到事件队列里。当调度引擎检查事件队列时可执行该回调函数。

  各线程之间采用异步通信,使得相互之间通信不阻塞,以达到提升并发访问能力的目的。利用事件循环创建事件队列的方式,可以在释放线程的同时重新调用线程,在同等的硬件条件下,可以保证10万以上的用户同时访问而服务器不崩溃。异步处理I/O加速流程如图 10所示。

  基于这种方式,调度引擎可在资源消耗较低状况下去调度其他服务,在数据密集型分布式部署环境下可实现实时应用系统,达到数据处理服务和数据管理服务之间的松耦合。

  针对分割与重组后的三维模型数据是否能有效提高加载速度,本文设计了一种线性加权评价方法对其进行评价,从模型文件大小、模型文件数量、模型文件LOD级别、模型请求次数、带宽剩余能力、缓存能力、磁盘I/O能力、CPU处理能力、内存负载能力9个方面来考虑对三维模型加载速度的影响,定义负载能力函数模型。

  模型文件大小和数量与模型加载速度有直接关系,为保证整体的模型加载速度,需要在模型文件大小、模型文件数量之间达到一个平衡,设定不同的权重和参数。

  模型文件LOD级别可以反映对应区域的地形复杂度,级别越多说明该地区地形地物复杂度越高,则模型文件尺寸可能比较大[27]。

  网络带宽也会影响数据均衡,带宽使用率指实际使用运行的带宽大小与总带宽大小的百分比,使用率越低意味着网络越空闲。随机取两个时间点M1和M2,即可以计算出此段时间内总的数据流量

  式中, Di指i节点的网络带宽, n表示网络中数据节点的数量。某段时间内, 数据节点i的网络带宽剩余率如式(2)所示

  包括服务器缓存能力和终端缓存能力。缓存能力越强,则速度越快,但成本也越高,占用资源也越多。

  磁盘的读写能力对任务执行时间有直接影响,它是服务器存储策略的重要指标,用参数T表示,Tw表示磁盘的写速度,Tr表示磁盘的读速度,α为写操作相对于所有的读写操作所占比率。磁盘读写能力表示为

  CPU的使用率越低,则表示CPU的负载越小,该节点的CPU负载能力越强。CPU负载能力可用式(4)表示

  式中,CPU使用率表示CPU执行系统非空闲进程的时间CPU运行总时间的比例。

  内存占有率越低,则表示该节点的内存负载越小,内存负载能力越强。内存负载能力表示为

  式中,MEM使用率表示数据节点运行系统进程所使用的内存占节点总物理内存的百分比。

  本文采用线性加权法对三维模型数据分块和重组后的加载效率能力进行评价和预测,从而指导数据分块和重组的过程。

  由于上述各个度量指标对于总目标所占的重要程度不同,因此需根据各度量的重要性分别为其设定系数,并将其相加,得到总目标的值。可以得到基于性能指标的负载能力函数如式(6)所示

  式中,Pi表示综合加载能力,A1, A2, …, A9分别为9个衡量指标的权值系数(∑Ai=1),用于表示各指标对于模型数据加载效率能力影响的重要程度,此函数的权向量为ω=(A1, A2, A3, A4, A5, A6, A7, A8, A9)。

  根据权重产生方法的不同,多指标综合评价方法可分为主观赋权评价法和客观赋权评价法两大类。其中主观赋权评价法采取定性的方法由专家根据经验进行主观判断而得到权重,受人为因素干扰较大,在评价指标较多时,难以得到准确的评价。客观赋权评价法则根据指标之间的相关关系或各项指标的变异系数来确定权数进行综合评价,该方法综合考虑了各指标间的相互关系,根据各指标所提供的初始信息量来确定权重,能使评价结果更加精确。本文主要采用变异系数法来计算权向量的初始值。该方法的核心思想是:在指标评价体系中,取值差异越大的指标,越能反映被评价单位的差距。由于评价指标体系中的各项指标的量纲不同,不宜直接比较其差别程度,为了消除各项评价指标的量纲不同的影响,利用各项指标的变异系数来衡量各项指标取值的差异程度。各项指标的变异系数公式为

  式中, Vi是第i项指标的变异系数, 也称为标准差系数; σi是第i项指标的标准差; xi是第i项指标的平均数。各项指标的权重为

  通过变异系数权重计算公式计算出各项指标的各个权重值,判断不同复杂度三维模型数据在不同环境下的加载效率,可以对各种改进措施的结果进行加载效率预测与评价,指导三维模型调度均衡性的改进。

  (1) 通过筛选减少模型加载数。三维场景的构建是由成千上万个碎片文件拼接而成,碎片文件越多,模型加载越慢。本文通过筛选,减少模型的加载数量,达到提升模型加载速度的目的,如图 11、图 12所示。

  (2) 低复杂度区域提前加载最精细层,避免与高复杂度区域竞争加载资源。模型文件LOD级别可以反映对应区域的地形复杂度,级别越多说明该地区地形地物复杂度越高,则模型文件尺寸可能比较大,本文通过对低复杂度区域提前加载最精细层,避免与高复杂度区域竞争加载资源,提升模型加载速度(图 13)。

  (3) 利用优化后的数据分割提高数据并行加载效率,低复杂度数据合并降低服务请求次数。为降低数据复杂程度,方便数据存储提高模型加载速度,利用优化后的数据分割提高数据并行加载效率,低复杂度数据合并降低服务请求次数,如图 14、图 15所示。

  为验证本文所述方法的效果,对三维模型(数据量为8.43 GB)重组与优化迭代若干次,从迭代次数、文件数量、整图加载时间、显示效果之间进行比对结果见表 1,并对验证同等环境下三维场景加载2 s状况。

  从试验结果可以看出(表 1),随着瓦片数量、文件数量的减少,整图加载时间有明显提升,但是当瓦片数量降到8,文件数量降到134时,整图加载时间有略微延长,由图 16可知,固定2 s内,场景3加载情况最好,再次验证了瓦片数量并非越少越好,应寻找不同参数之间的平衡。

  整体而言,通过本文方法,可以准确预测场景均衡度,快速估计模型分割与重组参数,提高建模效率。

  为验证三维可视化技术在国土整治领域应用效果,利用倾斜摄影测量技术、高分辨率遥感技术、计算机三维建模技术、网络技术和实景三维技术构建了国土综合整治三维可视化软件平台,在此基础上开展了三维可视化应用示范,为国土整治提供了三维技术支撑和三维信息服务。

  本文研究选择了湖北蔡甸和河北涞源两个土地整治项目。湖北蔡甸是“高标准农田建设”项目,地形以平地为主,约28.1 km2,1∶1000倾斜航飞23 km2(三维模型精度10 cm),1∶500倾斜航飞5.1 km2(三维模型精度5 cm),解译了房屋、道路、水系、水田、林地、耕地等要素,提取相关指标,局部范围添加了单体化的BIM模型景观,数据总量大约100 GB。河北涞源县涞源镇曲村是“占补平衡”项目,项目地分布零散,总建设规模1.6 km2,项目区为浅山丘陵区,1∶500倾斜航飞3.3 km2(三维模型精度5 cm),解译了耕地、草地、交通运输用地、水域及水利设施等要素,数据总量大约10 GB。

  针对国土整治部门的三维可视化监管及验证需求,搭建了分布式三维可视化平台,编制了三维模型数据标准及三维数据操作服务规范,实现了二、三维数据的上传及自动发布,具备国土整治三维场景展示、规划数据三维展示及对比、土石方量算、坡度分析、量测、单体模型设计等功能。其平台架构如图 17所示。

  服务端基于Java开发,前端基于Cesium进行三维模型构建,后端部分服务模块使用了基于Docker容器的微服务架构,利用MongoDB存储三维实体数据,MySQL存储二维空间数据,Redis作为缓存服务器。如图 18—图 24所示。

  在测试环境(客户端:内存16 GB、I7、8核、3.6 GHz;应用服务器2台:内存32 GB、英特尔至强E5-2630 V4/2块;存储服务器1台:16 GB,4T存储;Nginx负载均衡)下,三维瓦片服务初始加载时间及高精度显示等待时间不超过5 s,三维数据分析及三维场景浏览操作响应时间不超过3 s,加载场景内数据时帧率不低于40,基于二维动态矢量服务动态生成三维要素初始加载时间不超过10 s,后续响应时间不超过5 s。从整个展示效果和流畅度等方面来看,完全满足了国土整治对三维可视化应用需求。

  针对网络环境下影响三维实景高效展示和调度的多种因素,本文对文件结构优化、存储架构、缓存机制、数据调度等方面进行研究,提出了合理有效的优化方式,使三维可视化模型能更好地服务于国土整治项目。国土整治涉及部门多,数据类型多样,推进三维可视化技术的应用,特别是针对不同用户的三维可视化需求,叠加各种业务类型的数据仍需进一步研究。同时,针对国土整治业务流程,制定相应的三维数据标准及三维数据服务操作规范,也有待深入研究。

  作者简介:刘小波,男,高级工程师,研究方向为遥感数据处理及应用、国土整治及信息化智能化管理

3d模型下载哪个网站好?3d侠模型网拥有30多万模型素材库免费为设计师提供家装,公装,场景,五金构件,交通工具及户外等3d模型下载.下载3dmax免费模型图片上3d侠模型共享网.