APP下载

虚拟地理环境中的数字表面模型构建方法

2022-11-23佟家兴王雪冰赵文博

河南科技 2022年20期
关键词:高程顶点坐标系

佟家兴 王雪冰 赵文博 于 航 张 昕

(1.天津市测绘院有限公司,天津 300381;2.百度在线网络技术(北京)有限公司,北京 100193;3.黑龙江省测绘科学研究所,黑龙江 哈尔滨 150081)

0 引言

近年来,随着国家全面推进实景三维中国的建设,虚拟地理环境(Virtual Geographic Environment,VGE)也进入到高速发展期。目前,虚拟地理环境所使用的实景模型与数字孪生应用之间仍存在着阻碍,虚拟地理环境还有很多潜在的应用价值[1]。在虚拟地理环境中,生成数字表面模型的技术是指通过对虚拟地理环境的现实模拟,借助分析建筑容积率、执行建筑分割等对数字表面模型的数据进行探索[2-4]。该技术打破了实景模型“具形不具用”的瓶颈,为虚拟地理环境和实景三维中国的建设发展提供技术参考。

本研究采用深度图来反演数字高程,并构建数字表面模型,该方法能有效解决利用射线法在虚拟地理环境中生成数字表面模型存在的速度慢、精度差、易受模型异构影响等问题,从而获取三维场景中的数字高程和纹理信息。该方法已成功应用于天津市的实景三维建设中,具有较高的实用价值。

1 虚拟地理环境

虚拟地理环境是一种通过虚拟环境和地理学来研究地理环境现象与规律的数字技术[5]。该技术通过对地理信息科学和计算机虚拟环境进行融合,从数字层面上还原了真实世界的物理实体和空间的关系,成为数字地球、数字孪生城市等概念中的重要支撑。现实世界中的物理实体是虚拟地理环境中研究的一个重要内容,而将物理实体投射到虚拟环境中的可靠载体就是数字三维模型[6-7]。数字三维模型是一种通过借助相关存储介质来存储自身信息,并在计算机系统中能稳定还原的数字载体,数字表面模型就是其中一种。

1.1 数字虚拟技术

数字虚拟技术是实现虚拟地理环境构建的重要支撑,其借助计算机图形学理论,将抽象数字三维模型还原为具有真实空间观感的图形,并将其绘制于屏幕上的过程。在众多的数字虚拟技术平台中,以OpenGL框架为代表的三维图形开源代码的应用范围最广,也是本研究所采用的虚拟地理环境框架。

OpenGL框架的数字虚拟化过程是通过渲染管线来实现的。传入渲染管线的数字三维模型经图元装配、光栅化以及测试混合等处理后,结果会在计算机屏幕上呈现。其在执行管线流水作业的同时,也会对数字三维模型的各个顶点进行相应的空间变换,从而将原始的空间地理坐标变换为指定长宽的屏幕像素坐标。

1.2 数字表面模型构建方法

在虚拟地理环境中展示的数字三维模型是一种多源异构的数据集合,在物理实体数据的外业采集和内业处理过程中,为了确保数据在存储介质中的高可传递性,往往会采取离散式的数据存储方式,但该方式破坏了模型的整体性。为了解决这一问题,本研究提出一种在虚拟地理环境中构建数字表面模型的方法,该方法能有效消弭三维模型多源异构数据间的差异,并为后续研究提供便利。

本研究提出的数字表面模型构建方法的处理步骤如下。①设定观察相机拍摄虚拟地理环境的俯视图。记录并生成虚拟地理环境中三维模型的俯视纹理图片和深度图片。②由空间变换关系可反算出顶点的高程信息。将生成的二维地理平面信息和一维高程信息合成为每个顶点的空间三维地理坐标。③重新定义顶点的索引关系。由二维纹理信息和各个顶点的空间三维地理坐标来构建指定区域的数字表面模型,并输出处理结果。其中,在虚拟地理环境中,由屏上的二维图形可反算出每个顶点的真实地理坐标,即数字虚拟技术的逆变换。只要建立起数字三维模型在渲染管线中所经历的各种空间变换的数学关系,即可得到该数学关系的反算公式。

2 顶点的空间变换

2.1 空间变换关系

在虚拟地理环境中,数字三维模型从图元装配到被直观地展现给观察者的过程中主要进行了4种空间变换,如图1所示。

图1 顶点的空间变换过程

数字三维模型的创建一般是在模型空间中进行的。创建完成的数字三维模型要执行空间变换,并将自身坐标进行换算,从而添加到虚拟地理环境中。观察者借助相机在相机空间中所观察到的世界空间中的数字三维模型也经历了一次空间变换。至此,已执行的两次变换都是空间刚体变换,之后执行的投影变换和屏幕变换是为了将三维模型转换为二维图形,从而在计算机屏幕上显示出来,所执行的是一种非刚体空间变换。

为了能真实地描述理环境中的顶点在数字虚拟化过程中发生的变换,本研究引入模型坐标系、世界坐标系、相机坐标系以及屏幕空间坐标系等5个坐标系,分别对模型空间、世界空间、相机空间、投影空间以及屏幕空间进行表示[8]。

2.2 空间变换的数学表达

模型空间可用模型坐标系来表示,用于描述模型各个部件相对创建原点的位置关系,是一个局部相对坐标系。世界空间可用世界坐标系来表示,模型坐标系向世界坐标系的变换仅包含旋转和平移,故可用模型矩阵M来表示这种线性变换,见式(1)。

式中:R为模型坐标系各个坐标轴相对于世界坐标系坐标轴的旋转因子构成的矩阵;t为模型坐标系相对于世界坐标系的位置所构成的向量。

同理,世界坐标系转换为相机坐标系的线性变换可用相机矩阵V来表示,该矩阵所包含的变换仅有旋转和平移。

投影空间是相机空间向屏幕空间进行变换时的中间空间,相机空间向投影空间的变换可用投影矩阵P来表示,本研究使用正交投影生成数字表面模型,正交投影的投影矩阵见式(2)。

式中:r为投影视锥体中心与右侧面之间的距离;t为投影视锥体中心与上顶面之间的距离;n为投影中心与视锥体近平面之间的距离;f为投影中心与视锥体远平面之间的距离。

屏幕空间以计算机屏幕的左上角为原点,水平向右为x轴,垂直向下为y轴。投影空间中的坐标映射到屏幕空间的变换用视图矩阵W来表示。

令模型顶点在世界坐标系中的坐标为X,其投影到屏幕空间上的坐标为x,计算公式见式(3)。

式中:坐标向量X、x均为齐次形式。

2.3 空间变换的反算

由屏幕空间中的像素点可推导出其世界坐标,见式(4)。

在公式(4)的基础上,将深度信息与像素坐标进行结合,即可还原带有深度信息的屏幕空间坐标,进而实现在虚拟地理环境中对模型世界坐标的反算。

3 深度图与数字高程模型

深度图是在虚拟地理环境中,通过设定相机的相关参数来记录相机到模型每个顶点的距离,并最终生成的一种特定影像。可将深度图的生成过程理解为现实世界中通过激光扫描获得的特殊图像数据。这种数据与观察者的观察视角保持高度一致,所以能在技术层面上消弭不同模型之间的数据差异,这也为生成整体化的数字表面模型提供了理论支持。

本研究选用的数字高程模型(Digital Elevation Model,DEM)是一种对虚拟地理环境三维模型表面进行离散数学表达的方式,是某一区域中模型表面相对虚拟地理环境高程基准的三维向量,其数据结构见式(5)。

式中:Ei为模型表面某一离散点i的三维向量;(Xi,Yi)为该点的平面坐标;Zi为模型表面相对虚拟地理环境高程基准的高程;n为离散点的个数。

3.1 深度图反演高程的方法

深度图的生成过程是归一化坐标转换为像素灰度的过程[9]。假设三维模型表面的某一个顶点为P,则在模型坐标投影到投影空间后,会对投影空间内该点的深度值进行归一化处理,从而得到归一化的深度值d。而深度图一般以灰度值的形式进行存储,将深度值d映射到[0,255]的值域中,即可得到该点在深度图中的灰度值p。

将归一化的深度值d到深度图灰度值p的映射过程定义为f(d),则深度图灰度值反演归一化深度值的映射公式见式(6)。

将反算的归一化深度值d代入到公式(4)中,即可得到深度图像素点对应的模型顶点在世界坐标系中对应的三维向量。

3.2 数字影像及地理仿射变换

对城市级的深度图和纹理图生成而言,普通的计算机难以对这些生成数据进行连续处理。为解决这一问题,本研究提出将生成的纹理图映射为数字正射影像,将深度图及由深度图反演出的高程信息映射为数字高程影像的中间数据生成策略。

为了使生成的同尺寸、同分辨率的纹理图和深度图携带虚拟地理环境中的地理信息,要从这两张图像中提取出高度信息h和宽度信息w,并从深度图反演信息中获取左上角点地理坐标Xit和右下角点地理坐标信息Xrb,通过处理得到6个地理仿射变换参数。本研究所定义的地理仿射变换见式(7)。

式中:x、y为指定图像点的像素坐标;X、Y为指定图像点的二维地理坐标;g1、g4为图像沿x、y方向的地理像素分辨率;g2、g3为旋转参数,二者在本研究中均置为0;g5、g6为图像左上角点的像素中心的地理坐标。

生成的数字正射影像和数字高程影像是具有实际应用价值的测绘产品数据,能在一定精度下进行各种地理信息分析,可为后续的数字表面模型重构提供数据支持。

4 数字表面模型重构

4.1 顶点索引重构

本研究所述的数字高程模型中存储的是均匀的网格式三维顶点信息,为了能将存储的三维顶点信息还原为数字表面模型,笔者提出面向均匀网格的顶点索引重构方法。该方法能将正方形网格切分为同向均匀的三角网,从而通过索引重构对原始正方形网格中的各个顶点进行衔接,如图2所示。

图2 数字高程模型均匀网格及其构建的三角网

顶点索引重构算法的操作步骤如下。①选定数字高程网格的第一行作为顶点索引重构算法的初始生成行。②扫描数字高程网格某一生成行的各个顶点并进行记录,按“左上、左下、右上、右下”的顺序重新组织顶点三角面片的序列。③判断接续生成行的三角面片生成序列中是否包含上一生成行的顶点信息,若包含则执行顶点合并,否则继续执行。④循环执行步骤②和③,直至扫描到最后一个生成行,并结束算法的运行。

顶点索引重构算法中的顶点合并操作规则如下。重复顶点可保留序号较小的顶点、非重复顶点按“左上、左下、右上、右下”的顺序重新排列顶点序号。其操作过程如图3所示。

图3 顶点合并操作

重构顶点索引后,生成的数字表面模型符合图形学的拓扑关系和显示要求,如图4所示。

图4 基于顶点索引重构的数字表面模型

4.2 顶点纹理映射

顶点索引重构后,数字表面模型已具备基础的三维几何关系,为了能进一步丰富数字表面模型的纹理特征信息,要结合顶点索引,并依据数字正射影像的框标来定义每个顶点的纹理数组,从而完成顶点的纹理映射操作。将执行纹理映射后的数字表面模型显示在虚拟地理环境中,如图5所示。

图5 映射纹理后的数字表面模型

5 结语

采用本研究所述的方法,在天津市中心城区范围内构建了多张数字高程模型和数字正射影像,并生成市域范围内的数字表面模型。试验结果证明,该方法能有效解决虚拟地理环境速度慢、精度差和易受模型异构影响的问题,生成的数字表面模型能应用于实际工程生产中,且生成的数字高程模型等中间数据也可为虚拟地理环境中的水淹、限高等的分析提供有效的数据支撑。最后,利用顶点索引重构及纹理映射方法所生成的数字表面模型,其仍与数字正射影像及深度图的图像分辨率有强关联性,在后续的研究中可采用顶点简化策略来优化数字表面模型的顶点个数和存储占用。

猜你喜欢

高程顶点坐标系
场景高程对任意构型双基SAR成像的影响
独立坐标系椭球变换与坐标换算
海南省北门江中下游流域面积高程积分的应用
过非等腰锐角三角形顶点和垂心的圆的性质及应用(下)
过非等腰锐角三角形顶点和垂心的圆的性质及应用(上)
8848.86m珠峰新高程
坐标系背后的故事
三角函数的坐标系模型
基于二次曲面函数的高程拟合研究
求坐标系内三角形的面积