一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种大规模实景三维数据的智能合并方法与流程

2022-07-13 17:54:44 来源:中国专利 TAG:


1.本发明涉及实景三维技术领域,更具体地说它是一种大规模实景三维数据的智能合并方法。


背景技术:

2.倾斜摄影测量通过在同一飞行平台上搭载多台传感器,同时从一个垂直、四个倾斜等五个不同的角度采集影像,在完成内业的相关加工处理后,通常使用contextcapture等商业处理软件进行数据导出,形成实景三维模型数据,通常以osgb格式文件存储。
3.随着无人机航拍精度的不断提高,数据量随之不断增大,受实景三维数据的点云密度和网格精度的影响,运用contextcapture等商业软件导出的实景三维模型瓦片半径较小,瓦片文件夹数量增加,形成了大量的碎文件,导致实景三维数据加载和显示的效率低下。
4.为提升大规模实景三维数据的加载和显示效率,现有方法是采用特定的动态单体化重建算法,在一定程度上降低数据的几何图形数量和复杂度,但是存在数据处理稳定性不强、优化参数普适性不高等问题,还存在输出的数据格式不具备通用性,难以在不同的软件平台上应用。
5.因此,研发一种大规模实景三维数据的智能合并方法很有必要。


技术实现要素:

6.本发明的目的是为了提供一种大规模实景三维数据的智能合并方法,为一种通用的大规模实景三维数据智能合并方法,对标准osgb格式的实景三维数据进行处理,通过层级结构重映射、破碎瓦片合并、层级切换系数调整等优化操作,在保证数据通用性的前提下提高数据的加载和显示效率(本发明的输入数据是contextcapture等商业软件导出的通用数据,按照本发明技术方案进行智能合并优化后,可提高数据的加载和显示效率,且数据仍具有通用性);解决大规模实景三维数据处理时,因contextcapture等商业软件处理能力限制造成的瓦片半径较小、瓦片文件夹数据多、碎文件较多、加载和显示效率低下等问题。
7.为了实现上述目的,本发明的技术方案为:一种大规模实景三维数据的智能合并方法,其特征在于:包括如下步骤,
8.步骤1:根据原始实景三维数据瓦片的层级划分结构,分析应进行数据合并的最小层级和最大层级;
9.步骤2:定义最小层级和最大层级间构建瓦片金字塔的链接规则和命名规则,分析实景三维数据并构建瓦片的层级链接关系;
10.步骤3:在已构建的层级链接关系基础上,对层级间切换的距离或像素阈值开展优化计算;
11.步骤4:根据已构建的层级链接关系和切换阈值,对数据开展逐级合并,生成优化后的实景三维数据。
12.在上述技术方案中,在步骤1中,分析实景三维数据瓦片的层级划分结构,按照实景三维数据中每一个瓦片文件夹的层级组织结构分析应进行数据合并的最小层级和最大层级,确定最小层级和最大层级,合并的最小层级和最大层级的计算方法,包括如下步骤:
13.步骤1.1:从原始实景三维数据目录中随机抽取n个瓦片文件夹,n《=瓦片文件夹数量,文件夹按标准的实景三维模型规则命名,形如“tile_ 004_ 009”,文件名中的004和009代表生成的实景三维模型瓦片行列号;
14.步骤1.2:定义哈希表结构记录各文件夹中最小最大层级出现次数,类型为hash《层级,出现次数》,变量命名为lmin_hash、lmax_hash,用于统计各层级的出现频率并确定最优的合并层级;
15.步骤1.3:对选取的n个瓦片文件依次进行遍历,统计各瓦片文件夹中的最小和最大层级,并记录到lmin_hash、lmax_hash中;
16.步骤1.4:正序遍历lmin_hash,第li层级的出现数量为ci,若第li层级出现比率ci/n》75%,则最小合并层级lmin=li;
17.步骤1.5:逆序遍历lmax_hash,第lr层级的逆序累计出现数量为cr,若第lr层级累计出现比率cr/n》90%,则最大合并层级lmax=lr。
18.在上述技术方案中,在步骤2中,实景三维数据并构建瓦片的层级链接关系的计算方法,包括如下步骤;
19.步骤2.1:遍历实景三维数据瓦片文件夹,瓦片文件夹形如“tile_ 004_ 009”,根据瓦片tile_ x_ y命名规则识别各瓦片的行列号x、y标识;
20.步骤2.2:统计各瓦片的行列号,确定实景三维数据的行列范围xmin、xmax、ymin、ymax;
21.步骤2.3:定义当前遍历层级li=lmax,逆序遍历lmax至lmin层级,按照定义的瓦片链接和命名规则构建瓦片的层级链接关系;
22.瓦片的层级链接关系构建,具体包括如下步骤:
23.步骤2.3.1:定义合并倍率ti=2^(lmax

li 1),用于指定li层级下应合并的瓦片大小;定义合并编号xi=xmin,yi=ymin,通过二重循环对li层级的瓦片进行遍历;
24.步骤2.3.2:对xi、yi分别在xmin、xmax、ymin、ymax间进行遍历,递增步长为ti;建立合并瓦片与原始瓦片间的对应关系,合并后瓦片对应原li层级瓦片的范围为x方向xi~xi ti,y方向yi~yi ti;建立合并li层级瓦片与li 1层级瓦片的链接关系,按照一分四的方式进行链接,对应的四个瓦片在x和y方向上的编号分别为{xi~xi ti/2,yi~yi ti/2},{xi~xi ti/2,yi ti/2~yi ti},{xi ti/2~xi ti,yi~yi ti/2},{xi ti/2~xi ti,yi ti/2~yi ti};
25.步骤2.3.3:令li=li

1,若li》=lmin,跳转至2.3.1步骤;若li《lmin,则已完成了层级链接关系的构建。
26.在上述技术方案中,在步骤3中,对层级间切换的距离或像素阈值开展优化计算,包括如下步骤:
27.步骤3.1:定义层级间切换的调整系数lrate,用于调整实景三维数据不同层级切换的距离阈值;若lrate=1,优化后的数据加载阈值和原始数据一致;若lrate《1,优化后的数据将更早的加载高精度数据;若lrate》1,优化后的数据将在更近的距离阈值时加载高精
度数据;
28.步骤3.2:定义当前遍历层级li=lmax,逆序遍历lmax至lmin层级,根据已建立的瓦片链接关系优化层级切换阈值。
29.在上述技术方案中,在步骤步骤3.2中,根据已建立的瓦片链接关系优化层级切换阈值,具体包括如下步骤:
30.步骤3.2.1:获取li层级链接的li 1层级瓦片文件序列tiles_(li 1),并判断层级链接模式,如果是像素模式,执行步骤3.2.2;如果是距离模式,执行步骤3.2.3;
31.步骤3.2.2:计算li 1层级瓦片序列tiles_(li 1)加载像素阈值求和p(li 1),li层级瓦片加载像素条件阈值p(li)=p(li 1)/4.0*lrate;跳转并执行步骤3.2.4;
32.步骤3.2.3:计算li层级瓦片的半径radius(li),li层级瓦片加距离条件阈值r(li)=radius(li)*7.0*lrate;
33.步骤3.2.4:令li=li

1,若li》=lmin,跳转至3.2.1步骤;若li《lmin,则已完成了层级链接关系的构建。
34.在上述技术方案中,在步骤4中,根据已构建的层级链接关系和切换阈值,对数据开展逐级合并、生成金字塔层级的方法,包括如下步骤:
35.步骤4.1:按照计算的层级合并参数创建实景三维数据文件夹层级,并对可复用的数据进行拷贝操作;
36.步骤4.2:根据已构建的瓦片金字塔链接关系逐级进行顶点合并、纹理生合并、金字塔层级生成;
37.步骤4.3:构建实景三维数据根节点,作为数据加载的入口,方便进行快速数据导入。
38.在上述技术方案中,在步骤4.1中,按照计算的层级合并参数创建实景三维数据文件夹层级,并对可复用的数据进行拷贝操作,具体包括如下步骤:
39.步骤4.1.1:根据计算的合并层级lmin和lmax创建文件夹目录从lmin到lmax 1;
40.步骤4.1.2:将原始实景三维数据中层级li》lmax的瓦片复制到新建的lmax 1文件夹中。
41.在上述技术方案中,在步骤4.2中,根据已构建的瓦片金字塔链接关系逐级进行顶点合并、纹理生合并、金字塔层级生成,具体方法包括如下步骤:
42.步骤4.2.1:按照命名规则构建新瓦片,按链接关系对原始li层级瓦片进行顶点合并、纹理合并,形成合并后的顶点数组和纹理单元,并创建图形数据geode节点;
43.步骤4.2.2:按照计算的与li 1层级切换阈值,构造分页调度节点pagedlod,按照层级切换模式设置为距离或像素,当前距离或像素小于切换阈值,链接至li层级自身的图形数据;否则链接至li 1层级的图形数据。
44.在上述技术方案中,在步骤4.3中,构建实景三维数据根节点的,具体包括如下步骤:
45.步骤4.3.1:定义顶层切换系数toprate,用于调整与lmin层级的切换关系,根节点与lmin层级各节点的切换阈值r(top)=radius(lmin)*toprate;
46.步骤4.3.2:构造代理节点对lmin层级统一加载进行管理,当前距离大于顶层显示阈值时,不加载数据;当前距离小于顶层显示阈值时,加载对应的lmin层级数据进行显示。
47.上述*表示数学符号乘号。
48.本发明中的大规模主要指实景三维数据的数据量大、数据密度大(即数据量大于40gb),存在大量的碎文件(即顶层瓦片半径小于50米,瓦片文件夹数量大于2000个的文件)。
49.与现有技术相比,本发明具有以下优点:
50.(1)本发明所述方法针对实景三维的标准osgb数据格式,在原有的实景三维模型金字塔结构上进行优化处理,最大化利用了现有的数据成果,算法执行效率高;经过智能合并优化后的数据成果,完整保留了原有数据的几何和纹理信息,且在三维软件平台上的加载速度有显著提升效果;
51.(2)本发明所述方法的合并数据层级结构等参数是通过原始数据瓦片层级结构的自动统计分析计算所得,实现了数据智能合并的自动化(即通过算法分析实景三维数据的瓦片,自动确定可进行合并优化的参数,给出默认的合并层级参数,并进行智能合并,整个过程无需人工干预);
52.(3)本发明所述方法提供了基于距离或像素的实景三维数据层级切换模式,给出了切换阈值的优化计算方法,通过设定调整系数,可自定义精细层级数据加载的时机,灵活性更好、通用性更强,可以在不同的软件平台上应用(本发明导出的数据与contextcapture等商业软件导出数据的格式基本保持一致,可用在超图、中地数码、伟景行等公司的商业3dgis软件,或osgearth等开源3dgis软件中使用,并提升了加载和显示效率;克服了现有技术通常导出的数据为专有格式,并配合特定的三维显示程序使用,适用性小的缺陷)。
附图说明
53.图1是本发明一种大规模实景三维数据的智能合并方法的流程图。
54.图2是本发明对于原始实景三维数据中某一瓦片文件夹的结构划分与层级定义原理图。
55.图3是本发明定义的实景三维数据瓦片金字塔层级结构及命名规则示意图。
56.图4是本发明计算原始实景三维数据应进行合并的最小和最大层级算法流程图。
57.图5是本发明构建实景三维数据分级合并后不同层级间链接关系的算法流程图。
58.图6是本发明计算实景三维数据分级合并后不同层级间切换阈值计算的流程图。
59.图7是本发明根据已构建的链接关系和层级切换阈值进行逐级实景三维数据合并处理的算法流程图。
60.图8是本发明依据提出的实景三维数据智能合并方法开发形成的实景三维数据金字塔智能合并系统图。
61.图9是本发明实施例中实景三维数据处理前的文件目录结构图。
62.图10是本发明实施例中实景三维数据处理优化后的文件目录结构图。
63.图11是本发明实施例中原始数据的顶层瓦片三维可视化预览,并显示瓦片的包围盒。
64.图12是本发明实施例中实景三维数据处理优化后的顶层瓦片三维可视化预览,并显示瓦片的包围盒。
65.图13是本发明实施例中实景三维数据处理优化后的不同层级下实景三维数据瓦
片的调度结果图。
66.图13为优化后的数据,在不同三维视点距离下的截图。图13中的四个图,是运用本发明方法优化后,数据在不同三维视点距离下,分别加载l14~l17层级数据的显示结果和瓦片包围盒(在图13中,第一张图(左上图)显示的是大范围,第二张图(右上图)显示的是三维视点聚焦到河堤区域,第三张图(左下图)、第四张图(右下图)为进一步拉近三维视点,以显示更精细的层级)。通过图13可以看出,不同视野距离下,经本发明方法合并的瓦片数量为由多到少。
具体实施方式
67.下面结合附图详细说明本发明的实施情况,但它们并不构成对本发明的限定,仅作举例而已。同时通过说明使本发明的优点更加清楚和容易理解。
68.本发明对标准osgb格式的实景三维数据进行处理,通过层级结构重映射、破碎瓦片合并、层级切换系数调整等优化操作,在保证数据通用性的前提下提高数据的加载和显示效率;本发明的输入数据是contextcapture等商业软件导出的通用数据,按照本发明技术方案进行智能合并优化后,可提高数据的加载和显示效率,且数据仍具有通用性;克服了现有技术利用原有不同层级数据,但通过自定义索引文件、自定义的文件输出方式,并配合自有的显示模块进行加载,不具备通用性的缺陷,同时克服了现有技术没有利用原有的不同层级数据,仅使用最精细层级的数据,通过自定义的插值算法重新生成其它层级的数据,处理过程耗时较长、新生成的瓦片质量难以保证,且采用自有格式,导致不具备通用性的缺陷。
69.如图1所示,一种大规模实景三维数据的智能合并方法,包括如下步骤:
70.步骤1、分析实景三维数据瓦片的层级划分结构,实景三维数据中每一个瓦片文件夹的层级组织结构如图2所示,按照该结构分析应进行数据合并的最小层级和最大层级,确定最小层级和最大层级的算法流程如图3所示。
71.步骤1.1:从原始实景三维数据目录中随机抽取n个瓦片文件夹,n《=瓦片文件夹数量,文件夹按标准的实景三维模型规则命名,形如“tile_ 004_ 009”,文件名中的004和009代表生成的实景三维模型瓦片行列号。
72.步骤1.2:定义哈希表结构记录各文件夹中最小最大层级出现次数,类型为hash《层级,出现次数》,变量命名为lmin_hash、lmax_hash,用于统计各层级的出现频率并确定最优的合并层级。
73.步骤1.3:对选取的n个瓦片文件依次进行遍历,统计各瓦片文件夹中的最小和最大层级,并记录到lmin_hash、lmax_hash中。
74.步骤1.4:正序遍历lmin_hash,第li层级的出现数量为ci,若第li层级出现比率ci/n》75%,则最小合并层级lmin=li。
75.步骤1.5:逆序遍历lmax_hash,第lr层级的逆序累计出现数量为cr,若第lr层级累计出现比率cr/n》90%,则最大合并层级lmax=lr。
76.步骤2、定义最小层级和最大层级间构建瓦片金字塔的链接规则和命名规则如图4所示,并按照图5的算法流程分析实景三维数据并构建瓦片的合并层级链接关系。
77.步骤2.1:遍历实景三维数据瓦片文件夹,瓦片文件夹形如“tile_ 004_ 009”,根
据瓦片tile_ x_ y命名规则识别各瓦片的行列号x、y标识。
78.步骤2.2:统计各瓦片的行列号,确定实景三维数据的行列范围xmin、xmax、ymin、ymax。
79.步骤2.3:定义当前遍历层级li=lmax,逆序遍历lmax至lmin层级,按照定义的瓦片链接和命名规则构建瓦片的层级链接关系。
80.步骤2.3.1:定义合并倍率ti=2^(lmax

li 1),用于指定li层级下应合并的瓦片大小;定义合并编号xi=xmin,yi=ymin,通过二重循环对li层级的瓦片进行遍历。
81.步骤2.3.2:对xi、yi分别在xmin、xmax、ymin、ymax间进行遍历,递增步长为ti。建立合并瓦片与原始瓦片间的对应关系,合并后瓦片对应原li层级瓦片的范围为x方向xi~xi ti,y方向yi~yi ti;建立合并li层级瓦片与li 1层级瓦片的链接关系,按照一分四的方式进行链接,对应的四个瓦片在x和y方向上的编号分别为{xi~xi ti/2,yi~yi ti/2},{xi~xi ti/2,yi ti/2~yi ti},{xi ti/2~xi ti,yi~yi ti/2},{xi ti/2~xi ti,yi ti/2~yi ti}。
82.步骤2.3.3:令li=li

1,若li》=lmin,跳转至2.3.1步骤;若li《lmin,则已完成了层级链接关系的构建。
83.本发明中的最小层级和最大层级间构建瓦片金字塔的链接规则和命名规则为自定义的规则,基于标准的实景三维数据命名规则进行了扩展,标准文件如:tile_ 004_ 009,代表xy的行列号为4和9。此处的扩展规则记录了x和y方向上的合并瓦片范围,如tile_ 004007_ 009012,表示该瓦片对某层级x的4~7,y的9~12进行了合并。
84.步骤3、在已构建的层级链接关系基础上,对层级间切换的距离或像素阈值开展优化计算,算法流程如图6所示。
85.步骤3.1:定义层级间切换的调整系数lrate,用于调整实景三维数据不同层级切换的距离阈值。若lrate=1,优化后的数据加载阈值和原始数据一致;若lrate《1,优化后的数据将更早的加载高精度数据;若lrate》1,优化后的数据将在更近的距离阈值时加载高精度数据。
86.步骤3.2:定义当前遍历层级li=lmax,逆序遍历lmax至lmin层级,根据已建立的瓦片链接关系优化层级切换阈值。
87.步骤3.2.1:获取li层级链接的li 1层级瓦片文件序列tiles_(li 1),并判断层级链接模式,如果是像素模式,执行步骤3.2.2;如果是距离模式,执行步骤3.2.3。
88.步骤3.2.2:计算li 1层级瓦片序列tiles_(li 1)加载像素阈值求和p(li 1),li层级瓦片加载像素条件阈值p(li)=p(li 1)/4.0*lrate。跳转并执行步骤3.2.4。
89.步骤3.2.3:计算li层级瓦片的半径radius(li),li层级瓦片加距离条件阈值r(li)=radius(li)*7.0*lrate。
90.步骤3.2.4:令li=li

1,若li》=lmin,跳转至3.2.1步骤;若li《lmin,则已完成了层级链接关系的构建。
91.步骤4、根据已构建的层级链接关系和切换阈值,对数据开展逐级合并,生成优化后的实景三维数据,算法流程如图7所示。
92.步骤4.1:按照计算的层级合并参数创建实景三维数据文件夹层级,并对可复用的数据进行拷贝操作。
93.步骤4.1.1:根据计算的合并层级lmin和lmax创建文件夹目录从lmin到lmax 1。
94.步骤4.1.2:将原始实景三维数据中层级li》lmax的瓦片复制到新建的lmax 1文件夹中,这部分数据为可复用的瓦片层级。
95.步骤4.2:根据已构建的瓦片金字塔链接关系逐级进行顶点合并、纹理生合并、金字塔层级生成。
96.步骤4.2.1:按照命名规则构建新瓦片,按链接关系对原始li层级瓦片进行顶点合并、纹理合并,形成合并后的顶点数组和纹理单元,并创建图形数据geode节点。
97.步骤4.2.2:按照计算的与li 1层级切换阈值,构造分页调度节点pagedlod,按照层级切换模式设置为距离或像素,当前距离或像素小于切换阈值,链接至li层级自身的图形数据;否则链接至li 1层级的图形数据。
98.步骤4.3:构建实景三维数据根节点,作为数据加载的入口,方便进行快速数据导入。
99.步骤4.3.1:定义顶层切换系数toprate,用于调整与lmin层级的切换关系,根节点与lmin层级各节点的切换阈值r(top)=radius(lmin)*toprate。
100.步骤4.3.2:构造代理节点对lmin层级统一加载进行管理,当前距离大于顶层显示阈值时,不加载数据;当前距离小于顶层显示阈值时,加载对应的lmin层级数据进行显示。
101.实施例
102.为了验证本发明方案的有效性,进行如下实验。
103.一种大规模实景三维数据的智能合并方法具体实施步骤如下所述。
104.系统:基于本发明方案的算法流程,开发了实景三维数据金字塔智能合并系统,如图8所示,实景三维数据金字塔智能合并系统有3个组成部分,包括:目录设置、参数设置、进度信息。
105.其中目录设置填写原始数据地址和优化后的地址。
106.参数设置中设置有:(1)最小合并层级、最大合并层级。在填写原始数据目录后,依据本发明中的步骤1自动计算推荐层级。用户也可进行手动修改,并可通过层级计算按钮重新获取自动计算的推荐层级。(2)lod倍率系数,对应本发明步骤3中的“层级间切换的调整系数lrate”,用于调整精细层级的出现时机。(3)root倍率系数,对应本发明步骤4中“顶层切换系数toprate”。(4)复制无需合并的数据勾选框,对应本发明步骤4中,将原始实景三维数据中层级li》lmax的瓦片复制到新目录。
107.进度信息显示处理过程中的进度,在未开始处理时,显示预估的瓦片合并数量。
108.通过上述实景三维数据金字塔智能合并系统完成大规模实景三维数据的智能合并过程。
109.输入:一处使用5镜头高精度无人机拍摄的数据,使用contextcapture倾斜摄影处理软件生产实景三维模型数据,导出为标准osgb文件夹分片的形式。受制于软件处理能力及机器性能的影响,处理后的实景三维数据有3241个数据瓦片文件夹,数据量40.5gb,其目录结构如图9所示。
110.处理过程:利用本发明开发的实景三维数据金字塔智能合并系统按照本发明所述大规模实景三维数据的智能合并方法进行优化处理,优化处理过程如下:
111.步骤1:分析实景三维数据瓦片的层级划分结构,计算瓦片合并的最小层级和最大
层级。
112.步骤1.1:从原始实景三维数据目录中随机抽取500个瓦片文件夹,遍历并分析各瓦片文件夹中可优化的最小和最大层级,利用lmin_hash、lmax_hash记录对应结果。统计得到的最小层级中,13级出现的次数为24,14级出现的次数为476;统计得到的最大层级中,16级出现的次数为4,17级出现的次数为456,18级出现的次数为33,19级出现的次数为7。
113.步骤1.2:正序遍历lmin_hash,第li层级的出现数量为ci,第15层级出现的比率ci/n=476/500》75%,则最小合并层级lmin=14。
114.步骤1.3:逆序遍历lmax_hash,第lr层级的逆序累计出现数量为cr,第17层级的累计出现比率cr/n=(7 33 456)/500》90%,则最大合并层级lmax=17。
115.步骤2、根据计算的最小层级和最大层级,构建瓦片金字塔的链接规则和命名规则,形成瓦片的层级链接关系。
116.步骤2.1:遍历所有实景三维数据瓦片文件夹,根据瓦片文件夹tile_ x_ y命名规则识别各瓦片的行列号x、y标识,得出实景三维数据的行列范围xmin=0、xmax=76、ymin=0、ymax=68。
117.步骤2.2:定义当前遍历层级li=lmax,逆序遍历17(lmax)至14(lmin)层级,按照定义的瓦片链接和命名规则构建瓦片的层级链接关系,计算x方向和y方向的合并倍率,得出第17层的合并倍率为t17=2^(lmax

li 1)=2^(17

17 1)=2,第16层的合并倍率为4,第15层的合并倍率为8,第14层的合并倍率为16。
118.步骤2.3:按照x和y方向的合并倍率,第17层每4个原始瓦片合成一个新的数据,第16层每16个原始瓦片合并成一个新的数据,第15层每64个原始瓦片合并成一个新的数据,第14层每256个原始瓦片合成一个新的数据。同时建立不同新合成的瓦片l14~l17层级间的链接关系。
119.步骤3、在已构建的层级链接关系基础上,对层级间切换的距离或像素阈值开展优化计算。
120.步骤3.1:为了使处理后的数据如原始数据的层级切换阈值保持一致,定义层级间切换的调整系数lrate=1。
121.步骤3.2:定义当前遍历层级li=lmax,逆序遍历17(lmax)至14(lmin)层级,根据已建立的瓦片链接关系优化层级切换阈值。若层级链接模式为像素模式,获取li层级链接的li 1层级瓦片序列tiles_(li 1)加载像素阈值,对其求和为p(li 1),则li层级瓦片加载像素条件阈值p(li)=p(li 1)/4.0*lrate;若层级链接模式为距离模式,计算li层级瓦片的半径radius(li),li层级瓦片距离条件阈值r(li)=radius(li)*7.0*lrate。
122.步骤4、根据已构建的层级链接关系和切换阈值,对数据开展逐级合并,生成优化后的实景三维数据。
123.步骤4.1:根据计算的最小合并层级lmin=14,最大合并层级lmax=17,创建实景三维数据文件夹,包括l14、l15、l16、l17、l18,将原始实景三维数据中层级li》lmax的瓦片复制到新建的l18文件夹中,这部分数据为可复用的实景三维数据瓦片层级。
124.步骤4.2:根据已构建的瓦片金字塔链接关系逐级进行顶点合并、纹理生合并、金字塔层级生成。
125.步骤4.3:定义顶层切换系数toprate=49,链接至lmin层级,根节点与lmin层级各
节点的切换阈值r(top)=radius(lmin)*toprate,按照该阈值构建实景三维数据根节点root.osgb,作为数据加载的入口,方便进行快速数据导入。
126.处理结果:按照本发明的处理过程对输入的该实景三维数据进行处理后,处理结果的文件结构组织如图10所示。处理优化后实景三维数据文件的总数据量为41.2gb,各层级的瓦片数量为:22(l14层级)、72(l15层级)、250(l16层级)、885(l17层级)、3237(l18层级,后续层级根据原始数据分片调度)。
127.对比分析:与原始数据40.5gb的数据量相比,按照本发明处理过程优化后的数据量略微增加,主要新增了一些合并中间节点,但加载和加载和显示效率远大于原始数据。
128.利用openscenegraph图形库开发数据加载程序,在较远显示距离,显示原始数据和优化后数据加载的瓦片包围盒如图11和图12所示。图11为原始实景三维数据的加载结果,需要加载3237个瓦片产生大量破碎文件的读写和调度过程,耗时为1分30秒;图12为采用本发明优化后的实景三维数据加载结果,在顶层(l14层级)只需加载22个瓦片,耗时为4秒,大大提升了加载和显示效率。
129.图13展示了不同层级下的瓦片包围盒,在瓦片上用白色线框标识,体现了与图11原始包围盒的区别。图13显示的是数据的14~17层级,是运用本发明方法针对该数据进行合并后的层级。
130.原始数据在l14~l17层级均需加载3237个瓦片,瓦片数量多,耗时较长,仅加载l14层级就需要1分30秒。
131.而采用本发明优化的数据在各层级的瓦片数分别为:22(l14层级)、72(l15层级)、250(l16层级)、885(l17层级)。通过金字塔分级递进加载,减少了文件io次数,提高了加载速率。该数据测试得出l14层级加载仅需4秒,在l15~l7层级较原始数据也有不同程度的速率提升。图13显示了优化后的实景三维数据在l14~l17不同层级下的显示结果,根据本发明构建的层级间链接关系进行优化调度,提升了不同层级下的数据加载和显示性能。
132.图11展示了优化前的数据,图12~图13展示了优化后的数据。从图11-图13可以看出:优化前后数据本身的几何、纹理没有修改(完整保留了原有数据的几何和纹理信息),只是做了分级合并,在不同层级下加载不同合并程度的瓦片,较优化前提高了加载速度(本发明在三维软件平台上的加载速度有显著提升效果)。
133.可见,本发明的方法提出的自定义的数据合并策略,在保证结果数据通用性的前提下,能尽可能通过智能计算合并提升三维加载和显示速率。
134.其它未说明的部分均属于现有技术。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献