999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于雙緩存技術的雷達圖像多圖層設計與仿真

2015-10-20 07:44:10張亞臣王根榮
珠江水運 2015年16期

張亞臣+王根榮

摘 要:傳統雷達模擬器圖像生成多是采用掃描線求交算法,該算法一定程度上會增加計算機CPU的額外運算,浪費系統資源,而且雷達ARPA圖像生成速率低,圖像質量差,不便于新功能的添加。為提高雷達ARPA圖像逼真度和方便功能擴展,以掃描的高效性和代碼的易維護性為前提,基于雙緩存技術對雷達圖像的生成進行了多圖層設計,并基于多圖層設計提出了更為簡單的每幀雷達圖像和ARPA符號的生成算法。以不同顯示模式下的雷達圖像進行了仿真,驗證了算法的可行性,相關算法已經成功應用到了雷達模擬器中雷達ARPA圖像的仿真。

關鍵詞:雷達圖像 雙緩存技術 多圖層設計 生成算法

1.前言

以前的雷達模擬器圖像的生成多是采用掃描線求交算法,即無論是雷達回波還是ARPA符號都隨著掃描線的旋轉與掃描線求交計算后再繪制出來。這種方法雖有其優點,但也存在明顯的不足之處。首先ARPA符號是隨著掃描線旋轉與掃描線求交后再繪制,這使計算機CPU作了額外的運算,浪費了系統的資源,從而使岸線回波和ARPA符號的生成速率降低。而且掃描線求交算法有時不適合新的功能的添加,如同頻干擾圖像的生成不容易用很好的數學方法去描述,使求交點變得很難。其次掃描線求交算法生成的ARPA符號,如固定距標圈、電子方位線等,圖像質量差,圓周不連續,直線不平直。由于掃描線掃描一周大概3秒鐘,所以符號顯示的響應慢。為了提高圖像的逼真度和方便增加其他的功能,只有采用新的設計模式,鑒于真實雷達上的ARPA符號的顯示和島岸回波并不在一層上,活動距標圈和電子方位線的拖動并不會擦除固定距標圈。本著在保持掃描性能和代碼的易維護性基礎上盡量采取簡單方便的方法和原則,本文應用雙緩存技術提出了雷達圖像的多圖層顯示模式,將每幀圖像分層繪制。

2.雙緩存技術應用

利用計算機進行圖形繪制時,對圖元進行的任何操作,譬如拉伸、填充、添加或刪除等操作都必須通過刷新屏幕才能顯示出來。傳統的繪圖方法都是寫好專門用來繪圖的函數,然后通過函數的調用將圖形顯示在屏幕上。之后每次對圖元進行的修改等操作都必須刷新屏幕才能顯示出來。因此,屏幕的刷新過程是很緩慢的。而且當顯示畫面由于某種原因需要重新繪制時,還需要將原有圖像用背景色進行擦除,之后再通過調用繪圖函數進行繪制。基本上繪圖過程可分為繪制—擦除—重繪三部分。其中擦除窗口顯示區域是必須的,因為若重繪時沒有對原有圖像進行擦除,那么就會導致原來的圖形和新畫的圖形混疊在一起,使顯示區域雜亂無章。如果圖形比較復雜,圖元數目比較繁多,就會消耗系統大量的內存。繪圖時間也會有一定的延長,這樣就可能會產生不斷地交替顯示背景和圖形的閃爍畫面。雷達圖像包含的信息較多,除了雷達回波需要繪制外,所有的ARPA符號都需要繪制,而且隨著船舶的運動和顯示模式的變換,圖像需要實時快速更新,這些都需要重繪顯示區域,如果采用傳統的繪圖模式必定產生閃爍和雜亂無章的畫面,無法實現雷達圖像的繪制。使用雙緩存技術可以有效解決上述問題。

實現雙緩存的基本思路是:繪圖之前,在內存中開辟一塊區域,創建一個和顯示區域同樣大小的內存空間作為虛擬的畫布(內存位圖),然后將所有的繪圖操作都在這個內存位圖上完成。當繪制完一幀完整的圖形后,再一次性將此內存位圖中的內容復制到屏幕顯示窗口上。這一過程只需要刷新一次屏幕,而且由于訪問內存的速度遠高于實際窗口繪圖,所以繪圖的效率得到大幅度的提高。再加上擦除動作和整個繪圖過程都是在內存位圖中以后臺的方式完成的,所以前后兩幀圖像間的擦圖操作被隱藏了,閃爍問題得到了解決。

3.雷達圖像的多圖層設計

為了更好的仿真雷達圖像,應用雙緩存技術對雷達圖像進行層次化設計,將每幀圖像分層繪制,將雷達回波、ARPA符號繪制在不同的表面上,之后再逐層繪制在后臺內存位圖上,再一次性將此畫布上的內容復制到前臺顯示窗口上。主要分為如下層次:基礎層、視頻層、綜合層、回波層、符號層。這種分層模式很好地實現了雷達回波和ARPA符號的分層顯示,以及各種功能的模擬。各個層的描述如下:

(1)基礎層:用來顯示雷達在不同顯示模式和運動模式下的方位刻度線和刻度值;

(2)視頻層:顯示前臺,當前屏幕顯示窗口中顯示的畫面,即我們最終看到的雷達圖像;

(3)綜合層:顯示后臺,又叫后備緩沖區,被復制到視頻層的表面,保存即將顯示的下一幀畫面,其它層按次序依次粘貼到該層,即它包含了其他層的所有畫面信息。增加此層是為了防止連續向視頻層復制其他層產生閃爍現象。

(4)回波層:用于畫回波,包括島岸回波、活動目標回波、海雜波等;

(5)符號層:用于畫各類ARPA符號,避免與回波沖突(符號表面可以有多個,可待以后根據需要添加)。

圖1展示了雷達圖像的層次結構,圖2展示了雷達圖像各層的大小。

4.每幀雷達圖像的生成

為了實現雷達圖像的實時生成,創建了雷達掃描線程,在啟動后點擊StandBy后就開啟掃描線程,開啟后雷達開始掃描,直到線程銷毀為止。線程創建如下:

m_ScanThread=AfxBeginThread(DrawScanThread,this);

其中DrawScanThread()為線程控制函數,專用來繪制雷達回波。

此外為了將繪制的雷達回波和ARPA符號實時顯示在PPI上,程序中還設置了繪制每幀雷達圖像的時鐘響應函數。

SetTimer(1,MSECONDS_ PER_BLT,NULL);

由于人眼能識別連續的兩幀圖像的時間間隔至少為40毫秒,所以定時器應在每小于40毫秒的時間內觸發一次。經測試MSECONDS _ PER_BLT的值設置在25-35左右效果最好。此外因為每層內存位圖均為方形,所以在PPI內顯示的圖像還需要進行圓域裁剪,Windows提供了兩個常用的API函數CombineRgn和SelectClipRgn,可以用來實現圓域的裁剪。endprint

每幀雷達圖像的生成主要包括以下過程:

開啟雷達掃面線程,雷達開始掃描,在回波層繪制雷達回波,在符號層繪制ARPA符號,基礎層繪制方位刻度和刻度值,暫停掃描線程,觸發定時器,將回波層以不透明方式拷貝到綜合層,線程暫停結束,繼續執行掃描線程,在下一次定時器觸發之前,將符號層以透明的方式拷貝到綜合層,將基礎層和綜合層進行裁剪操作,最后將基礎層和綜合層拷貝到視頻層,即拷貝到顯示屏相應的顯示窗口。

執行完上述過程后,則一幀雷達圖像繪制完畢。不斷地循環執行上述過程,則雷達圖像將連續地繪制并顯示在屏幕上。圖3展示了每幀雷達圖像的生成流程。

5.ARPA符號生成算法

雷達模擬器中ARPA符號主要包括電子方位線、固定距標圈、活動距標圈、跟蹤區域(警戒區)、船首線、船尾線、平行方位線、方位刻度線、跟蹤目標的矢量線和尾跡以及試操船軌跡和符號等。傳統的雷達ARPA符號的繪制多是采用異或運算的方式,在繪制每個ARPA符號時,首先需要用異或操作將當前顯示的電子方位線擦除掉,之后再計算ARPA符號每個控制點新的坐標位置,最后根據新的坐標位置重新繪制,這樣做雖然速度很快,但是也會產生一個很大的難題,即運動的符號在不同的背景顏色上會呈現出不同的顏色。為解決這一問題,尹勇等提出了分段調色板技術,但該方法不但操作繁瑣,而且需要犧牲一部分調色板入口作為代價。本文充分利用了雷達圖像的層次化設計模式,可以很好地實現ARPA符號的生成,避免了采用異或運算和分段調色板技術。

根據每幀雷達圖像的生成過程,我們可以將所有ARPA符號的繪制控制在一個模塊內,每個ARPA符號都有其各自屬性和操作行為,當我們對某個ARPA符號執行其中某種操作時,重新設置符號的屬性值,并用和符號層同樣大小的空白層將符號層覆蓋,達到了擦除上一幀ARPA符號的目的,再執行ARPA符號的繪制模塊,將ARPA符號繪制在符號層,當定時器觸發時符號層被透明地覆蓋到綜合層,綜合層再覆蓋到視頻層即完成ARPA符號的顯示,圖4為ARPA符號生成流程。

6.仿真實例與結論

以中國大連港附近沿海為實例,設本船為OS01,初始船位(38°46.4491′N,121°36.2647′E),如圖5所示。對北向上真運動顯示模式下的雷達ARPA圖像的進行了仿真。

通過仿真驗證了基于雙緩存技術雷達圖像的多圖層設計可以較好地應用到雷達ARPA圖像的生成,基于多圖層設計的每幀雷達圖像和ARPA符號的生成算法簡單,便于添加新的功能,擴展性強,掃描高效且代碼易于維護,可以較好地應用于雷達模擬器中。

參考文獻:

[1]尹勇,劉秀文,李志華.采用真雷達顯示器的航海雷達模擬器的關鍵技術[J].系統仿真學報,2007[3]:1014-1017.

[2]劉婷婷,潘彤,陳彬茹.利用雙緩存技術提高繪圖速率[J].電腦編程技巧與維護,2012,18.

[3]張仁忠,常明志,許德新.利用MFC實現雙緩存機制改善圖形的顯示效果[J].應用科技,2005,32(1).

[4]尹勇,金一丞.頁面更新方式雷達/ARPA模擬器圖像生成的研究[J].大連海事大學學報,1996,22(4):31-36.endprint

主站蜘蛛池模板: 乱人伦99久久| 国产内射一区亚洲| 粉嫩国产白浆在线观看| 国内精品久久人妻无码大片高| 米奇精品一区二区三区| 狼友av永久网站免费观看| 久久一本精品久久久ー99| 国产在线视频二区| 国产污视频在线观看| 亚洲欧美一区二区三区麻豆| 99热这里只有精品在线观看| 欧美a√在线| 伊人狠狠丁香婷婷综合色| 日本不卡在线播放| 久久亚洲美女精品国产精品| 亚洲人成色在线观看| 伊伊人成亚洲综合人网7777| 国产精品久久久精品三级| 伊人精品成人久久综合| 乱码国产乱码精品精在线播放| 亚洲无码日韩一区| 国产在线日本| 青青青草国产| 一区二区三区毛片无码| 成人免费网站在线观看| 国产XXXX做受性欧美88| AV老司机AV天堂| 亚洲国产一区在线观看| 久久香蕉国产线看精品| 波多野结衣一区二区三区88| 免费看a级毛片| 欧美成人免费午夜全| 丝袜久久剧情精品国产| 国产免费高清无需播放器| 亚洲欧美一级一级a| 成人精品在线观看| 亚洲激情99| 网友自拍视频精品区| 日韩毛片在线视频| 欧美自慰一级看片免费| 成年人国产视频| 欧美日韩va| 毛片基地视频| 亚洲欧美人成人让影院| 亚洲欧洲日韩国产综合在线二区| 999国内精品久久免费视频| 欧洲av毛片| 欧美色综合久久| 在线日本国产成人免费的| 青青青伊人色综合久久| 亚洲精品无码久久毛片波多野吉| 亚洲成人精品在线| 国产免费人成视频网| 免费观看成人久久网免费观看| 97无码免费人妻超级碰碰碰| 欧美成人午夜在线全部免费| 国产区免费精品视频| 91无码人妻精品一区| 久久无码高潮喷水| 久久国产亚洲偷自| 亚洲乱码在线播放| 韩国福利一区| 亚洲成肉网| 免费a级毛片18以上观看精品| 91无码人妻精品一区二区蜜桃| 毛片在线播放网址| 91福利国产成人精品导航| 欧美国产日韩在线播放| 久久久久免费看成人影片| 天天综合天天综合| 亚洲中文字幕23页在线| 久久超级碰| 波多野结衣一区二区三区四区| 国产91精品调教在线播放| 老熟妇喷水一区二区三区| 国产浮力第一页永久地址| 先锋资源久久| 在线无码av一区二区三区| 亚洲不卡无码av中文字幕| 三上悠亚在线精品二区| 狠狠做深爱婷婷久久一区| 亚洲午夜福利在线|