李水明,蘇建歡,張銀君,王小亮
(1.廣西工學(xué)院電子信息與控制工程系,廣西 柳州 545006;2.河池學(xué)院,廣西 宜州 643006)
視頻監(jiān)控已經(jīng)廣泛應(yīng)用到各行各業(yè),在家居安防、設(shè)備監(jiān)控、產(chǎn)品質(zhì)量的監(jiān)管等方面發(fā)揮了重要作用。視頻監(jiān)控系統(tǒng)主要包括圖像采集、視頻編碼、視頻數(shù)據(jù)傳輸、視頻解碼[1]等部分。視頻數(shù)據(jù)傳輸可以使用無(wú)線傳輸和有線傳輸方式。無(wú)線網(wǎng)絡(luò)數(shù)據(jù)傳輸具有組網(wǎng)方便的優(yōu)點(diǎn),但對(duì)于在輪船鋼板的阻隔、倉(cāng)庫(kù)中多層墻體的隔離中,有數(shù)據(jù)傳輸不可靠的缺點(diǎn)。有線網(wǎng)絡(luò)傳輸具有數(shù)據(jù)傳輸可靠、帶寬大等優(yōu)點(diǎn)。對(duì)多個(gè)視頻監(jiān)控節(jié)點(diǎn)都進(jìn)行布線,必然造成布線復(fù)雜、建造成本高等缺點(diǎn)。采用電力載波技術(shù),利用電力線傳輸視頻信號(hào),免除布線的費(fèi)用,節(jié)省開(kāi)支。本文設(shè)計(jì)并實(shí)現(xiàn)了視頻監(jiān)控服務(wù)器,以嵌入式處理器S3C6410為控制核心,電力載波作為視頻數(shù)據(jù)傳輸通道。實(shí)驗(yàn)表明,視頻數(shù)據(jù)傳輸速率高、圖像清晰、穩(wěn)定。
本系統(tǒng)的總體設(shè)計(jì)如圖1所示。視頻監(jiān)控服務(wù)器端的硬件部分由攝像頭模塊、主控模塊、電力載波通信模塊組成。
圖1 系統(tǒng)總體結(jié)構(gòu)框架圖
主控模塊是整個(gè)視頻監(jiān)控服務(wù)器的核心部分。主要負(fù)責(zé)視頻圖像的采集、H.264視頻格式編碼、視頻數(shù)據(jù)發(fā)送給電力載波傳輸模塊。主控模塊的核心芯片采用Samsung公司的S3C6410嵌入式處理器。它是一款低成本、高性能的通用處理器。主頻最高可以達(dá)到667 MHz,內(nèi)置硬件編解碼器,支持 H.264,H.263,MPEG -4等編解碼格式。主控模塊通過(guò)USB Host接口與攝像頭連接,通過(guò)網(wǎng)卡DM9000以太網(wǎng)與電力載波模塊連接通信。
圖像采集模塊采用國(guó)順實(shí)業(yè)有限公司A10型號(hào)USB紅外夜視視頻監(jiān)控?cái)z像頭。該攝像頭采用Altir公司的控制芯片。該攝像頭最大圖像解像度為VGA(640×480),接口為USB2.0,視頻圖像輸出格式為YUV2,帶紅外拍攝功能。圖像最高幀率為30幀/秒(f/s)。主控模塊ARM通過(guò)USB接口進(jìn)行視頻圖像數(shù)據(jù)的采集。V4L2是Linux系統(tǒng)內(nèi)核關(guān)于視頻采集設(shè)備API,Linux2.6.32內(nèi)核已包含該攝像頭的驅(qū)動(dòng),應(yīng)用程序可使用V4L2的統(tǒng)一API函數(shù)對(duì)視頻設(shè)備進(jìn)行操作[2]。本系統(tǒng)中,對(duì)視頻設(shè)備進(jìn)行操作的系統(tǒng)文件為“/dev/video2”。對(duì)攝像頭的圖像數(shù)據(jù)進(jìn)行采集,大部分操作函數(shù)通過(guò)對(duì)ioctl函數(shù)調(diào)動(dòng)完成的。對(duì)視頻進(jìn)行采集主要由以下步驟組成:
1)打開(kāi)視頻設(shè)備,主要通過(guò)open()函數(shù)完成,代碼為:
V4L2支持3種視頻數(shù)據(jù)讀取模式,分別為直接讀模式、用戶指針模式、mmap映射模式。本設(shè)計(jì)采用的是mmap模式,該模式將每個(gè)數(shù)據(jù)緩沖區(qū)映射到用戶空間,應(yīng)用程序在獲取視頻數(shù)據(jù)的時(shí)候,共享這些緩沖區(qū),提高讀取數(shù)據(jù)的效率。在循環(huán)讀取視頻圖像中,只需要重復(fù)步驟6)、步驟7)即可,每次讀取視頻數(shù)據(jù)后,必須再次將緩沖入列,以準(zhǔn)備下一次的數(shù)據(jù)讀取。
攝像頭采集到的視頻圖像數(shù)據(jù)量比較大,對(duì)于有限的通信帶寬來(lái)說(shuō),必須進(jìn)行視頻的編碼壓縮。H.264是新一代視頻編碼標(biāo)準(zhǔn),是一種高性能、高效率的編碼方式。它具有較強(qiáng)的編碼糾錯(cuò)能力,能在保證圖像有較高清晰度的同時(shí),對(duì)視頻數(shù)據(jù)具有更高的壓縮率[3]。嵌入式處理器S3C6410內(nèi)嵌硬件編解碼器,能夠使用硬件進(jìn)行編碼,提高工作效率。視頻編碼模塊的驅(qū)動(dòng)直接采用三星公司提供的編解碼驅(qū)動(dòng),在應(yīng)用程序中只需要調(diào)用API操作函數(shù)即可完成。對(duì)視頻進(jìn)行H.264編碼主要由以下步驟完成:
1)打開(kāi)編碼設(shè)備,對(duì)H.264的初始化參數(shù)的設(shè)置,分別設(shè)置視頻的長(zhǎng)、寬、幀率、比特率、影響測(cè)量的編碼質(zhì)量因子,代碼為:
3)關(guān)閉視頻編碼設(shè)備。
本模塊采用ATHEROS公司的INT6400和INT1400組成,INT6400為主要電力線通信控制芯片,INT6400內(nèi)部包含有A/D和D/A轉(zhuǎn)換器,通過(guò)以太網(wǎng)接口接收主控模塊的視頻數(shù)據(jù),然后將視頻信號(hào)進(jìn)行調(diào)制。INT1400作為模擬前端,對(duì)模擬信號(hào)進(jìn)行放大。通信協(xié)議為Home-Plug1.0,其最高通信速率達(dá)到200 Mbit/s,能滿足多路視頻信號(hào)的傳輸。圖2為電力載波傳輸模塊。
圖2 電力載波傳輸模塊
主控ARM模塊主要是通過(guò)UDP網(wǎng)絡(luò)協(xié)議與INT6400進(jìn)行通信。UDP協(xié)議是面向非連接的網(wǎng)絡(luò)協(xié)議,不必與對(duì)方建立連接,可以直接發(fā)送和接收數(shù)據(jù)。由于UDP協(xié)議省略各種網(wǎng)絡(luò)校驗(yàn),傳輸?shù)乃俣鹊玫胶艽蟮奶岣?,同時(shí)支持多組數(shù)據(jù)并發(fā)通信[4-5]。圖3視頻信號(hào)UDP通信方式。
圖3 視頻數(shù)據(jù)UDP通信方式
主控網(wǎng)絡(luò)進(jìn)行視頻傳輸主要由以下主要步驟:
1)建立UDP協(xié)議通信,代碼為:
在UDP中采用sendto函數(shù)來(lái)發(fā)送數(shù)據(jù)。本設(shè)計(jì)中每次發(fā)送數(shù)據(jù)1000個(gè)字符型視頻數(shù)據(jù)。
本視頻監(jiān)控服務(wù)器發(fā)送的視頻分辨力為320×240。主控模塊與電力傳輸模塊的通信方式為UDP協(xié)議,電力載波通信協(xié)議為HomePlug1.0。視頻接收解碼客戶端為PC機(jī)。視頻監(jiān)控服務(wù)器發(fā)送視頻數(shù)據(jù)幀頻率為20 f/s。設(shè)置視頻監(jiān)控服務(wù)器端IP地址,在客戶端PC機(jī)上編寫(xiě)一個(gè)顯示測(cè)試程序,圖4為視頻播放圖像。在實(shí)驗(yàn)環(huán)境下,表1為服務(wù)器與客戶端在不同的距離,電力載波的通信速率。測(cè)試中視頻圖像清晰,穩(wěn)定、幀間無(wú)抖動(dòng)。由通信數(shù)據(jù)可知,在實(shí)驗(yàn)環(huán)境的情況下,通信的速率能滿足多路視頻的監(jiān)控。在距離不長(zhǎng)的情況下,能夠很好地適應(yīng)環(huán)境,實(shí)現(xiàn)視頻監(jiān)控功能。
圖4 視頻播放圖像
表1 實(shí)驗(yàn)數(shù)據(jù)
基于電力載波視頻監(jiān)控,采用電力載波技術(shù)傳輸視頻數(shù)據(jù),利用S3C6410硬件編碼器,能夠快速地進(jìn)行視頻編碼。本設(shè)計(jì)實(shí)現(xiàn)即插即用,不需要布設(shè)視頻傳輸數(shù)據(jù)線,安裝方便,節(jié)省綜合成本。進(jìn)一步設(shè)計(jì)可以將電力載波接收一端連接到主干光纖服務(wù)器端,可以實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控。實(shí)驗(yàn)結(jié)果表明,該方案可行,視頻圖像清晰,性能穩(wěn)定,可以應(yīng)用于家庭、銀行、小型超市等領(lǐng)域,具有廣泛的市場(chǎng)前景。
[1]馬文強(qiáng),章專.基于S3C6410的無(wú)線視頻傳輸節(jié)點(diǎn)設(shè)計(jì)[J].傳感器與微系統(tǒng),2011,30(10):96-98.
[2]劉升,趙晶晶.基于V4L2的嵌入式視頻監(jiān)控系統(tǒng)[J].微計(jì)算機(jī)應(yīng)用,2011,32(1):38-42.
[3]劉玲,魏立峰.基于ADI H.264編碼庫(kù)的視頻壓縮系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2010,33(4):83-85.
[4]李建強(qiáng).一種基于UDP協(xié)議的可靠傳輸機(jī)制研究[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2011(13):55-56.
[5]王精華,徐昌彪,鮮永菊,等.認(rèn)知網(wǎng)絡(luò)下TCP協(xié)議性能分析[J].電視技術(shù),2011,35(19):72-75.