VBE標(biāo)準(zhǔn)及其在實(shí)時(shí)動(dòng)態(tài)圖像實(shí)時(shí)顯示中的應(yīng)用
2 遙感圖像實(shí)時(shí)滾動(dòng)顯示系統(tǒng)的設(shè)計(jì)要求
遙感圖像實(shí)時(shí)滾動(dòng)顯示系統(tǒng)具有以下特點(diǎn):
(1)圖像尺寸大,行像素點(diǎn)數(shù)多;
(2)圖像滾動(dòng)顯示,速度快,每秒刷新行數(shù)較多;
(3)顯示信息豐富,除顯示動(dòng)態(tài)圖像外,還要能夠在圖像上疊加顯示文字信息和網(wǎng)格信息;
(4)有良好的視覺(jué)效果,圖像滾動(dòng)顯示不能有跳躍的感覺(jué);
(5)基于可滿足特殊環(huán)境要求的嵌入式平臺(tái)運(yùn)行。
基于上述設(shè)計(jì)限制,對(duì)動(dòng)態(tài)圖像實(shí)時(shí)顯示系統(tǒng)顯示速度的要求是比較高的。具體的技術(shù)指標(biāo)如下:
輸入數(shù)據(jù)率: ≤2.5Mb/s
輸入每行像素?cái)?shù): 8192點(diǎn)/線
輸入數(shù)據(jù)格式: 遙感圖像+輔助數(shù)據(jù)
顯示字長(zhǎng): 8bit
顯示圖像灰度級(jí): 256
屏幕顯示方式: 滾動(dòng)顯示
網(wǎng)狀標(biāo)尺疊加顯示: 熱鍵選擇
輔助信息字符顯示: 熱鍵選擇
圖像顯示模式: A.高分辨率局部顯示,行顯示起始可選
B.抽樣全局顯示,行向8抽1,列向8抽1
要求實(shí)時(shí)顯示系統(tǒng)在1024×768的顯示模式下滾動(dòng)顯示圖像的同時(shí),在固定位置疊加顯示的輔助數(shù)據(jù)字符和網(wǎng)格標(biāo)尺。由于需要在全屏范圍內(nèi)疊加滾動(dòng)的和靜止的兩種圖像,在嵌入式平臺(tái)的實(shí)現(xiàn)難度較大。
3 幾種軟件實(shí)現(xiàn)方案的對(duì)比
根據(jù)嵌入式計(jì)算機(jī)的顯示卡性能和可利用的編程軟件庫(kù),可以采用以下3種方式實(shí)現(xiàn)實(shí)時(shí)圖像顯示軟件:
(1)基于幀切換
基于幀切換的滾動(dòng)圖像與靜止圖像疊加顯示是通過(guò)類似電影放映的方式實(shí)現(xiàn)的,即由全屏圖像構(gòu)成一幀,許多這樣的幀一起構(gòu)成幀序列,通過(guò)在屏幕上順序顯示這些幀序列,就形成在圖像滾動(dòng)顯示的同時(shí)疊加靜止網(wǎng)格和文字。
按照實(shí)時(shí)顯示的要求,基于幀切換的方法構(gòu)成一幀時(shí),首先要在后臺(tái)顯存中重建整個(gè)一幀的圖像數(shù)據(jù),然后將網(wǎng)格和文字寫到顯存的相應(yīng)地址。這種方法的數(shù)據(jù)搬移量非常大,所需的顯示內(nèi)存容量很大,對(duì)顯存的存取速度要求高。
(2)基于幀切換,并利用硬件二維加速功能
利用硬件二維加速功能實(shí)現(xiàn)幀切換,這種方法與上述方法類似,不同的是它利用了硬件的優(yōu)勢(shì),即滾動(dòng)顯示的圖像與靜止的網(wǎng)格和文字分別存儲(chǔ)于顯示存儲(chǔ)器的不同區(qū)域,在顯示時(shí)由顯示卡的硬件進(jìn)行疊加,這樣,對(duì)每幀圖像的操作基本只集中在圖像數(shù)據(jù)的存儲(chǔ)區(qū)內(nèi)。
此時(shí),構(gòu)成一幀的主要工作是重建整個(gè)一幀的圖像數(shù)據(jù),由于網(wǎng)格和文字存儲(chǔ)于顯存中的另一地址空間,一般情況下,僅需對(duì)個(gè)別文字進(jìn)行操作。然而,這種方法的數(shù)據(jù)搬移量還是非常大,對(duì)系統(tǒng)內(nèi)存尋址能力要求高,所需的顯示內(nèi)存容量更大。
(3)基于更改顯示窗口在顯存中的起始地址
在顯示存儲(chǔ)器中,屏幕上顯示的僅是顯存的一小部分。當(dāng)設(shè)定顯示模式后,可以把整個(gè)顯示存儲(chǔ)器看作是一幅縱向很長(zhǎng)的畫面,顯示器作為一個(gè)窗口只顯示了其中的一部分。我們可以通過(guò)更改顯示窗口在內(nèi)存中的起始地址的方法來(lái)改變屏幕上的內(nèi)容,如果這種改變是順序、連續(xù)的,在屏幕上就會(huì)形成滾動(dòng)的圖像。
每次輸入的圖像數(shù)據(jù)依次存儲(chǔ)于顯存中,再進(jìn)行所需的處理(如添加縱向的網(wǎng)格線),當(dāng)需要屏幕滾動(dòng)時(shí),首先更改顯示窗口在內(nèi)存中的起始地址,然后處理橫向的網(wǎng)格線和文字,使它們?cè)谄聊簧咸幱谡_的位置。這種方法的數(shù)據(jù)搬移量比較小,所需的系統(tǒng)內(nèi)存和顯示內(nèi)存容量也很小,但這種方法的數(shù)據(jù)處理較復(fù)雜,在編程過(guò)程中需要考慮多種邊界的影響。同時(shí),當(dāng)用戶不需要顯示網(wǎng)格線和文字時(shí),恢復(fù)已被顯示網(wǎng)格線和文字破壞的原圖像數(shù)據(jù)的處理量是非常大的,是否能夠?qū)崿F(xiàn)取決于目標(biāo)系統(tǒng)的系統(tǒng)內(nèi)存和顯示內(nèi)存的存取速度以及編程語(yǔ)言的效率。
評(píng)論