CN106548500A - 一种基于gpu的二维态势图像处理方法及装置 - Google Patents
一种基于gpu的二维态势图像处理方法及装置 Download PDFInfo
- Publication number
- CN106548500A CN106548500A CN201610847405.8A CN201610847405A CN106548500A CN 106548500 A CN106548500 A CN 106548500A CN 201610847405 A CN201610847405 A CN 201610847405A CN 106548500 A CN106548500 A CN 106548500A
- Authority
- CN
- China
- Prior art keywords
- data
- gpu
- frame buffer
- model
- layer
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- 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/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及GPU的应用领域,针对现有技术存在的问题,提供一种基于GPU的二维态势图像处理方法及装置。结合目前电子对抗装备研制和GPU渲染技术工程应用的实际情况,在硬件上采用主板集成显卡+GPU独立显卡的结构,在软件实现上则采用GPU实时渲染和非实时渲染结合的绘制方案,将态势显示的数据分层处理,以便在二维态势中高效率地实现大规模数据的实时绘制。本发明中GPU通过openGl技术开发,将数据进行分类,形成数据图层;给每个图层绑定对应的纹理;GPU判断是否需要更新帧缓存取中的变化数据,采用GPU可编程管线技术,将帧缓存中图层数据进行合并,通过GPU渲染技术进行二维态势展现。
Description
技术领域
本发明涉及GPU(Graphic Processing Unit,即图形处理器)可编程管线技术的应用领域,尤其是一种基于GPU的二维态势图像处理方法及装置。
背景技术
目前,在研和现役的电子对抗装备中的二维态势处理一般都还是采用比较原始的CPU绘制技术,CPU在绘图的效率上无法与业界当前流行的GPU绘制相媲美,效率上至少低一个数量级别,很难做到动态数据的实时绘制,尤其是针对大批量的运动目标航迹处理,往往无法满足实时计算与处理的需求。单纯的GPU实时渲染虽然处理速度快,但是灵活度不够;GPU非实时渲染处理速度不够理想,但是可以使用复杂的渲染算法实现高真的显示效果。
复杂电磁环境条件下,有源和无源目标探测定位设备要求具有大容量实时目标数据处理与航迹显示操作控制的能力。这要求计算机和应用程序在目标航迹处理的过程中,需要实时计算和处理的数据量特别大。例如,如果要求同时处理1000批目标,每一批目标有2000个数据点,那么在态势上同时需要更新的数据有1000×2000个点,同时加上二维态势的背景地图数据(预计数据量1000000),数据量骤增。采用原始的CPU绘制或常规的GPU实时绘制技术处理如此巨大的数据量,想实现二维态势的实时刷新几乎是不可能的。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种基于GPU的二维态势图像处理方法及装置。本发明结合目前电子对抗装备研制和GPU渲染技术工程应用的实际情况,为了解决动态大容量数据的高效率实时绘制问题,本发明在计算机硬件上采用主板集成显卡+GPU独立显卡的结构,在软件实现上则采用GPU实时渲染和非实时渲染结合的绘制方案,将态势显示的数据分层处理,以便在二维态势中高效率地实现大规模数据的实时绘制。
本发明采用的技术方案如下:
一种基于GPU的二维态势图像处理方法包括:
步骤1:在GPU中创建固定帧缓冲区和变化帧缓冲区;
步骤2:GPU通过openGl技术开发,将地图中不需要更新的固定数据与需要更新的变化数据进行分类,并将固定数据的各个场景,用对应的模型表示,然后将各个固定数据模型存入固定帧缓冲区,形成固定数据图层;将变化数据存入变化帧缓冲区中,形成变化数据图层;固定数据对应一个图层;变化数据对应另一个图层;给每个图层绑定对应的纹理;
步骤3:GPU判断是否需要更新帧缓存取中的变化数据,如果变化数据没有发生变化,则不更新;否则,调用openGl绘制命令,将帧缓冲区中的变化数据进行更新;
步骤4:采用GPU可编程管线技术,将帧缓存中图层数据,利用alpha透明度原理进行混合处理进行二维态势展现。
进一步的,所述其中固定数据的模块包括地球模型、海洋模型、山地模型、机场模型、城市建筑模型、天空模型,以及其他固定数据对应的不同种类的模型。
一种基于GPU的二维态势图像处理装置包括:
缓冲区创建模块,用于在GPU中创建固定帧缓冲区和变化帧缓冲区;
数据分类存储模块,用于GPU通过openGl技术开发,将地图中不需要更新的固定数据与需要更新的变化数据进行分类,并将固定数据的各个场景,用对应的模型表示,然后将各个固定数据模型存入固定帧缓冲区;将变化数据存入变化帧缓冲区中;固定数据对应一个图层;变化数据对应另一个图层;并将不同图层数据保存在显卡的帧缓冲区中,并形成对应图层;给每个图层绑定对应的纹理;
变化数据更新模块,用于GPU判断是否需要更新帧缓存取中的变化数据,如果变化数据没有发生变化,则不更新;否则,调用openGl绘制命令,将帧缓冲区中的变化数据进行更新;
二维态势数据展现模块,用于采用GPU可编程管线技术,将帧缓存中图层数据,利用alpha透明度原理进行混合处理进行二维态势展现:
进一步的,所述其中固定数据的模块包括地球模型、海洋模型、山地模型、机场模型、城市建筑模型、天空模型,以及其他固定数据对应的不同种类的模型。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明利用GPU技术实现非实时渲染和实时渲染相互结合的方式进行二维态势数据处理,能够极大地提高了二维态势显示绘制的效率。经过对比分析,对于大规模实时绘制运动目标航迹的情况(1000批目标,长航迹的情况),整体的显示绘制效率较直接CPU绘制提高至少5倍,较GPU实时绘制提高1倍。
在计算机硬件实现上采用了主板集成显卡+GPU独立显卡的结构,使集成显卡CPU从原来图形处理的任务中解放出来,执行其它更多的***任务;独立显卡专门为实现图形渲染而执行复杂的数学和几何计算,进一步提高计算机整体性能,实现了二维态势中动态、大容量数据高效率实时绘制的要求。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是GPU二维态势展现流程说明示意图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本发明的技术方案是采用GPU非实时渲染和实时渲染相互结合的方式,在两维态势处理中减少每一帧同时绘制的数据量,降低绘制吞吐量,实现低功耗,高帧率绘制。其特征步骤如下:
1) 数据分类处理
首先,根据二维态势中要显示绘制的数据的用途而将需要处理的数据划分为固定数据和可变化数据。固定数据即背景地图的地理要素数据。可变数据即平台数据、环境杂波和运动目标航迹数据。
2) 图层管理
根据数据分类,建立图层。基本的原则是:固定数据一个图层,变化数据一个图层,实时数据一个图层。
3) 图层合并。
采用GPU可编程管线技术,将已经绘制完成的图层数据进行合并,最后通过二维态势展现给用户。
实施例一:
根据图1对渲染流程的说明,对软件实现的具体方式如下:
1) 创建帧缓冲区,对应数据分类处理,可以认为是划分图层,将数据分配在显卡中。
glGenFramebuffersEXT(1, &targetId._FBOID);
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, targetId._FBOID);
glGenRenderbuffersEXT(1, &targetId._RBOID);
glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, targetId._RBOID);
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT,
GL_DEPTH_COMPONENT, width, height);
glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0);
glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT,
GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, targetId._RBOID);
2) 创建了以后,为了把数据绘制到上面,还需要给他绑定一个纹理,可以形象地理解成一张图片,绘制的数据将被存储在该纹理当中,这个过程对应于图层管理。
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, targetId._FBOID);
glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT,
GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, textureId._texture, 0);
3) 绑定纹理以后,以后的绘制,则是将数据绘制到纹理上了,这个过程就是实现图层合并。
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, targetId->_FBOID); glBegin()... glEnd()
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
4) 图层合并过程
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (4)
1.一种基于GPU的二维态势图像处理方法,其特征在于包括:
步骤1:在GPU中创建固定帧缓冲区和变化帧缓冲区;
步骤2:GPU通过openGl技术开发,将地图中不需要更新的固定数据与需要更新的变化数据进行分类,并将固定数据的各个场景,用对应的模型表示,然后将各个固定数据模型存入固定帧缓冲区,形成固定数据图层;将变化数据存入变化帧缓冲区中,形成变化数据图层;固定数据对应一个图层;变化数据对应另一个图层;给每个图层绑定对应的纹理;
步骤3:GPU判断是否需要更新帧缓存取中的变化数据,如果变化数据没有发生变化,则不更新;否则,调用openGl绘制命令,将帧缓冲区中的变化数据进行更新;
步骤4:采用GPU可编程管线技术,将帧缓存中图层数据,利用alpha透明度原理进行混合处理进行二维态势展现。
2.根据权利要求1所述的一种基于GPU的二维态势图像处理方法,其特征在于所述其中固定数据的模块包括地球模型、海洋模型、山地模型、机场模型、城市建筑模型、天空模型,以及其他固定数据对应的不同种类的模型。
3.一种基于GPU的二维态势图像处理装置,其特征在于包括:
缓冲区创建模块,用于在GPU中创建固定帧缓冲区和变化帧缓冲区;
数据分类存储模块,用于GPU通过openGl技术开发,将地图中不需要更新的固定数据与需要更新的变化数据进行分类,并将固定数据的各个场景,用对应的模型表示,然后将各个固定数据模型存入固定帧缓冲区;将变化数据存入变化帧缓冲区中;固定数据对应一个图层;变化数据对应另一个图层;并将不同图层数据保存在显卡的帧缓冲区中,并形成对应图层;给每个图层绑定对应的纹理;
变化数据更新模块,用于GPU判断是否需要更新帧缓存取中的变化数据,如果变化数据没有发生变化,则不更新;否则,调用openGl绘制命令,将帧缓冲区中的变化数据进行更新;
二维态势数据展现模块,用于采用GPU可编程管线技术,将帧缓存中图层数据,利用alpha透明度原理进行混合处理进行二维态势展现。
4.根据权利要求3所述的一种基于GPU的二维态势图像处理方法,其特征在于所述其中固定数据的模块包括地球模型、海洋模型、山地模型、机场模型、城市建筑模型、天空模型,以及其他固定数据对应的不同种类的模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610847405.8A CN106548500A (zh) | 2016-09-26 | 2016-09-26 | 一种基于gpu的二维态势图像处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610847405.8A CN106548500A (zh) | 2016-09-26 | 2016-09-26 | 一种基于gpu的二维态势图像处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106548500A true CN106548500A (zh) | 2017-03-29 |
Family
ID=58367971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610847405.8A Pending CN106548500A (zh) | 2016-09-26 | 2016-09-26 | 一种基于gpu的二维态势图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106548500A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107133907A (zh) * | 2016-02-26 | 2017-09-05 | 龙芯中科技术有限公司 | 图形绘制方法和装置 |
CN108460071A (zh) * | 2017-12-22 | 2018-08-28 | 华北计算技术研究所(中国电子科技集团公司第十五研究所) | 一种地形变化情况通报方法 |
CN108710524A (zh) * | 2018-05-17 | 2018-10-26 | 中石化石油工程技术服务有限公司 | 一种三缓冲快速交互式绘图方法 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
CN110941413A (zh) * | 2019-12-09 | 2020-03-31 | Oppo广东移动通信有限公司 | 显示画面的生成方法及相关装置 |
CN111897608A (zh) * | 2020-06-12 | 2020-11-06 | 南斗六星***集成有限公司 | 一种基于linux的车载仪表显示方法和*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810199A (zh) * | 2012-06-15 | 2012-12-05 | 成都平行视野科技有限公司 | 一种基于gpu的图像处理方法 |
CN103093047A (zh) * | 2013-01-12 | 2013-05-08 | 天津大学 | 典型飞行器视景仿真*** |
CN105139356A (zh) * | 2015-08-25 | 2015-12-09 | 北京锤子数码科技有限公司 | 一种图像数据的毛玻璃效果处理方法和装置 |
CN105224288A (zh) * | 2014-06-27 | 2016-01-06 | 北京大学深圳研究生院 | 双目三维图形渲染方法及相关*** |
-
2016
- 2016-09-26 CN CN201610847405.8A patent/CN106548500A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810199A (zh) * | 2012-06-15 | 2012-12-05 | 成都平行视野科技有限公司 | 一种基于gpu的图像处理方法 |
CN103093047A (zh) * | 2013-01-12 | 2013-05-08 | 天津大学 | 典型飞行器视景仿真*** |
CN105224288A (zh) * | 2014-06-27 | 2016-01-06 | 北京大学深圳研究生院 | 双目三维图形渲染方法及相关*** |
CN105139356A (zh) * | 2015-08-25 | 2015-12-09 | 北京锤子数码科技有限公司 | 一种图像数据的毛玻璃效果处理方法和装置 |
Non-Patent Citations (6)
Title |
---|
MARIO ZECHNER 等著,曾繁贰 等译: "《Android4游戏编程入门经典》", 30 November 2012 * |
ZLT: "OpenGL-非实时渲染与实时混合使用(有图有真相)", 《HTTPS://WWW.CNBLOGS.COM/ZHANGLITONG/ARCHIVE/2013/08/06/3241938.HTML》 * |
ZLT: "OpenGL-非实时渲染与实时混合使用(有图有真相)", 《HTTPS://WWW.CNBLOGS.COM/ZHANGLITONG/P/3241938.HTML》 * |
互联网: "转载:OpenGL-非实时渲染与实时混合使用(有图有真相)", 《HTTP://WWW.IT610.COM/ARTICLE/2229262.HTM》 * |
无记载: "转载:OpenGL-非实时渲染与实时混合使用(有图有真相)", 《HTTP://DOC.OKBASE.NET/ZHANGLITONG/ARCHIVE/14225.HTML》 * |
无记载: "转载:OpenGL-非实时渲染与实时混合使用(有图有真相)", 《HTTP://WWW.ITDAAN.COM/BLOG/2013/08/06/B86EC05D7C74BE65A13AD96D0A9F5A10.HTML》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107133907A (zh) * | 2016-02-26 | 2017-09-05 | 龙芯中科技术有限公司 | 图形绘制方法和装置 |
CN108460071A (zh) * | 2017-12-22 | 2018-08-28 | 华北计算技术研究所(中国电子科技集团公司第十五研究所) | 一种地形变化情况通报方法 |
CN108460071B (zh) * | 2017-12-22 | 2021-11-02 | 华北计算技术研究所(中国电子科技集团公司第十五研究所) | 一种地形变化情况通报方法 |
CN108710524A (zh) * | 2018-05-17 | 2018-10-26 | 中石化石油工程技术服务有限公司 | 一种三缓冲快速交互式绘图方法 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
CN108765534B (zh) * | 2018-05-24 | 2022-06-21 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
CN110941413A (zh) * | 2019-12-09 | 2020-03-31 | Oppo广东移动通信有限公司 | 显示画面的生成方法及相关装置 |
CN110941413B (zh) * | 2019-12-09 | 2023-04-11 | Oppo广东移动通信有限公司 | 显示画面的生成方法及相关装置 |
CN111897608A (zh) * | 2020-06-12 | 2020-11-06 | 南斗六星***集成有限公司 | 一种基于linux的车载仪表显示方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106548500A (zh) | 一种基于gpu的二维态势图像处理方法及装置 | |
US8659589B2 (en) | Leveraging graphics processors to optimize rendering 2-D objects | |
US9275493B2 (en) | Rendering vector maps in a geographic information system | |
CN110070613A (zh) | 基于模型压缩和异步加载的大型三维场景网页展示方法 | |
CN106934058B (zh) | 矢量数据读取方法及***、矢量数据可视化方法及*** | |
US10019802B2 (en) | Graphics processing unit | |
CN110503718B (zh) | 三维工程模型轻量化显示方法 | |
US10249077B2 (en) | Rendering the global illumination of a 3D scene | |
CN111091620B (zh) | 基于图形学的地图动态路网处理方法及***、计算机设备 | |
CN111127603B (zh) | 动画生成方法、装置、电子设备及计算机可读存储介质 | |
CN114065320A (zh) | 一种基于lod的cad图形轻量化的渲染方法 | |
CN113495933A (zh) | 一种矢量瓦片显示方法及*** | |
CN111569418B (zh) | 对于待输出内容的渲染方法、装置、介质及电子设备 | |
US6831642B2 (en) | Method and system for forming an object proxy | |
Masood et al. | High‐performance virtual globe GPU terrain rendering using game engine | |
KR20160068204A (ko) | 메시 지오메트리를 위한 데이터 처리 방법 및 이를 기록한 컴퓨터 판독 가능 저장 매체 | |
US10657705B2 (en) | System and method for rendering shadows for a virtual environment | |
US11348287B2 (en) | Rendering of graphic objects with pattern paint using a graphics processing unit | |
US20040012602A1 (en) | System and method for image-based rendering with object proxies | |
CN115953541A (zh) | 一种四叉树lod地形生成方法、装置、设备及存储介质 | |
CN110738719A (zh) | 一种基于视距分层优化的Web3D模型渲染方法 | |
CN114943797A (zh) | 基于WebGL大尺寸热力图渲染方法、***、介质和设备 | |
Timokhin et al. | An efficient technology of real-time modeling of height field surface on the ray tracing pipeline | |
Ma et al. | Rasterization of geometric primitive in graphics based on FPGA | |
Lou et al. | Environmental design with huge landscape in real-time simulation system: Real-time simulation system applied to real project |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170329 |
|
WD01 | Invention patent application deemed withdrawn after publication |