CN112330806B - 一种基于低功耗硬件平台的视景合成方法及系统 - Google Patents
一种基于低功耗硬件平台的视景合成方法及系统 Download PDFInfo
- Publication number
- CN112330806B CN112330806B CN202011360332.2A CN202011360332A CN112330806B CN 112330806 B CN112330806 B CN 112330806B CN 202011360332 A CN202011360332 A CN 202011360332A CN 112330806 B CN112330806 B CN 112330806B
- Authority
- CN
- China
- Prior art keywords
- data
- terrain
- terrain tile
- tile
- satellite image
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- 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
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于低功耗硬件平台的视景合成方法及系统,通过预置的地形瓦片分级模型、并基于飞机的离地距离确定地形瓦片层级,从而能够根据层级计算地形瓦片数据:减少参与后续计算以及最终渲染的瓦片数量,减少性能消耗提高帧率,并且通过将世界坐标转换为相对坐标的方法解决顶点深度值精度不够导致的瓦片边界处的闪烁问题解决;并且采用特定的卫星图像数据存储格式,能够在加载卫星图像数据时提高加载速度。本系统能在低功率硬件平台下流畅运行合成视景系统,并且根据不同的应用场景及需求,能灵活配置合成视景中的地形渲染精度及场景中三维物体数量,适配不同低功率硬件平台的渲染性能。
Description
技术领域
本发明涉及航空电子设备的显示和控制技术领域,尤其涉及一种基于低功耗硬件平台的视景合成方法及系统。
背景技术
随着计算机技术的飞速发展,合成视景系统在飞行领域发挥着越来越重要的作用。合成视景系统使用地形、障碍物、跑道、卫星图片等信息渲染出一个由计算机构建的飞机外部地形景象。向飞行员显示了飞机外部地形环境的关键特征。能够减少由于低能见度环境导致的飞机事故。使飞行员视觉不受外界真实环境能见度的影响,提高了飞行安全性,减小了飞行员的负担。只需要精确的定位信息及地形测绘信息,不受环境能见度影响,提高了飞机在低能见度环境下的飞行能力。通过计算机渲染技术,使得飞行管道、跑道、航路点等抽象信息实现可视化的呈现,能更直观的掌控飞机飞行状态,提高飞行便利性和安全性。
同时在航空等特殊领域,对电子设备的功耗,和在高低温、电磁干扰、盐雾、雷击等极端恶劣环境下稳定运行,有着极高的要求。即在航空领域对电子设备有着低功耗、宽适应、高稳定性、需求量小等要求。并且伴随着航空市场的发展,机械仪表向电子仪表转变,而电子仪表也在向综合航电系统发展,越来越多的需求和功能需要向系统中集成。然而由于合成精度和场景复杂度的原因,合成视景渲染所需硬件性能较高,而低功率硬件平台通常渲染性能不高,难以流畅运行合成视景系统。
因此急需设计一种基于低功耗硬件平台的视景合成方法,在满足现有的航空领域对电子设备的低功耗高集成度的要求下,实现较高性能的视图渲染,保证合成视景系统能够流畅运行。
发明内容
本发明的目的在于克服现有技术中所存在的合成视景系统需要较高渲染性能的电子设备的支撑、但性能较高的电子设备并不满足航空领域对电子设备的需求的问题,提供一种基于低功耗硬件平台的视景合成方法及系统,本方法能够提高低功耗硬件平台下的合成视景帧率,使得合成视景系统在低功率硬件平台也能流畅运行。
为了实现上述发明目的,本发明提供了以下技术方案:
一种基于低功耗硬件平台的视景合成方法,所述方法包括:
A、接收飞机的飞行状态数据以及第一卫星图像数据,所述飞行状态数据包括:飞机位置数据及飞机姿态数据;
B、根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;
C、根据所述飞机位置数据建立地形瓦片相对位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片相对位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;
D、采用异步处理线程根据所述第一地形瓦片数据加载第二地形瓦片数据,同时根据所述第一卫星图像数据加载得到第二卫星图像数据;其中,第一卫星图像数据以预定的数组格式存储在所述低功耗硬件平台中;
E、将所述三维视图矩阵、第二地形瓦片数据以及加载得到的卫星图像数据传输至GPU,在所述GPU中合成渲染飞机的三维视景图。
优选的,上述基于低功耗硬件平台的视景合成方法中,所述预置的地形瓦片分级模型采用呈金字塔形的墨卡托投影模型,包括多个层级的地形瓦片;
其中,每个层级的地形瓦片数量为固定值,并且所有地形瓦片的顶点会存储在同一个VBO中。
优选的,上述基于低功耗硬件平台的视景合成方法中,所述步骤C包括:
根据所述飞机位置数据进行相对坐标转换,以所述飞机当前位置为相对原点,建立地形瓦片相对位置坐标系;
以及,根据所述飞机位置数据确定飞机的离地距离,根据所述离地距离从预置的地形瓦片分级模型确定当前地形瓦片层级,在飞机离地较高时可只计算低级别瓦片,在飞机离地近时可只计算高级别瓦片,得到当前地形瓦片层级;
根据所述当前地形瓦片层级选取对应的地形瓦片,并在所述地形瓦片相对位置坐标系中计算所选取的地形瓦片,得到第一地形瓦片数据。
优选的,上述基于低功耗硬件平台的视景合成方法中,在加载所述第一地形瓦片数据的过程中,采用增加裙边的方式消除相邻不同级别瓦片所产生的T形裂缝。
优选的,上述基于低功耗硬件平台的视景合成方法中,在将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU过程中,通过设置每一帧响应请求的数据量来调节传输帧率。
在本发明进一步的实施例中,还提供一种采用上述基于低功耗硬件平台的视景合成方法进行视景合成的视景合成系统,包括:
飞行数据接收模块,用于接收飞机的飞行状态数据以及卫星图像数据,并将所述飞行状态数据传输至地形总体管理模块;所述飞行状态数据包括:飞机位置数据及飞机姿态数据;
地形总体管理模块,用于存储预置的地形瓦片分级模型以及将接收到的卫星图像数据以预定的数组格式存储;以及,根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;根据所述飞机位置数据建立地形瓦片相对位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片相对位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;根据所述第一地形瓦片数据加载第二地形瓦片数据,以及根据所述第一卫星图像数据加载得到第二卫星图像数据;将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU;
GPU,根据所述三维视图矩阵、地形瓦片数据以及卫星图像数据合成渲染飞机的三维视景图。
优选的,上述基于低功耗硬件平台的视景合成中,所述地形总体管理模块,包括:
三维物体管理子模块,根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;
地形管理子模块,用于用于存储预置的地形瓦片分级模型以及将接收到的卫星图像数据以预定的数组格式存储;根据所述飞机位置数据建立地形瓦片相对位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片相对位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU;
瓦片对象池子模块,存储所述地形管理子模块计算得到的第一地形瓦片数据以及所述地形管理子模块未选取的地形瓦片;
图片地形数据解码子模块,用于对以预定的数组格式存储的第一卫星图像数据进行解码,得到第二卫星图像数据;
数据加载线程子模块,用于采用异步处理线程根据所述第一地形瓦片数据加载第二地形瓦片数据,以及,根据所述第一卫星图像数据加载得到第二卫星图像数据;其中,第一卫星图像数据以预定的数组格式存储在所述低功耗硬件平台中;
GPU数据传递子模块,用于将数据加载线程子模块加载的第二地形瓦片数据与第二卫星图像数据,以及,三维物体管理子模块确定的三维视图矩阵传输至GPU。
优选的,上述基于低功耗硬件平台的视景合成中,所述系统采用低功耗硬件平台I.MX6Q。
与现有技术相比,本发明的有益效果:
1、本发明的视景合成方法,通过预置的地形瓦片分级模型、并基于飞机的离地距离确定地形瓦片层级,从而能够根据层级计算地形瓦片数据:在飞机离地较高时可只计算低级别瓦片,在飞机离地近时可只计算高级别瓦片,从而减少参与后续计算以及最终渲染的瓦片数量,减少性能消耗提高帧率,并且通过将世界坐标转换为相对坐标的方法解决顶点深度值精度不够导致的瓦片边界处的闪烁问题解决;并且采用特定的卫星图像数据存储格式,能够在加载卫星图像数据时提高加载速度。
2、本发明的视景合成系统对各个模块进行优化,在计算瓦片顶点时采用增加裙边的方式消除相邻不同级别瓦片所产生的T形裂缝,控制每帧数据传输量防止卡顿,能够保证系统的流畅运行;本系统能在低功率硬件平台下流畅运行合成视景系统,平均处理帧率能够达到每秒40帧,满足相应的帧率需求,并且根据不同的应用场景及需求,能灵活配置合成视景中的地形渲染精度及场景中三维物体数量,适配不同低功率硬件平台的渲染性能。
附图说明:
图1是根据本发明实施例的视景合成方法数据处理流程示意图。
图2是根据本发明实施例的视景合成系统各个模块结构示意图。
图3是根据本发明实施例的视景合成方法中地形瓦片分级示意图。
图4是根据本发明实施例的视景合成方法中数据存储结构示意图。
具体实施方式
下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
实施例1
图1示出了根据本发明实施例的基于低功耗硬件平台的视景合成方法流程示意图,包括:A、接收飞机的飞行状态数据以及第一卫星图像数据,所述飞行状态数据包括:飞机位置数据及飞机姿态数据;B、根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;C、根据所述飞机位置数据建立地形瓦片相对位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片相对位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;D、采用异步处理线程根据所述第一地形瓦片数据加载第二地形瓦片数据,同时根据所述第一卫星图像数据加载得到第二卫星图像数据;其中,第一卫星图像数据以预定的数组格式存储在所述低功耗硬件平台中;E、将所述三维视图矩阵、第二地形瓦片数据以及加载得到的卫星图像数据传输至GPU,在所述GPU中合成渲染飞机的三维视景图。其中,所述预置的地形瓦片分级模型采用呈金字塔形的墨卡托投影模型,包括多个层级的地形瓦片;其中,每个层级的地形瓦片数量为固定值,并且所有地形瓦片的顶点会存储在同一个VBO中。根据所述飞机位置数据计算地形瓦片分级模型包括:以所述飞机位置数据为相对坐标原点,根据飞机的离地距离从预置的地形瓦片分级模型确定当前地形瓦片层级,从而根据所述地形瓦片层级选取地形瓦片数据。采用以飞机当前所在瓦片的中心为原点,将世界坐标转换为相对坐标的方法解决顶点深度值精度不够导致的瓦片边界处的闪烁问题。采用瓦片分级模型和瓦片对象池来复用地形瓦片。
具体的,图2示出了根据本发明实施例的执行上述基于低功耗硬件平台的视景合成方法的视景合成系统结构示意图。其中包括飞行数据接收模块1、地形总体管理模块2、瓦片对象池模块3、数据加载线程模块4、GPU数据传递模块5、图片地形数据解码模块6、三维物体管理模块7、飞行管道模块8、跑道模块9。每个模块均有特定的功能,各个模块协同工作完成合成视景的渲染。下面具体阐述每个模块的功能:
飞行数据接收模1接收来自外部的飞机经纬高位置数据及飞机的俯仰、滚转、偏航的姿态数据以及第一卫星图像数据,接收到数据后会对数据做一个滤波处理过滤掉突跳值,然后转换为内部模块所需格式存入内存,供后续各模块使用。
地形总体管理模块2是一个负责总体调度的模块。在初始化时,为了减小合成视景渲染时的VBO切换次数,所有地形瓦片的顶点会存储在同一个VBO中,这个VBO由地形总体管理模块创建和管理。为了解决深度值精度不够导致的瓦片边界处的闪烁问题,程序中将世界坐标转换为相对坐标,相对坐标原点是一个变化值,根据飞机位置的不同而变化。本模块会从1飞行数据接收模块获取飞机的位置及姿态数据进行视图矩阵及地形瓦片分级模型的计算。为了减小计算量提高帧率,分级模型采用了一种与地形无关与飞机位置有关的计算方式。整个地形级别呈金字塔形,最底层范围为5乘5个10级瓦片,然后依次向上升级为6乘6个11级瓦片、6乘6个12级瓦片、6乘6个13级瓦片、6乘6个14级瓦片,共169个瓦片组成,由于瓦片数量是固定的所以可以在初始化时全部创建,减小了渲染过程中由于瓦片对象的创建及删除带来的性能消耗。分级模型以飞机位置为中心,在每一帧渲染前进行计算,此种分级方式可实现分级模型的动态调整,在飞机离地较高时可只计算低级别瓦片,在飞机离地近时可只计算高级别瓦片,从而减少参与后续计算以及最终渲染的瓦片数量,减少性能消耗提高帧率。分级模型计算完毕后与对象池模块进行交互确立当前使用的瓦片对象,检查瓦片状态查找数需要重新加载数据的瓦片后将数据加载请求提交到数据加载线程模块。
瓦片对象池模块3提供存储复用瓦片对象的功能。本模块有两个重要的容器称为第一容器备用瓦片组、第二容器在用瓦片组。第一容器备用瓦片组是一个指针数组,用于存储当前未使用的瓦片指针,由于会有频繁的写入删除操作,采用一维数组来实现能最大限度的提高速度。基于本发明采用的瓦片分级模型,第二容器在用瓦片组也采用一维数组的方式实现。由于分级模型是10到14级,所以第二容器在用瓦片组有5个元素,数组中存储的是一个结构体,该结构体记录着每一个级别对应的x,y范围。在地形总体管理模块计算完瓦片分级模型后会将数据(第一地形瓦片数据以及未被选取的地形瓦片)传递到本模块,本模块对比第二容器在用瓦片组与瓦片分级模型后,将不能继续使用的瓦片存入到第一容器备用瓦片组。之后地形总体管理模块会从第一容器备用瓦片组取出瓦片对象赋予新的layer,x,y值后重新加载数据。
数据加载线程模块4用于加载高程数据及卫星图片数据。本模块开启一个独立的子线程以达到异步数据加载,不阻塞图形渲染主线程。主要功能有计算地形瓦片顶点、计算顶点法线、计算顶点颜色(即根据瓦片对象池模块3中的第一地形瓦片数据得到第二地形瓦片数据)、加载顶点高程数据、加载卫星图片数据。本模块有2个重要容器,分别存储顶点加载请求和卫星图片加载请求。由地形总体管理模块发出的数据加载请求存储在这两个容器中,本模块的数据加载线程从容器中取出请求进行数据的计算及加载,结果通过加载请求中的回调函数返回。在计算瓦片顶点时采用增加裙边的方式消除相邻不同级别瓦片所产生的T形裂缝。数据加载线程子模块,用于采用异步处理线程同时加载所述瓦片对象池子模块中的第一地形瓦片数据得到第二地形瓦片数据,以及,加载所述图片地形数据解码子模块中解码得到的第二卫星图像数据;
GPU数据传递模块5将新加载的顶点及纹理数据传递到GPU,采用请求队列的方式,接收数据传递请求。由于低功率硬件平台下向GPU传输数据的速度有限,一次传输大量数据会造成界面卡顿,所有本模块提供一种控制传输速度的功能,可以通过参数的配置,设置每一帧响应请求的数量,减小每帧传递的数据量,从而平滑帧率减少界面卡顿。
图片地形数据解码模块6用于读取特定格式的瓦片数据。为了减小读取数据的性能消耗,本模块采用一种简便的数据存储格式,能根据layer,x,y迅速查找出对应位置的卫星图片。且能对存储的数据进行加密,在读取时进行解密。加密方式采取特定位置字节数据进行加密,可以用较少的计算量达到数据保护的效果。
三维物体管理模块7管理着三维空间中的各个物体,包括飞机、飞行管道、跑道。将模块1的数据传递给各子模块更新各自的模型矩阵。
飞行管道模块8通过航路信息计算飞行管道数据。每个飞行管道为中空的矩形,在航路信息变化时,会根据航路数据计算出所有飞行管道环的顶点,顶点是乘了模型矩阵后的值,所以在渲染时不需要再对每个环乘模型矩阵。由于低功率硬件平台的性能较低,显示出所有飞行管道会造成界面卡顿,所以飞行管道在渲染时会计算离飞机当前位置最近的飞行管道环,然后向前显示5个环,因为所有环的顶点数据是存储在同一个VBO中的并且是连续存储的,所以这里只需要一次draw就能画出飞行管道,通过这些措施,使得渲染飞行管道对帧率的影响很小。
图3示出了根据本发明实施例的地形瓦片分级示意图。合成视景的分级模型采用了墨卡托投影模型。1级地图表示将世界地图分为2的1次方乘2的1次方个正方形块。n级地图表示将世界地图分为2的n次方乘2的n次方个正方形块。本发明的地形分级模型呈金字塔形,从10级到14级。第10级由5乘5个瓦片组成,将其中的3乘3个10级瓦片进行细化,级别提升为6乘6个11级瓦片。将其中的3乘3个11级瓦片进行细化,级别提升为6乘6个12级瓦片。将其中的3乘3个12级瓦片进行细化,级别提升为6乘6个13级瓦片。将其中的3乘3个13级瓦片进行细化,级别提升为6乘6个14级瓦片。采用此种分级模型可以将瓦片的数量进行固定,从而不需要进行瓦片的创建和删除操作,减小由此带来的性能消耗。
图4示出了根据本发明实施例的数据存储结构示意图。使用此种方式存储卫星地图数据可以提高数据的查找、读取速度。文件开始依次存储图片数据data1至datan,然后依次存储每个图片的信息数据head1至headn,最后存储的是整个文件中head信息的长度。每个图片的信息数据head中包括图片的级别layer、位置x、位置y、图片数据的字节长度length、在文件中的位置position。将整个卫星图片以矩形方式分割存储,在打开文件之后将整个head信息读取出来,然后存储到数组中,采用数组方式可以快速的根据layer,x,y读取到指定卫星图片。
在本实施例中,通过预置的地形瓦片分级模型、并基于飞机的离地距离确定地形瓦片层级,从而能够根据层级计算地形瓦片数据:在飞机离地较高时可只计算低级别瓦片,在飞机离地近时可只计算高级别瓦片,从而减少参与后续计算以及最终渲染的瓦片数量,减少性能消耗提高帧率,并且通过将世界坐标转换为相对坐标的方法解决顶点深度值精度不够导致的瓦片边界处的闪烁问题解决;并且采用特定的卫星图像数据存储格式,能够在加载卫星图像数据时提高加载速度。并且本发明的视景合成系统对各个模块进行优化,在计算瓦片顶点时采用增加裙边的方式消除相邻不同级别瓦片所产生的T形裂缝,控制每帧数据传输量防止卡顿,能够保证系统的流畅运行;本系统能在低功率硬件平台下流畅运行合成视景系统,并且根据不同的应用场景及需求,能灵活配置合成视景中的地形渲染精度及场景中三维物体数量,适配不同低功率硬件平台的渲染性能。最后,通过本发明的基于低功耗硬件平台的视景合成方法及系统应用于所选择的低功耗平台中,可以将帧率提高到每秒40帧,满足需求,因此本发明的基于低功耗硬件平台的视景合成方法及系统具有极佳的提高帧率的效果。
在本申请所提供的上述实施例中,应该理解到,所揭露的软件平台,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,可以仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的相合、或直接相合、或通信连接可以是通过一些接口,设备或单元的间接相合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元、模块可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的单元(例如,各功能单元、处理器、存储器等)可以全部集成在一个单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中:上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件未完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤:而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。当本发明上述集成的单元以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
实施例2
具体的,选择I.MX6Q为本发明的低功耗硬件平台。恩智浦的I.MX6Q是一款广泛用于消费电子、工业以及车载娱乐等众多领域的处理器。基于ARM CortexTM-A9架构,40nm工艺制程,GPU算力16 GFLOPS,满载功耗7.6W。汽车级工作温度可达到-40°到+125°。
在本发明进一步的实施例中,我们对所选的低功耗硬件平台进行硬件性能测试,测试时,使用OpenGL为渲染引擎,选用1024X768的分辨率进行输出。测试得到以下数据:
框架渲染性能
1)测试方法
测试框架使用死循环,框架内不调用任何函数。测试帧率及耗时。
2)测试记录
Test Frame FPS=94.25 time=0.010611
Test Frame FPS=94.34 time=0.010600
3)测试结果
得到结果为框架耗时10.6毫秒,渲染框架帧率94帧。
传输速率测试
1)测试方法:
生成10M或者100M数据,实时由CPU传递给GPU,没帧传送5次。观察记录数据渲染时间。
2)测试数据记录
记录结果如下:
Draw GPU BUFFER Trans=10MB Cnt=5 FPS=5.01 time=0.199500
Draw GPU BUFFER Trans=100MB Cnt=5 FPS=0.30 time=3.313000
消除框架对渲染的影响。取框架渲染0.010611秒,得到下表。
3)测试结果
结果显示:
A传送大数据比小数据更慢。
B速率在150M/S到264M/S之间
图形渲染能力测试
1)测试方法:
绘制显示大小1024X768、512X384、256X192、128X96的矩形区域,进行渲染50次,50次别调用,比较其性能。
然后将50次渲染的顶点,直接传递给GPU,只渲染一次,比较其性能。
2)测试数据记录
50次调用GL_TRIANGLES:
Rect Draw_1024x768 Cnt=50 FPS=11.54 time=0.086667
Rect Draw_512x384 Cnt=50 FPS=32.38 time=0.030879
Rect Draw_256x192 Cnt=50 FPS=63.81 time=0.015672
Rect Draw_128x96 Cnt=50 FPS=84.16 time=0.011882
一次调用GL_TRIANGLES,同时渲染50次
Rects Draw_1024x768 Onces_Cnt=50 FPS=18.23 time=0.054842
Rects Draw_512x384 Onces_Cnt=50 FPS=44.38 time=0.022533
Rects Draw_256x192 Onces_Cnt=50 FPS=71.57 time=0.013972
Rects Draw_128x96 Onces_Cnt=50 FPS=86.31 time=0.011586
消除框架对渲染的影响。取框架渲染0.010611秒,得到下表。
3)测试结果
结果显示:
减少GPU函数调用,可以提高渲染效率1.3到1.7倍。渲染区域越大,效果越明显。
文字渲染测试
1)测试方法
测试时选用24像素和36像素高的字体,显示区域分别为20X28像素和43X40像素。24像素高的字体渲染1900次可充满屏幕,38像素高字体渲染437次可充满屏幕。
2)测试数据记录
3)测试结果
测试结果:
A字体遇到需要渲染的时间越多
B渲染一个24像素高的字,需要0.031225074毫秒
C渲染-一个36像素高的字,需要0.0386681毫秒
算力对比
平台 | GPU算力(GFLOPS) |
PS4 | 1840 |
I74770 | 182 |
177700 | 441.6 |
Nvidia GTX 660 | 1881.6 |
华为920 | 76.8 |
I.MX6 | 16 |
功能总结
低功耗的I.MX6Q处理器,GPU算力较差,在使用二三维融合复杂应用软件时,需要对二三维软件进行优化。最后,通过将本实施例1中的基于低功耗硬件平台的视景合成方法及系统应用于该低功耗平台中,可以将帧率提高到每秒40帧,满足需求,由此可知,本发明的基于低功耗硬件平台的视景合成方法及系统具有极佳的提高帧率的效果。
以上所述,仅为本发明具体实施方式的详细说明,而非对本发明的限制。相关技术领域的技术人员在不脱离本发明的原则和范围的情况下,做出的各种替换、变型以及改进均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于低功耗硬件平台的视景合成方法,其特征在于,所述方法包括:
A、接收飞机的飞行状态数据以及第一卫星图像数据,所述飞行状态数据包括:飞机位置数据及飞机姿态数据;
B、根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;
C、根据所述飞机位置数据建立地形瓦片位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;
D、根据所述第一地形瓦片数据加载第二地形瓦片数据,以及根据所述第一卫星图像数据加载得到第二卫星图像数据;其中,第一卫星图像数据以预定的数组格式存储在所述低功耗硬件平台中;
E、将所述三维视图矩阵、第二地形瓦片数据以及加载得到的卫星图像数据传输至GPU,在所述GPU中合成渲染飞机的三维视景图;
其中,所述预置的地形瓦片分级模型采用呈金字塔形的墨卡托投影模型,包括多个层级的地形瓦片;
其中,每个层级的地形瓦片数量为固定值,并且所有地形瓦片的顶点会存储在同一个VBO中;
所述步骤C包括:
根据所述飞机位置数据进行坐标转换,以所述飞机当前位置为原点,建立地形瓦片位置坐标系;
以及,根据所述飞机位置数据确定飞机的离地距离,根据所述离地距离从预置的地形瓦片分级模型确定当前地形瓦片层级,在飞机非近地飞行时只计算低级别瓦片,在飞机近地飞行时只计算高级别瓦片,得到当前地形瓦片层级;
根据所述当前地形瓦片层级选取对应的地形瓦片,并在所述地形瓦片位置坐标系中计算所选取的地形瓦片,得到第一地形瓦片数据。
2.根据权利要求1所述的视景合成方法,其特征在于,在加载所述第一地形瓦片数据的过程中,采用增加裙边的方式消除相邻不同级别瓦片所产生的T形裂缝。
3.根据权利要求1所述的视景合成方法,其特征在于,在将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU过程中,通过设置每一帧响应请求的数据量来调节传输帧率。
4.一种采用如权利要求1-3任一所述的基于低功耗硬件平台的视景合成方法进行视景合成的视景合成系统,其特征在于,包括
飞行数据接收模块,用于接收飞机的飞行状态数据以及卫星图像数据,并将所述飞行状态数据传输至地形总体管理模块;所述飞行状态数据包括:飞机位置数据及飞机姿态数据;
地形总体管理模块,用于存储预置的地形瓦片分级模型以及将接收到的卫星图像数据以预定的数组格式存储;以及,根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;根据所述飞机位置数据建立地形瓦片位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;根据所述第一地形瓦片数据加载第二地形瓦片数据,以及根据所述第一卫星图像数据加载得到第二卫星图像数据;将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU;
GPU,根据所述三维视图矩阵、地形瓦片数据以及卫星图像数据合成渲染飞机的三维视景图;
其中,所述地形总体管理模块,包括:
三维物体管理子模块,根据所述飞行状态数据确定三维视图矩阵,所述三维视图矩阵包括:飞机矩阵、飞行管道矩阵以及跑道矩阵;
地形管理子模块,用于存储预置的地形瓦片分级模型以及将接收到的卫星图像数据以预定的数组格式存储;根据所述飞机位置数据建立地形瓦片位置坐标系;根据所述飞机位置数据从预置的地形瓦片分级模型确定当前地形瓦片层级,根据所述当前地形瓦片层级选取相应的地形瓦片,并在所述地形瓦片位置坐标系中对所选取的地形瓦片进行计算,得到第一地形瓦片数据;将所述三维视图矩阵、第二地形瓦片数据以及第二卫星图像数据传输至GPU;
瓦片对象池子模块,存储所述地形管理子模块计算得到的第一地形瓦片数据以及所述地形管理子模块未选取的地形瓦片;
图片地形数据解码子模块,用于对以预定的数组格式存储的第一卫星图像数据进行解码,得到第二卫星图像数据;
数据加载线程子模块,用于采用异步处理线程根据所述第一地形瓦片数据加载第二地形瓦片数据,以及,根据所述第一卫星图像数据加载得到第二卫星图像数据;其中,第一卫星图像数据以预定的数组格式存储在所述低功耗硬件平台中;
GPU数据传递子模块,用于将数据加载线程子模块加载的第二地形瓦片数据与第二卫星图像数据,以及,三维物体管理子模块确定的三维视图矩阵传输至GPU。
5.根据权利要求4所述的视景合成系统,其特征在于,所述系统采用低功耗硬件平台I.MX6Q。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011360332.2A CN112330806B (zh) | 2020-11-27 | 2020-11-27 | 一种基于低功耗硬件平台的视景合成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011360332.2A CN112330806B (zh) | 2020-11-27 | 2020-11-27 | 一种基于低功耗硬件平台的视景合成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112330806A CN112330806A (zh) | 2021-02-05 |
CN112330806B true CN112330806B (zh) | 2022-11-01 |
Family
ID=74309097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011360332.2A Active CN112330806B (zh) | 2020-11-27 | 2020-11-27 | 一种基于低功耗硬件平台的视景合成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112330806B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113506378B (zh) * | 2021-07-29 | 2023-03-17 | 和舆图(北京)科技有限公司 | 一种在mr设备上动态加载三维模型的方法 |
CN115391124B (zh) * | 2022-10-27 | 2023-03-21 | 瀚博半导体(上海)有限公司 | 一种面向图形芯片功耗测试的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104406580A (zh) * | 2014-11-21 | 2015-03-11 | 北京科航军威科技有限公司 | 一种通用航空飞行器的导航方法、装置和系统 |
CN110059143A (zh) * | 2019-03-04 | 2019-07-26 | 中国电子科技集团公司第二十七研究所 | 一种基于遥感影像瓦片数据的地图绘制方法 |
CN110276820A (zh) * | 2019-06-24 | 2019-09-24 | 重庆梅安森科技股份有限公司 | 基于lod组织与调度方法的gis模型优化方法及系统 |
CN110309243A (zh) * | 2018-03-22 | 2019-10-08 | 杭州海康威视系统技术有限公司 | 获取实景电子地图的方法、装置、设备和存储介质 |
CN111402390A (zh) * | 2020-02-20 | 2020-07-10 | 平安科技(深圳)有限公司 | 模型渲染方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7239311B2 (en) * | 2002-09-26 | 2007-07-03 | The United States Government As Represented By The Secretary Of The Navy | Global visualization process (GVP) and system for implementing a GVP |
-
2020
- 2020-11-27 CN CN202011360332.2A patent/CN112330806B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104406580A (zh) * | 2014-11-21 | 2015-03-11 | 北京科航军威科技有限公司 | 一种通用航空飞行器的导航方法、装置和系统 |
CN110309243A (zh) * | 2018-03-22 | 2019-10-08 | 杭州海康威视系统技术有限公司 | 获取实景电子地图的方法、装置、设备和存储介质 |
CN110059143A (zh) * | 2019-03-04 | 2019-07-26 | 中国电子科技集团公司第二十七研究所 | 一种基于遥感影像瓦片数据的地图绘制方法 |
CN110276820A (zh) * | 2019-06-24 | 2019-09-24 | 重庆梅安森科技股份有限公司 | 基于lod组织与调度方法的gis模型优化方法及系统 |
CN111402390A (zh) * | 2020-02-20 | 2020-07-10 | 平安科技(深圳)有限公司 | 模型渲染方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Large-Scale Physics-Based Terrain Editing Using Adaptive Tiles on the GPU;J. Vanek 等;《IEEE Computer Graphics and Applications》;20110721;第31卷(第06期);35-44 * |
飞行监控系统中基于GPU的地形渲染;王旭 等;《航空学报》;20100630;第31卷(第06期);1230-1238 * |
Also Published As
Publication number | Publication date |
---|---|
CN112330806A (zh) | 2021-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6496189B1 (en) | Remote landscape display and pilot training | |
US7612777B2 (en) | Animation generating apparatus, animation generating method, and animation generating program | |
CN112330806B (zh) | 一种基于低功耗硬件平台的视景合成方法及系统 | |
CN106530896A (zh) | 一种用于无人机飞行演示的虚拟系统 | |
US20230162449A1 (en) | Systems and methods for data transmission and rendering of virtual objects for display | |
CN110852952B (zh) | 一种基于gpu的大规模地形实时绘制方法 | |
CN110503718B (zh) | 三维工程模型轻量化显示方法 | |
CN110908510B (zh) | 一种倾斜摄影建模数据在沉浸式显示设备中的应用方法 | |
CN112381935B (zh) | 一种合成视觉生成及多元融合装置 | |
CN103714213B (zh) | 一种复杂地理信息的并行绘制方法 | |
CN113593027B (zh) | 一种三维航电显控界面装置 | |
Schachter | Computer image generation for flight simulation | |
CN111210516B (zh) | 一种用于航电设备综合显示控制的软件平台 | |
KR20100040328A (ko) | 지리공간 텍스쳐 데이터를 해상도의 연속 부가층으로 선택적으로 검색 및 표시하는 지리공간 데이터 시스템 및 그 관련 방법 | |
CN105574102A (zh) | 一种电子地图数据加载的方法及装置 | |
JP2007052775A (ja) | 移動プラットフォームによって横断される陸上の物体の地形のリアルタイム等角ビューをレンダリングするための方法およびシステム | |
KR20100047889A (ko) | 사용자 선택의 관점에 기반하여 지리공간 텍스쳐를 선택적으로 검색 및 표시하는 지리공간 데이터 시스템 및 그 관련 방법 | |
CN110866964A (zh) | 一种gpu加速的椭球裁剪图地形渲染方法 | |
CN111026891A (zh) | 一种地图底图集成方法 | |
CN111798364B (zh) | 一种基于全景预烘焙的快速渲染方法及视景成像系统 | |
US5969723A (en) | Method for incorporating high detail normal vector information into polygonal terrain databases and image display system which implements this method | |
CN117671130A (zh) | 基于倾斜摄影的数字孪生智慧渔港的搭建使用方法 | |
CN111210515A (zh) | 一种基于地形实时渲染的机载合成视觉系统 | |
US11978160B2 (en) | GPU-based digital map tile generation method and system | |
CN108627884B (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 |