摘要:在某些特定場(chǎng)合,為滿足特定任務(wù)需求,必須實(shí)現(xiàn)對(duì)視頻信號(hào)的實(shí)時(shí)采集與旋轉(zhuǎn)處理等任務(wù),本文制訂了基于dsp[1]的實(shí)時(shí)圖像采集與旋轉(zhuǎn)處理系統(tǒng)硬件設(shè)計(jì)方案,對(duì)系統(tǒng)軟件流程作了分析,給出了系統(tǒng)實(shí)驗(yàn)結(jié)論。
關(guān)鍵詞:dsp 信息處理 圖像采集 圖像旋轉(zhuǎn)
1 前言
在軍事和許多精密控制領(lǐng)域,實(shí)時(shí)視頻信號(hào)采集和處理應(yīng)用非常普遍。如果僅僅對(duì)標(biāo)準(zhǔn)視頻信號(hào)進(jìn)行實(shí)時(shí)采集,在工程實(shí)現(xiàn)上已經(jīng)非常簡(jiǎn)單,但是在更多應(yīng)用場(chǎng)合,實(shí)時(shí)視頻采集只屬于系統(tǒng)任務(wù)的一小部分,更重要的是對(duì)采集到的視頻圖像進(jìn)行實(shí)時(shí)處理和分析,視頻制導(dǎo)武器中的實(shí)時(shí)視頻圖像采集和消旋、太空探測(cè)過(guò)程中的圖像實(shí)時(shí)采集與處理就屬于這種情況。為了滿足對(duì)高速視頻圖像的實(shí)時(shí)采集和處理,在許多場(chǎng)合,由于圖像處理的運(yùn)算量非常大,僅僅依靠軟件優(yōu)化很難滿足系統(tǒng)實(shí)時(shí)性要求。近年來(lái),隨著dsp技術(shù)的飛速發(fā)展和廣泛應(yīng)用,許多曾經(jīng)被認(rèn)為難以滿足的任務(wù)需求也變得日益簡(jiǎn)單方便。本文以某一實(shí)際系統(tǒng)開(kāi)發(fā)過(guò)程中圖像實(shí)時(shí)采集和消旋需求為對(duì)象,對(duì)系統(tǒng)開(kāi)發(fā)從硬件和軟件兩個(gè)層面進(jìn)行了詳細(xì)分析,并通過(guò)實(shí)驗(yàn)獲取了大量數(shù)據(jù),對(duì)不同設(shè)計(jì)方案的性能進(jìn)行比較,得出了可靠結(jié)論。
2 需求分析
實(shí)時(shí)圖像采集和旋轉(zhuǎn)處理在軍事和許多高科技領(lǐng)域有著廣泛應(yīng)用。例如在某種特定的視頻控制系統(tǒng)中,前端CCD在工作過(guò)程中一直處于定軸旋轉(zhuǎn)狀態(tài),要實(shí)現(xiàn)對(duì)圖像的實(shí)時(shí)監(jiān)視和處理,首先必須對(duì)采集到的每幀圖像進(jìn)行實(shí)時(shí)消旋(從根本上說(shuō),消旋就是反向旋轉(zhuǎn)),然后才能進(jìn)行顯示和其它處理工作,按照標(biāo)準(zhǔn)視頻25幀/秒的速度要求,每幀圖像從獲取、采集、處理到存貯和顯示的時(shí)間必須限制在40ms之內(nèi)。按照常規(guī)系統(tǒng)設(shè)計(jì)要求,系統(tǒng)工作流程為:利用通用圖像采集卡獲取CCD拍攝的圖像,然后通過(guò)軟件對(duì)每幀圖像進(jìn)行消旋,根據(jù)這一方案,進(jìn)行了大量測(cè)試,具體實(shí)驗(yàn)條件、方案和結(jié)論如下:
硬件環(huán)境: P4 2.6G的CPU,1GDDR433內(nèi)存;操作系統(tǒng)為平臺(tái):WindowsXP;
采集卡:大恒CG410通用視頻采集卡(PCI總線時(shí)鐘為33MHz);
圖像大。768*576;圖像精度:24bit彩色圖像;
圖像旋轉(zhuǎn)算法:最鄰近差值算法;
算法優(yōu)化:圖像變換過(guò)程中對(duì)正弦和余弦采用查表方式,在涉及浮點(diǎn)運(yùn)算的環(huán)節(jié)采用近似移位算法代替;
其它:圖像顯示過(guò)程中以768*576的畫(huà)板為基礎(chǔ),對(duì)于旋轉(zhuǎn)過(guò)程中超出該區(qū)域的目標(biāo)點(diǎn)統(tǒng)一在初始化過(guò)程中賦值;
結(jié)論:旋轉(zhuǎn)時(shí)間約為48ms;采集和旋轉(zhuǎn)時(shí)間約為66ms(如果不采用查表和近似移位方法進(jìn)行優(yōu)化,完成每幀圖像采集和旋轉(zhuǎn)時(shí)間超過(guò)150ms)。
結(jié)果表明:即使采用最鄰近差值算法,對(duì)浮點(diǎn)運(yùn)算采用查表近似處理,在Windows操作系統(tǒng)環(huán)境中,圖像顯示畫(huà)板不作任何變換這種最簡(jiǎn)單的圖像旋轉(zhuǎn)而言,僅僅依靠軟件不可能滿足系統(tǒng)實(shí)時(shí)性要求。究其原因,主要有以下幾點(diǎn):
1)圖像數(shù)據(jù)流經(jīng)PCI總線占用的時(shí)間過(guò)長(zhǎng)
由于常用的圖像采集卡采用的都是33M時(shí)鐘PCI總線結(jié)構(gòu)設(shè)計(jì),在32位機(jī)器環(huán)境中,該總線支持的理論最高通訊速率為132Mbytes/s[2];在使用過(guò)程,由于橋路設(shè)計(jì)及其它PCI設(shè)備占用,實(shí)際數(shù)據(jù)通過(guò)速率最多只能達(dá)到80 Mbytes/s左右,如果采集768*576的24位彩色圖像,每幀圖像數(shù)據(jù)流經(jīng)總線的時(shí)間就高達(dá)15ms。
2)圖像旋轉(zhuǎn)運(yùn)算量過(guò)大,占用時(shí)間過(guò)長(zhǎng)
每幀圖像旋轉(zhuǎn)必須分坐標(biāo)和色彩空間變換兩步完成,數(shù)據(jù)運(yùn)算量相當(dāng)大,如果色彩空間變換采用較為復(fù)雜的差值或卷積算法,運(yùn)算量會(huì)更大,僅僅依靠軟件優(yōu)化,難以滿足系統(tǒng)實(shí)時(shí)性要求。
3)操作系統(tǒng)實(shí)時(shí)性欠佳
對(duì)普通用戶而言,Windows系列操作系統(tǒng)的主要優(yōu)勢(shì)在于強(qiáng)大視窗功能,從操作系統(tǒng)底層開(kāi)發(fā)而言,特別在某些對(duì)系統(tǒng)實(shí)時(shí)性要求較高的場(chǎng)合,Windows操作系統(tǒng)的進(jìn)程管理和任務(wù)調(diào)度機(jī)制顯得力不從心。一般來(lái)說(shuō),Windows操作系統(tǒng)的中斷響應(yīng)和任務(wù)切換時(shí)間處于毫秒級(jí)水平,在系統(tǒng)繁忙的情況下,往往會(huì)達(dá)到幾十甚至上百毫秒,這種響應(yīng)速度對(duì)實(shí)時(shí)圖像采集和旋轉(zhuǎn)處理系統(tǒng)來(lái)說(shuō)遠(yuǎn)遠(yuǎn)不夠。
4)系統(tǒng)設(shè)計(jì)不夠緊湊,存在過(guò)多中間環(huán)節(jié)
這一方案中,圖像采集與旋轉(zhuǎn)(即消旋)是兩個(gè)并行同步執(zhí)行的進(jìn)程,通過(guò)回調(diào)函數(shù)機(jī)制實(shí)現(xiàn)兩者間同步,圖像數(shù)據(jù)必須先采集經(jīng)PCI總線到系統(tǒng)內(nèi)存,然后再進(jìn)行旋轉(zhuǎn)處理,這種設(shè)計(jì)方式增加了圖像數(shù)據(jù)的流通環(huán)節(jié),制約了系統(tǒng)實(shí)時(shí)性能,同時(shí)也不符合設(shè)備模塊化設(shè)計(jì)要求,影響系統(tǒng)可擴(kuò)展性。
3 系統(tǒng)設(shè)計(jì)
3.1 硬件方案設(shè)計(jì)
3.2.1 圖像采集處理板設(shè)計(jì)

圖2 地面信息處理硬件模塊原理框圖
為實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)模塊化,將圖像采集和消旋處理綜合在一塊硬件板卡上實(shí)現(xiàn),兩者間通過(guò)兩個(gè)靜態(tài)存貯器SRAM1和SRAM2并輔以相應(yīng)控制邏輯實(shí)現(xiàn)接口,具體工作流程為:圖像信號(hào)經(jīng)采集直接通過(guò)卡內(nèi)總線交替存貯到SRAM1和SRAM2中,當(dāng)某一幀圖像采集完成,通過(guò)控制邏輯一方面通知dsp從相應(yīng)存貯器中讀取數(shù)據(jù)并進(jìn)行處理,同時(shí)控制將下一幀圖像采集保存到另一塊靜態(tài)存貯中,從而實(shí)現(xiàn)交替存貯;dsp對(duì)采集的圖像信號(hào)進(jìn)行實(shí)時(shí)消旋,處理后的數(shù)據(jù)直接存放到靜態(tài)存貯器SRAM3中,當(dāng)某一幀圖像處理結(jié)束,dsp通過(guò)PCI總線向CPU發(fā)送一個(gè)中斷請(qǐng)求,接收到中斷請(qǐng)求,CPU立即將存貯器中的圖像數(shù)據(jù)取出保存并顯示。
這一方案解決了原有系統(tǒng)存在的兩個(gè)問(wèn)題:首先,通過(guò)采用dsp處理技術(shù),將系統(tǒng)工作中最復(fù)雜、最耗時(shí)的圖像消旋進(jìn)行最優(yōu)化,提高了系統(tǒng)處理速度,大大縮短了每幀圖像處理時(shí)間;其次,將圖像采集和消旋處理集中在同一塊硬件上,這種方式增加了系統(tǒng)集成度,減少了數(shù)據(jù)在系統(tǒng)總線上的流通環(huán)節(jié),節(jié)省了操作系統(tǒng)和內(nèi)存開(kāi)銷,增強(qiáng)了系統(tǒng)可擴(kuò)展性。





