亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于國(guó)產(chǎn)化平臺(tái)的雷達(dá)回波視頻軟件繪制研究

        2020-12-25 02:09:32李華君
        雷達(dá)與對(duì)抗 2020年2期
        關(guān)鍵詞:著色器圖元尾跡

        李華君,張 超,陳 婧,林 悅

        (中國(guó)船舶集團(tuán)有限公司第八研究院,南京 211153)

        0 引 言

        現(xiàn)代雷達(dá)需要顯示的信息量龐大[1],對(duì)數(shù)據(jù)處理的實(shí)時(shí)性要求較高,雷達(dá)的顯控終端的設(shè)計(jì)顯得尤為重要。[2]在非國(guó)產(chǎn)化平臺(tái)下,顯控終端對(duì)雷達(dá)回波、尾跡衰減效果的顯示實(shí)現(xiàn)主要有以下幾種方法:(1)基于專用圖形卡+軟件繪制疊加的軟硬件結(jié)合方法;(2)采用CPU+GPU的聯(lián)合渲染的方法;(3)利用CPU資源和軟件技術(shù)結(jié)合(如MFC框架下GDI或D3D繪制等)的方法。以上方法或不支持國(guó)產(chǎn)平臺(tái),或不適配國(guó)產(chǎn)操作系統(tǒng),或造成大量的系統(tǒng)資源占用。[3]而采用硬件板卡的方式,設(shè)備成本及維護(hù)費(fèi)用大。[4]針對(duì)雷達(dá)軟件化和國(guó)產(chǎn)化的迫切需求,開(kāi)展基于國(guó)產(chǎn)化有限資源環(huán)境下的回波視頻軟件繪制研究勢(shì)在必行。

        本文提出了一種結(jié)合QT圖形化視圖框架特性,基于圖元分層及OpenGL繪制回波視頻的雷達(dá)綜合態(tài)勢(shì)顯示軟件實(shí)現(xiàn)方法;在顯示圖層中實(shí)現(xiàn)回波視頻及其尾跡衰減效果的顯示控制,并結(jié)合其他圖層完成綜合態(tài)勢(shì)集成顯示,通過(guò)實(shí)驗(yàn)驗(yàn)證了方法的可行性;采用QT和OpenGL結(jié)合的方法,為開(kāi)發(fā)者提供高效解決方法,并支持跨平臺(tái)移植應(yīng)用;利用OpenGL著色語(yǔ)言(OpenGLShadingLanguage,GLSL)編程將數(shù)據(jù)計(jì)算和圖形渲染放在GPU進(jìn)行,有效平衡了系統(tǒng)開(kāi)銷。

        1 OpenGL技術(shù)原理

        1.1 OpenGL

        OpenGL是圖形硬件的一個(gè)軟件接口,也是該領(lǐng)域的工業(yè)標(biāo)準(zhǔn)。OpenGL是一個(gè)與硬件無(wú)關(guān)的軟件接口,可支持不同的系統(tǒng),如Windows系統(tǒng)、Unix、Linux、MacOS、OS/2及主流國(guó)產(chǎn)操作系統(tǒng)。因此,基于OpenGL的軟件移植性好,應(yīng)用廣泛。

        1.2 GLSL和可編程渲染管線

        GLSL是一種類似于C/C++的高級(jí)語(yǔ)言。使用GLSL語(yǔ)言編寫(xiě)自定義的著色器有利于開(kāi)發(fā)者移植和實(shí)現(xiàn)所需的特效效果。

        最新的OpenGL標(biāo)準(zhǔn)中定義了3個(gè)可編程圖形處理器,即“頂點(diǎn)著色器”(Vertex Shader),“幾何著色器”(Geometry Shader)和“片段著色器”(Fragment Shader)。圖形管線渲染流程的每個(gè)階段抽象展示如圖1所示,其中背景部分代表的是可以注入自定義的著色器的部分。

        圖1 管線渲染流程

        自定義的頂點(diǎn)著色器會(huì)替換固定管線中所有的關(guān)于頂點(diǎn)的運(yùn)算,包括頂點(diǎn)和法線變換、紋理坐標(biāo)生成和變換、光照以及材質(zhì)應(yīng)用這些傳統(tǒng)的管線命令。自定義的幾何著色器會(huì)替換固定管線中所有關(guān)于圖元操作,包括剪裁、增加和改變圖元的工作。自定義的片段著色器會(huì)替換固定管線中所有關(guān)于片段的運(yùn)算,包括代紋理應(yīng)用、霧化和像素匯總的工作。

        1.3 紋 理

        紋理是一種結(jié)構(gòu)化的存儲(chǔ)形式。除了常見(jiàn)的二維紋理以外,也存在一維、三維或者多個(gè)紋理疊加后形成的單一對(duì)象。紋理是由紋素組成。除了用于儲(chǔ)存圖像數(shù)據(jù),它也可以被用來(lái)儲(chǔ)存大量的數(shù)據(jù),如地形數(shù)據(jù)、視頻數(shù)據(jù)等。這些紋理數(shù)據(jù)可以發(fā)送給著色器。著色器使用紋理采樣器來(lái)快速尋址并采樣。紋理中的數(shù)據(jù)可以被GPU直接讀取并進(jìn)行渲染,可節(jié)省大量的內(nèi)存空間。

        2 QT圖形化視圖框架

        雷達(dá)綜合態(tài)勢(shì)顯示軟件結(jié)合QT圖形化視圖框架特性實(shí)現(xiàn),采用的GraphicsView框架如圖2所示。

        GraphicsView是一個(gè)基于圖元的Model/View架構(gòu)的框架,能對(duì)大量圖元進(jìn)行管理,并提供碰撞檢測(cè)、坐標(biāo)變換和圖元組等多種方便的功能。軟件將OpenGL繪制、二次目標(biāo)、坐標(biāo)軸輔助線和開(kāi)窗起始區(qū)域繪制等使用QGraphicsItem包裝,按照一定的層疊順序放入一個(gè)Graphics Scene進(jìn)行管理。圖元的層疊順序由下而上依次是:

        圖2 雷達(dá)綜合態(tài)勢(shì)顯示分層架構(gòu)

        (1) OpenGL圖層:完成回波視頻的繪制,用OpenGL的FBO和頂點(diǎn)、片段著色器特性實(shí)現(xiàn)了雷達(dá)尾跡衰減效果,封裝為GLLayerItem圖元。

        (2) 坐標(biāo)系圖層:實(shí)現(xiàn)方位刻度、距標(biāo)環(huán)和方位線等信息繪制功能,封裝為CoordsLayerItem圖元。

        (3) 圖形繪制圖層:實(shí)現(xiàn)自定義繪圖、電子海圖、開(kāi)窗區(qū)域、自動(dòng)起始區(qū)域等繪制功能,封裝為GraphLayerItem圖元。

        (4) 目標(biāo)圖層:實(shí)現(xiàn)目標(biāo)信息管理、目標(biāo)軌跡管理等繪制功能,封裝為T(mén)argetLayerItem圖元。

        (5) 掃描線圖層:實(shí)現(xiàn)對(duì)掃描線消隱及其尾跡衰減、消隱的繪制與控制,封裝為ScanLineLayerItem圖元。

        為了在GraphicsView框架中利用OpenGL的特性進(jìn)行圖形渲染,需要設(shè)置一個(gè)新的QGLWidget作為QGraphicsView的視口。如果需要OpenGL提供反鋸齒功能,則需要引入OpenGL采樣緩沖支持,其中回波視頻的繪制工作主要在GLLayerItem圖元中完成。為了在GLLayerItem圖元中進(jìn)行自定義的OpenGL繪制,需要重寫(xiě)圖元的虛函數(shù)GLLayerItem::paint(),并在beginNativePaint()和endNativePainting()兩個(gè)函數(shù)之間進(jìn)行相關(guān)的OpenGL繪制操作。

        3 回波視頻繪制方法

        3.1 掃描線尾跡衰減繪制

        如圖3所示,根據(jù)天線實(shí)時(shí)角度提交一組頂點(diǎn)數(shù)據(jù)(V1,V2,V3)繪制扇形區(qū)域。利用GLSL計(jì)算片元顏色,實(shí)現(xiàn)掃描線漸變效果。

        圖3 掃描線尾跡衰減繪制示意圖

        (1) 繪制圓心角為θ扇形區(qū)域。OpenGL沒(méi)有提供直接繪制圓形或扇形方法。按照極限思維的方式,可以將扇形區(qū)域分割成n個(gè)圓心角為θ/n的扇形,分割數(shù)量n越多,圓心角為θ/n度數(shù)越小,因此可以把圓形或扇形區(qū)域認(rèn)為由多個(gè)等腰三角形組成。

        (2) 計(jì)算根據(jù)扇形區(qū)域頂點(diǎn)所在角度與掃描線的角度偏差值,設(shè)置線性混合系數(shù),如圖4所示。在片段著色器中利用GLSL內(nèi)置函數(shù)atan()、degrees()等計(jì)算扇形區(qū)域頂點(diǎn)所在的方位角度angle。根據(jù)方位角度angle與天線方位antennaAzi的差值diff設(shè)置線性混合系數(shù)a。調(diào)用內(nèi)置函數(shù)mix(antennaColor,blackColor,a)實(shí)現(xiàn)顏色antennaColor、blackColor的線性混疊,實(shí)現(xiàn)顏色漸變。整個(gè)過(guò)程頂點(diǎn)方位計(jì)算在GPU端進(jìn)行,每次繪制只需要從提交一組頂點(diǎn)數(shù)據(jù)至GPU即可。

        圖4 實(shí)現(xiàn)顏色混合的片段著色器

        3.2 視頻繪制

        用OpenGL的FBO、紋理和頂點(diǎn)和片段著色器特性實(shí)現(xiàn)了回波視屏的繪制和尾跡衰減效果。textureA用于存儲(chǔ)當(dāng)前需要更新扇形區(qū)域的視頻數(shù)據(jù),textureB用于存儲(chǔ)當(dāng)前和歷史視頻(包括尾跡衰減)的所有視頻數(shù)據(jù)。

        (1) 視頻數(shù)據(jù)的解算與周期內(nèi)視頻繪制

        雷達(dá)回波視頻數(shù)據(jù)存儲(chǔ)一個(gè)方位Azin上距離由近及遠(yuǎn)所有點(diǎn)的幅度值A(chǔ)nm,點(diǎn)之間距離約為30 m,方位上數(shù)據(jù)格式為。而OpenGL頂點(diǎn)坐標(biāo)是以直角坐標(biāo)表示,目標(biāo)位置在理論上一般要將極坐標(biāo)轉(zhuǎn)換成直角坐標(biāo),并根據(jù)幅度值計(jì)算出RGB值。公式(1)用來(lái)計(jì)算每個(gè)點(diǎn)的頂點(diǎn)坐標(biāo),其中Azin表示當(dāng)前視頻數(shù)據(jù)的方位。公式(2)用來(lái)計(jì)算每個(gè)點(diǎn)RGB值,其中Anm表示方位Azin中第m個(gè)點(diǎn)的幅度值,Amax表示幅度的最大值。

        v=

        (1)

        c=<0,Anm/Amax,0>

        (2)

        雷達(dá)綜合態(tài)勢(shì)顯示軟件通過(guò)定時(shí)器來(lái)觸發(fā)視頻的刷新,時(shí)間周期(刷新率)根據(jù)需求給定。如圖5所示,時(shí)間周期內(nèi)收到方位Azii至方位Azij(0<=i,j<=n)的視頻數(shù)據(jù)經(jīng)過(guò)坐標(biāo)和幅度的計(jì)算轉(zhuǎn)化為OpenGL坐標(biāo)系下的頂點(diǎn)坐標(biāo)值、頂點(diǎn)RGB值后用頂點(diǎn)數(shù)組提交給GPU繪制,并渲染到textureA。

        圖5 方位區(qū)間內(nèi)視頻紋理繪制

        (2) 使用著色器紋理采樣

        使用著色器對(duì)textureB方位Azii至方位Azij(0<=i,j<=n)區(qū)域內(nèi)顏色進(jìn)行衰減。如圖6所示,利用片段著色器中的內(nèi)值函數(shù)計(jì)算textureB紋理坐標(biāo)所在的方位角度angle。如果屬于要更新的區(qū)域,則用GLSL內(nèi)置函數(shù)texture2D (textureB,textBCoord)進(jìn)行textureB紋理采樣,將采樣值與衰減系數(shù)相乘,實(shí)現(xiàn)顏色的衰減。如圖7所示。

        圖6 實(shí)現(xiàn)顏色衰減的片段著色器

        (3) 幀緩沖對(duì)象進(jìn)行紋理疊加

        FBO用于數(shù)據(jù)渲染到紋理對(duì)象,使用FBO技術(shù)會(huì)更高效且易于實(shí)現(xiàn)。如圖8所示,利用FBO將textureA疊加在textureB上渲染成新的紋理textureB’,無(wú)glEnable()和glBendFunc()顯示glCopyTexImage。最后將疊加更新后的textureB’繪制到當(dāng)前屏幕緩存實(shí)現(xiàn)最終的顯示效果。

        圖7 方位區(qū)間內(nèi)紋理顏色衰減

        圖8 紋理的疊加

        另外,通過(guò)glEnable()和glBendFunc()函數(shù)開(kāi)啟OpenGL 的混色功能也是必需的步驟?;焐瘮?shù)選取宏定義GL_SRC_ALPHA 即ALPHA通道的顏色做混色源因子,并將宏定義GL_ONE_MINUS_SRC_ALPHA即(1-ALPHA通道顏色值)作為目標(biāo)因子。

        4 實(shí)驗(yàn)結(jié)果

        實(shí)驗(yàn)使用的回波視頻數(shù)據(jù)分為4 096個(gè)方位。每個(gè)方位上記錄約1萬(wàn)點(diǎn)的幅度值。每個(gè)方位數(shù)據(jù)發(fā)送間隔為1 ms。視頻數(shù)據(jù)通過(guò)網(wǎng)絡(luò)傳輸至雷達(dá)態(tài)勢(shì)顯示軟件,并采用本文介紹的方法進(jìn)行繪制。

        雷達(dá)態(tài)勢(shì)顯示軟件的開(kāi)發(fā)運(yùn)行環(huán)境為QT 4.8.3、銀河麒麟操作系統(tǒng)、飛騰FT1500A處理器、AMD 嵌入式RadeonTME8860顯卡。視頻刷新間隔為20 ms,視頻尾跡衰減系數(shù)為0.5。軟件運(yùn)行效果如圖9、圖10及圖11所示。此方法實(shí)現(xiàn)的雷達(dá)回波視頻及其尾跡衰減效果理想,占用CPU資源低,回波視頻繪制執(zhí)行時(shí)間小于1 ms,整體運(yùn)行流暢無(wú)卡頓。

        雷達(dá)回波視頻數(shù)據(jù)實(shí)時(shí)性強(qiáng),數(shù)據(jù)量大,國(guó)產(chǎn)化平臺(tái)CPU處理能力有限。本文用OpenGL的FBO和頂點(diǎn)、片段著色器特性實(shí)現(xiàn)雷達(dá)視頻和掃描線的繪制及尾跡衰減效果。方法有以下特點(diǎn):

        (1) 應(yīng)用Qt Graphics View框架和OpenGL特性實(shí)現(xiàn)的雷達(dá)回波視頻繪制為開(kāi)發(fā)者提供高效便捷的方法,提高了雷達(dá)態(tài)勢(shì)顯示軟件穩(wěn)定性、可靠性和實(shí)用性。由于Qt及OpenGL移植性強(qiáng),使得軟件可在國(guó)產(chǎn)化平臺(tái)下運(yùn)行,具有更加廣泛應(yīng)用前景。

        圖9 回波視頻及其尾跡繪制效果

        圖10 視頻尾跡衰減效果

        圖11 態(tài)勢(shì)顯示疊加效果

        (2) 利用OpenGL可編程渲染管線特性,編寫(xiě)頂點(diǎn)著色器進(jìn)行了矩陣變換和數(shù)據(jù)傳遞,編寫(xiě)片段著色器進(jìn)行了數(shù)據(jù)換算、顏色混合和紋理采樣,最終實(shí)現(xiàn)了掃描線、回波視頻繪制及其尾跡衰減效果,從而將復(fù)雜運(yùn)算和繪圖產(chǎn)生的負(fù)載從CPU轉(zhuǎn)移到GPU上,發(fā)揮了GPU并行處理的優(yōu)勢(shì),有效平衡系統(tǒng)開(kāi)銷。此方法不僅簡(jiǎn)化了渲染管線的邏輯,而且提高了渲染效率,亦有效解決國(guó)產(chǎn)處理器的性能瓶頸。

        (3) 通過(guò)OpenGL 的Alpha 通道混色功能設(shè)置源紋理和目標(biāo)紋理的混合因子后,采用幀緩沖對(duì)象(FBO)對(duì)源紋理和目標(biāo)紋理進(jìn)行了疊加,從而提升了渲染效率和穩(wěn)定性,進(jìn)一步提升基于國(guó)產(chǎn)化平臺(tái)的軟件實(shí)現(xiàn)可行性。

        5 結(jié)束語(yǔ)

        本文采用的方法對(duì)傳統(tǒng)機(jī)械掃描雷達(dá)的回波視頻數(shù)據(jù)繪制已通過(guò)實(shí)驗(yàn)得到驗(yàn)證。對(duì)于電子掃描陣列雷達(dá),因雷達(dá)回波數(shù)據(jù)更新特性有差異,視頻軟件化繪制方法有待進(jìn)一步展開(kāi)研究。

        猜你喜歡
        著色器圖元尾跡
        一種基于Radon 變換和尾跡模型的尾跡檢測(cè)算法
        一種組態(tài)控件技術(shù)在電力監(jiān)控系統(tǒng)中的運(yùn)用
        學(xué)術(shù)出版物插圖的編排要求(一):圖注
        基于UE4 實(shí)時(shí)射線追蹤技術(shù)的研究與探討
        聯(lián)鎖表自動(dòng)生成軟件的設(shè)計(jì)與實(shí)現(xiàn)
        基于Unity Shader石油泄漏現(xiàn)象模擬的研究
        基于IMx6的opengl圖形著色器開(kāi)發(fā)研究
        基于EEMD-Hilbert譜的渦街流量計(jì)尾跡振蕩特性
        基于Qt繪圖系統(tǒng)的圖形應(yīng)用優(yōu)化研究與實(shí)現(xiàn)
        軟件(2016年12期)2016-02-13 05:58:14
        基于FABEMD和Goldstein濾波器的SAR艦船尾跡圖像增強(qiáng)方法
        精品免费一区二区三区在| 精品人妻久久av中文字幕| 亚洲国产精品亚洲高清| 女同同成片av免费观看| 国产亚洲专区一区二区| 中文字幕久久久人妻人区| 亚洲欧洲国产成人综合在线| a亚洲va欧美va国产综合| 麻豆密入视频在线观看| 亚洲av伊人久久综合性色| 97中文乱码字幕在线| 成熟人妻换xxxx| 国产亚洲午夜高清国产拍精品| 免费av在线国模| 亚洲AV秘 无码一区二区久久| 99久久精品国产一区色| 国产偷国产偷亚洲高清视频| 人人摸人人操| 久久99国产伦精品免费| 色婷婷av一区二区三区不卡| 亚洲综合极品美女av| 亚洲中文字幕无码av| 精品性影院一区二区三区内射| 欧美乱人伦中文字幕在线不卡| 亚洲精品综合一区二区| 日韩在线 | 中文| 国产成人a在线观看视频免费| 日本夜爽爽一区二区三区| 中文字幕久热精品视频免费| 久久久精品人妻一区二区三区免费| 一区二区三区蜜桃av| 免费av片在线观看网址| 性生交大片免费看淑女出招| 亚洲另类激情专区小说婷婷久 | 久久无码人妻一区二区三区午夜| 天天爽天天爽天天爽| 日韩精品中文字幕 一区| 澳门蜜桃av成人av| 亚洲国产精品va在线播放| 亚洲av无码一区二区乱子仑| 国产精品美女主播一区二区|