趙榮華 關(guān) 迪 谷 月
(沈陽理工大學(xué) 遼寧 沈陽 110159)
基于嵌入式的遠(yuǎn)程視頻監(jiān)控系統(tǒng)研究
趙榮華 關(guān) 迪 谷 月
(沈陽理工大學(xué) 遼寧 沈陽 110159)
隨著網(wǎng)絡(luò)技術(shù)發(fā)展,視頻監(jiān)控技術(shù)逐漸從本地模擬信號(hào)系統(tǒng)向基于嵌入式的遠(yuǎn)程監(jiān)控系統(tǒng)轉(zhuǎn)變,監(jiān)控系統(tǒng)的網(wǎng)絡(luò)化、數(shù)字化和智能化水平不斷提高。本文主要對(duì)基于嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)設(shè)計(jì)進(jìn)行分析,重點(diǎn)分析視頻監(jiān)控系統(tǒng)的硬件和軟件設(shè)計(jì)的關(guān)鍵技術(shù)。應(yīng)用實(shí)踐證明該系統(tǒng)性能穩(wěn)定,視頻圖像質(zhì)量高,還能為數(shù)字視頻廣播和點(diǎn)播設(shè)計(jì)提供借鑒。
視頻監(jiān)控;嵌入式系統(tǒng);例LINUX
隨著多媒體技術(shù)的發(fā)展以及網(wǎng)絡(luò)寬帶增加,傳統(tǒng)視頻監(jiān)控模式的缺點(diǎn)和不足日益明顯,基于IP網(wǎng)絡(luò)視頻監(jiān)控的優(yōu)點(diǎn)更加明顯,視頻監(jiān)控也逐漸從傳統(tǒng)視頻監(jiān)控向基于IP網(wǎng)絡(luò)視屏監(jiān)控轉(zhuǎn)變,基于IP的網(wǎng)絡(luò)視頻監(jiān)控在視頻會(huì)議、家庭和生產(chǎn)現(xiàn)場等領(lǐng)域中的應(yīng)用越來越廣[1]。本文對(duì)基于嵌入式的遠(yuǎn)程視頻監(jiān)控系統(tǒng)設(shè)計(jì)進(jìn)行分析。
1.1 本地模擬信號(hào)監(jiān)控系統(tǒng)
本地模擬信號(hào)監(jiān)控系統(tǒng)包括攝像機(jī)、視頻矩陣、監(jiān)視器和錄像機(jī)幾個(gè)部分,系統(tǒng)將攝像機(jī)采集的視頻與監(jiān)視器相連,通過鍵盤控制切換和控制;錄像機(jī)為磁帶錄像機(jī)[2]。本地模擬信號(hào)監(jiān)控系統(tǒng)具有以下幾個(gè)缺點(diǎn),系統(tǒng)屬于有線信號(hào)系統(tǒng),傳輸距離對(duì)監(jiān)控質(zhì)量的影響大;二是系統(tǒng)屬于內(nèi)部局域網(wǎng),無法聯(lián)網(wǎng)控制,只能針通過點(diǎn)對(duì)點(diǎn)方式現(xiàn)場監(jiān)控;三是線路復(fù)雜,布線工作量大;四是模擬視頻信號(hào)需要占據(jù)大量存儲(chǔ)介質(zhì),查詢操作復(fù)雜。
1.2 基于PC插卡數(shù)字監(jiān)控系統(tǒng)
基于PC插卡數(shù)字監(jiān)控系統(tǒng)發(fā)展 依賴于微機(jī)技術(shù)發(fā)展和普及。該系統(tǒng)主要由PC機(jī)插視頻卡構(gòu)成,監(jiān)控現(xiàn)場包括攝像機(jī)、各類探頭、數(shù)據(jù)采集設(shè)備等幾個(gè)部分,各個(gè)部分通過線路相連,再與監(jiān)控終端PC機(jī)或工控機(jī)相連[3]?;赑C插卡數(shù)字監(jiān)控系的優(yōu)點(diǎn)在于終端功能強(qiáng)大,現(xiàn)場操作便利,缺點(diǎn)在于穩(wěn)定性和可靠性不足,受環(huán)境影響大,惡劣環(huán)境下監(jiān)控系統(tǒng)的性能不高。
1.3 基于嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)
嵌入式遠(yuǎn)程視頻監(jiān)控系是一種提供網(wǎng)絡(luò)視頻傳輸和共享的嵌入式設(shè)備系統(tǒng),系統(tǒng)采用嵌入式一體化結(jié)構(gòu)設(shè)計(jì),系統(tǒng)面向?qū)崟r(shí)處理的硬件平臺(tái),集成了多通道視頻和網(wǎng)絡(luò)傳輸多功能,將視頻信號(hào)采集、壓縮、復(fù)合后轉(zhuǎn)換為網(wǎng)絡(luò)IP包,再經(jīng)根據(jù)網(wǎng)絡(luò)協(xié)議實(shí)時(shí)傳輸視頻壓縮數(shù)據(jù)。由于視頻和網(wǎng)絡(luò)功能都集中于小體積設(shè)備內(nèi),系統(tǒng)可直接與局域網(wǎng)相連,方便實(shí)時(shí)查看。也無需布設(shè)大量線纜,系統(tǒng)設(shè)備安裝方便[4]。用戶端無需加裝硬件設(shè)備,可直接通過瀏覽器或人機(jī)界面查看監(jiān)控視頻。
基于嵌入式的遠(yuǎn)程視頻監(jiān)控系統(tǒng)可以實(shí)時(shí)采集視頻信號(hào),再對(duì)視頻信號(hào)進(jìn)行壓縮編碼和網(wǎng)絡(luò)傳輸,系統(tǒng)硬件結(jié)構(gòu)詳見圖1。
本系統(tǒng)采用多媒體處理芯片DM642實(shí)現(xiàn)嵌入式網(wǎng)絡(luò)的視頻服務(wù)器,不僅達(dá)到服務(wù)器端視頻處理計(jì)算量要求,還能減少系統(tǒng)開發(fā)成本和難度。與傳統(tǒng)DSP相比,DM642多媒體處理芯片可滿足視頻應(yīng)用廣泛性、靈活性和多樣性要求,并充分利用集成的多種新型片內(nèi)外設(shè),適應(yīng)多媒體數(shù)字化處理和網(wǎng)絡(luò)通信應(yīng)用。使用視頻A/D芯片SAA7115S實(shí)現(xiàn)信號(hào)轉(zhuǎn)換,A/D芯片SAA7115S可兼容多宗不同制式輸入和信號(hào)選擇輸入,并可輸出4:2:2、RGB的等多種信號(hào)輸出形式。同時(shí)使用PAL制式輸入方式。A/D芯片SAA7115S通過DSP芯片DM642通過I2C總線控制初始化。視頻編碼使用H.264視頻壓縮算法,該算法使用了多種先進(jìn)的編碼方式,如高精度1/4像素運(yùn)動(dòng)估計(jì)、多幀運(yùn)動(dòng)補(bǔ)償技術(shù)等,壓縮編碼的效率更高。碼率相同情況下,該算法獲得的主客觀質(zhì)量更高[5]。本系統(tǒng)使用DM642VLIW結(jié)構(gòu)和專用操作指令集,并對(duì)傳統(tǒng)編碼方式進(jìn)行優(yōu)化,自主開發(fā)DM642的視頻壓縮算法。
DM642片內(nèi)集成了以太網(wǎng)介質(zhì)接入控制器,為DSP和網(wǎng)絡(luò)提供了定制連接口。因而視頻信號(hào)經(jīng)編碼處理后可以直接通過MII接口與網(wǎng)絡(luò)相連和傳輸。數(shù)據(jù)網(wǎng)絡(luò)發(fā)送分為兩種,本系統(tǒng)專門編寫了一個(gè)服務(wù)器軟件用于發(fā)送視頻圖像數(shù)據(jù)。系統(tǒng)還能直接經(jīng)網(wǎng)絡(luò)接受用戶指令,根據(jù)用戶指令調(diào)節(jié)編碼壓縮比、轉(zhuǎn)動(dòng)云臺(tái)、調(diào)節(jié)攝像頭參數(shù)。
本系統(tǒng)傳輸層設(shè)計(jì)多種不同傳輸協(xié)議,用于傳統(tǒng)不同類型數(shù)據(jù)。對(duì)于信息包較小的操作控制命令,采用TCP傳輸協(xié)議。對(duì)于視頻圖像數(shù)據(jù),則采用UDP多播傳輸協(xié)議。該設(shè)計(jì)方式的的優(yōu)點(diǎn)在于傳統(tǒng)傳輸協(xié)議TCP對(duì)準(zhǔn)確性要求高,數(shù)據(jù)必須準(zhǔn)確地傳輸至客戶端,因而TCP傳輸協(xié)議更適合用于傳輸控制命令,確保服務(wù)器和客戶端正確接收操作指令。UDP傳輸協(xié)議的缺點(diǎn)在于未提供網(wǎng)絡(luò)流量控制、數(shù)據(jù)包丟失處理,而壓縮算法采用幀間壓縮法,數(shù)據(jù)包丟失對(duì)視頻圖像質(zhì)量產(chǎn)生影響,因而需要完善基于UDP傳輸協(xié)議的應(yīng)用程序設(shè)計(jì),提高程序的可靠性。
3.1 客戶端軟件系統(tǒng)整體設(shè)計(jì)
客戶端軟件基于LINUX平臺(tái)設(shè)計(jì),客戶可通過網(wǎng)絡(luò)從實(shí)現(xiàn)遠(yuǎn)程視頻數(shù)據(jù)接收,客戶端軟件詳見圖2。數(shù)字視頻解碼后,通過LINUX下多媒體庫軟件實(shí)現(xiàn),該軟件還提供視屏截圖、亮度調(diào)節(jié)等功能,視頻顯示效率更高,軟件系統(tǒng)占用資源效率更低。
圖1 視頻服務(wù)器硬件結(jié)構(gòu)
3.2 客戶端軟件關(guān)鍵技術(shù)
從本質(zhì)上講,UDP多播數(shù)據(jù)通信的可靠性不高,數(shù)據(jù)通信和解碼顯示時(shí)間可能存沖突,導(dǎo)致視頻數(shù)據(jù)丟失,因而設(shè)計(jì)過程中需要考慮數(shù)據(jù)通信問題。此外,數(shù)據(jù)包傳輸過程中,不同數(shù)據(jù)包的時(shí)延不同,雖然數(shù)據(jù)傳輸速率是定值,但是歸順是數(shù)據(jù)傳輸率可能發(fā)大范圍變動(dòng),如若直接解碼和顯示視頻數(shù)據(jù)將導(dǎo)致視頻圖像出現(xiàn)不規(guī)律抖動(dòng),因而必須采取措施減少UDP數(shù)據(jù)通信問題。本客戶端軟件創(chuàng)建了兩個(gè)并行線程,分別為數(shù)據(jù)接收和解碼[6]。還創(chuàng)建了一個(gè)環(huán)境緩沖區(qū),用于緩沖視頻數(shù)據(jù)。解碼線程可直接從環(huán)形緩沖區(qū)內(nèi)讀取數(shù)據(jù)、解碼和顯示。
圖2 客戶端軟件的總體設(shè)計(jì)框圖
環(huán)形緩沖區(qū)包含多個(gè)同等類型內(nèi)存塊,并創(chuàng)建標(biāo)讀寫標(biāo)志。接收線程向環(huán)形緩沖區(qū)與寫入幀數(shù)據(jù)的同時(shí)將寫標(biāo)志指向下一緩沖區(qū),解碼線程則從緩沖區(qū)讀取幀數(shù)據(jù)后將讀標(biāo)志植入下一幀圖像所在緩沖區(qū)。由于接收線程與視頻解碼線程在同一時(shí)間操作緩沖區(qū),因而接收線程和解碼線程相互制約,設(shè)計(jì)過程中也需要協(xié)調(diào)接收線程和解碼線程兩者的運(yùn)行速度,保證讀標(biāo)志少于寫標(biāo)志。本系統(tǒng)解碼系統(tǒng)受緩沖區(qū)大小的影響,如若緩沖區(qū)過大,系統(tǒng)時(shí)延將延長,無法實(shí)現(xiàn)實(shí)時(shí)監(jiān)控。如若緩沖區(qū)過小,緩沖區(qū)移除將影響解碼質(zhì)量,因而需要根據(jù)網(wǎng)絡(luò)狀況及編碼數(shù)據(jù)碼率合理設(shè)計(jì)緩沖區(qū)。
將本方案用于高速公路數(shù)字視頻監(jiān)控系統(tǒng),結(jié)果顯示該系統(tǒng)運(yùn)行狀況良好,客戶端解碼視頻后,視頻圖像清晰、流暢,未出現(xiàn)視頻圖像抖動(dòng)問題。并且本系統(tǒng)硬件和軟件設(shè)計(jì)思路不僅可用于視頻監(jiān)控系統(tǒng),還可用于數(shù)字視頻廣播及點(diǎn)撥系統(tǒng),為數(shù)字視頻廣播和點(diǎn)播系統(tǒng)設(shè)計(jì)提供指借鑒指導(dǎo)。
[1]郭廣明.基于 S3C2410A的嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J]. 科技管理研究,2010,14:233-235+263.
[2]趙書朵,諶海云,高鳳水,武衛(wèi)麗.基于 ARM的嵌入式多路遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].中國測試,2010,05:66-68.
[3]馮飛雨,于春梅,胡立鋒. 基于S3C2440的嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].安防科技,2011,03:14-17.
[4]吳健,趙建軍,朱繼珍. 基于Linux及S3C2440A的嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J]. 微型機(jī)與應(yīng)用,2011,21:29-31.
[5]陳張榮,賈俊鋮,嚴(yán)建峰.基于嵌入式系統(tǒng)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)設(shè)計(jì)[J].儀表技術(shù)與傳感器,2016,02:39-41+48.
[6]王茂茹.基于 S3C2410芯片技術(shù)的嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)設(shè)計(jì)[J].軟件導(dǎo)刊,2015,07:124-126.
G322
B
1007-6344(2016)07-0325-01
趙榮華(1995.10--) 男,遼寧省盤錦市人,本科學(xué)歷,專業(yè):電子信息科學(xué)與技術(shù)。
關(guān)迪(1995.05--)男,遼寧省鳳城市人,本科學(xué)歷,專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)。
谷月(1995.03--)男,遼寧省大連市人,本科學(xué)歷,專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)。