CN114140593B - 数字地球和全景图融合显示方法和装置 - Google Patents
数字地球和全景图融合显示方法和装置 Download PDFInfo
- Publication number
- CN114140593B CN114140593B CN202111463394.0A CN202111463394A CN114140593B CN 114140593 B CN114140593 B CN 114140593B CN 202111463394 A CN202111463394 A CN 202111463394A CN 114140593 B CN114140593 B CN 114140593B
- Authority
- CN
- China
- Prior art keywords
- digital earth
- matrix
- curved surface
- viewpoint
- data
- 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/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
- 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
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明提供一种数字地球和全景图融合显示方法和装置,该方法包括以下步骤:构建数字地球;构建旋成体曲面网格;动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上渲染旋成体曲面,并将旋成体曲面中心点移到拍摄全景图的实际位置;将数字地球视点移到旋成体曲面中心点,设置透明度控制变量比例显隐旋成体曲面,从而实现数字地球和全景图融合显示。本发明能将由实景图片创建的全景图原位无缝融合到数字地球中,使数字地球显示效果兼顾全景图和数字正射影像的优势,解决数字地球局部细节显示不足问题,提升了局部数字地球的全方位细节展示能力,准实时显示指定位置全方位实景信息,提升了数字地球局部细节信息实时显示能力。
Description
技术领域
本发明涉及三维地理信息系统数字地球仿真技术领域,尤其涉及一种数字地球和全景图融合显示方法和装置。
背景技术
数字地球是基于数字正射影像(Digital Orthophoto Map,DOM)和数字高程模型(Digital Elevation Mode,DEM)构建的数字模型,能够以三维方式漫游展示全球地形地貌,管理展示各类地理信息要素。在数字地球应用中,数字正射影像等地理信息数据量大,数据的处理和更新周期过长,实时性差。在某些应用中,通过无人机遥测等手段能够快速获取局部DOM或者数字地表模型(Digital Surface Model,DSM)并在数字地球上展示,但这种处理方式依然存在实时性差、无法立体展示以及无法展示全方位实景等问题。全景图基于全方位实景照片构建,能够展现某一时间地点的真实场景,全景图的获取具备准实时性,但全景图覆盖区域范围有限,无法提供大范围内地形地貌特征,缺乏全局态势。全景图现有展示方法无法与数字地球无缝一体化展示,无法实现实景与数字地球效果之间的渐变融合和原位对比。
发明内容
针对现有数字地球和全景图在数据显示中存在的问题,本发明的目的在于提供一种数字地球和全景图融合显示方法和装置,用于实现全景图在数字地球上的无缝一体化展示,提升数字地球局部全方位细节显示能力和实时显示能力,提升基于数字地球的信息获取质量和效果。
为实现上述目的,本发明采用了如下技术方案:
本发明的一个方面提供了一种数字地球和全景图融合显示方法,该方法包括以下步骤:
构建数字地球;
构建旋成体曲面网格;
动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上三维渲染所述旋成体曲面,并将旋成体曲面中心点移到拍摄全景图的实际位置;以及
在数字地球视点位置变化的情况下,基于数字地球视点与旋成体曲面中心点的投影变换关系展示全景图,使得在数字地球视点变换到旋成体曲面中心点时,融合显示所述数字地球和全景图。
在本发明一些实施方式中,所述构建数字地球的步骤包括:创建或获取DOM和DEM基础地理数据,所述DOM和DEM基础地理数据包括DEM地块瓦片和DOM地块瓦片数据;根据数字地球视点位置管理所述DEM地块瓦片和DOM地块瓦片数据;基于创建的瓦片着色器加载DEM和DOM瓦片数据,进行数字地球的三维渲染。
在本发明一些实施方式中,所述构建旋成体曲面网格的步骤包括:构建旋成体曲面顶点位置数据;基于旋成体曲面顶点位置数据构建旋成体曲面网格索引数据;以及基于旋成体曲面网格索引数据设置旋成体曲面顶点纹理坐标。
在本发明一些实施方式中,所述旋成体曲面为由特征曲线绕竖直轴旋转360度得到。
在本发明一些实施方式中,所述动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上渲染旋成体曲面,并将旋成体曲面中心点移到拍摄全景图的实际位置,包括:动态加载全景图,基于全景图的拍摄参数计算全景图纹理坐标的起点和范围;基于旋成体曲面顶点位置、索引、纹理坐标数据和全景图片、全景图纹理坐标起点、范围数据来进行旋成体曲面的三维渲染;根据全景图的拍摄参数中的经度、纬度和海拔高度数据,计算旋成体位置变换矩阵,将旋成体曲面移动到数字地球相应位置。
在本发明一些实施例中,所述旋成体位置变换矩阵是基于如下矩阵变换操作得到:将单位矩阵平移至旋成体曲面中心点的地心直角坐标系位置,得到第一矩阵;将所述第一矩阵绕竖直轴旋转经度值得到第二矩阵;将所述第二矩阵绕特定水平轴旋转纬度值得到第三矩阵,将第三矩阵等比例放大得到所述变换矩阵。
在本发明一些实施例中,所述在数字地球视点位置变化的情况下,基于数字地球视点与旋成体曲面中心点的投影变换关系展示全景图,使得在数字地球视点变换到旋成体曲面中心点时,融合显示所述数字地球和全景图,包括:根据旋成体位置和数字地球视点角度计算数字地球视点变换矩阵;以及基于所述数字地球视点变换矩阵将所述数字地球视点变换到旋成体曲面中心点,融合显示所述数字地球和全景图;所述方法还包括:在数字地球视点变换到旋成体曲面中心点时,在显示界面显示的是数字地球和渲染后的旋成体。
在本发明一些实施例中,所述数字地球视点变换矩阵基于如下矩阵变换操作得到:将单位矩阵平移至旋成体曲面中心点的地心直角坐标系位置,得到第一矩阵;将所述第一矩阵绕竖直轴旋转经度值得到第二矩阵;将所述第二矩阵绕特定水平轴旋转纬度值得到第三矩阵;根据当前视点方向的俯仰角计算俯仰变换矩阵,基于第三矩阵和俯仰变换矩阵得到第四矩阵;根据当前视点方向的方位角计算方位变换矩阵,基于第四矩阵和方位变换矩阵得到所述数字地球视点变换矩阵。
在本发明一些实施方式中,所述方法还包括:通过透明度控制变量来控制所述旋成体曲面上全景图的隐藏和融合显示。
在本发明一些实施方式中,所述方法还包括,将所述数字地球和全景图的融合在虚拟显示显示设备上进行显示。
本发明的另一方面,提供了一种数字地球和全景图融合显示装置,该装置包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该取色装置实现如前所述方法的步骤。
本发明的又一方面,还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前所述方法的步骤。
本发明实施例提供的数字地球和全景图融合显示方法和装置,能够将由实景图片创建的全景图原位无缝融合到数字地球中,使数字地球显示效果兼顾全景图和数字正射影像的优势,解决数字地球局部细节显示不足问题,提升了局部数字地球的全方位细节展示能力,并实现了在数字地球基础数据更新慢的情况下,仍能准实时显示指定位置全方位实景信息,提升了数字地球局部细节信息实时显示能力。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例中数字地球和全景图融合显示方法的流程示意图;
图2为本发明一实施例中数字地球和全景图融合显示方法的各操作步骤的示意图;
图3为本发明一实施例中构建旋成体的特征曲线的示意图;
图4为本发明一实施例中旋成体曲面索引构建示意图;
图5为本发明一实施例中的旋成体曲面网格在数字地球上的渲染效果示意图;
图6为本发明一实施例中全景图片示意图;
图7为本发明一实施例中数字地球视点在旋成体外部时效果示意图;
图8为本发明一实施例中数字地球视点在旋成体中心点时效果示意图;
图9为本发明一实施例中数字地球和全景图融合效果示意图;
图10为本发明一实施例中数字地球和全景图融合在VR头盔上显示效果示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。并且,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在本发明实施例中,通过创新性地提出一种数字地球和全景图的融合方案来实现数字地球和全景图的无缝融合,解决了现有技术中无法全方位立体展示以及无法展示实景等问题。
图1所示为本发明一实施例中数字地球和全景图融合显示方法的流程示意图。作为示例,该方法可以在Qt应用程序开发框架下的开放图形库(OpenGL)的基础上进行优化来实现,因此在具体实施描述中会设计Qt OpenGL的变量、函数名称,但本发明并不限于此。如图1所示,该数字地球和全景图融合显示方法包括以下步骤S110-S140:
步骤S110,构建数字地球。
更具体地,作为示例,本步骤中,是基于DOM和DEM来构建数字地球。
DEM通常以规则格网的形式数字化呈现地球表面的三维形态。DEM是一定范围内规则格网点的平面坐标(X,Y)及高程(Z)的数据集。DEM的格网间隔应与其高程精度相适配,并形成有规则的格网系列。DEM是对地貌形态的虚拟表示,可派生出等高线、坡度图等信息,也可与DOM或其它专题数据叠加,用于与地形相关的分析应用,同时它本身还是制作DOM的基础数据。
DOM是利用DEM对经扫描处理的数字化航空像片等,经逐像元进行投影差矫正,按国家基本比例尺地形图图幅范围剪裁生成的数字正射影像(即卫星图片)数据集,其图像同时具有地图几何精度和影像特征。
本发明一实施例中,基于DOM和DEM来构建数字地球的步骤可具体包括:
步骤S111,进行DOM和DEM基础地理数据的准备。
DOM和DEM基础地理数据可包括DEM地块瓦片和DOM地块瓦片数据,因此DOM和DEM基础地理数据的准备可包括创建或获取基础地理数据地块瓦片。
地块瓦片是数字地球读取、保存和渲染数据的最小组织单元,瓦片数据主要包括DEM瓦片数据和DOM瓦片数据。在一实施例中,可根据四叉树原理构建瓦片金字塔,按照级别组织管理瓦片文件,为每一个瓦片文件指定编号名称。例如,可按照WGS84(World GeodeticSystem 1984)的投影切片规则组织命名地球DOM和DEM瓦片文件,第1级为2个瓦片文件,第2级为8个瓦片文件,第3级为32个瓦片文件,以此类推来形成瓦片四叉树结构,该瓦片四叉树结构仅为示例,本发明并不限于此。
在本发明另一实施例中,还可以直接从预定DOM和DEM资源供应方来获取已经创建好的作为基础地理数据的地块瓦片数据。
步骤S112,根据数字地球视点位置管理瓦片数据。
在完成DOM和DEM基础地理数据的准备之后,可设置数字地球初始视点经纬度位置和海拔高度。根据数字地球视点经纬度位置来确定瓦片中心点;根据视点海拔高度来确定可显示瓦片级别和范围。根据瓦片中心点和级别、范围来确定当前需加载的瓦片文件。
由于数字地球瓦片数据为海量数据,而计算机内存有限,因此需要动态管理瓦片数据。瓦片数据的管理例如包括动态加载、缓存视点区域范围的瓦片数据,以及删除不需要显示的瓦片数据等。
例如,在加载瓦片文件时,本发明实施例先检索当前瓦片缓存,如果需加载的瓦片文件数据在缓存中不存在,则从计算机指定位置加载瓦片文件并进行缓存。如果需加载的瓦片文件数据存在于缓存中,则直接从缓存中读取瓦片文件。如果瓦片缓存已满,则删除非显示区域瓦片数据。
步骤S113,基于创建的瓦片着色器,将DEM和DOM瓦片数据加载到计算机显存,通过可编程渲染管线完成数字地球的三维渲染。
更具体地,本步骤首先对需要显示的计算机内存中DOM和DEM瓦片数据进行处理,基于DEM瓦片数据创建顶点数组和索引数组,基于DOM瓦片数据创建映射纹理。然后创建瓦片着色器,利用创建的瓦片着色器加载创建的顶点、索引、纹理数据到计算机显存。在GPU中,瓦片着色器包括顶点着色器(Vertex Shader)和片元着色器(Fragment Shader),通过顶点着色器和片元着色器渲染管线进行逐顶点和逐像素渲染。
在本发明另选实施例中,瓦片着色器也可以是预先创建的瓦片着色器。
由于可以采用现有构建数字地球的手段来实现步骤S110,因此对于该步骤不再赘述。但本发明并不限于采用现有的手段来实现本步骤,还可以采用将来可能到的用于构建数字地球的其他手段来实现本步骤。
步骤S120,构建旋成体曲面网格。
在本发明一实施例中,可构建单位旋成体作为基本旋成体曲面,三维渲染时可等比例放大旋成体。旋成体的特征曲线可以是圆、椭圆,也可以是任意其他形状的曲线。在一实施例中,使用圆和椭圆的组合曲线,如图3所示,适用于全景图中心海拔高度较低的应用,但本发明并不限于此。在图3中,特征曲线各数据点的XY坐标数据可保存在一数组中,如保存在“基本旋成体曲线(baseRotatorCurve)”数组中,共计17个数据点,该17个数据点仅为示例,本发明并不限于此。
将特征曲线从0度开始旋转,直至旋转至360度,在每隔10度获取一次特征曲线上17个数据点的坐标数据的情况下,可以得到具有17*(360/10)=612个网格点(数据点)的旋成体曲面网格,得到0度至360度间隔10度(包含起始角度,方位360度的数据与方位0度的数据相同)情况下的网格数据,也即旋成体曲面网格共计37*17=629个网格点,也称为顶点。
旋成体曲面网格数据包括顶点数据和索引数据两部分,因此在本发明一实施例中,构建旋成体曲面网格具体包括以下步骤S121-S123:
步骤S121,构建旋成体曲面顶点位置数据。
旋成体曲面顶点数据可包括顶点位置数据和顶点纹理坐标。旋成体可由特征曲线绕指定轴(如Y轴,但并不限于此)旋转360度得到,此时旋成体曲面顶点位置数据就是构成旋成体表面的网格坐标数据。
在本发明一实施例中,顶点位置数据的计算过程为:将旋成体的特征曲线绕Y轴旋转,从0度开始旋转直至旋转至360度,每旋转预定度数(如10度)取一组坐标数据,一共取得37组坐标数据。具体地将特征曲线上数据点的X值分别与旋转角的正弦和余弦值相乘,得到数据点在不同旋转角度时的空间直角坐标系的X值和Z值,Y值不变,由此得到629个网格点对应的三维坐标数据,作为旋成体曲面顶点位置数据。
步骤S122,基于旋成体曲面顶点位置数据构建旋成体曲面网格索引数据。
具体地,可以根据顶点值数据排列顺序构建旋成体曲面网格索引数据。
作为示例,旋成体曲面网格索引数据的生成如图4所示。将629个网格点以平面方式排列,横向37个点,纵向17个点,图4仅示出了旋成体曲面所有网格点中的部分网格点。从最下面第一行数据开始编号0,1,2,……,36,第二行数据点编号37-73,第三行数据点编号74-110,最上面一行数据点编号592-628。将编号按照条带(stripe)进行保存,第一条带可包含第一和第二行数据,第二条带可包含第二和第三行数据,……,共计16条带。按照OpenGL三角形条带索引方法交替保存每条带数据点编号,且每条带最后添加一个标识,如数据值65535,用以标识条带数据的结束。例如,第一条带数据为0,37,1,38,2,39,……,36,73,65535。这些条带数据就是旋成体曲面网格索引数据。此处以数据值65535作为条带数据的结束标识仅为示例,还可以采用其他标识来指示条带数据的结束。
步骤S123,基于旋成体曲面网格索引数据设置旋成体曲面顶点纹理坐标。
获得旋成体曲面网格索引数据后,可为旋成体曲面每一个顶点设置纹理坐标,为后续纹理贴图做准备。
顶点纹理坐标数据为纹理(U,V)坐标(或称UV坐标),UV坐标中的U值随特征曲线旋转角变化而变化,V值不随旋转角改变。U值由特征曲线旋转角除以360得到,V值由旋转的特征曲线对应的数组的索引数据计算得到。假设k值为基本旋成体曲线(baseRotatorCurve)数组的第一维索引,取值范围为0-16,则k除以16便得到对应顶点的纹理坐标V值。
顶点数据和索引数据是旋成体曲面三维渲染的基础数据,后续全景图的三维渲染操作是基于该基础数据实现的。例如,当在旋成体曲面上进行纹理贴图时,需要为旋成体曲面上每个顶点指定一组纹理坐标,标明该顶点在全景图中的位置,从而建立起全景图图元和纹理坐标之间的映射关系。也就是说,在获得了包括顶点位置数据和顶点纹理坐标数据的顶点数据以及索引数据的情况下,后续便可以通过渲染工具实现全景图在旋成体曲面上的三维渲染。
本步骤S120中创建的旋成体曲面网格可以直接展示在数字地球的指定位置,如图5所示的旋成体曲面网格在数字地球上的渲染效果图。
步骤S130,动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上三维渲染旋成体曲面,将旋成体曲面中心点移到拍摄全景图的实际位置。
全景图可以是静态图片,也可以是全景视频中抽取的一帧画面。全景图拍摄过程中应记录拍摄点地理坐标(经度、纬度和海拔)和角度(方位角、俯仰角),这样拼接处理出来的全景图产品才具有空间属性,才能在数字地球上原位融合。
本发明一实施例中,步骤S130可包括如下步骤:
步骤S131,利用OpenGL将全景图动态加载到计算机内存。然后,基于指定的全景图的拍摄参数创建OpenGL纹理变量,OpenGL纹理变量包括全景图纹理坐标的起点和范围。
更具体地,可根据全景图方位、俯仰角等位置参数和覆盖范围计算全景图纹理坐标的起点和范围。完整的全景图覆盖范围为方位360度,俯仰180度。实际应用中,全景图可以不完整,只覆盖部分方位和俯仰角。
当全景图获取为实时性获取时,向数字地球上显示的旋成体的叠加显示也将具备实时性,本发明一实施例使用的全景图如图6所示。可根据全景图的方位和俯仰角范围计算纹理坐标, 可用texUDeg、texVDeg、texURange、texVRange分别表示全景图方位角起始值、俯仰角起始值、方位角覆盖范围和俯仰角覆盖范围。将texUDeg和texURange分别除以360可得到全景图纹理U值起始点和范围,将texVDeg和texVRange分别除以180可得到全景图纹理V值起始点和范围。
全景图纹理坐标用于进行全景图和旋成体网格的对准。
步骤S132,基于旋成体曲面顶点位置、索引、纹理坐标数据和全景图片、全景图纹理坐标起点、范围数据来进行旋成体曲面的三维渲染。
例如可通过可编程渲染管线进行旋成体曲面的三维渲染。
更具体地,可针对旋成体创建旋成体着色器并利用旋成体着色器将旋成体曲面顶点位置、索引、纹理坐标数据和全景图片、全景图纹理坐标起点、范围数据加载到显存,然后通过可编程渲染管线完成旋成体曲面的三维渲染。
在本发明一实施例中,可建立顶点纹理坐标数据和全景图纹理表数据之间的映射关系,来将全景图和旋成体网格的对准,基于建立的映射关系通过纹理贴图将全景图三维渲染到旋成体曲面上。在渲染旋成体曲面时,将纹理变量绑定到可编程渲染管线。
步骤S133,根据拍摄全景图的实际经度、纬度和海拔高度,计算旋成体位置变换矩阵,将旋成体曲面移动到数字地球相应位置。
更具体地,全景图的拍摄参数中还包括实际经度、纬度和海拔高度等信息,可基于拍摄全景图的实际经度、纬度和海拔高度信息来确定旋成体曲面在数字地球上的经纬度和高度位置。根据旋成体曲面在数字地球上的经纬度和高度位置,计算旋成体位置变换矩阵,用于将旋成体曲面中心点移动到数字地球上拍摄全景图的实际位置。
在本发明一实施例中,旋成体位置变换矩阵是单位矩阵经一次平移、两次旋转和一次比例放大得到。Qt环境下旋成体变换矩阵baseMatrix变量定义为QMatrix4x4类,一次平移是将单位矩阵平移至曲面中心点的地心直角坐标系位置得到第一矩阵,地心直角坐标系位置是根据曲面中心点经度、纬度和海拔高度计算得到,由baseMatrix.translate函数实现。第一次旋转是继续将第一矩阵绕竖直轴(Y轴)旋转经度值得到第二矩阵,第二次旋转是继续将经第一次旋转的矩阵绕特定水平轴(如X轴)旋转纬度值大小得到第三矩阵,矩阵旋转由函数baseMatrix.rotate(经度,0,1,0)和baseMatrix.rotate(纬度,1,0,0)得到。一次比例放大是将第三矩阵等比例放大,或者说将单位旋成体尺寸等比例放大,由函数baseMatrix.scale(100,100,100)实现。旋成体放大倍数一般不小于100(相当于全景图距离视点100米),尺寸太小,易造成视场边缘处全景图与数字地球匹配度降低。单位矩阵经过四次变换得到旋成体位置变换矩阵。基于得到的变换矩阵,可将旋成体曲面移动到数字地球相应位置。
本步骤S130通过OpenGL中的三维渲染命令glDrawElementsBaseVertex可将全景图纹理映射后的旋成体进行三维渲染并移动到数字地球指定位置。
步骤S140,在数字地球视点位置变化的情况下,基于数字地球视点与旋成体曲面中心点的投影变换关系展示全景图,使得在数字地球视点变换到旋成体曲面中心点时,融合显示所述数字地球和全景图。
当在本发明的实施过程中实时性获取并动态加载全景图时,在数字地球上的叠加显示也具备实时性,每次通过预定义的操作移动数字地球视点时,基于数字地球视点与旋成体曲面中心点的投影变换关系,旋成体上全景图的视角也随之变化。而当将数字地球视点变换到旋成体曲面中心点时,数字地球和全景图将融合在一起进行显示。
本步骤S140用于在数字地球视点变换时,利用变换矩阵来实时调节数字地球和全景图的显示。
本发明一实施例中,可以根据旋成体位置和数字地球视点角度计算数字地球视点变换矩阵,利用数字地球视点变换矩阵来变换数字地球视点,匹配数字地球视点和全景图中心点位置关系,改变数字地球视点角度以浏览全景图。
在一具体示例中,数字地球视点位置和数字地球视点角度改变可通过一系列矩阵变换完成。作为示例,数字地球视点变换矩阵可由单位矩阵通过五次变换得到,前三次变换可与步骤S130中旋成体位置变换矩阵的前三次变化相同,经过一次平移后得到第一矩阵,经过第一次和第二次旋转后分别得到第二矩阵和第三矩阵。数字地球视点变换矩阵viewMatrix变量定义为QMatrix4x4类。第四次变换是根据当前视点方向的俯仰角计算俯仰变换矩阵,基于第三矩阵和俯仰变换矩阵得到第四矩阵,由函数viewMatrix.rotate(俯仰角, viewAxisRight)得到,其中viewAxisRight为数字地球视点俯仰轴,是数字地球渲染基本参数,不在本发明赘述;第五次变换是根据当前视点方向的方位角计算方位变换矩阵,由函数viewMatrix.rotate(方位角, viewAxisUp)得到,其中viewAxisUp为数字地球视点方位轴,是数字地球渲染基本参数,不在本发明赘述,五次变换后得到数字地球视点变换矩阵,达到在旋成体中心点以任意方位和俯仰角浏览效果。
当数字地球视点在旋成体外部时,看到的是数字地球态势和旋成体,如图7所示;当数字地球视点移动到旋成体内部时,看到的是全景图和数字地球融合显示的效果,如图8所示为全景图被设置为不透明时仅显示出全景图的效果。
在本发明一实施例中,可设置透明度控制变量来显示或隐藏旋成体曲面上的全景图。例如,当透明度变量取值0或1时,数字地球效果为数字正射影像或全景图效果;当透明度在0和1之间取值时,数字地球效果为全景图和数字正射影像按比例融合效果。透明度融合实现实景和数字正射影像效果之间的渐变切换。更具体地,可通过设置浮点数变量vrAlpha来控制旋成体曲面显示的透明度,设置后的vrAlpha被传递给旋成体着色器。在片元着色器(Fragment Shader)的代码中,可通过设置vrAlpha的变量的值来设置全景图纹理透明度。当vrAlpha被设置为0时,旋成体被完全隐藏;当vrAlpha被设置为1时,旋成体被完全显示;当vrAlpha被设置为在0和1之间时,旋成体为数字地球和全景图的比例融合效果,如图9所示。
在本发明一实施例中,数字地球和全景图的融合视图还可以在虚拟现实(VR)头盔显示器上进行展示,如图10所示分别为通过VR头盔显示器由左眼和右眼所看到数字地球视点在旋成体曲面内时的融合展示视图,此时数字地球和全景图融合展示格外具备沉浸感。
本步骤通过矩阵变换操作移动数字地球视点到旋成体曲面中心点,移动视点方位,可显示任意方位的全景图。
图2所示为本发明一实施例中数字地球和全景图融合显示方法的各操作步骤的示意图。如图2所示,在数字地球渲染之前,首先确定数字地球视点位置,该数字地球视点可以是当前设置的或通过早数字地球上进行操作而选定的视点,也可以是基于前一帧全景图像渲染旋成体后经地球视点变换矩阵变换后的地球视点。在确定数字地球视点之后,根据数字地球视点位置管理瓦片数据,然后利用创建的瓦片着色器来渲染数字地球。进一步的,基于创建的旋成体曲面网格来加载全景图,进行全景图和旋成体网格的对准后,利用创建的旋成体着色器将全景图三维渲染到旋成体曲面上,进一步通过旋成体位置变化和/或透明度设置以及数字地球视点的变换,实现数字地球和全景图的融合显示。通过实施接收新的全景图画面帧,可以实现连续、实时地数字地球和全景图无缝融合显示。
综上所述,本发明的方法已经过实例验证,实现了数字地球和全景图无缝融合显示效果。以上这种数字地球和全景图融合显示方法在以数字地球为基础的三维地理信息显示领域是一种创新,在飞行仿真显示、遥感测绘、应急救援、科普、旅游、娱乐等诸多领域有广阔应用前景。
本发明的数字地球和全景图融合显示方法具有以下有益效果:
1) 将由实景图片创建的全景图无缝融合到数字地球中,使数字地球显示效果兼顾全景图和数字正射影像的优势,解决数字地球局部细节显示不足问题,提升了局部数字地球的全方位细节展示能力;
2)实现了在数字地球基础数据更新慢的情况下,仍能准实时显示指定位置全方位实景信息,提升了数字地球局部细节信息实时显示能力;
3)实现全景图在数字地球中的无缝融合展示和原位展示,通过透明度变化实现虚拟数字地球和实景图之间的渐变切换,方便虚实对比;
4)实现数字地球全局显示和全景图全方位显示的统一,特别是在虚拟现实显示设备上,可以显著提升信息获取感知效果。
与上述方法相应地,本发明还提供了一种数字地球和全景图融合显示装置,该装置可包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述数字地球和全景图融合显示方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如光盘、U盘、软盘、硬盘等。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种数字地球和全景图融合显示方法,其特征在于,该方法包括以下步骤:
构建数字地球;
构建旋成体曲面网格,所述旋成体曲面网格是在旋成体曲面上形成的,所述旋成体曲面由特征曲线绕指定轴旋转360度得到;
动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上三维渲染所述旋成体曲面,并将旋成体曲面中心点移到拍摄全景图的实际位置;以及
在数字地球视点位置变化的情况下,基于数字地球视点与旋成体曲面中心点的投影变换关系展示全景图,使得在数字地球视点变换到旋成体曲面中心点时,融合显示所述数字地球和全景图。
2.根据权利要求1所述的方法,其特征在于,所述构建数字地球的步骤包括:
创建或获取DOM和DEM基础地理数据,所述DOM和DEM基础地理数据包括DEM地块瓦片和DOM地块瓦片数据;
根据数字地球视点位置管理所述DEM地块瓦片和DOM地块瓦片数据;以及
基于创建的瓦片着色器加载DEM和DOM瓦片数据,进行数字地球的三维渲染。
3.根据权利要求1所述的方法,其特征在于,所述构建旋成体曲面网格的步骤包括:
构建旋成体曲面顶点位置数据;
基于旋成体曲面顶点位置数据构建旋成体曲面网格索引数据;以及
基于旋成体曲面网格索引数据设置旋成体曲面顶点纹理坐标。
4.根据权利要求3所述的方法,其特征在于,所述旋成体曲面为由特征曲线绕竖直轴旋转360度得到。
5.根据权利要求1所述的方法,其特征在于,所述动态加载全景图,将全景图作为纹理映射到旋成体曲面网格表面,在数字地球上渲染旋成体曲面,并将旋成体曲面中心点移到拍摄全景图的实际位置,包括:
动态加载全景图,基于全景图的拍摄参数计算全景图纹理坐标的起点和范围;
基于旋成体曲面顶点位置、索引、纹理坐标数据和全景图片、全景图纹理坐标起点、范围数据来进行旋成体曲面的三维渲染;
根据全景图的拍摄参数中的经度、纬度和海拔高度数据,计算旋成体位置变换矩阵,将旋成体曲面移动到数字地球相应位置。
6.根据权利要求5所述的方法,其特征在于,所述旋成体位置变换矩阵是基于如下矩阵变换操作得到:
将单位矩阵平移至旋成体曲面中心点的地心直角坐标系位置,得到第一矩阵;
将所述第一矩阵绕竖直轴旋转经度值得到第二矩阵;
将所述第二矩阵绕特定水平轴旋转纬度值得到第三矩阵,将第三矩阵等比例放大得到所述旋成体位置变换矩阵。
7.根据权利要求5所述的方法,其特征在于,所述在数字地球视点位置变化的情况下,基于数字地球视点与旋成体曲面中心点的投影变换关系展示全景图,使得在数字地球视点变换到旋成体曲面中心点时,融合显示所述数字地球和全景图,包括:
根据旋成体位置和数字地球视点角度计算数字地球视点变换矩阵;
基于所述数字地球视点变换矩阵将所述数字地球视点变换到旋成体曲面中心点,融合显示所述数字地球和全景图;
所述方法还包括:在数字地球视点变换到旋成体曲面中心点时,在显示界面显示的是数字地球和渲染后的旋成体。
8.根据权利要求7所述的方法,其特征在于,所述数字地球视点变换矩阵基于如下矩阵变换操作得到:
将单位矩阵平移至旋成体曲面中心点的地心直角坐标系位置,得到第一矩阵;
将所述第一矩阵绕竖直轴旋转经度值得到第二矩阵;
将所述第二矩阵绕特定水平轴旋转纬度值得到第三矩阵;
根据当前视点方向的俯仰角计算俯仰变换矩阵,基于第三矩阵和俯仰变换矩阵得到第四矩阵;
根据当前视点方向的方位角计算方位变换矩阵,基于第四矩阵和方位变换矩阵得到所述数字地球视点变换矩阵。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过透明度控制变量来控制所述旋成体曲面上全景图的隐藏和融合显示。
10.一种数字地球和全景图融合显示装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1至9中任意一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至9中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111463394.0A CN114140593B (zh) | 2021-12-02 | 2021-12-02 | 数字地球和全景图融合显示方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111463394.0A CN114140593B (zh) | 2021-12-02 | 2021-12-02 | 数字地球和全景图融合显示方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114140593A CN114140593A (zh) | 2022-03-04 |
CN114140593B true CN114140593B (zh) | 2022-06-14 |
Family
ID=80387334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111463394.0A Active CN114140593B (zh) | 2021-12-02 | 2021-12-02 | 数字地球和全景图融合显示方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114140593B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116630567B (zh) * | 2023-07-24 | 2023-09-29 | 中国电子科技集团公司第十五研究所 | 面向数字地球的椭球路线型切片的几何建模及渲染方法 |
CN118691765A (zh) * | 2024-08-28 | 2024-09-24 | 腾讯科技(深圳)有限公司 | 数据显示方法、装置、设备以及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103824228A (zh) * | 2012-11-16 | 2014-05-28 | 宁海县供电局 | 基于电力gis的三维系统的应用 |
CN203858755U (zh) * | 2013-12-10 | 2014-10-01 | 重庆交通大学 | 交通场景三维重构的数据采集装置 |
CN106157304A (zh) * | 2016-07-01 | 2016-11-23 | 成都通甲优博科技有限责任公司 | 一种基于多个相机的全景图拼接方法及系统 |
CN106373148A (zh) * | 2016-08-31 | 2017-02-01 | 中国科学院遥感与数字地球研究所 | 多路视频图像配准融合到三维数字地球系统的设备及方法 |
CN108765576A (zh) * | 2018-03-28 | 2018-11-06 | 中国人民解放军92859部队 | 基于OsgEarth的VIVE虚拟地球漫游浏览方法 |
CN112584060A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合系统 |
CN112584120A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合方法 |
CN113593028A (zh) * | 2021-08-02 | 2021-11-02 | 四川汉科计算机信息技术有限公司 | 一种用于航电显控的三维数字地球构建方法 |
CN113593027A (zh) * | 2021-08-02 | 2021-11-02 | 四川汉科计算机信息技术有限公司 | 一种三维航电显控界面装置 |
-
2021
- 2021-12-02 CN CN202111463394.0A patent/CN114140593B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103824228A (zh) * | 2012-11-16 | 2014-05-28 | 宁海县供电局 | 基于电力gis的三维系统的应用 |
CN203858755U (zh) * | 2013-12-10 | 2014-10-01 | 重庆交通大学 | 交通场景三维重构的数据采集装置 |
CN106157304A (zh) * | 2016-07-01 | 2016-11-23 | 成都通甲优博科技有限责任公司 | 一种基于多个相机的全景图拼接方法及系统 |
CN106373148A (zh) * | 2016-08-31 | 2017-02-01 | 中国科学院遥感与数字地球研究所 | 多路视频图像配准融合到三维数字地球系统的设备及方法 |
CN108765576A (zh) * | 2018-03-28 | 2018-11-06 | 中国人民解放军92859部队 | 基于OsgEarth的VIVE虚拟地球漫游浏览方法 |
CN112584060A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合系统 |
CN112584120A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合方法 |
CN113593028A (zh) * | 2021-08-02 | 2021-11-02 | 四川汉科计算机信息技术有限公司 | 一种用于航电显控的三维数字地球构建方法 |
CN113593027A (zh) * | 2021-08-02 | 2021-11-02 | 四川汉科计算机信息技术有限公司 | 一种三维航电显控界面装置 |
Non-Patent Citations (1)
Title |
---|
《基于数字地球的三维云图实现技术》;郭胜等;《首都师范大学学报(自然科学版)》;20130430;第34卷(第2期);第70-73页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114140593A (zh) | 2022-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8139111B2 (en) | Height measurement in a perspective image | |
US7415356B1 (en) | Techniques for accurately synchronizing portions of an aerial image with composited visual information | |
US8665266B2 (en) | Global visualization process terrain database builder | |
US20080279447A1 (en) | Computational Solution Of A Building Of Three Dimensional Virtual Models From Aerial Photographs | |
US7098915B2 (en) | System and method for determining line-of-sight volume for a specified point | |
EP2643820A1 (en) | Rendering and navigating photographic panoramas with depth information in a geographic information system | |
CN109242966B (zh) | 一种基于激光点云数据的3d全景模型建模方法 | |
CN114140593B (zh) | 数字地球和全景图融合显示方法和装置 | |
CN111656132B (zh) | 一种测绘采样点的规划方法、装置、控制终端及存储介质 | |
CN109934911B (zh) | 基于OpenGL的移动端高精度倾斜摄影三维建模方法 | |
CN110852952B (zh) | 一种基于gpu的大规模地形实时绘制方法 | |
CN106326334A (zh) | 一种电子地图的显示、生成方法和装置 | |
CN115409957A (zh) | 基于虚幻引擎的地图构建方法、电子设备和存储介质 | |
CN108733711B (zh) | 基于三维gis技术的配电线路空间距离获取方法 | |
CN110310367A (zh) | 基于大场景实景三维多角度2.5d影像轻量级浏览方法 | |
KR100732915B1 (ko) | 디지털사진 측량기술 및 인공위성영상을 이용한 기본설계용도로노선의 3차원적 결정 방법 | |
CN115760667A (zh) | 一种弱约束条件下3D WebGIS视频融合方法 | |
CN111527375B (zh) | 一种测绘采样点的规划方法、装置、控制终端及存储介质 | |
CN114494563B (zh) | 航拍视频在数字地球上的融合显示方法和装置 | |
Deng et al. | Automatic true orthophoto generation based on three-dimensional building model using multiview urban aerial images | |
CN117115243B (zh) | 一种基于街景图片的建筑群外立面窗户定位方法及装置 | |
CN115859414B (zh) | 一种全球尺度地理信息底图跨坐标系使用方法 | |
CN117496084A (zh) | 大型湖泊场景建模方法、系统、计算机设备及存储介质 | |
Ma et al. | Low‐Altitude Photogrammetry and Remote Sensing in UAV for Improving Mapping Accuracy | |
CN115409960A (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 |