国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于可編程渲染管線的雷達圖像分層模型設計與實現(xiàn)

2009-05-12 03:14劉忠義楊澤剛
現(xiàn)代電子技術 2009年5期
關鍵詞:著色器余輝

劉 強 劉忠義 楊澤剛 劉 平

摘 要:高分辨率雷達圖像顯示是雷達計算機模擬的重要環(huán)節(jié),對圖像的逼真度和實時性有著極高的要求。采用可編程渲染管線技術進行雷達顯示系統(tǒng)模擬,能有效實現(xiàn)雷達圖像的分層模型,充分利用CPU和GPU的并行處理能力,大幅降低CPU的運算復雜度。在生成高質量雷達圖像的同時滿足系統(tǒng)實時性要求。

關鍵詞:雷達仿真;可編程渲染管線;余輝;著色器;雷達圖像

中圖分類號:TP391.9文獻標識碼:B

文章編號:1004-373X(2009)05-050-03

Design and Realization of Radar Image Delaminaton Based on Programmable Render Pipline

LIU Qiang,LIU Zhongyi,YANG Zegang,LIU Ping

(Navy Submarine Academy,Qingdao,266071,China)

Abstract:The simulation of radar′s high resolution display system is one of the most important procedures in radar simulation,requiring high-fidelity and real-time feature.The programmable render pipeline technique,by that it can effectively realize the delamination model of radar image,take advantage of CPU and GPU′s parallel processing,and reduce the computational complexity.With the programmable render pipeline technique,the simulation of radar′s display system can achieve real-time requirement while producing high-quality radar image.

Keywords:radar simulation;programable render pipline;intensity persistense;shader;radar image

0 引 言

雷達顯示系統(tǒng)用于顯示接收機輸出的回波圖像,以及信息處理機產生的二次信息和符號,是雷達操作員獲取信息的主要途徑。雷達的計算機模擬是雷達設計、分析以及訓練的有效方法。而顯示系統(tǒng)的模擬作為雷達計算機模擬的最終輸出結果,其逼真度、實時性直接影響著系統(tǒng)的整體性能。顯示系統(tǒng)模擬的主要任務包括:對接收機輸出的回波數(shù)據(jù),信息處理機產生的ARPA信息,以及各種符號等進行轉換,合成為顯示器2D光柵圖像;對生成的回波圖像模擬余輝效果;控制合成圖像的亮度、對比度等。

對顯示系統(tǒng)的模擬一般方法:在雷達圖像刷新過程中對全屏像素逐一進行坐標變換(光柵圖像的直角坐標轉換為回波數(shù)據(jù)的極坐標)以查找對應的回波脈沖幅值,形成屏幕像素顏色值;衰減像素亮度,模擬顯示器余輝效果(涉及到色飽和計算);設置像素顏色,生成逼真度非常高的雷達圖像。但這種方法需要存取大量的像素,難以滿足實時性的要求。例如,雷達顯示器分辨率為1 000×1 000,則每幀需存取3.14×5 002=785 000個像素。而要保持畫面流暢,幀速率應保持在30 f/s以上,即每秒需要進行23 550 000次像素存取。而這才僅僅模擬了雷達的顯示系統(tǒng)。

為了提高效率,一些改進的算法被提出:預先建立坐標映射表,利用查表方法減少坐標變換的運算;嵌入MMX指令減暗顏色;利用DirectX等圖形API直接存取顯存等。這些方法減少了單個像素的處理時間,但由于像素存取次數(shù)多,仍然占用大量的CPU時間。

要大幅提高雷達顯示系統(tǒng)模擬的效率,必須降低幀間隔內需要處理的像素總數(shù)。本文提出的方法基于現(xiàn)代顯卡的可編程管線技術,將回波圖像更新、余輝效果仿真、ARPA符號繪制與最終的圖像合成過程隔離開來,并充分利用CPU和GPU并行處理。在幀間隔內由CPU完成對掃描線轉過的區(qū)域進行圖像更新和少量的余輝亮度計算,GPU完成圖像合成,避免了對全屏海量像素的存取,極大地提高了顯示模擬的效率。以某艦載導航搜索雷達為例,顯示器分辨率為1 000×1 000,天線轉速為20 r/m,模擬程序幀速率為30 f/s,天線旋轉一周產生4 096條方位刻線。則模擬程序每幀需要存取785 000×20/(60×30)8 700個像素。再加上設置4 096條方位刻線余輝亮度,總計存取次數(shù)不到原先的1%,效果十分顯著。

1 可編程渲染管線與Direct3D 9

可編程管線(Programmable Pipeline)是現(xiàn)代高性能顯卡的一個重要技術特征。所謂可編程管線,是指可以編寫一段運行于GPU(圖像處理單元)的代碼,對輸入顯卡的原始數(shù)據(jù)進行加工處理后再輸出到顯示器上。這樣的代碼稱為著色器(shader),包括頂點著色器(vertex shader)和像素著色器(pixel shader),分別用于對要繪制模型的頂點和紋理進行變換和混合。由于著色器代碼獨立運行在顯卡中,不占用CPU時間,而且GPU專門針對圖像計算進行了優(yōu)化,因此代碼的運行效率高,圖像處理的速度快。盡管可編程渲染管線設計的目的是滿足日益復雜的3D應用環(huán)境,但由于其結構靈活,采用適當?shù)姆椒ň帉懘a,在2D環(huán)境中仍然能發(fā)揮出顯卡的繪圖能力。

Direct3D是微軟提供的基于組件對象模型(COM)的底層繪圖API,它建立在硬件抽象層(HAL)之上。Direct3D檢查顯卡的能力,并以標準的COM接口將顯卡功能暴露給開發(fā)人員,從而使其能夠安全地直接訪問顯卡硬件,提高應用程序的渲染速度。Direct3D 9全面支持可編程渲染管線,并引入高級著色語言(HLSL)來編寫著色器代碼。利用Direct3D 9 SDK來編寫雷達模擬器的顯示系統(tǒng)代碼,可充分發(fā)揮顯卡硬件的能力。

為了能夠在雷達顯示的2D環(huán)境中使用Direct3D,只需要做如下處理:將雷達圖像繪制在紋理上,用三角形扇來模擬圓形,將三角形頂點的紋理坐標設置成雷達圖像紋理的對應數(shù)值。將紋理和頂點告知Direct3D,便可渲染出雷達顯示器圖像來。如圖1所示。

關于Direct3D和著色器編程就不再贅述,下面介紹雷達顯示系統(tǒng)模擬中的一些關鍵技術。

2 雷達圖像分層與紋理混合

雷達顯示器圖像根據(jù)其產生的方法和特點可分為兩種:一種是來自接收機輸出的回波圖像(其中也包括噪聲),其特點包括:圖像隨天線轉動邊掃描邊刷新,像素的繪制基于極坐標系;圖像亮度隨時間衰減,即具有余輝效果。另一種是來自信息處理系統(tǒng)的ARPA符號,如動標、點目標符號、目標航跡線等,其特點是:符號的變化隨ARPA信息變化,且無余輝效果。

為了避免全屏像素存取,必須將回波圖像刷新、余輝效果仿真、ARPA符號繪制與最終的圖像合成隔離??删幊啼秩竟芫€的像素著色器能夠在顯卡內利用進行多重紋理的自由混合。由于在圖像合成被獨立了出來,CPU僅完成必要的繪制即可。如圖2所示,將合成雷達圖像的紋理分為3層:回波圖像層、余輝效果層和ARPA符號層,前2個紋理在幀間隔內進行刷新,后一個紋理僅在ARPA信息發(fā)生變化時進行繪制。這些任務都由CPU來完成。

GPU負責紋理的合成。渲染雷達顯示器時,這3層紋理在像素著色器中進行混合,產生最終的雷達圖像?;旌洗a如下:

sampler2D EchoTex;//回波圖像紋理采樣器

sampler2D SymbolTex;// 符號圖像紋理采樣器

sampler2D FaderTex;// 余輝效果紋理采樣器

vector colorEcho=tex2D(EchoTex,input.echo);

vector colorSymbol=tex2D(SymbolTex,input.symbol);

vector colorFader=1.0f-tex2D(FaderTex,input.fader);

output.color=max(

saturate(colorEcho-colorFader),colorSymbol);

此外利用像素著色器,還非常容易實現(xiàn)亮度控制、顏色反轉等特殊顯示效果。由于CPU和GPU可并行處理,代碼的執(zhí)行效率非常高。

3 雷達回波圖像更新與直接像素存取

幀間隔內更新回波圖像,就是利用接收機輸出的脈沖序列來更新回波圖像紋理中的掃描扇面區(qū)。脈沖序列存放在回波緩存區(qū)數(shù)組內。由于脈沖幅值與像素顏色數(shù)據(jù)格式不同、緩存區(qū)數(shù)組與像素矩陣維度不同,不能用直接位塊傳送(Blt)來繪制回波圖像。需要繪制單個像素來更新。Direct3D通過IDirect3DTexture9::LockRect()方法鎖定紋理上的一塊矩形區(qū)域,該矩形區(qū)域被映射成類似于DIB/DDB的像素數(shù)組。利用函數(shù)返回的指針,可以對數(shù)組中的像素進行直接存取。通過紋理鎖定來存取顯存,能夠達到GDI函數(shù)無法達到的高性能。

鎖定的矩形區(qū)越大,則存取的次數(shù)就越多。在鎖定前根據(jù)掃描區(qū)域首先計算需要鎖定的矩形范圍,便可大幅減少存取像素的數(shù)量。這也正是雷達圖像分層所帶來的好處。如圖3所示,A中需要對全屏像素進行存取,而B中只需要訪問掃描扇面包圍矩形中的像素。在進行像素存取時,采用查表法實現(xiàn)直角坐標與極坐標的轉換,還能進一步提高存取的效率。

4 余輝效果與渲染到紋理

在繪制余輝效果圖層時,采用渲染到紋理技術(RTT),將紋理設置成渲染目標,用D3D繪圖函數(shù)直接在紋理上繪圖,形成顏色漸變且動態(tài)變化的余輝效果。要實現(xiàn)渲染到紋理,在創(chuàng)建紋理時,用參數(shù)D3DUSAGE_RENDERTARGET指定紋理的用途,并調用GetSurfaceLevel()方法獲取紋理的表面接口指針。在渲染時,用SetRenderTarget()方法將該表面設置成渲染目標。

為了繪制出圖4中的余輝效果紋理,可用N條射線來組成余輝效果紋理中的圓,N等于天線方位刻線的數(shù)量,每條射線的顏色由其端點顏色決定。N條射線需要用2N個頂點來描述,頂點除含有坐標外,還包括顏色值。創(chuàng)建了這些頂點后,Direct3D在渲染管線中自動將其繪制成圖像。

要形成隨時間變化的動態(tài)效果,模擬程序需要在幀間隔內根據(jù)頂點坐標和當前掃描線的位置,重新設置每個頂點的顏色。Direct3D重新渲染便產生了亮度漸變且動態(tài)變化的圓。

采用這種方法,幀間隔內CPU僅需要存取2N個頂點的顏色。在前面的例子中,雷達掃描一周形成4 096個方位,需要繪制4 096條射線,即設置8 192個頂點顏色。在大幅減少了像素存取次數(shù)的情況下,增加的這部分頂點顏色存取時間并不會影響整體性能的改善。

5 ARPA符號繪制與GDI繪圖

ARPA信息與符號的繪制不隨掃描變化,而與雷達信息處理機的狀態(tài)有關,即由描述雷達信

息處理機的狀態(tài)數(shù)據(jù)表以及點目標跟蹤表等數(shù)據(jù)表生成,比較適合用GDI函數(shù)繪制。為了能夠在紋理上采用GDI函數(shù)繪圖,需要獲取紋理的表面(Surface)接口指針,然后利用表面的GetDC()方法得到該表面設備上下文(DC)。這樣就可以調用Win32的GDI函數(shù)進行符號文字等輸出了。由于這部分繪圖代碼內容少且更新率低,因此其CPU占用率幾乎可以不計。

6 結 語

在某型艦載導航搜索雷達中,采用上述方法對雷達模擬器的顯示部分進行了改進。模擬器的計算機平臺配置為:Pentiumk Ⅳ 2.8 GHz,ASUS Extreme AX550顯卡。模擬程序運行的幀速率從15 f/s提高到50 f/s以上,效果明顯。結果表明,采用可編程渲染管線技術,可以實現(xiàn)回波圖像更新與余輝效果計算的分離,充分發(fā)揮顯卡的渲染能力,能夠滿足大分辨率雷達顯示系統(tǒng)仿真的需求。

實際上,雷達顯示器余輝效果紋理的繪制基本上獨立于雷達的脈沖數(shù)據(jù)處理等過程,如果能夠把描述余輝效果的4 096個亮度數(shù)值完全置于可編程渲染管線的頂點著色器中,由頂點著色器來完成亮度衰減及更新計算,將進一步降低CPU的計算負擔。但由于余輝仿真是一個迭代過程,當前幀亮度是前一幀亮度的衰減,這需要對每次迭代后的結果進行保存。然而在目前的Direct3D版本中,還不支持渲染到頂點(RTV),頂點著色器也難以支持大容量的數(shù)組變量,迭代運算的結果難以保存。目前,模擬余輝效果頂點顏色動畫仍然由CPU來完成。隨著顯卡技術和Direct3D技術的發(fā)展,這部分代碼還能得到進一步的優(yōu)化。

參考文獻

[1]韓瑞新.基于光柵掃描的雷達顯示系統(tǒng)仿真[J].系統(tǒng)仿真學報,2005,22(11):24-27.

[2]程玉榮.基于動態(tài)數(shù)據(jù)表的實時高分辨率雷達回波顯示[J].系統(tǒng)仿真學報,2008,20(4):882-884.

[3]漆先虎.Windows操作系統(tǒng)下雷達操控終端的開發(fā)[J].火控雷達技術,2006,31(2):27-31.

[4]方偉.機載雷達模擬器設計中的DirectDraw和多線程技術[J].海軍航空工程學院學報,2003,18(2):213-216.

[5]王宏,樊世友,陳再旺,等.基于OpenGL的雷達顯示器計算機仿真的實現(xiàn)[J].計算機系統(tǒng)應用,2006(6):55-57,60.

[6]徐宏宇,陶然,單濤,等.一種實時雷達顯示控制終端軟件的設計[J].火控雷達技術,2002(1):7-9.

[7]樊世友,楊作賓,孫書鷹.基于余輝模型的P型雷達顯示器計算機仿真.計算機仿真,2003,20(4):6-8.

[8]雷達技術編寫組.雷達顯示器[M].上海:上??茖W技術出版社,1998.

[9]Wolfgang F Engel.Direct3D游戲編程入門教材[M].北京:人民郵電出版社,2005.

[10]Peter J Kovach.Direct3D技術內幕[M].北京:清華大學出版社,2001.

作者簡介

劉 強 男,1976年出生,四川成都人,碩士研究生,講師。研究方向為電子對抗系統(tǒng)仿真。

劉忠義 男,1969年出生,山東濰坊人,碩士研究生,副教授。研究方向為電子對抗系統(tǒng)仿真。

楊澤剛 男,1968年出生,江西九江人,碩士研究生,高級工程師。研究方向為雷達設備測試與維修。

劉 平 男,1980年出生,湖南長沙人,博士研究生,講師。研究方向為嵌入式測試與診斷設備。

猜你喜歡
著色器余輝
Sm2+激活的深紅—近紅外長余輝發(fā)光材料的制備及其光學性能研究
基于UE4 實時射線追蹤技術的研究與探討
基于Unity Shader石油泄漏現(xiàn)象模擬的研究
基于IMx6的opengl圖形著色器開發(fā)研究
基于Unity3D的水面波浪模擬
Zn空位缺陷長余輝發(fā)光材料Zn1-δAl2O4-δ的研究
光照條件對長余輝材料顯現(xiàn)手印效果影響的研究
蓄能清潔人造石產品的研制
一種基于GPU的氣象站點填圖繪制方法
基于長余輝發(fā)光材料的消防安全標志技術