一種改進(jìn)的嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)
在具體實(shí)現(xiàn)過程中,還需特別考慮DSP端視頻編碼算法的代碼優(yōu)化。
首先,合理分配片內(nèi)存儲(chǔ)器(速度快但容量小),把使用頻繁的變量(如各種編碼量化表、IDCT系數(shù)等)存放在片內(nèi)存儲(chǔ)器,由于原始視頻數(shù)據(jù)的數(shù)據(jù)量很大,一幀YUV420的QCIF圖像,需要37 Kbyte,因此,不能將一幀圖像的全部數(shù)據(jù)都存放在片內(nèi),可將一幀圖像數(shù)據(jù)通過DMA分多次從片外存儲(chǔ)器讀入到片內(nèi)處理。
其次,盡量使用TI提供的圖像處理函數(shù)庫(kù),即IMGLIB(它是專門為圖像和視頻處理開發(fā)的庫(kù),TI對(duì)該庫(kù)進(jìn)行了深度優(yōu)化,使用IMGLIB既簡(jiǎn)化了開發(fā)過程,又能最大限度地提高視頻編碼算法的效率)。
第三,使用DSP內(nèi)部自帶的一些特殊運(yùn)算指令(主要執(zhí)行一些簡(jiǎn)單的算術(shù)操作,它們是由優(yōu)化的匯編代碼寫成),可提高代碼執(zhí)行的效率;最后,為了使程序的執(zhí)行效率更高,可采取一些代碼優(yōu)化技巧,例如多用并行操作,減少判斷分支轉(zhuǎn)移,合理地使用多重循環(huán),為運(yùn)算方便可將浮點(diǎn)數(shù)定點(diǎn)化,使用移位加減操作代替乘除法等。
本系統(tǒng)實(shí)現(xiàn)了雙核架構(gòu)協(xié)調(diào)工作,克服了傳統(tǒng)單ARM核實(shí)現(xiàn)方案的數(shù)字運(yùn)算能力不足和單DSP核控制代碼復(fù)雜,易用性不好的缺點(diǎn)。在實(shí)際應(yīng)用中,用戶能體驗(yàn)到它所提供的監(jiān)控圖像質(zhì)量及幀率都比單ARM核的系統(tǒng)有明顯提高,并且系統(tǒng)的易用性沒有因?yàn)樵黾恿薉SP核而降低。下面,將給出實(shí)驗(yàn)數(shù)據(jù),說明兩種方案的差距,讓讀者更直觀體會(huì)到改進(jìn)方案的優(yōu)勢(shì)。
5 測(cè)試結(jié)果
測(cè)試硬件平臺(tái)為單ARM9核的三星S3C2410開發(fā)板和DSP+ARM9雙核的TI OMAP5912OSK開發(fā)板,操作系統(tǒng)為嵌入式Linux,測(cè)試序列為QCIF(176×144)格式的foreman和news,編碼算法為H.263,在碼率同為128Kbit/s的情況下進(jìn)行,測(cè)試其結(jié)果列于表1中。
從表1可看出,本文提出的對(duì)嵌入式視頻監(jiān)控系統(tǒng)的改進(jìn)方案比傳統(tǒng)方案在視頻壓縮效率上有較大提高,可在不增加帶寬需求的情況下,大幅提高監(jiān)控視頻的編碼幀率,基本可滿足人眼對(duì)視頻流暢度的要求。整個(gè)系統(tǒng)的效果圖如圖4所示。嵌入式視頻監(jiān)控終端部分采用Telnet客戶端軟件Tera Term控制運(yùn)行。監(jiān)控畫面通過PC機(jī)Windows操作系統(tǒng)自帶的IE瀏覽器查看。
6 結(jié)論
OMAP平臺(tái)具有獨(dú)特的雙核結(jié)構(gòu),本文充分利用OMAP雙核的特點(diǎn),對(duì)嵌入式網(wǎng)絡(luò)監(jiān)控終端進(jìn)行改進(jìn),提高了嵌入式監(jiān)控終端的實(shí)用性,另外還簡(jiǎn)要闡述了OMAP的軟件優(yōu)化開發(fā)方法,希望能對(duì)使用OMAP的開發(fā)人員具有借鑒作用。
評(píng)論