理论教育 水下地形测量:高效分层分块组织方案

水下地形测量:高效分层分块组织方案

时间:2023-09-28 理论教育 版权反馈
【摘要】:图10-9地形金字塔模型金字塔模型从顶层到底层,分辨率越来越高,表示的范围不变,可以实时满足海底地形三维可视化系统对不同分辨率地形数据的需求。如果没有金字塔模型,则必须在原始地形数据和纹理数据的基础上进行实时简化,以达到细节层次效果。

水下地形测量:高效分层分块组织方案

在海底地形三维可视化过程中,从数据组织的角度减少内存中地形数据量的途径主要有两个:一是海底地形数据分块,即将同一层面上的数据进行数据分割,划分成大小合适的地形数据子块,然后依据视域范围来决定哪些地形子块需要加入内存进行显示;二是海底地形数据分层,即对同一空间范围的海底地形数据创建多个不同分辨率的数据层,从而构建一个多分辨率的金字塔结构,然后依据视点相关或依据硬件性能自适应调用相应分辨率的层次模型进行绘制。

最简单的地形数据划分方法是均匀分块,即将整个地形平均划分成M×N个子块,每一个地形子块的大小相同(赵庆,2009)。该方法简单方便地解决了大规模地形数据不能一次调入内存的问题,但是当原始地形数据量太大时,划分出的地形子块数量非常多,需要的存储文件数量和数据冗余量都大大提高,还增加了CPU判断哪些地形子块需要载入内存的时间。因此,最常用的大规模地形划分方法是分层分块结合的数据组织形式,即使用分层的形式将原始地形划分成较小的地形子块。该方法将原始地形作为第0层,经过划分后的地形子块组成第1层,而对第1层的每个地形子块进一步划分从而得到第2层,依次类推。

地形数据的分层分块通常采用二叉树或四叉树结构来实现,树形结构的非叶子节点只是保存地形块的索引关系,而叶子节点才存储具体的地形数据(潘宏伟,2007)。如图10-9所示,分层分块的层次结构看起来像一个金字塔,因此该方案通常也被叫做金字塔模型(Asirvatham A,Hoppe H,2008)。该模型是一种多分辨率层次(multi-resolution hierarchy)模型,一般采用倍率方法构建,形成多个分辨率层次,是目前使用最为普遍的一种大地形组织方法。

图10-9 地形金字塔模型

金字塔模型从顶层到底层,分辨率越来越高,表示的范围不变,可以实时满足海底地形三维可视化系统对不同分辨率地形数据的需求。当地形实时显示时,为了实现细节层次,不同位置需要不同分辨率的地形块,地形数据金字塔可直接提供这些数据而无需“实时”重采样。如果没有金字塔模型,则必须在原始地形数据和纹理数据的基础上进行实时简化,以达到细节层次效果。金字塔模型虽然增加了数据的存储空间,但能够减少完成每帧地形绘制所需的总时间,分块的瓦片金字塔模型还能够进一步减少数据访问量,提高系统的I/O效率,从而提高系统的整体性能。

金字塔模型的一个关键环节是空间划分,即如何对金字塔进行纵向分层和横向分块。空间划分方式直接决定大规模地形数据的存储方式和索引方式,最终影响地形数据库的调度效率。常见的划分方式有:等间隔空间划分和等面积空间划分。等间隔空间划分的典型代表是四叉树算法,基本思想是用等间隔的面片进行空间划分,同一层面片间隔相等,相邻层面片的间隔倍率为2。著名的开源图形系统OSG(Open Scene Graph)就是通过四叉树构建金字塔模型来实现海量地形数据的支持。OSG采用了等间隔分层分块方案,如图10-10所示,遵循如下要求(赵敬红,2009):

①规定第K+1层的分辨率为第K层的2倍,这个2倍同时约束地形模型和纹理模型,金字塔每层横向和纵向块号的编排顺序是从左到右,从下到上。(www.daowen.com)

②规定低级别数据采样于高一级块,高分辨率块直接采样于原始数据,LOD(Level Of Detail)最大级别为30,最小为1。

③规定每个地形面片和纹理面片最大分别为64、256,而且每个面片长宽比例在0.717~1.414范围内。

图10-10 基于四叉树结构的地形分层分块组织

图10-11为某海底地形构建金字塔模型后的显示效果,地形块中右下角的1/4区域由于距离视点最为接近,显示为较为精细的地形块,而其他3/4地形由于距离视点较远,显示为较为粗糙的稍微粗略的地形块,网格线显得较为稀疏。

图10-11 基于四叉树组织的多分辨率地形表达(孟俊霞,2013)

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈