鄭更生,方 勇,肖 婧
(武漢工程大學計算機科學與工程學院,湖北 武漢 430074)
視頻信息具有直觀、可靠的特點,視頻監(jiān)控系統(tǒng)目前在智能交通、家庭安防、可視會議等領域有著越來越廣泛的應用.在視頻監(jiān)控系統(tǒng)中,實時采集和視頻傳輸是一項關鍵的技術.傳統(tǒng)的視頻監(jiān)控系統(tǒng)主要以采集卡和有線傳輸為主,此方案體積大,移動性差.隨著嵌入式技術,視頻處理技術和無線網(wǎng)絡傳輸技術的發(fā)展,基于嵌入式平臺和無線網(wǎng)絡傳輸?shù)男滦鸵曨l監(jiān)控系統(tǒng)已經(jīng)在多個領域有著廣泛的應用.本文介紹了一種基于S3C2440微處理器、在嵌入式Linux操作系統(tǒng)上實現(xiàn)的實時視頻采集和無線傳輸?shù)谋O(jiān)控系統(tǒng).該系統(tǒng)以體積小巧、可移動性高等特點,克服了傳統(tǒng)視頻監(jiān)控系統(tǒng)的不足.本系統(tǒng)為今后嵌入式Linux在智能監(jiān)控系統(tǒng)中提供了一個可行的方案.具有一定的實際應用價值.
本系統(tǒng)主要由前端采集模塊、圖像處理模塊、無線傳輸模塊3部分組成.前端采集模塊由開發(fā)板提供的130萬像素的CMOS(Complementary Metal Oxide Semiconductor 互補金屬氧化物場效應管)圖像傳感器OV9650及其接口電路組成.該傳感器具有高靈敏度、低功耗等優(yōu)點,低電壓供電,適用于嵌入式便攜產(chǎn)品的應用,且支持標準的SCCB(Serial Camera Control Bus)接口,微處理器通過SCCB接口可以方便的進行圖像質(zhì)量控制.主控模塊主要由廣嵌的GEC2440開發(fā)板構成,其核心處理器S3C2440是Samsung公司ARM9系列的ARM920T嵌入式處理器.主頻400 MHz,對Linux操作系統(tǒng)能很好的支持,有強大的計算處理能力,該芯片集成了通用的串口控制器、USB(通用串行總線)控制器、A/D(模數(shù)轉換)轉換器和GPIO(通用輸入輸出)等功能,能很好的實現(xiàn)視頻圖像的編解碼.無線傳輸模塊采用騰達W311U+無線網(wǎng)卡,該網(wǎng)卡采用雷凌公司的RT3070芯片,無線傳輸速率150 Mbps,配備4.2dBi全向天線,采用信號增強放大先進技術,有效的提升網(wǎng)卡的無線接收能力,且支持Linux操作系統(tǒng),驅動移植方便,縮短了開發(fā)周期,能很好滿足視頻監(jiān)控的需求.
本系統(tǒng)軟件由設備驅動模塊、圖像采集模塊、H.264圖像壓縮模塊、無線視頻傳輸模塊組成.設備驅動模塊實現(xiàn)攝像頭、WIFI無線網(wǎng)卡在Linux操作系統(tǒng)下正常工作[1],并為應用程序提供接口.圖像采集模塊實現(xiàn)獲取攝像頭的圖像并進行暫存.H.264圖像壓縮模塊實現(xiàn)原始圖像的編碼處理.無線視頻傳輸模塊實現(xiàn)視頻圖像的網(wǎng)絡傳輸.
嵌入式工作平臺的搭建主要是對Linux操作系統(tǒng)進行必要的修改和裁剪,使其能在選定的硬件平臺上穩(wěn)定高效的工作.ARM-Linux移植到本系統(tǒng)慨括起來主要有以下步驟[2-3].
(1)建立ARM-Linux交叉編譯環(huán)境.
(2)Bootloader的移植.移植、配置和編譯u-boot,將可執(zhí)行文件燒寫到開發(fā)板NAND Flash中.
(3)Linux內(nèi)核的移植.
(4)嵌入式文件系統(tǒng)的移植.
圖像采集模塊主要負責視頻數(shù)據(jù)的采集,并將采集到的數(shù)據(jù)存放在緩存區(qū)中,供其它模塊使用.視頻采集在Linux下是基于V4L(Video4Linux)提供的函數(shù)接口來實現(xiàn)的[4].V4L是Linux內(nèi)核中關于視頻設備的API接口,它為視頻設備的應用程序編程提供了一套接口規(guī)范.開發(fā)完攝像頭的驅動程序后,就可以通過V4L提供的系統(tǒng)API來控制攝像頭實現(xiàn)視頻采集.Linux下通過V4L提供的編程接口,編寫視頻采集程序的流程如圖1所示.
圖1 視頻采集流程Fig.1 Video capturing flow chart
新一代視頻壓縮編碼標準[5]是IYU-T視頻編碼專家組和ISO/IEC動態(tài)圖像專家組聯(lián)合組成的視頻組提出的高度壓縮數(shù)字視頻編碼器標準.它編碼效率高、能以較低的數(shù)據(jù)速率傳送基于IP(網(wǎng)際協(xié)議)的視頻流,在視頻質(zhì)量、壓縮效率和數(shù)據(jù)包恢復丟失等方面有較大的優(yōu)勢,能很好適應IP和無線網(wǎng)絡,是目前監(jiān)控系統(tǒng)最為理想的信源壓縮編碼標準.T264是中國視頻編碼自由組織聯(lián)合開發(fā)的開源的264編解碼器,吸收了X264、XVID等開源編碼庫的優(yōu)點.系統(tǒng)采用最新版本avc-src-0.14.下載此源碼,進行編譯會生成一些*.obj文件,應用程序可以直接使用這些目標文件提供的功能函數(shù)對YUV格式視頻進行編碼.流程圖如圖2所示.
圖2 新一代視頻壓縮編碼標準視頻編碼流程Fig.2 Video decoding of H.264 flow chart
視頻采集編碼完成后,需要通過無線網(wǎng)絡傳輸,目前網(wǎng)絡傳輸協(xié)議主要有TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報協(xié)議)兩種,而流媒體的實時傳輸對帶寬和延時比較敏感,它要求一定的服務質(zhì)量且可以容忍一定程度的丟包.TCP每次都有通過3次握手建立連接,在等待亂序及重傳丟失數(shù)據(jù)時產(chǎn)生了較大時延,不適合實時數(shù)據(jù)傳輸.UDP協(xié)議時面向無鏈接、不可靠的傳輸協(xié)議,具有消耗資源小、傳輸速度快等特點,在視頻傳輸過程中偶爾丟包不會對監(jiān)控畫面產(chǎn)生較大影響.但UDP無法提供差錯控制,也不適合.在這種情況下,運行于UDP之上的RTP[6](實時傳輸協(xié)議)則有很大優(yōu)勢.RTP提供了為數(shù)據(jù)包編號,加載時間信息等功能,能有效的反饋和最小的開銷使傳輸效率最佳化,RTCP周期性的向會話的所以者進行通信,來監(jiān)視服務質(zhì)量.視頻數(shù)據(jù)首先封裝在RTP信息包中,每個信息包又封裝在UDP消息段中,最后封裝在IP數(shù)據(jù)包中進行傳輸.基于RTP/UDP/IP協(xié)議的傳輸視頻流封裝格式如圖3所示.
圖3 視頻封裝格式Fig.3 Format of video package
服務器端利用UDP的網(wǎng)絡socket編程實現(xiàn)視頻的傳輸.實現(xiàn)流程如圖4所示.
圖4 視頻發(fā)送流程Fig.4 Video transmission flow chart
測試環(huán)境:GEC2440開發(fā)板,采用Linux 2.6.12操作系統(tǒng).攝像頭:130萬像素CMOS圖像傳感器OV9650.網(wǎng)絡環(huán)境:無線局域網(wǎng).遠程監(jiān)控端:Windows個人電腦.
圖5為監(jiān)控客戶端實時運行情況,監(jiān)控圖像清晰流暢,無明顯失真.監(jiān)控終端視頻延遲2秒左右,無明顯延遲,達到了實時監(jiān)控的效果.
圖5 遠程監(jiān)控端視頻Fig.5 Video taken by the monitoring client
以上介紹的基于ARM的嵌入式終端通過WIFI技術實現(xiàn)無線實時視頻監(jiān)控系統(tǒng)的設計與實現(xiàn).包括視頻采集、H.264編碼和無線傳輸三個核心模塊.經(jīng)測試,系統(tǒng)運行穩(wěn)定,監(jiān)控視頻在局域網(wǎng)環(huán)境下無明顯失真和延遲.基本可以滿足普通視頻監(jiān)控要求.本文特色:將嵌入式視頻監(jiān)控和無線傳輸技術結合,體積小,成本低,并結合了較新的H.264編碼標準, 在具有高壓縮比的同時還擁有高質(zhì)量流暢的圖像,另采用RTP/RTCP協(xié)議傳輸視頻流,以有效的反饋和較小的開銷達到較高的傳輸效率.有廣泛的市場前景和應用價值.
參考文獻:
[1] 盛李立, 王忠, 王春麗, 等. 基于SPI接口的無線網(wǎng)卡設備驅動設計[J]. 武漢工程大學學報, 2011, 33(6):89-93.
[2] 韋東山. 嵌入式Linux應用開發(fā)完全手冊[M]. 北京:人民郵電出版社,2009:241-360.
[3] 彭鐵鋼, 劉國繁, 曹少坤, 等. 基于ARM的嵌入式視頻監(jiān)控系統(tǒng)設計[J]. 計算機工程與設計, 2010, 31(6):1191-1194.
[4] Alan Cox. Video4Linux Programming[EB/OL]. http://kernelbook.sourceforge.net/videobook.pdf, 2010-07-25.
[5] 畢厚杰. 新一代視頻壓縮編碼標準——H.264/AVC[M].北京:人民郵電出版社,2005.
[6] 周鵬, 湯銀煥, 黃秋元, 等. 基于RTP/RTCP的音視頻WiFi傳輸系統(tǒng)的設計[J]. 武漢理工大學學報, 2011, 35(4):802-804.