一种百万量级三维态势目标的实时绘制方法技术

技术编号:26973108 阅读:19 留言:0更新日期:2021-01-06 00:06
本发明专利技术涉及计算机图形学领域的一种百万量级三维态势目标的实时绘制方法,包括:辅助线程内针对百万量级的态势目标构建规则经纬度网格索引,同时根据态势目标的传回数据,定时更新规则经纬度网格索引,并将索引结果返回给主线程;主线程内增量调度场景内的可见态势目标,即当漫游高度小于预设高度时,确定需要显示的态势目标;在漫游过程中,申请与回收态势目标的图形对象;通过图像处理器对图形对象进行高效渲染,获得态势目标的三维态势绘制结果。该方法可实现百万量级三维态势目标的流畅渲染,场景缩放漫游时也无明显的卡顿现象,与使用渲染引擎直接绘制的方法相比,本方法显著提升了实时渲染效率和用户操作的流畅度。

【技术实现步骤摘要】
一种百万量级三维态势目标的实时绘制方法
本专利技术涉及计算机图形学领域,尤其涉及一种百万量级三维态势目标的实时绘制方法。
技术介绍
随着建设海洋强国和国家战略的提出,我国海上活动正走向全球,同时对三维数字地球中海上活动目标的态势显示能力与承载量提出了新的要求。根据统计,我国民船、军用舰艇以及全球300总吨以上国际航船数量已超过100万艘,海上活动船只数量达到50万至60万艘。对这一量级的目标进行三维显示是一项具有挑战的工作,一方面大量的图形对象将造成巨大的计算资源开销,另一方面图形处理器(GraphicsProcessingUnit,GPU)的性能难以满足海量图元的实时渲染需求。传统的绘制方法将全部目标创建于内存中,在每一帧内判断每个目标是否可见,并使用渲染引擎对可见目标进行直接绘制。无论目标是否在视口内都有一组图形对象与之一一对应,当数量达到百万量级时将造成大量的内存资源的占用。同时,目标的可见判断、图形构建以及逐帧更新都为中央处理器(CentralProcessingUnit,CPU)密集型计算,百万目标的计算量将给CPU带来极大的工作负荷,严重影响系统操作的流畅度。此外,GPU性能也成为海量三维图形实时渲染的瓶颈,频繁而又琐碎的图形绘制请求将生成大量的绘制批次,过多的数据传输导致无法充分发挥GPU的性能,造成渲染帧率较低。在态势目标的三维可视化表达方面,常用的方法有基于点图标的方法和基于密度图的方法。基于点图标的方法用圆点表示目标对象,利用点的大小和颜色特征表达目标的态势信息,然而当点的数量达到百万量级、场景范围有限时,图标之间会出现互相重叠、拥挤的现象,造成可视化表达的混乱。基于密度图的方法使用颜色对目标在地理空间上分布的密度进行编码,是在统计预处理的基础上实现的,无法满足百万量级数据的实时性需求,同时该方法丢失了目标实体的空间信息。因此在全球尺度上需要对百万量级的数据进行综合简化表达,在减少点的数量的同时,也能反映目标的空间分布特征。另一方面,当相机高度降低、观察范围减小时,需要显示单个目标的具体信息与对应图形,这一过程的关键问题是如何快速筛选并创建视口内可见的目标图形对象。当相机视角改变时,每帧对全部目标点遍历做可视判断需要消耗大量的计算资源,会导致场景漫游的不流畅。此外,应避免目标图形对象的频繁创建与删除,尽可能重复使用已有的图形,以减少不必要的性能开销。综上所述,迫切需要一种能够突破性能瓶颈的解决方案,以满足百万量级三维态势目标的实时绘制与流畅的场景调度。
技术实现思路
本专利技术的目的在于针对全球海洋范围内百万量级的海上活动目标的态势数据,提出一种可实时渲染、场景操作流畅的大批量三维对象的绘制策略。实现本专利技术目的的技术解决方案为:一种百万量级三维态势目标的实时绘制方法,包括如下步骤:步骤1,在全球尺度下,辅助线程内针对百万量级的态势目标构建规则经纬度网格索引,同时根据所述态势目标的传回数据,定时更新所述规则经纬度网格索引,并将索引结果返回给主线程;步骤2,在局部尺度下,所述主线程内增量调度场景内的可见态势目标,即当漫游高度小于预设高度时,确定需要显示的态势目标;步骤3,在漫游过程中,申请与回收所述态势目标的图形对象,所述图形对象用于表达态势目标;步骤4,通过图像处理器对所述图形对象进行高效渲染,获得所述态势目标的三维态势绘制结果。进一步地,在一种实现方式中,所述步骤1包括:在所述全球尺度下,即当所述漫游高度大于或等于预设高度时,使用一个点符号对每个所述规则经纬度网格内的若干态势目标进行综合表达。进一步地,在一种实现方式中,所述步骤1,包括:步骤1-1,在所述全球尺度下,将全球范围划分成1度×1度的经纬度网格,将所有所述态势目标根据所在的地理位置划分至相应的经纬度网格,对每个所述经纬度网格内所有态势目标的经度与纬度分别求取平均值,计算得到新的经度和纬度作为所述点符号的位置,用以代表所述经纬度网格内的所有态势目标,并根据所述态势目标的数量分级设置点符号的半径;步骤1-2,构建所述经纬度网格与态势目标的双向映射关系,即所述态势目标的规则经纬度网格索引;步骤1-3,将所有所述点符号的位置与点符号的半径大小按照预设规则进行统计,生成统计结果,以所述统计结果构建图形的顶点缓存,并将所述点符号放入渲染队列中等待图形处理器渲染;步骤1-4、在辅助线程中每隔一定时间根据所述态势目标的传回数据,更新所述态势目标的规则经纬度网格索引,并将更新后的态势目标的规则经纬度网格索引返回给所述主线程,用于后续步骤中的场景调度,所述一定时间即态势目标数据传回的平均时间间隔。进一步地,在一种实现方式中,所述步骤2,包括:在所述局部尺度下,当相机姿态发生变化时,首先通过三维场景中当前相机的姿态,获取最大化的可见经纬度范围,并快速遍历出落在所述最大化的可见经纬度范围内的规则经纬度网格;再利用视锥体对所述落在所述最大化的可见经纬度范围内的规则经纬度网格进一步筛选,获得可见态势目标;最后将可见态势目标的目标集合与相机姿态变化前的可见态势目标的目标集合进行比较,确定移入和移出所述相机的视口的态势目标。进一步地,在一种实现方式中,所述步骤2,包括:步骤2-1、根据当前所述相机的姿态获取最大化的可见经纬度范围;步骤2-2、逐一判断所述规则经纬度网格是否在最大化的可见经纬度范围内,针对完全在所述最大化的可见经纬度范围内,以及部分在所述最大化的可见经纬度范围内的规则经纬度网格,对所述规则经纬度网格包含的所有态势目标进行下一步骤的判断;步骤2-3、逐一判断所述态势目标是否在相机的视锥体内,若在所述视锥体内,则确定所述态势目标为可见态势目标,并将所述可见态势目标加入可见态势目标的目标集合;步骤2-4、将所述可见态势目标的目标集合与相机姿态变化前的目标集合进行比较,获取新移入所述视口的态势目标与移出视口的态势目标。进一步地,在一种实现方式中,所述步骤2-1包括:步骤2-1-1,利用所述相机的笛卡尔坐标、垂直视场角、视口宽高比以及视线方向,计算视椎体四个棱边的方向向量;步骤2-1-2,根据所述四个棱边的方向计算视口正上、正下、正左和正右四个方向向量;步骤2-1-3,利用余弦定理对所述步骤2-1-1和步骤2-1-2获得的8个方向与三维地球求交,获得8个交点,其中,若某一方向与所述三维地球不相交,则将所述方向对应的向量绕相机点向视线方向旋转一定角度,使旋转调整后的向量与地球相切,将相切点作为交点;步骤2-1-4,将获得的所述8个交点的笛卡尔坐标转化为经纬度坐标,求取经度与纬度的最大值与最小值,所述经度与纬度的最大值与最小值所围成的矩形范围即为最大化的可见经纬度范围;步骤2-1-5,若北极点或者南极点在所述最大化的可见经纬度范围内可见,则对所述最大化的可见经纬度范围进行修正,将所述最大化的可见经纬度范围的经度范围修正为-180度至180度;其中,若北极点在所述最大化本文档来自技高网
...

【技术保护点】
1.一种百万量级三维态势目标的实时绘制方法,其特征在于,包括如下步骤:/n步骤1,在全球尺度下,辅助线程内针对百万量级的态势目标构建规则经纬度网格索引,同时根据所述态势目标的传回数据,定时更新所述规则经纬度网格索引,并将索引结果返回给主线程;/n步骤2,在局部尺度下,所述主线程内增量调度场景内的可见态势目标,即当漫游高度小于预设高度时,确定需要显示的态势目标;/n步骤3,在漫游过程中,申请与回收所述态势目标的图形对象,所述图形对象用于表达态势目标;/n步骤4,通过图像处理器对所述图形对象进行高效渲染,获得所述态势目标的三维态势绘制结果。/n

【技术特征摘要】
1.一种百万量级三维态势目标的实时绘制方法,其特征在于,包括如下步骤:
步骤1,在全球尺度下,辅助线程内针对百万量级的态势目标构建规则经纬度网格索引,同时根据所述态势目标的传回数据,定时更新所述规则经纬度网格索引,并将索引结果返回给主线程;
步骤2,在局部尺度下,所述主线程内增量调度场景内的可见态势目标,即当漫游高度小于预设高度时,确定需要显示的态势目标;
步骤3,在漫游过程中,申请与回收所述态势目标的图形对象,所述图形对象用于表达态势目标;
步骤4,通过图像处理器对所述图形对象进行高效渲染,获得所述态势目标的三维态势绘制结果。


2.根据权利要求1所述的一种百万量级三维态势目标的实时绘制方法,其特征在于,所述步骤1包括:在所述全球尺度下,即当所述漫游高度大于或等于预设高度时,使用一个点符号对每个所述规则经纬度网格内的若干态势目标进行综合表达。


3.根据权利要求1所述的一种百万量级三维态势目标的实时绘制方法,其特征在于,所述步骤1,包括:
步骤1-1,在所述全球尺度下,将全球范围划分成1度×1度的经纬度网格,将所有所述态势目标根据所在的地理位置划分至相应的经纬度网格,对每个所述经纬度网格内所有态势目标的经度与纬度分别求取平均值,计算得到新的经度和纬度作为所述点符号的位置,用以代表所述经纬度网格内的所有态势目标,并根据所述态势目标的数量分级设置点符号的半径;
步骤1-2,构建所述经纬度网格与态势目标的双向映射关系,即所述态势目标的规则经纬度网格索引;
步骤1-3,将所有所述点符号的位置与点符号的半径大小按照预设规则进行统计,生成统计结果,以所述统计结果构建图形的顶点缓存,并将所述点符号放入渲染队列中等待图形处理器渲染;
步骤1-4、在辅助线程中每隔一定时间根据所述态势目标的传回数据,更新所述态势目标的规则经纬度网格索引,并将更新后的态势目标的规则经纬度网格索引返回给所述主线程,用于后续步骤中的场景调度,所述一定时间即态势目标数据传回的平均时间间隔。


4.根据权利要求1所述的一种百万量级三维态势目标的实时绘制方法,其特征在于,所述步骤2,包括:在所述局部尺度下,当相机姿态发生变化时,首先通过三维场景中当前相机的姿态,获取最大化的可见经纬度范围,并快速遍历出落在所述最大化的可见经纬度范围内的规则经纬度网格;再利用视锥体对所述落在所述最大化的可见经纬度范围内的规则经纬度网格进一步筛选,获得可见态势目标;最后将可见态势目标的目标集合与相机姿态变化前的可见态势目标的目标集合进行比较,确定移入和移出所述相机的视口的态势目标。


5.根据权利要求1所述的一种百万量级三维态势目标的实时绘制方法,其特征在于,所述步骤2,包括:
步骤2-1、根据当前所述相机的姿态获取最大化的可见经纬度范围;
步骤2-2、逐一判断所述规则经纬度网格是否在最大化的可见经纬度范围内,针对完全在所述最大化的可见经纬度范围内,以及部分在所述最大化的可见经纬度范围内的规则经纬度网格,对所述规则经纬度网格包含的所有态势目标进行下一步骤的判断;
步骤2-3、逐一判断所述态势目标是否在相机的视锥体内,若在所述视锥体内,则确定所述态势目标为可见态势目标,并将所述可见态势目标加入可见态势目标的目标集合;
步骤2-4、将所述可见态势目标的目标集合与相机姿态变化前的目标集合进行比较,获取新移入所述视口的态势目标与移出视口的态势目标。


6.根据权利要求5所述的一种百万量级三维态...

【专利技术属性】
技术研发人员:占伟伟李佳祺蒉露超李坪泽马宁袁思佳王辉
申请(专利权)人:中国电子科技集团公司第二十八研究所
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1