首页 / 专利库 / 电脑图像 / 视锥体裁剪 / 一种大规模倾斜摄影模型组织与调度方法

一种大规模倾斜摄影模型组织与调度方法

阅读:620发布:2020-05-08

专利汇可以提供一种大规模倾斜摄影模型组织与调度方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于大规模倾斜摄影模型的组织与调度方法,对倾斜摄影模型数据进行模型数据层级划分,结合各层级的简化程度,确定各层级的简化模型数据和模 型材 质文件,生成不同层级的模型文件;对各层级的模型文件进行分 块 ,生成不同层级的分块模型数据,采用OCT编码记录瓦片,生成Json索引文件;根据选取的视 角 和视点生成四棱 视锥体 区域,结合索引文件,调取视锥体区域内的分块模型数据;根据视点、视角变化匹配当前视锥体区域,更新对应视锥体区域的模型数据。本发明在数据分层分块后建立数据索引和树形数据结构,便于进行数据快速 定位 和有效管理;通过预存取、三级缓存等调度策略,提高了模型数据加载与 渲染 的效率,拓展了三维GIS的数据加载与 可视化 的能 力 。,下面是一种大规模倾斜摄影模型组织与调度方法专利的具体信息内容。

1.基于大规模倾斜摄影模型的组织与调度方法,其特征在于,包括如下步骤:
步骤1、对倾斜摄影模型数据进行模型数据层级划分,结合各层级的简化程度,确定各层级的简化模型数据和模型材质文件,生成不同层级的模型文件;
步骤2、对各层级的模型文件进行分,生成不同层级的分块模型数据,采用OCT编码记录瓦片,生成Json索引文件;
步骤3、根据选取的视和视点生成四棱视锥体区域,结合索引文件,调取视锥体区域内的分块模型数据;
步骤4、根据视点、视角变化匹配当前视锥体区域,更新对应视锥体区域的模型数据。
2.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤1中,引入QEM模型简化算法,根据层级越低数据简化程度越高的原则,进各层级模型数据的简化。
3.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤1中,生成各层级模型材质文件的具体方法为:
首先对每个三角面,利用共线方程式计算三个顶点在已完成定向的影像中的位置,若三个顶点都在影像辐范围内,则该影像纳入此三角面的可视影像集合;
然后采用三维碰撞检测技术进行遮挡检测计算,并剔除存在遮挡的影像,生成预选影像集合;
之后综合最优分辨率和初始拍摄角选择最接近的影像作为初始纹理;
最后根据三角网格的连续块提取相应坐标的矩形外包纹理,即得该层级的最终纹理图。
4.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤1中,将由不同层级的简化模型数据和模型材质文件合并生成的不同层级的模型文件,转换为B3dm数据格式。
5.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤2中,基于四叉树分块理论进行数据分块对各层级的模型文件进行分块。
6.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤2中,基于四叉树分块理论和八叉树分块理论进行模型文件分块,针对高于设定阈值的层级基于八叉树分块理论进行模型文件分块,其余层级基于四叉树分块理论进行模型文件分块。
7.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤2中,使用Json对象来组织每个节点对应不同的地理数据信息,生成的Json索引文件包括模型包围体数组BoundingVolume、层级加载模式Refine、视点误差GeometricError、子层级模型结构信息Children和分块瓦片编码UniqueID,其中BoundingVolume为此数据块的外部几何包围体,根据数据块的中心坐标和几何信息得到;Refine分为重叠和覆盖两类,根据具体要求设置;GeometricError与缩放层级对应,层级越高,GeometricError越小,最终叶节点GeometricError为0;叶节点无Children节点,其余节点均含有Children节点。
8.根据权利要求1所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤4中,除了获取用户当前视锥体的移动,进行数据检索外,还对下一视锥体可视空间进行预测,并将数据提前从存储区预取至缓存区中,当用户操作视角产生变化时,根据视点及视角的变化匹配当前视锥体区域,再根据视锥体的可视区域更新对应的模型数据。
9.根据权利要求8所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤4中,预取操作分为缩放预取、平移预取和基于历史操作的数据预取,分别描述如下:
(1)缩放预取:缩放操作后,视锥体的上下左右四个侧面范围不变,近裁剪面与裁剪面到视点的距离发生变化,此时只需视点距离的变化预测缩放及缩放级别,预取对应层级瓦片数据,并更新缓存区;
(2)平移预取:场景平移操作后,视锥体的整体向东北西北等八个方向的其中一个变化,根据历史操作预测平移的方向和步长,并重构视锥体,检索视锥体下的瓦片数据进行预取,并更新缓冲区;
(3)基于用户操作的数据预取,将用户历史操作与视点轨迹关联,建立数据预测模型,即知识库,通过当前行为与知识库匹配,预测下一步的可能性。
10.根据权利要求8所述的基于大规模倾斜摄影模型的组织与调度方法,其特征在于,步骤4中,引入三级缓存机制和动态缓存策略,更新锥体区域的模型数据。

说明书全文

一种大规模倾斜摄影模型组织与调度方法

技术领域

[0001] 本发明涉及地理空间信息可视化技术,具体涉及一种大规模倾斜摄影模型组织与调度方法。

背景技术

[0002] 大规模倾斜摄影三维模型能够快速构建、传递庞大的地物信息,在智慧城市规划建设、空间地理勘测、城市应急抢险和灾后重建中有着重要价值。但是高精度倾斜摄影三维模型拥有极高的点密度及数据网格,数据规模大,难以快速加载和流畅渲染
[0003] 目前常采用动态单体化重建技术对倾斜摄影三维模型进行优化,如《倾斜摄影测量三维重建中纹理映射的研究》(杨争艳.倾斜摄影测量三维重建中纹理映射的研究[D].成都理工大学,2017)通过细节层级模型(Levels of Detail,LOD) 来降低数据的复杂度,减少一次性渲染的几何图形数量,并对重建后的倾斜摄影纹理进行重映射。该方案在一定程度上提高了加载速度,但是在GIS平台下存在冗余加载,易造成显示卡顿、重附加载等问题。

发明内容

[0004] 本发明的目的在于提供一种大规模倾斜摄影模型组织与调度方法。
[0005] 实现本发明目的的技术解决方案为:一种基于大规模倾斜摄影模型的组织与调度方法,包括如下步骤:
[0006] 步骤1、对倾斜摄影模型数据进行模型数据层级划分,结合各层级的简化程度,确定各层级的简化模型数据和模型材质文件,生成不同层级的模型文件;
[0007] 步骤2、对各层级的模型文件进行分,生成不同层级的分块模型数据,采用OCT编码记录瓦片,生成Json索引文件;
[0008] 步骤3、根据选取的视和视点生成四棱视锥体区域,结合索引文件,调取视锥体区域内的分块模型数据;
[0009] 步骤4、根据视点、视角变化匹配当前视锥体区域,更新对应视锥体区域的模型数据。
[0010] 本发明与现有技术相比,其显著优点在于:1)在数据分层分块后建立数据索引和树形数据结构,便于进行数据快速定位和有效管理;2)通过预存取、三级缓存等调度策略,提高了模型数据加载与渲染的效率,拓展了三维GIS的数据加载与可视化的能附图说明
[0011] 图1是本发明基于大规模倾斜摄影模型的组织与调度方法的流程图
[0012] 图2是本发明数据预处理的流程图。
[0013] 图3是本发明数据组织的流程图。
[0014] 图4是本发明数据调度的流程图。
[0015] 图5是本发明数据显示优化的流程图。

具体实施方式

[0016] 下面结合附图和具体实施例,进一步说明本发明方案。
[0017] 如图1所示,基于大规模倾斜摄影模型的组织与调度方法,包括如下步骤:
[0018] 步骤1、对倾斜摄影模型数据进行模型数据层级划分,结合各层级的简化程度,确定各层级的简化模型数据和模型材质文件,生成不同层级的模型文件,如图2所示,具体步骤如下:
[0019] 步骤1.1、层级划分:根据GIS平台的缩放级别,对倾斜摄影模型数据进行模型数据层级划分;
[0020] 步骤1.2、模型数据简化:对不同层级进行相应程度简化,层级越低,数据简化程度越高。具体引入QEM(Quadric Error Mactrics,二次误差测度)模型简化算法对输入模型的三角网进行边折叠。对每次折叠产生的模型误差进行估计,即计算折叠代价,选取折叠代价最小的边作为一次简化操作,重复既定简化操作以达到当前层级用户要求的简化程度,生成简化后的模型数据;
[0021] 步骤1.3、纹理重映射:步骤1.2对模型进行几何简化后进行纹理重映射,恢复模型纹理属性信息。对简化后的模型数据,首先对每个三角面,利用共线方程式计算三个顶点在已完成定向的影像中的位置,若三个顶点都在影像辐范围内,则该影像纳入此三角面的可视影像集合;然后采用成熟的三维碰撞检测技术进行遮挡检测计算,并剔除存在遮挡的影像,生成预选影像集合;之后综合最优分辨率和初始拍摄角选择最接近的影像作为初始纹理;最后根据三角网格的连续块(拥有相同初始纹理),从纹理影像提取相应坐标的矩形外包纹理,多个矩形纹理进行打包和更新纹理坐标,得到该层级的最终纹理图;
[0022] 步骤1.4、数据纹理合并:将生成的不同层级模型数据和对应的纹理图合并转换为B3dm(Batched 3D Model允许批量的多样性的3D模型)数据格式。
[0023] 步骤2、对各层级的模型文件进行分块,生成不同层级的分块模型数据,采用OCT编码记录瓦片,生成Json索引文件,如图3所示,具体步骤如下:
[0024] 步骤2.1、数据分块:基于四叉树分块理论进行数据分块对各层级的模型文件进行分块。为了取得更好的效果,针对高于设定阈值的层级,基于八叉树分块理论对对应层级的模型文件进行分块。例如对于20层的模型文件,1-17层采用四叉树分块理论进行数据分块,每一层的模型被分割为2n×2n个模型块;18-20 层基于八叉树分块理论进行数据分块,每一层的模型被分割为2n+1×2n+1个模型块 (n代表当前层级大小)。
[0025] 步骤2.2、瓦片数据编码:分块后的瓦片数据采用OCT编码进行唯一标识。数据块基于四叉树的部分,采用四进制形式的OCT编码,包含了平面位置信息:西北、西南、东南或东北。当模型精度过高,进行八叉树扩容后,改为八进制形式的OCT编码,平面位置信息改为空间位置信息:上下层的西北、西南、东南或东北。利用OCT编码,易于确定父节点子节点的信息,更容易建立LOD数据结构。
[0026] 步骤2.3、建立索引:索引文件在数据编码和分块过程中同步生成,使用Json 对象来组织每个节点对应不同的地理数据信息,Json索引文件包括模型包围体数组BoundingVolume、层级加载模式Refine、视点误差GeometricError、子层级模型结构信息Children和分块瓦片编码UniqueID,其中BoundingVolume为此数据块的外部几何包围体,根据数据块的中心坐标和几何信息得到;Refine分为Add (重叠)和Replace(覆盖)两类,根据具体要求设置;GeometricError与缩放层级对应,层级越高,GeometricError越小,最终叶节点GeometricError为0;叶节点无Children节点,其余节点均含有Children节点。
[0027] 步骤3、根据选取的视角和视点生成四棱视锥体区域,结合索引文件,调取视锥体区域内的分块模型数据;
[0028] 本发明采用四棱锥可视空间,透视空间具有视点、视线、近裁剪面和远裁剪面,在平、垂直和深度加入限制,能够模仿人类视野观察地形地貌,通过视锥体获取二维平面的可视区域投影范围。通过索引文件定位视锥体区域范围内数据并进行调取加载,包含在可视范围内的瓦片加载对应模型数据,否则不加载模型数据,供后续渲染显示。
[0029] 步骤4、根据视点、视角变化匹配当前视锥体区域,更新对应视锥体区域的模型数据;
[0030] 由于倾斜摄影模型在交互时数据需要实时展示,所以除了获取用户当前视锥体的移动,进行数据检索外,还可以对下一视锥体可视空间进行预测,并将数据提前从存储区预取至缓存区中,进而减少数据实时加载的时间。
[0031] 当用户操作视角产生变化时,视锥体的视点变化后,可视空间也会发生变化,根据视点及视角的变化匹配当前视锥体区域,再根据视锥体的可视区域更新对应的模型数据。预取操作分为缩放预取、平移预取和基于历史操作的数据预取,分别描述如下:
[0032] (1)缩放预取:缩放操作后,视锥体的上下左右四个侧面范围不变,近裁剪面与裁剪面到视点的距离发生变化,此时只需视点距离的变化预测缩放及缩放级别,预取对应层级瓦片数据,并更新缓存区。
[0033] (2)平移预取:场景平移操作后,视锥体的整体向东北西北等八个方向的其中一个变化,根据历史操作预测平移的方向和步长,并重构视锥体,检索视锥体下的瓦片数据进行预取,并更新缓冲区。
[0034] (3)基于用户操作的数据预取,将用户历史操作与视点轨迹关联,建立数据预测模型,即知识库。用户操作属性包含视点变化的操作时间、视点位置、操作类型及停留时间。通过当前行为与知识库匹配,预测下一步的可能性。
[0035] 数据预取、浏览器加载过程中都需要优秀缓存策略提升图形系统性能。数据缓存通过将优先调取的数据存放在数据调度流程中离浏览器近的缓存区中,可以便于快速检索并加载到场景中,降低外存储区的访问频率,来优化显示效率。本发明中,引用三级缓存机制,开发了GIS平台下的动态缓存策略,在场景变化时从缓存区中动态剔除无关数据,加载缓存数据。
[0036] (1)引用三级缓存机制:一级浏览器缓存、二级内存缓存、三级文件缓存,不同的缓存模块控制相应的缓存区,最终传到到主模块渲染管线来管理绘制。
[0037] (2)动态缓存策略:基于HTML的浏览器的网络地理信息系统(WEBGIS), 首先判断是否具有当前请求的三维模型数据与纹理的缓存,若当前Web相关数据存在缓存,再判断数据是否发生变化,有变化则请求加载新数据,并更新缓存数据。当前场景发生操作变化后,监听器对场景变化响应场景更新机制,剔除过时的缓存数据。完成场景变化时,系统自动绘制视锥体区域内模型数据,并缓存可见范围内的三维模型数据与纹理。
[0038] 处理优化的倾斜摄影模型数据在浏览器端能够流畅渲染加载及随视角变化更新显示。
[0039] 实施例
[0040] 为了验证本发明方案的有效性,进行如下仿真实验。
[0041] 基于大规模倾斜摄影模型的组织与调度方法具体实现步骤如下所述。
[0042] 输入:初始高精度倾斜摄影模型数据及相应的地理空间信息文件,此实验以 Obj模型文件、Png和Mtl模型材质文件为例。
[0043] 步骤1:对初始高精度倾斜摄影模型按下述步骤进行数据预处理:
[0044] 步骤1.1:将倾斜摄影模型Obj文件按照缩放层级越低,简化程度越高的原则,用1.2步骤进行模型简化及分层。
[0045] 步骤1.2:利用引入的QEM模型简化算法对高精度倾斜摄影模型进简化。指定0-20层的简化程度,通过计算折叠代价管理简化程度,重复边折叠操作和当前层级用户要求的简化程度对比,总共生成0-20层不同简化程度的倾斜摄影模型Obj文件。
[0046] 步骤1.3:对模型材质文件处理。综合考虑不同层级简化程度和拍摄角,设定权值,得到每个层级的模型材质文件。
[0047] 步骤1.4:将不同层级Obj模型数据及模型材质文件转换为B3dm(Batched 3D Model允许批量的多样性的3D模型)数据格式。
[0048] 步骤2:将生成的层级模型数据分块,通过OCT编码建立具有树结构的LOD 数据,生成索引文件:
[0049] 步骤2.1:使用模型分割工具对每层模型文件进行切割分块,1-17层每层切割了2n×2n个模型块,18-20层每层分割了2n+1×2n+1个模型块,在可视化工具下当前层级模型块能完整拼成倾斜摄影模型;
[0050] 步骤2.2:通过OCT编码,每递增一层叠加相应层对应的块编码,以此唯一编码瓦片号,生成了当前层的每个瓦片地理数据信息的xml文件。
[0051] 步骤2.3:使用combine脚本文件遍历所有节点,进行数据组织生成Json索引文件。索引文件中的Json对象每个节点地理数据信息包括:根节点Root,模型包围体数组BoundingVolume,层级加载模式Refine,视点误差GeometricError,子层级模型结构信息Children,分块瓦片编码UniqueID。通过层级模型建立起具有树结构的LOD数据组织。
[0052] 步骤3:将索引文件加载到GIS系统,解析Json索引文件结构,加载倾斜摄影模型数据,测试用户操作视角后更新模型数据显示:
[0053] 步骤3.1:在网络地理信息系统(WEBGIS)后,用户通过选取Root根节点数据,能通过经纬度信息调整相机的视点和视角,通过当前视点误差加载相应层级模型。
[0054] 步骤3.2:当用户操作视角产生变化时,通过观察当前系统的帧率(FPS) 值和模型加载完成所需时间来测试效果。
[0055] 步骤4:系统对模型显示渲染并进行动态优化:
[0056] 步骤4.1:根据视锥体在三维空间变化,进行数据预存取,将检测到的预测数据存入预测缓存区。预取判断分为缩放预取、平移预取和基于历史操作的数据预取。缩放预取通过判断缩放操作,预测下一层级大小,对瓦片编号进行增减操作。平移预取通过判断平移方向,预测同一层级该方向的瓦片编号。基于历史操作的数据预取在前两种预取判断基础上,加入知识库匹配,通过判断可能性来筛取瓦片。
[0057] 步骤4.2:加入动态缓存策略,引用三级缓存策略,在场景变化时动态剔除无关数据,加载缓存数据。
[0058] 输出:处理优化的倾斜摄影模型数据可以在浏览器端能够流畅渲染加载及随视角变化更新显示。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈