唐聰
摘要:本文設(shè)計一種視頻壓縮系統(tǒng),應(yīng)用于遠(yuǎn)程監(jiān)控系統(tǒng)中視頻數(shù)據(jù)的傳輸與處理。該系統(tǒng)硬件平臺采用ARM處理器為核心,軟件部分完成H.264編碼庫的移植,最終通過網(wǎng)絡(luò)傳輸將壓縮處理后的數(shù)據(jù)發(fā)送到遠(yuǎn)程上位機(jī)進(jìn)行解壓和顯示。
關(guān)鍵詞:視頻壓縮移植ARM
中圖分類號:TP277 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2012)06(b)-0013-01
1 設(shè)計結(jié)構(gòu)與基本原理
該系統(tǒng)通過CMOS相機(jī)采集現(xiàn)場數(shù)據(jù),將采集到的視頻數(shù)據(jù)通過網(wǎng)口傳輸給ARM 架構(gòu)的主處理器上,在SDRAM中以H.264標(biāo)準(zhǔn)對視頻信號進(jìn)行壓縮處理,最后按照UDP包的格式打包,將數(shù)據(jù)發(fā)送到遠(yuǎn)程上位機(jī)進(jìn)行計算與處理。系統(tǒng)構(gòu)成框架圖如圖1所示。
2 系統(tǒng)的實現(xiàn)
2.1 系統(tǒng)平臺的搭建
本文選擇S3C6410作為該系統(tǒng)主處理器,S3C6410是由三星公司推出的一款低功耗、高性價比的RSIC處理器,它基于ARM11內(nèi)核(ARM1176JZF-S),主頻667M,可廣泛應(yīng)用于移動電話和通用處理等領(lǐng)域。外部ROM采用64M Nand flash 和64M SDRAM 分別用于系統(tǒng)和數(shù)據(jù)的存儲等功能。為了實現(xiàn)對視頻數(shù)據(jù)的采集以及壓縮傳輸,在硬件平臺的基礎(chǔ)上移植Linux內(nèi)核,裁剪Linux2.6.28內(nèi)核,保留內(nèi)核對TCP/IP協(xié)議的支持,并在基于Linux內(nèi)核的嵌入式系統(tǒng)上完成相機(jī)驅(qū)動、視頻采集應(yīng)用程序的編寫以及H.264視頻編碼庫的移植。采用UBOOT引導(dǎo)內(nèi)核,文件系統(tǒng)采用cramfs,使其操作簡單、速度快、節(jié)約內(nèi)存空間。最后為嵌入式系統(tǒng)添加網(wǎng)口芯片DM9000驅(qū)動嗎,至此整個系統(tǒng)的硬件平臺搭建完畢?,F(xiàn)場數(shù)據(jù)經(jīng)過采集,編碼,最終被處理器通過網(wǎng)口協(xié)議發(fā)送給遠(yuǎn)程上位機(jī)。
2.2 基于H.264編碼庫的視頻壓縮
為了達(dá)到較高的編碼效率,本文選用第三代視頻編碼標(biāo)準(zhǔn)H.264。在同等條件下,與MPEG-4 ASP編碼標(biāo)準(zhǔn)相比較,H.264壓縮的數(shù)據(jù)占用空間小,節(jié)約50%的碼流,而且在此前提下并不影響圖像的質(zhì)量,即高質(zhì)量視頻流壓縮。假如原始大小為88GB的視頻文件,若使用MPEG-2壓縮過后大小為3.5GB,其壓縮率為25∶1,換成H.264編碼后文件大小則為879MB,它的壓縮率將高達(dá)102∶1。不但如此,H.264能夠更好的運用于網(wǎng)絡(luò)傳輸?shù)念I(lǐng)域。它采用內(nèi)容自適用可變長編碼(CAVLC)和內(nèi)容自適用二進(jìn)制算術(shù)編碼(CABAC),作為糾錯編碼,具有較強(qiáng)的抗誤碼特性,可適應(yīng)丟包率高、干擾嚴(yán)重的無線信道中的視頻傳輸。(圖1)
H.264標(biāo)準(zhǔn)的編碼如圖2:它采用基于塊的混合編碼模式,其基本思想是通過對幀間和幀內(nèi)預(yù)測確定出視頻序列中的時間和空間冗余,然后通過固定算法的變換和量化編碼來消除頻域冗余。H.264視頻編碼相對于其他的編碼標(biāo)準(zhǔn),在一定模式下提高了視頻壓縮編碼性。
3 測量與結(jié)果
經(jīng)過大量的分析、計算和論證,本文提出的設(shè)計系統(tǒng)符合大部分的遠(yuǎn)程監(jiān)控測量系統(tǒng)的應(yīng)用標(biāo)準(zhǔn),實際應(yīng)用于激光測量系統(tǒng)的遠(yuǎn)程監(jiān)控,使得該系統(tǒng)性能得到了較大的改善。本文設(shè)計中,編解碼過程全部應(yīng)用H.264標(biāo)準(zhǔn),經(jīng)測試,監(jiān)控系統(tǒng)再接收數(shù)據(jù)和發(fā)送控制指令時具有較快的響應(yīng)速度。
4 結(jié)語
本文采用當(dāng)前主流的嵌入式微處理器S3C6410,借鑒傳統(tǒng)的視頻壓縮處理方案的基礎(chǔ)上,加大容量的FLASH 芯片存儲,移植較高版本的linux內(nèi)核,使得本系統(tǒng)具有通用性、安裝方便、穩(wěn)定、可靠、成本低等優(yōu)點,擁有相當(dāng)廣泛的應(yīng)用前景。
參考文獻(xiàn)
[1] 周怡,吳昊,方向忠.針對硬件實現(xiàn)的H.264視頻編碼算法改進(jìn)[J].電子技術(shù)應(yīng)用,2004,7(12):110-112.
[2] 李駒光,聶雪媛,江澤明,王兆衛(wèi).ARM應(yīng)用系統(tǒng)開發(fā)詳解[M].清華大學(xué)出版社,2003.
[3] 杜春雷.ARM體系結(jié)構(gòu)與編程[M].清華大學(xué)出版社,2003.
[4] 熊茂華,謝建華,熊昕.嵌入式Linux C語言應(yīng)用程序設(shè)計與實踐[M].北京:清華大學(xué)出版社,2010.