3G網(wǎng)絡(luò)在車載視頻監(jiān)控系統(tǒng)的應(yīng)用
點擊:1296
A+ A-
所屬頻道:新聞中心
引言
車輛不按既定線路運載、沿途加載旅客、司機疲勞駕駛、車廂內(nèi)人員滋事等問題,使得已經(jīng)連帶出的一系列安全隱患、犯罪事件等衍生問題不斷困擾著人們和社會。針對此種情況,本文提出了基于3G網(wǎng)絡(luò)的車輛定位和視頻監(jiān)控系統(tǒng),減少上述事件的發(fā)生,給車輛以及車乘人員更安全的保障。此系統(tǒng)采用了先進的H.264視頻壓縮編碼技術(shù),在不影響質(zhì)量效果的前提下大大減少了所要傳輸?shù)臄?shù)據(jù)量,并且以3G無線寬帶網(wǎng)絡(luò)為傳輸媒介,既可以克服傳統(tǒng)固定網(wǎng)絡(luò)有線方式對地理位置變化或處于運動中的監(jiān)控不能實現(xiàn)的問題,提供更加靈活組網(wǎng)方式,滿足不能架設(shè)線路的監(jiān)控點的監(jiān)控需求,還可以提供比GPRS和CDMA更寬的數(shù)據(jù)傳輸帶寬,滿足了移動視頻監(jiān)控的要求。
1 關(guān)鍵技術(shù)分析
1.1 3G技術(shù)
第三代移動通信技術(shù)(3G),是指支持高速數(shù)據(jù)傳輸?shù)姆涓C移動通訊技術(shù)。CDMA系統(tǒng)以其頻率規(guī)劃簡單、系統(tǒng)容量大、頻率復(fù)用系數(shù)高、抗多徑能力強、通信質(zhì)量好、軟容量、軟切換等特點顯示出巨大的發(fā)展?jié)摿Γ惨虼顺蔀榈谌苿油ㄐ畔到y(tǒng)的技術(shù)基礎(chǔ)。目前在我國3G存在3種標(biāo)準(zhǔn):CDMA2000,WCDMA,TD-SCDMA。CDMA2000從IS-95平滑升級,技術(shù)成熟性最高,有明確的提高頻譜利用率的演進路線,在國外有預(yù)商用試驗網(wǎng),W-CDMA來源于IS-95CDMA技術(shù),有較高的擴頻增益,發(fā)展空間較大,在歐洲成為優(yōu)選。TD-SCDMA已成為國際電聯(lián)和3GPP標(biāo)準(zhǔn),目前處于與歐洲TDD標(biāo)準(zhǔn)的融合階段,技術(shù)成熟性一般,有較高的頻譜利用率。3G可以提供室內(nèi)、室外和行車環(huán)境中分別支持2Mbps、384kbps和144kbps的傳輸速度。
1.2 圖像壓縮技術(shù)
為了適應(yīng)移動設(shè)備,同時也為了提高數(shù)據(jù)傳輸速度、降低網(wǎng)絡(luò)數(shù)據(jù)流量、保證監(jiān)控的實時性,有必要對車載端攝像頭采集的數(shù)據(jù)進行編碼壓縮。文中采用H.264標(biāo)準(zhǔn)將攝像頭采集的圖像系列壓縮編碼成流媒體。H.264的編解碼流程主要包括5個部分:幀間和幀內(nèi)預(yù)測、變換和反變換、量化和反量化、環(huán)路濾波、熵編碼。通過該流程,使得H.264具有極高的視頻壓縮比。在同等圖像質(zhì)量條件下,H.264的壓縮比是MPEG-4的1.5~2倍。以下簡要分析H.264/AvC編解碼原理。
H.264/Avc編解碼器包括2個數(shù)據(jù)流通道:前向通道(從左向右)和重構(gòu)通道(從右向左)。其編碼器的基本結(jié)構(gòu)如圖1所示。輸入幀F(xiàn)n用來進行編碼,該幀在宏塊(宏塊指的是在原始圖像中16×l6點陣)單元中進行處理。一個預(yù)測宏塊P被基于重構(gòu)的幀所構(gòu)建。在內(nèi)部模式中,P從當(dāng)前己經(jīng)編碼過、解碼過和重構(gòu)的幀F(xiàn)n的采樣所獲得。在中間模式中,P通過源自一個和多個參考幀的運動補償預(yù)測中形成。
在圖1中,參考幀表示為先前編碼幀F(xiàn)‘n-1,預(yù)測P被從當(dāng)前宏塊中減去以產(chǎn)生一個殘余的或者有差異的宏塊Dn。通過轉(zhuǎn)換(使用塊傳輸)和量化以給出X(量化轉(zhuǎn)換系數(shù)集)。這些系數(shù)被重新排列并且進行嫡編碼。嫡編碼的系數(shù),隨同用來解碼宏塊的信息(諸如宏塊的預(yù)測模式,量化步數(shù)大小,運動矢量信息)形成壓縮的比特流。該比特流傳送給網(wǎng)絡(luò)抽象層(NAL)用來傳輸或者存儲。為了實現(xiàn)下一宏塊或下一個圖像的預(yù)測,編碼器包含一個解碼器,對量化變換系數(shù)(圖中標(biāo)注為X)進行與解碼器解碼相同的反量化和反變換過程,導(dǎo)出解碼預(yù)測殘差(圖中標(biāo)注為D’n,這與原來的殘差塊Dn并不完全相同,因為量化和反量化的過程中產(chǎn)生了信息的耗損),解碼預(yù)測殘余D‘n與預(yù)測P相加,得到重建的宏塊uF’n,送到去塊效應(yīng)濾波器,得到當(dāng)前重建幀F(xiàn)‘n,同時將其存儲以供將來做后續(xù)幀的幀間預(yù)測模式的參考幀。
目前主要使用的視頻格式有QCIF(176*144/dpi)、CIF(352*288/dpi)、4CIF(704*576/dpi)。
這里基于實際的需求選擇CIF格式。則每幀圖像的大小為352×288×24=2433024bit,即2433024/1024=2376kbit,這里選擇H.264的250:1的壓縮比例的話,壓縮后的圖像大小就為2376/250=9.5kbit,那么按照3G網(wǎng)絡(luò)在車輛運動中的速度要求144kbit/s,這樣每秒可傳幀的數(shù)量為15~16幀,這樣就能實現(xiàn)較為滿意的監(jiān)控效果(影像播放達(dá)不到15幀/s時將產(chǎn)生明顯跳躍感)。
2 車載終端設(shè)計
2.1 車載終端硬件設(shè)計
車載模塊終端如圖2所示,主要由4部分組成:
ARM處理器、GPS模塊、3G無線數(shù)據(jù)發(fā)送模塊、USB攝像頭。ARM處理器是整個終端的CPU,負(fù)責(zé)調(diào)配和控制各個模塊的工作,其主要功能是通過GPS獲取車輛當(dāng)前的位置信息,通過USB攝像頭獲取車輛內(nèi)情況和司機駕駛狀況,把這些視頻或圖像數(shù)據(jù)信息以H.246標(biāo)準(zhǔn)格式壓縮,并整合成能由串口發(fā)送出去的特定格式,最后由3G無線模塊發(fā)送到無線網(wǎng)絡(luò),最終通過INTERNET或PSTN(公共陸地網(wǎng)絡(luò))網(wǎng)絡(luò)傳回監(jiān)控中心主機。下面簡單介紹各個模塊性能:
模塊終端主控芯片采用ARM處理器,相對于以8位/16位單片機作為中央處理器的終端而言,無論是功能上,還是人機接口都有顯著提高,是微處理器技術(shù)的重要發(fā)展。這里選用Atmel公司的ARM920T處理器為主控制器。該內(nèi)核屬于專門用于工業(yè)控制的ARM芯片,有較好的工業(yè)參數(shù),同時集成了豐富的系統(tǒng)應(yīng)用外設(shè)及標(biāo)準(zhǔn)接口,在200MHz主頻下處理速度大大提高,此外它還有豐富的外部設(shè)備和優(yōu)越的數(shù)據(jù)傳輸特性。
定位信息接收模塊選用Trimble公司的Copernicus-GPS接收機。該模塊支持NMEA0183協(xié)議的數(shù)據(jù)格式。這是一款高靈敏度、高精度、低功耗的微型GPS接收機。能在復(fù)雜的條件下也能準(zhǔn)確的實施定位功能。
無線通信模塊采用SIMCOM公司的SIM5218模塊,SIM5218是一款3G/HSDPA/EDGE模塊解決方案,在HSDPA解決方案下支持下行速率達(dá)7.2Mbps和上行速率為5.76Mbps的數(shù)據(jù)傳輸服務(wù),這對視頻和圖像等數(shù)據(jù)量相對較大的信號傳輸而言是非常理想的選擇。在費用方面,3G因為是借助分包交換的技術(shù),所以,網(wǎng)絡(luò)使用的費用不是以接入的時間計算,而是以消費者的數(shù)據(jù)傳輸量來定。
2.2 車載終端程序設(shè)計
車載端是一個基于ARM的Linux系統(tǒng)平臺,其任務(wù)主要包括獲取GPS定位數(shù)據(jù)和視頻采集數(shù)據(jù),圖像或者視頻的壓縮編碼,將定位數(shù)據(jù)和視頻、圖像數(shù)據(jù)通過串口輸送到3G模塊緩沖區(qū),最后通過無線網(wǎng)絡(luò)發(fā)送出去。
首先,要根據(jù)CPU與外圍設(shè)備的具體引腳連接重新裁剪的編譯linux內(nèi)核驅(qū)動,主要包括攝像頭的USB模塊、GPS和3G無線通信的串口模塊等驅(qū)動等。
其次,調(diào)用linux內(nèi)核中關(guān)于視頻設(shè)備的API接口(即Video4Linux)編寫攝像頭采集數(shù)據(jù)的應(yīng)用程序。并且,Video4Linux還專門為USB攝像頭定義了數(shù)據(jù)結(jié)構(gòu):
structvideo_capabilitygrab_cap;包含攝像頭的基本信息;structvideo_picturegrab_pic;包含設(shè)備采集圖像的各種屬性;structvideo_mmapgrab_buf;用于內(nèi)存映射;structvideo_mbufgrab_vm;利用mmap進行映射的幀信息;由于外設(shè)都被當(dāng)成設(shè)備文件,所以如需對設(shè)備進行操作時,內(nèi)核將調(diào)用file_operations結(jié)構(gòu)中的open、close、read、write等函數(shù)進行操作。采集程序?qū)崿F(xiàn)過程:
①打開視頻設(shè)備,攝像頭在系統(tǒng)中對應(yīng)的設(shè)備文件為/dev/video0,采用系統(tǒng)調(diào)用函數(shù)grab_fd=open(“/dev/video0”,O_RDWR),grab_fd是設(shè)備打開后返回的文件描述符。
?、诶胕octl(grab_fd,VIDIOCGCAP,&grab_cap)函數(shù)讀取structvideo_capability中有關(guān)攝像頭的信息。
③使用ioctl(grab_fd,VIDIOCGMBUF,&grab_vm)函數(shù)獲得攝像頭存儲緩沖區(qū)的幀信息。
④接著把攝像頭對應(yīng)的設(shè)備文件映射到內(nèi)存區(qū),具體使用grab_data=(unsignedchar*)mmap(0,grab_vm.size,PROT_READ|PROT_WRITE,MAP_SHARED,grad_fd,0)操作。
圖3圖像采集流程圖
再次,在該視頻采集與壓縮程序設(shè)計中,將修改X264程序的輸入方式,使它直接從內(nèi)存獲得視頻數(shù)據(jù)源。程序首先從USB端口采集攝像頭的視頻原始數(shù)據(jù),存放在系統(tǒng)內(nèi)存中,然后由X264進行壓縮,以文件的形式輸出,保存在根文件系統(tǒng)中。
最后,3G無線網(wǎng)絡(luò)的通信部分主要涉及到的是AT指令的應(yīng)用。在選擇可靠性強的TCP方式連接。
下面簡單敘述一下所用到的AT指令:
AT+NETOPEN=“TCP”,《portnumber》激活一個特定的SocketPDP上下文,同時創(chuàng)建一個Socket連接。
AT+TCPCONNECT=“IPaddress”,《portnumber》
嘗試建立一個固定IP地址的TCP服務(wù)器連接。
AT+TCPWRITE=《datalength》告知服務(wù)器要發(fā)送的數(shù)據(jù)長度,在得到確認(rèn)后發(fā)送相應(yīng)的數(shù)據(jù)。
AT+NETCLOSE關(guān)閉與服務(wù)器的連接,并注銷原來激活的SocketPDP上下文。
此外車載終端的程序流程如圖4所示。
圖4車載終端程序流程圖
3 終端測試效果
該監(jiān)控終端安裝在試驗車輛上,通過3G無線網(wǎng)絡(luò)與監(jiān)控中心互聯(lián),監(jiān)控中心配有視頻解碼服務(wù)器,以及由C#語言和MapXtreme2005組件(MapXtreme產(chǎn)品是用于創(chuàng)建GIS應(yīng)用的一套組件)編程設(shè)計的監(jiān)控服務(wù)系統(tǒng),服務(wù)系統(tǒng)中用到Socket接口,Socket接口函數(shù)是TCP/IP的API(應(yīng)用程序接口),用來向終端提供無線網(wǎng)絡(luò)通路。
經(jīng)過實驗車輛運行測試后,得到如圖5所示效果。在監(jiān)控界面左邊地圖上顯示車輛當(dāng)前運行所在位子,在右邊視頻窗口查看車內(nèi)監(jiān)控視頻。從得到的結(jié)果看,地圖信息能準(zhǔn)確定位,圖像質(zhì)量基本上能滿足監(jiān)控要求,待系統(tǒng)完善后應(yīng)該能得到更理想的效果。
圖5系統(tǒng)測試效果圖
4 結(jié)語
本文設(shè)計的系統(tǒng)將視頻監(jiān)控和地理信息系統(tǒng)有機結(jié)合在一起,以3G寬帶無線網(wǎng)絡(luò)為媒介,提供了一套車輛視頻監(jiān)控和定位的解決方案。隨著我國3G網(wǎng)絡(luò)的普及和蔓延,帶寬限制的問題已將不再成為困擾人們的難題,此外H.264編/解碼器軟硬件實現(xiàn),使得質(zhì)量高、價格便宜的移動視頻監(jiān)控成為市場新寵兒。
(審核編輯: 智匯小新)
分享