王 娟,王仁波,魏 雄
(東華理工大學(xué) 機械與電子工程學(xué)院,江西 南昌 330013)
(1)設(shè)計思想及工作原理。本文是以ARM9嵌入式芯片為核心,在嵌入式Win CE的系統(tǒng)平臺下,通過攝像頭采集圖像信息,然后對所得數(shù)據(jù)依照H.264的先進編碼標準進行壓縮編碼,然后通過射頻技術(shù),利用GPRS無線收發(fā)模塊進行遠距離無線通信,然后在PC機上對所得數(shù)據(jù)進行解碼,同時顯示在液晶屏上,從而實現(xiàn)無線遠程視頻傳輸。
(2)系統(tǒng)硬件結(jié)構(gòu)。視頻采集、發(fā)射與接收模塊硬件平臺功能框圖如圖1所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
基于視頻高速采集、壓縮傳輸?shù)目紤],本系統(tǒng)采用以天嵌科技生產(chǎn)的TQ2440開發(fā)板的嵌入式平臺。它是一款基于ARM920T的32位RISC微處理器,主頻為400MHz,最高可達533MHz,具有較強的任務(wù)處理能力。以太網(wǎng)接口功能通過DM9000A實現(xiàn),片上64Mbyte SDRAM,32位數(shù)據(jù)總線。64Mbyte NAND Flash和2Mbyte片上NOR Flash。攝像頭為開發(fā)板自帶普通視頻攝像頭。
本系統(tǒng)軟件可分為圖像采集模塊、數(shù)據(jù)收發(fā)模塊、圖像顯示模塊,系統(tǒng)框圖如圖2所示。
圖2 系統(tǒng)軟件圖
(1)GPRS模塊的介紹與internet的連接。這里我們采用的是ENFORA公司生產(chǎn)的產(chǎn)品,嵌入式GPRS數(shù)據(jù)傳輸模塊是一款基于GPRS網(wǎng)絡(luò)的無線數(shù)據(jù)傳輸終端設(shè)備,以實時操作系統(tǒng)作為軟件支撐平臺,內(nèi)嵌自主知識產(chǎn)權(quán)的TCP/IP協(xié)議,提供全透明數(shù)據(jù)通道,可以方便地實現(xiàn)遠程、無線、網(wǎng)絡(luò)化的通信方式。
先在內(nèi)核中加入WAN下面的幾個組件,如RAS/PPP、TAPI。WINCE采用unimodem驅(qū)動,所以不必擔(dān)心沒有Modem驅(qū)動的支持。WINCE啟動后新建一個撥號連接,比如名稱叫“gprs1”,開始連接,連接過程會在對話框中顯示,直到顯示“連接成功”。打開瀏覽器或者自己開發(fā)的通訊軟件測試網(wǎng)絡(luò)連接情況,關(guān)閉連接。保存[HKEY_CURRENT_USERCommRasBookgprs1]下的所有數(shù)據(jù),添加到project.reg中,重新編譯后內(nèi)核中就有了一個撥號連接 “gprs1”。調(diào)用RAS函數(shù)可以修改撥號連接“gprs1”的參數(shù),如用戶名、密碼、電話號碼,但是不能修改硬件設(shè)置,如波特率、串口、數(shù)據(jù)位、停止位等。RAS函數(shù)還能夠撥號、掛斷。為了修改波特率可以多保存幾個撥號連接,也可以直接調(diào)用TAPI開發(fā)撥號軟件,另外WINCE自帶的撥號連接是有源碼的,位置在PUBLICCOMMONOAKDRIVERSNETSAMPCONNMC。
(2)嵌入式Win CE內(nèi)核裁剪。Windows CE是Microsoft公司針對有限資源的平臺而設(shè)計的多線程、完整優(yōu)先權(quán)、多任務(wù)、可裁減的32位嵌入式操作系統(tǒng)。Platform Builder 5.0是基于Win CE 5.0平臺下嵌入式操作系統(tǒng)定制的集成開發(fā)環(huán)境。它提供了所有進行設(shè)計、創(chuàng)建、編譯、測試和調(diào)試Win CE 5.0操作系統(tǒng)平臺的工具。Platform Builder 5.0開發(fā)Win CE 5.0的流程為定制內(nèi)核,導(dǎo)入硬件BSP,裁剪模塊,生成NK鏡像文件和導(dǎo)出SDK。打開PB5,然后點擊開始建立項目,這里新建一個名為SKY2440的項目。結(jié)束新建向?qū)е?,如圖3所示對SKY2440的項目點擊鼠標右鍵,選擇“Settings”選項然后就可以根據(jù)自己的需要進行設(shè)置了。
(3)視頻采集模塊與H.264編碼技術(shù)。系統(tǒng)使用direct show進行圖像采集,主要包括初始化﹑同步﹑讀取數(shù)據(jù)等3個部分,如圖3所示。
圖2 視頻采集模塊流程圖
H.264的目標應(yīng)用涵蓋了目前大部分的視頻服務(wù),如有線電視遠程監(jiān)控,交互媒體,數(shù)字電視,視頻會議,視頻點播,流媒體服務(wù)等。H.264為解決不同應(yīng)用中的網(wǎng)絡(luò)傳輸?shù)牟町惗x了兩層:視頻編碼層(VCL:Video Coding Layer)負責(zé)高效的視頻內(nèi)容表示,網(wǎng)絡(luò)提取層 (NAL:Network Abstraction Layer)負責(zé)以網(wǎng)絡(luò)所要求的恰當(dāng)?shù)姆绞綄?shù)據(jù)進行打包和傳送。
基本層次(Baseline Profile):該層次使用了H.264的除了B-Slices,CABAC以及交織編碼模式外所有的特性。該層次主要使用于低時延的實時應(yīng)用場合。
主要層次(Main Profile):包含 Baseline profile的所有特性,并包括了B-slices,CABAC以及交織編碼模式。它主要針對對時延要求不高,當(dāng)壓縮率和質(zhì)量要求較高的場合。
擴展層次(Profile X):支持所有Baseline profile的特性,但不支持CABAC以及基于宏塊的自適應(yīng)幀場編碼。該層次主要針對的時各種網(wǎng)絡(luò)視頻流傳輸方面的應(yīng)用。
(4)視頻顯示模塊。視頻的顯示可以采取兩種方式:一是將圖像數(shù)據(jù)直接寫入FrameBuffer,二是采用其他軟件對圖像信息讀取并處理。由攝像頭采集到的圖像文件已經(jīng)壓縮為JPEG格式,采用RGB編碼,因此若要采用第一種方式顯示,必須將其轉(zhuǎn)換為位圖。本系統(tǒng)通過VS2005編寫圖像顯示程序。圖像顯示模塊流程圖如圖4所示。
本文設(shè)計是以TQ2440開發(fā)平臺,在Win CE操作系統(tǒng),利用無線傳輸模塊將視頻傳輸?shù)南到y(tǒng)。經(jīng)測試,該系統(tǒng)具有較高的可靠性。該方案既簡化了整體設(shè)計,又提升了系統(tǒng)的性能及穩(wěn)定性,特別適合在以無線網(wǎng)絡(luò)的情況下,以簡單有效的方式搭建視頻服務(wù)器平臺。