CN114092575B - 数字地球实时着色方法和装置 - Google Patents
数字地球实时着色方法和装置 Download PDFInfo
- Publication number
- CN114092575B CN114092575B CN202111408616.9A CN202111408616A CN114092575B CN 114092575 B CN114092575 B CN 114092575B CN 202111408616 A CN202111408616 A CN 202111408616A CN 114092575 B CN114092575 B CN 114092575B
- Authority
- CN
- China
- Prior art keywords
- tile
- data
- plot
- pixel
- digital earth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Remote Sensing (AREA)
- Image Generation (AREA)
Abstract
本发明提供一种数字地球实时着色方法和装置,该方法包括以下步骤:创建或获取数字地球DEM地块瓦片,基于数字地球DEM地块瓦片获得地块法线信息瓦片数据;根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片;针对可见DEM地块瓦片,基于地块顶点数据构建数字地球网格;针对DEM地块瓦片纹理,确定每一像素的海拔高度,并通过逐像素插值,基于预先生成的海拔高度配色数组数据得到各像素对应的配色;将地块法线信息瓦片作为纹理,获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线;基于得到的各像素对应的配色以及地块法线确定像素的最终颜色,并基于最终颜色进行数字地球着色。
Description
技术领域
本发明涉及三维地理信息系统数字地球仿真技术领域,尤其涉及一种数字地球实时着色方法和装置。
背景技术
数字地球是基于数字正射影像(Digital Orthophoto Map,DOM)和数字高程模型(Digital Elevation Mode,DEM)所构建,能够以三维方式漫游展示全球地形地貌,管理展示各类地理信息要素。数字正射影像一般指卫星图片,典型的数字地球三维渲染离不开卫星图片。但在某些应用领域,数字地球的卫星图片纹理可能会干扰和湮没关注点要素的显示。例如,在飞行仿真、作战训练仿真等领域,如果关注点是仿真实体的位置、姿态、全局态势和地形的起伏变化等信息,数字地球上的卫星图片由于其丰富的色彩,无法清晰展示地球的地形起伏变化,且会干扰关注点信息的清晰展现。晕眩图可以代替数字地球卫星图片,实现一种纯色彩的数字地球渲染效果,降低干扰,突出展现关注点信息。晕眩图是通过将数字地球地块的海拔高度、配色、法线等信息综合,生成的能够清晰展现地形起伏变化的色彩图片。晕眩图生成过程中,法线信息最重要,是评价算法优劣的核心,是影响最终渲染效果的关键。
目前,晕眩图一般由专业工具软件创建,因为数字地球地块数据量大,创建适用于数字地球的全球晕渲图片效率低、周期长。如果配色方案有改变,则整套数字地球晕渲图需要重新生成,这种基于晕渲图片的方式无法满足数字地球实时改变海拔高度配色的需要。在实时晕渲技术方面,一般根据地块DEM数据,在GPU中实时生成法线进行数字地球渲染,这种方式占用GPU计算资源,渲染效率低,实际应用中基本无法使用。目前法线贴图技术可以离线计算法线信息,以图片纹理形式将法线数据传输到GPU进行辅助渲染。但是当需要将数字地球各点海拔高度按比例增大或缩小,增强或弱化显示地球起伏变化时,常规法线贴图方法无法适应这种灵活变化的法线需求,也就无法渲染出数字地球色彩明暗度增强或弱化的效果。
因此,如何在数字地球无卫星图片情况下实现高效的着色渲染并基于海拔高度配色清晰、灵活地展示地形起伏变化,是一个尚待解决的问题。
发明内容
针对现有数字地球无卫星图片情况下的着色渲染问题,本发明提供了一种数字地球实时着色方法和装置,用于实现数字地球高效的配色,能实时改变数字地球海拔高度配色,实时生成和灵活改变地块法线,实现高效、清晰、流畅的数字地球无卫片渲染效果。
为实现上述目的,本发明采用了如下技术方案:
本发明的一个方面提供了一种数字地球实时着色方法,该方法包括以下步骤:
创建或获取数字地球DEM地块瓦片,基于数字地球DEM地块瓦片获得地块法线信息瓦片数据;
根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片;
针对可见DEM地块瓦片,确定地块顶点数据并基于地块顶点数据构建数字地球网格;
在构建的数字地球网格上,针对DEM地块瓦片纹理,确定每一像素的海拔高度,并通过逐像素插值,基于预先生成的海拔高度配色数组数据得到各像素对应的海拔插值配色;
将地块法线信息瓦片作为纹理,获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线;
基于得到的各像素对应的海拔插值配色以及地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色。
在本发明一些实施方式中,所述地块法线信息瓦片数据为地块法线贴图或者高程差瓦片形式的高程差数据;所述基于数字地球DEM地块瓦片获得地块法线信息瓦片数据包括:针对DEM地块瓦片中每一个数据点,基于其周围多个位置点的海拔高度计算当前数据点的上下点高程差和左右点高程差,基于所述上下点高程差和左右点高程差得到高程差数据,并存储为地块法线贴图或者高程差瓦片文件形式。
在本发明一些实施方式中,所述高程差数据为:高程差绝对值或高程差相对值;所述高程差绝对值包括所述上下点高程差和左右点高程差;所述高程差相对值包括上下点相对高程差和左右点相对高程差,所述上下点相对高程差由所述上下点高程差除以上下离散点间距离得到,所述左右点相对高程差由所述左右点高程差除以左右离散点间距离得到。
在本发明一些实施方式中,在所述地块法线信息瓦片数据为高程差瓦片文件形式的高程差相对值的情况下,所述方法还包括:对所述上下点相对高程差和左右点相对高程差调制为无符号字节数据,来降低高程差瓦片文件的大小。
在本发明一些实施例中,所述根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片包括:根据数字地球视点经纬度位置确定地块瓦片中心点;根据视点海拔高度确定可显示地块瓦片级别和范围;根据确定的地块瓦片中心点和级别和范围确定当前需加载的DEM地块瓦片文件和对应的地块法线信息瓦片,并进行动态加载。
在本发明一些实施例中,所述针对可见DEM地块瓦片,确定地块顶点数据并基于地块顶点数据构建数字地球网格包括:针对每个可见DEM地块瓦片,取部分数据点作为数字地球网格顶点数据,加载到GPU顶点着色器;在GPU顶点着色器,,对地块顶点数据进行坐标投影变换,从而生成数字地球网格。
在本发明一些实施例中,所述方法还包括:生成所述海拔高度配色数组数据,所述海拔高度配色数组数据包括一套或多套配色方案。
在本发明一些实施方式中,所述将地块法线信息瓦片作为纹理,获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线,包括:将地块法线信息瓦片作为纹理,对地块法线信息瓦片进行点采样,获取每像素法线信息数据;基于每像素法线信息数据解算出TBN切线空间坐标系下的T轴和B轴扰动数据;基于T轴和B轴扰动数据以及预先设定的比例控制参数计算使地块起伏增强或弱化的地块法线。
在本发明一些实施方式中,所述基于得到的各像素对应的海拔插值配色以及地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色,包括:基于预定的光照模型,根据光照颜色、光照方向,各像素对应的海拔插值配色和地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色。
本发明的另一方面,提供了一种数字地球实时着色装置,该装置包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该实时着色装置实现如前所述方法的步骤。
本发明的又一方面,还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前所述方法的步骤。
本发明实施例提供的数字地球实时着色方法和装置,能够在无卫星图片情况下实现数字地球高效、清晰、灵活、干净的地形渲染;通过离线生成与法线相关的地块法线信息瓦片,降低数字地球渲染时GPU工作负荷,提高数字地球渲染效率和流畅性;并且,能够实时生成数字地球相应海拔高度的配色,因而具备按海拔高度实时赋色能力;通过实时生成和改变数字地球地块法线数据,使数字地球渲染效果更加真实反映地形起伏变化,地形明暗变化效果更丰富和多变。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例中数字地球实时着色方法的流程示意图。
图2为本发明另一实施例中数字地球实时着色方法实现过程示意图。
图3为本发明一实施例中数字地球三维着色效果示意图。
图4为本发明一实施例中对图3的三维数字地球着色效果进行增强后的地形起伏增强效果示意图。
图5为本发明一实施例中数字地球二维着色效果示意图。
图6为本发明一实施例中对图5的二维数字地球着色效果进行增强后的地形起伏增强效果示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。并且,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
为了解决现有技术中难以实现数字地球无卫星图片情况下高效着色渲染并清晰展现海拔高度配色的问题,本发明提供了一种数字地球实时着色方法和装置。图1所示为本发明一实施例中数字地球实时着色方法的流程示意图。如图1所示,该方法可包括以下步骤S110-S170:
步骤S110,创建或获取数字地球DEM地块瓦片,基于数字地球DEM地块瓦片获得地块法线信息瓦片。
本步骤中,是要完成数字地球DEM基础地理数据的准备,数字地球DEM基础地理数据包括数字地球DEM地块瓦片。数字地球DEM地块瓦片是数字地球读取、保存、渲染数据的最小组织单元,DEM地块瓦片通常以单独文件形式进行存储管理。可根据四叉树原理构建瓦片金字塔,按照级别组织管理瓦片文件,为每一个DEM瓦片文件指定编号名称,来完成DEM地块瓦片的创建。例如,可按照WGS84(World Geodetic System 1984)投影切片规则组织命名地球DEM瓦片文件,第1级2个瓦片文件,第2级8个瓦片文件,第3级32个瓦片文件,以此类推形成瓦片四叉树结构,每一个瓦片文件分辨率例如为257*257像素。该瓦片四叉树结构仅为示例,本发明并不限于此。
在本发明另一些实施例中,还可以直接从预定DEM资源供应方来获取已经创建好的DEM瓦片文件。
DEM瓦片文件是对地球表面地形地貌的一种离散的数据表达方式,是以地球上的离散点为数据点形成的文件,文件中保存每一点的海拔高度,经纬度信息则由文件编号和数据点位置推算得到。不同级别的DEM瓦片文件,其离散点的距离跨度也不同。
在本发明实施例中,基于数字地球DEM地块瓦片获取地块法线信息瓦片。首先计算地块“高程差”数据。“高程差”数据是计算法线的基本数据,本质上是DEM地块瓦片顶点TBN切线空间坐标系下T和B轴数据扰动,根据应用需要,可以是高程差绝对值或相对值。在实际应用中,“高程差”数据可以采用两种方式保存:一种是法线贴图,根据T和B轴数据扰动离线计算法线矢量,以颜色像素的形式保存;二是“高程差”瓦片数据,直接将T和B轴数据扰动保存成二进制文件。法线贴图和“高程差”瓦片数据这两种法线信息文件各有优劣,法线贴图以压缩图片方式保存,文件尺寸小,法线精度有一定损失;“高程差”瓦片以原始二进制方式保存,精度高,但文件尺寸大。
基于数字地球DEM地块瓦片获得地块法线信息瓦片的步骤可包括:针对DEM地块瓦片(DEM瓦片文件)中每一个数据点,基于其周围多个位置点的海拔高度计算当前数据点的上下点高程差和左右点高程差,基于上下点高程差和左右点高程差来得到高程差数据,并存储为地块法线贴图或者高程差瓦片文件形式。
例如,在高程差数据体现的是高程差相对值的情况下,可对DEM瓦片文件中的每一个数据点进行处理,获取当前数据点周围的上下左右四个位置点的海拔高度,基于该四个位置点的海拔高度计算上下点高程差和左右点高程差,并进一步根据相应位置点跨度计算出上下点相对高程差和左右点相对高程差,作为相对“高程差”数据。
更具体地,可采用f32[]数组存放地块瓦片网格当前数据点周围点的海拔高度,f32[0]为上边点数据,f32[1]为左边点数据,f32[2]为右边点数据,f32[3]为下边点数据。gridRange为当前瓦片文件级别的离散点间距离。在这种情况下,若用rl表示左右点相对高程差,则可通过如下公式计算出左右点相对高程差rl:
rl=(f32[2]-f32[1])/(2*gridRange);
其中,f32[2]-f32[1]为左右点高程差。
若用bt为上下点相对高程差,可通过如下公式计算出上下点相对高程差bt:
bt=(f32[3]-f32[0])/(2*gridRange);
其中,f32[3]-f32[0]为上下点高程差。
进一步地,本发明一些实施例中,可对rl和bt进行按比例放大或缩小,来代表地块高程起伏增强或弱化。
得到的左右点相对高程差rl和上下点相对高程差bt可保存为地块法线信息瓦片文件。对于法线贴图保存形式,可将矢量[rl,bt,1]正规化得到法线,将法线以像素颜色形式保存。对于“高程差”瓦片数据保存形式,可将rl和bt直接保存为二进制浮点数。“高程差”瓦片不同于法线贴图,法线贴图数据固定不可变,“高程差”瓦片文件的数据可以比例放大缩小,可实时生成灵活变化的地块法线。
由于“高程差”瓦片文件尺寸相对较大,因此在本发明另一实施例中,可在将rl和bt保存为“高程差”瓦片文件之前,对rl和bt进行调制,调制为无符号字节数据,以进一步降低“高程差”瓦片文件大小,从而降低瓦片加载到内存的时间,降低瓦片数据加载到显存的计算负载,进一步提高计算和渲染效率。
例如,可通过127.5+127.5*rl/sqrt(1.0+rl*rl)将rl调制成[0,255]之间的无符号字节数据,通过127.5+127.5*bt/sqrt(1.0+bt*bt)将bt调制成[0,255]之间的无符号字节数据,来降低“高程差”瓦片文件大小。该调制方式仅为示例,本发明并不限于此。
在本发明一些实施例中,基于数字地球DEM地块瓦片生成地块法线信息瓦片的过程是离线计算完成的,离线计算可降低数字地球渲染时GPU工作负荷,以空间换时间,提高数字地球渲染时的效率和流畅性。
步骤S120,生成海拔高度配色数组数据。
更具体地,本步骤可以实时定义若干海拔高度值,并为每一个海拔高度指定颜色,形成一套或多套以海拔高度配色数组表示的海拔高度配色方案。在另选实施例中,海拔高度配色数组数据也可以预先生成。
海拔高度配色数组就是一组[海拔高度,颜色]数据对,用于描述数字地球各个海拔高度对应的期望颜色值。海拔高度配色数组可以预先生成并保存起来,也可以实时生成。海拔高度配色数组中海拔高度和颜色设置可以实时调整改变。本发明实施例中,提供海拔高度颜色实时输入窗口,可以实时改变海拔高度和对应的颜色值。
在一示例中,可以声明QVector4D类型数组heightColor[5][12],作为海拔高度配色数组数据。可以保存多套(如5套)赋色方案,每套方案中,heightColor数组保存12组海拔高度颜色值。QVector4D类型包含四个浮点数,前三个保存颜色的红绿蓝分量,最后一个保存对应海拔高度。
步骤S130,根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片。
在完成DEM基础地理数据的准备之后,可设置数字地球初始视点位置,包括数字地球经纬度位置和海拔高度,并根据数字地球视点位置来加载视点区域范围内的DEM瓦片和地块法线信息瓦片。
更具体地,可根据数字地球视点经纬度位置确定地块瓦片中心点,根据数字地球视点海拔高度确定可显示的地块瓦片级别和范围,然后根据确定的地块瓦片中心点、级别和范围来确定当前要加载的DEM瓦片文件和对应的地块法线信息瓦片,并进行相应文件的加载。
本发明实施例中,是根据数字地球视点位置动态管理数字地球DEM地块瓦片和地块法线信息瓦片(法线贴图或“高程差”瓦片数据)。数字地球的瓦片数据为海量数据,而计算机内存有限,因此本发明动态管理数字地球瓦片数据。瓦片数据管理包括动态加载、缓存视点区域范围的瓦片数据,删除不需要显示的瓦片数据。将可见地块的DEM和加载到GPU等待进一步处理。
例如,在进行地块法线信息瓦片文件的加载时,本发明实施例先检索当前瓦片文件缓存,如果需加载的瓦片文件数据不存在于当前瓦片缓存中,则从计算机指定位置加载瓦片文件。如果需加载的瓦片文件数据存在于缓存中,则直接从缓存中读取瓦片文件。如果瓦片缓存已满,则从缓存中删除非显示区域瓦片数据。例如,将可见DEM地块瓦片和地块法线信息瓦片(如“高程差”瓦片)加载到GPU等待进一步处理。
步骤S140,针对可见DEM地块瓦片,确定地块顶点数据并基于地块顶点数据构建数字地球网格。
本步骤可利用预先创建的GPU顶点着色器(GPU Vertex Shader),对每个可见地块瓦片,根据地块顶点数据构建数字地球网格。
更具体地,对每个可见DEM地块瓦片,取部分数据点作为数字地球网格顶点数据,加载到GPU顶点着色器(GPU Vertex Shader)。例如,对每一块DEM瓦片,每8个数据点取一个数据点,取出其中的33*33个点用于构建数字地球网格点。
基于数字地球网格顶点数据,通过坐标投影变换可建立各网络顶点坐标间的关系,从而生成数字地球网格。更具体地,可在GPU Vertex Shader中,通过对地块顶点数据进行坐标投影变换,可根据地块顶点数据生成数字地球网格。
当地块顶点数据经度、纬度、海拔高度变换到地心直角坐标系时,生成的是三维数字地球,如图3所示;当基于经纬度直投变换时,会产生平面地图效果,如图5所示。
由于根据地块顶点数据构建数字地球网格是现有成熟技术,因此在此不再赘述。但本发明并不限于采用现有的手段来实现本步骤,还可以采用将来可能到的用于构建数字地球网格的其他手段来实现本步骤。
步骤S150,在构建的数字地球网格上,针对DEM地块瓦片纹理,确定每一像素的海拔高度,并通过逐像素插值,基于预先生成的海拔高度配色数组数据得到各像素对应的配色。
在本步骤中,全部DEM地块瓦片数据以纹理方式加载到预先构建的GPU片元着色器(GPU Fragment Shader)中。利用GPU Fragment Shader,对DEM地块瓦片纹理中的海拔高度纹理进行点采样,得到每一个像素的海拔高度。然后根据海拔高度和步骤S120得到的海拔高度配色方案,以逐像素方式进行颜色插值处理,实时生成每像素的海拔高度对应的颜色。
更具体地,在GPU Fragment Shader中,通过h=texture(texH,texIn).r进行点采样,获取逐像素海拔高度,其中,h为数字地球网格顶点海拔高度,texH为Fragment Shader中的DEM瓦片数据,texIn为地块瓦片纹理坐标。可通过setUniformValueArray函数将heightColor数组加载到片元着色器(Fragment Shader)中。在Fragment Shader中,通过OpenGL着色器语言(GLSL)自带的mix函数对逐像素海拔高度的配色进行插值,得到逐像素的海拔高度配色pixelHColor。
步骤S160,将地块法线信息瓦片作为纹理,通过采样获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线。
地块法线信息瓦片以纹理方式被加载到GPU Fragment Shader中。在GPUFragment Shader中,对地块法线信息瓦片进行点采样,获取每像素法线信息数据,然后基于每像素的法线信息数据实时生成适应地块高程比例缩放的地块法线。
本步骤S160可包括以下步骤:
(1)在GPU Fragment Shader中,将地块法线信息瓦片作为纹理,通过逐像素插值对地块法线信息瓦片进行点采样,得到每一个像素的法线信息数据。
将地块法线信息瓦片以纹理方式加载到GPU Fragment Shader中后,通过vNor=texture(texNor,texIn)点采样,其中,vNor表示采样点法线信息数据,对于法线贴图来说,vNor为地块网格顶点法线向量;对于高程差瓦片来说,vNor为相对高程差数据。texNor为Fragment Shader中的地块法线信息瓦片数据,texIn表示地块瓦片纹理坐标。
(2)基于每像素法线信息数据解算出TBN切线空间坐标系下的T轴和B轴扰动数据。
对于法线贴图,一般应用是直接将vNor用于光照计算。本发明实施例中,将vNor矢量根据TBN法线空间数据特点做如下解算:首先将vNor矢量除以vNor.z得到矢量[vNor.x/vNor.z,vNor.y/vNor.z,1],该矢量形式为典型TBN法线空间的扰动法线形式,由此得到TBN法线空间T、B轴扰动rl=vNor.x/vNor.z和bt=vNor.y/vNor.z。
(3)基于T轴和B轴扰动数据以及预先设定的比例控制参数实时计算使地块起伏增强或弱化的地块法线。
在本发明实施例中,比例控制参数是地块海拔高度缩放倍数,可由人为设置并输入。比例控制参数可包括横、纵向高程差放大倍数。
在本发明实施例中,比例控制参数也称为地形高程比例系数scale,基于该比例控制参数可得到矢量[scale*rl,scale*bt,1.0],该向量归一化得到实时地块法线vNormal。对于“高程差”瓦片数据,vNor采样值就是TBN法线空间T、B轴扰动,令rl=vNor.x,bt=vNor.y,再结合scale得到矢量[scale*rl,scale*bt,1.0],归一化得到实时地块法线vNormal。计算得到的地块法线使得地块起伏进一步增强或弱化。
本步骤通过对以纹理方式存在的高程差数据进行逐像素插值,得到每一个像素的相对高程差。然后基于相对高程差数据和比例控制参数,实时生成了当前像素的地块法线。
步骤S170,基于得到的各像素对应的配色以及地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色。
在本发明一实施例中,可在GPU Fragment Shader中,根据光照、每像素颜色和地块法线,计算像素最终颜色,完成数字地球实时渲染。
更具体地,在GPU Fragment Shader中,可根据光照颜色、光照方向,根据每像素的海拔插值配色和地块法线,计算每像素的最终颜色数据。由于在GPU中进行实时逐像素海拔赋色和法线计算,实现了数字地球的实时改变配色能力。
在GPU Fragment Shader中,可采用基本光照模型逐像素计算最终颜色,基于该模型,最终颜色可表示为:
finalPixelColor=pixelHColor*(dot(vNormal,vLight)));
其中,finalPixelColor为根据法线计算得到的明暗度颜色,为Fragment Shader阶段的最终像素颜色输出。图4和图6分别是图3所示的三维地球和图5所示的二维直投的地形起伏增强效果。图4和图6可以看出,能够非常清晰地展现海拔高度的配色,增强效果非常明显。
综上所述,本发明方法经实施例验证,实现了数字地球无卫片情况下的高效实时着色,可实时改变海拔高度对应颜色;可实时改变地形法线,加强或弱化地形起伏效果。以上这种数字地球实时着色方法在三维地理信息仿真技术领域是一种创新,在作战训练仿真显示、态势可视化等领域有广阔应用前景。
本发明的数字地球实时着色方法具有以下有益效果:
1)实现了一种数字地球在无卫星图片情况下的高效、清晰、灵活、干净的地形渲染;
2)离线生成与法线相关的地块法线信息瓦片,降低了数字地球渲染时GPU工作负荷,提高了数字地球渲染效率和流畅性;
3)能够实时生成数字地球相应海拔高度的配色,具备按海拔高度实时赋色能力。在Fragment Shader阶段逐像素插值使数字地球效果更加细腻;
4)能够实时生成和改变数字地球地块法线数据,使数字地球渲染效果更加真实反映地形起伏变化,地形明暗变化效果更丰富和多变;
本发明的方法在飞行、作战、训练等态势显示和可视化领域有广阔应用前景。
图2所示为本发明另一实施例中数字地球着色方法的主要操作步骤的示意图。如图2所示,首先创建或获取数字地球DEM地块瓦片,然后计算地块法线信息瓦片(高度差瓦片或地块法线贴图);进一步地,设置数字地球视点位置,在确定数字地球视点之后,根据数字地球视点位置加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片,并创建数字地球网格,针对加载的DEM地块瓦片逐像素计算海拔高度配色,并针对加载的地块法线信息瓦片实时计算逐像素法线,并基于各像素对应的海拔插值配色以及逐像素法线确定各像素的最终颜色输出,并基于确定的最终颜色进行数字地球的着色渲染。在计算最终颜色输出时,还可结合基本光照模型来逐像素计算最终颜色,基本光照模型可以是现有的模型,也可以是新提出的模型。
与上述方法相应地,本发明还提供了一种数字地球着色装置,该装置可包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述数字地球着色方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如光盘、U盘、软盘、硬盘等。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种数字地球实时着色方法,其特征在于,该方法包括以下步骤:
创建或获取数字地球DEM地块瓦片,基于数字地球DEM地块瓦片获得地块法线信息瓦片数据;
根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片;
针对可见DEM地块瓦片,确定地块顶点数据并基于地块顶点数据构建数字地球网格;
在构建的数字地球网格上,针对DEM地块瓦片纹理,确定每一像素的海拔高度,并通过逐像素插值,基于预先生成的海拔高度配色数组数据得到各像素对应的海拔插值配色;
将地块法线信息瓦片作为纹理,获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线;
基于得到的各像素对应的海拔插值配色以及地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色。
2.根据权利要求1所述的方法,其特征在于,所述地块法线信息瓦片数据为地块法线贴图或者高程差瓦片文件形式的高程差数据;
所述基于数字地球DEM地块瓦片获得地块法线信息瓦片数据包括:针对DEM地块瓦片中每一个数据点,基于其周围多个位置点的海拔高度计算当前数据点的上下点高程差和左右点高程差,基于所述上下点高程差和左右点高程差得到高程差数据,并存储为地块法线贴图或者高程差瓦片文件形式。
3.根据权利要求2所述的方法,其特征在于,所述高程差数据为:高程差绝对值或高程差相对值;
所述高程差绝对值包括所述上下点高程差和左右点高程差;
所述高程差相对值包括上下点相对高程差和左右点相对高程差,所述上下点相对高程差由所述上下点高程差除以上下离散点间距离得到,所述左右点相对高程差由所述左右点高程差除以左右离散点间距离得到。
4.根据权利要求3所述的方法,其特征在于,在所述地块法线信息瓦片数据为高程差瓦片文件形式的高程差相对值的情况下,所述方法还包括:
对所述上下点相对高程差和左右点相对高程差调制为无符号字节数据,来降低高程差瓦片文件的大小。
5.根据权利要求1所述的方法,其特征在于,所述根据数字地球视点位置确定并加载视点区域范围内的可见DEM地块瓦片和地块法线信息瓦片包括:
根据数字地球视点经纬度位置确定地块瓦片中心点;
根据视点海拔高度确定可显示地块瓦片级别和范围;
根据确定的地块瓦片中心点和级别和范围确定当前需加载的DEM瓦片文件和对应的地块法线信息瓦片,并进行动态加载。
6.根据权利要求1所述的方法,其特征在于,所述针对可见DEM地块瓦片,确定地块顶点数据并基于地块顶点数据构建数字地球网格包括:
针对每个可见DEM地块瓦片,取部分数据点作为数字地球网格顶点数据,加载到GPU顶点着色器;
在GPU顶点着色器,对地块顶点数据进行坐标投影变换,从而生成数字地球网格。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:生成所述海拔高度配色数组数据,所述海拔高度配色数组数据包括一套或多套配色方案。
8.根据权利要求1所述的方法,其特征在于,所述将地块法线信息瓦片作为纹理,获取每像素的法线信息数据,基于每像素的法线信息数据实时生成基于预定高程缩放比例的地块法线,包括:
将地块法线信息瓦片作为纹理,对地块法线信息瓦片进行点采样,获取每像素法线信息数据;
基于每像素法线信息数据解算出TBN切线空间坐标系下的T轴和B轴扰动数据;
基于T轴和B轴扰动数据以及预先设定的比例控制参数计算使地块起伏增强或弱化的地块法线。
9.根据权利要求1所述的方法,其特征在于,所述基于得到的各像素对应的海拔插值配色以及地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色,包括:
基于预定的光照模型,根据光照颜色、光照方向,各像素对应的海拔插值配色和地块法线确定像素的最终颜色,并基于确定的最终颜色进行数字地球着色。
10.一种数字地球实时着色装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1至9中任意一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至9中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111408616.9A CN114092575B (zh) | 2021-11-24 | 2021-11-24 | 数字地球实时着色方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111408616.9A CN114092575B (zh) | 2021-11-24 | 2021-11-24 | 数字地球实时着色方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114092575A CN114092575A (zh) | 2022-02-25 |
CN114092575B true CN114092575B (zh) | 2022-04-12 |
Family
ID=80304567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111408616.9A Active CN114092575B (zh) | 2021-11-24 | 2021-11-24 | 数字地球实时着色方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114092575B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152325B (zh) * | 2023-10-31 | 2024-03-26 | 中科星图测控技术股份有限公司 | 一种利用数字地球进行卫星实时pdop值展示方法 |
CN117333631B (zh) * | 2023-11-29 | 2024-03-12 | 航天宏图信息技术股份有限公司 | 基于Threejs+Geoserver的三维地形渲染方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887595A (zh) * | 2009-05-14 | 2010-11-17 | 武汉如临其境科技创意有限公司 | 基于四叉树索引的三维数字地球空间数据组织渲染方法 |
CN104766360A (zh) * | 2015-03-09 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 一种三维空间数据的渲染方法及装置 |
CN105336003A (zh) * | 2015-09-28 | 2016-02-17 | 中国人民解放军空军航空大学 | 结合gpu技术实时流畅绘制出三维地形模型的方法 |
CN108648271A (zh) * | 2018-04-11 | 2018-10-12 | 华中科技大学 | 一种基于gis数据生成复杂地形网格模型的插值方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150070658A1 (en) * | 2013-09-06 | 2015-03-12 | Uncle Milton Industries, Inc. | Apparatus and related methods for using light projection to simulate a specified environment |
US9741095B2 (en) * | 2014-01-29 | 2017-08-22 | Raytheon Company | Method for electronic zoom with sub-pixel offset |
US20200211256A1 (en) * | 2018-12-31 | 2020-07-02 | Electronics And Telecommunications Research Institute | Apparatus and method for generating 3d geographic data |
-
2021
- 2021-11-24 CN CN202111408616.9A patent/CN114092575B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887595A (zh) * | 2009-05-14 | 2010-11-17 | 武汉如临其境科技创意有限公司 | 基于四叉树索引的三维数字地球空间数据组织渲染方法 |
CN104766360A (zh) * | 2015-03-09 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 一种三维空间数据的渲染方法及装置 |
CN105336003A (zh) * | 2015-09-28 | 2016-02-17 | 中国人民解放军空军航空大学 | 结合gpu技术实时流畅绘制出三维地形模型的方法 |
CN108648271A (zh) * | 2018-04-11 | 2018-10-12 | 华中科技大学 | 一种基于gis数据生成复杂地形网格模型的插值方法 |
Non-Patent Citations (6)
Title |
---|
Impact of interpolation techniques on the accuracy of large-scale digital elevation model;Maan Habib 等;《Open Geosciences 2020》;20200703;190-202 * |
Interactive 3D content modeling for Digital Earth;Faramarz Samavati 等;《Vis. Comput.》;20160419;1293-1309 * |
Natural Neighbor Interpolation Based Grid DEM Construction Using a GPU;Alex Beutel 等;《GIS 2010》;20101231;1-10 * |
一种LiDAR点云数据生成DEM的流动水域高程赋值方法;雷丽珍 等;《测绘与空间地理信息》;20190930;第42卷(第9期);170-172、175 * |
不同源DEM数据在高山区重力中区地形改正中的适用性;刘生荣 等;《物探与化探》;20191031;第43卷(第5期);1111-1118 * |
无人机倾斜摄影建模技术在虚拟现实中的应用;康传利 等;《桂林理工大学学报》;20200229;第40卷(第1期);138-142 * |
Also Published As
Publication number | Publication date |
---|---|
CN114092575A (zh) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
US5179638A (en) | Method and apparatus for generating a texture mapped perspective view | |
CN114092575B (zh) | 数字地球实时着色方法和装置 | |
US8665266B2 (en) | Global visualization process terrain database builder | |
CN110706324B (zh) | 一种天气粒子渲染的方法及装置 | |
US5566283A (en) | Computer graphic image storage, conversion and generating apparatus | |
US6469700B1 (en) | Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps | |
CN113593027B (zh) | 一种三维航电显控界面装置 | |
CN106575429A (zh) | 图形处理单元中的高阶滤波 | |
AU2020350243A1 (en) | Super-resolution stereoscopic visualization processing system and program | |
CN115409957A (zh) | 基于虚幻引擎的地图构建方法、电子设备和存储介质 | |
CN106575428A (zh) | 图形处理单元中的高阶滤波 | |
CN112233241B (zh) | 虚拟场景地形的高度图的生成方法、装置和存储介质 | |
CN111739074B (zh) | 一种场景多点光源渲染方法及装置 | |
US6744440B1 (en) | Image processing apparatus, recording medium, and program | |
US6906729B1 (en) | System and method for antialiasing objects | |
CN112017286A (zh) | 一种数字地球无裙边地形瓦块无缝拼接显示仿真方法 | |
CN117710549A (zh) | 渲染方法及设备 | |
KR100559127B1 (ko) | 화상처리장치 | |
CN114494563B (zh) | 航拍视频在数字地球上的融合显示方法和装置 | |
CN115409962A (zh) | 虚幻引擎内构建坐标系统的方法、电子设备和存储介质 | |
CN115409960A (zh) | 基于虚幻引擎的模型构建方法、电子设备和存储介质 | |
US7064752B1 (en) | Multi-function unit of a graphics system for updating a hierarchical Z buffer | |
JPH096941A (ja) | 3次元地形データ変換装置 | |
CN115221263B (zh) | 一种基于航线的地形预加载方法及预加载系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |