邱秀榮 王彩峰
摘要:該文提出了一種基于ARM-Linux的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng),以嵌入式微處理器S3C2440和嵌入式Linux作為控制核心,將攝像頭采集的視頻信息,經(jīng)過網(wǎng)絡(luò)傳輸,實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)的實(shí)時(shí)監(jiān)控。實(shí)驗(yàn)表明:該系統(tǒng)圖像采集穩(wěn)定,監(jiān)控效果良好,具有較好的應(yīng)用前景。
關(guān)鍵詞:ARM;Linux;視頻監(jiān)控;圖像采集
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)23-0031-03
Abstract: A network video monitor system based on ARM-Linux is proposed in this paper. The S3C2440 processor and Linux operating system was taken as the control core,the video signal captured from camera is transported through the network transmission,achieving real-time monitoring on-site.Experimental results show the stability of image acquisition and the effect is good. It has high practical prospects.
Key words:ARM; Linux ;Video Monitor;Image capture
隨著數(shù)字圖像技術(shù)、嵌入式[1]計(jì)算機(jī)技術(shù)和通信技術(shù)的快速發(fā)展,嵌入式圖像監(jiān)控系統(tǒng)已成為當(dāng)前監(jiān)控領(lǐng)域的一個(gè)全新的研究熱點(diǎn)[2-8]。它所涉及的領(lǐng)域包括工業(yè)控制、電子消費(fèi)、網(wǎng)絡(luò)通信、科學(xué)研究、軍事國(guó)防、醫(yī)療衛(wèi)生、航天航空等方方面面。嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)融合傳統(tǒng)視頻監(jiān)控技術(shù)與現(xiàn)代信息技術(shù)為一體,和當(dāng)前世界信息技術(shù)的發(fā)展緊密結(jié)合,其中核心部分就是一個(gè)可以直接連入以太網(wǎng)的視頻設(shè)備,提供實(shí)時(shí)的視頻數(shù)據(jù)采集、壓縮和傳輸?shù)墓δ堋G度胧较到y(tǒng)作為日益成熟的平臺(tái),在此方面的應(yīng)用已經(jīng)非常普遍。本文提出了一種 以 A R M1 1為核心芯片,基于linux的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng),實(shí)現(xiàn)無(wú)人時(shí)待機(jī),有陌生人入侵時(shí)開機(jī)監(jiān)控,并將監(jiān)控視頻信息傳至服務(wù)器,完成對(duì)測(cè)控現(xiàn)場(chǎng)和測(cè)試設(shè)備的網(wǎng)絡(luò)視頻監(jiān)控任務(wù)。
1 系統(tǒng)設(shè)計(jì)
系統(tǒng)總體設(shè)計(jì)內(nèi)容有三塊:視頻及指令無(wú)線傳輸、視頻多播及組播、云臺(tái)設(shè)計(jì)及控制。該系統(tǒng)采用的是基于ARM9的S3C2440微處理器,通過在微處理器上運(yùn)行Linux操作系統(tǒng),構(gòu)建嵌入式服務(wù)器,接受來(lái)自前端攝像頭的視頻流,再進(jìn)行壓縮編碼, 通過TCP/IP網(wǎng)絡(luò)服務(wù)器協(xié)議傳送實(shí)現(xiàn)監(jiān)控圖像到主機(jī)進(jìn)行接收,同時(shí)進(jìn)行解碼發(fā)送到顯示設(shè)備,最終達(dá)到嵌入式網(wǎng)絡(luò)視頻監(jiān)控的設(shè)計(jì)。整體結(jié)構(gòu)如圖1所示。
2 硬件平臺(tái)
硬件部分包括外圍設(shè)備和嵌入式ARM微處理器,此系統(tǒng)主要由CPU芯片、FLASH芯片、SDRAM芯片、中星zc301攝像頭等硬件部分組成,其中CPU部分用的是三星公司的ARM9系列微處理器S3C2440芯片,它是整個(gè)硬件系統(tǒng)的核心部分。S3C2440微處理器集成了大量的功能,該芯片結(jié)構(gòu)如圖2所示。
3 軟件平臺(tái)
3.1嵌入式Linux操作系統(tǒng)
嵌入式Linux是一種自由和開放源碼的類Unix操作系統(tǒng)。目前存在著許多不同的Linux系統(tǒng)。Linux可安裝在各種各樣的計(jì)算機(jī)硬件設(shè)備中,是最先進(jìn)的操作系統(tǒng),全球上運(yùn)算最快的十臺(tái)超級(jí)計(jì)算機(jī)中采用的都是Linux操作系統(tǒng) [7]。
Linux系統(tǒng)具有源代碼開放、內(nèi)核可裁減性強(qiáng)、良好的移植性、集成了TCP/IP協(xié)議和較好的網(wǎng)絡(luò)支持等特點(diǎn),因此本文選用Linux嵌入式系統(tǒng)作為整個(gè)系統(tǒng)軟件開發(fā)的平臺(tái)。
3.2 Linux平臺(tái)下內(nèi)核的移植
本系統(tǒng)采用ARM9開發(fā)平臺(tái),所以依靠ARM9硬件平臺(tái)的代碼都在arm文件夾內(nèi)。根目錄下面只需要修改Makefile工程文件,對(duì)該文件修改的主要目的是產(chǎn)生vmLinux文件的內(nèi)核模塊[3]。
3.3 zImage的編譯與移植
1)在網(wǎng)站上下載config-2440.tar.gz 源碼包文件復(fù)制到某一目錄下,然后再將其解壓:
3.4 USB攝像頭驅(qū)動(dòng)的實(shí)現(xiàn)
隨著CMOS和CCD圖像傳感器技術(shù)的快速發(fā)展,USB攝像頭因?yàn)樗咝詢r(jià)比、接口統(tǒng)一,并且支持多種高質(zhì)量圖像輸出等優(yōu)點(diǎn),被視頻會(huì)議、視頻傳感器和手持設(shè)備器等設(shè)備采用。
USB攝像頭由傳感器芯片與圖像處理芯片組成。傳感器芯片負(fù)責(zé)采集圖像,圖像處理芯片負(fù)責(zé)壓縮和主機(jī)的通信。本設(shè)計(jì)使用的芯片為中星公司的微zc301系列芯片。開發(fā)平臺(tái)為Sumsung公司的S3C2440開發(fā)板,操作系統(tǒng)為L(zhǎng)inux系統(tǒng),交叉編譯環(huán)境為arm-none-linux-gnueabi-gcc。
4 系統(tǒng)的測(cè)試
4.1 系統(tǒng)的調(diào)試
1)將USB 攝像頭接入開發(fā)板中去,如果驅(qū)動(dòng)正常,將會(huì)在/dev目錄下生成video0 的設(shè)備名字,通過ls命令查看,有這個(gè)設(shè)備名字的話,就說(shuō)明USB攝像頭驅(qū)動(dòng)正常。否則,需要繼續(xù)進(jìn)行調(diào)試。
2)將連接好我們開發(fā)板PC機(jī)的網(wǎng)線口,并把電腦的IP地址設(shè)置為:192.168.1.160,使之與開發(fā)板構(gòu)建網(wǎng)絡(luò),進(jìn)行實(shí)時(shí)傳輸攝像頭所采集到的圖像到電腦端。
3)獲取開發(fā)板本地IP地址,在終端下輸入以下命令得到IP地址:
#ifconfig eth0 192.168.1.6 up
4)在開發(fā)板打開開關(guān)之前,將USB攝像頭插在開發(fā)板的usb中的host主接口處。
5)打開電腦的終端,同時(shí)啟動(dòng)打開開發(fā)板的電源,在宿主機(jī)下輸入啟動(dòng)Linux系統(tǒng)的命令:
#run bootlinux
啟動(dòng)之后后按ENTER鍵進(jìn)入到Linux系統(tǒng)的界面,同時(shí)通過開發(fā)板的LCD屏幕可以看到Linux系統(tǒng)的界面。
6)在開發(fā)板的終端上輸入以下命令啟動(dòng)采集應(yīng)用程序uvc_streamer :
4.2 系統(tǒng)的測(cè)試
在電腦上瀏覽攝像頭上的圖像,在電腦上,打開接收采集視頻畫面數(shù)據(jù)的應(yīng)用程序viewer.exe,并設(shè)置軟件的IP地址為:192.168.1.6,然后點(diǎn)擊connect,如果程序正常啟動(dòng)的話,就可以觀看到開發(fā)板傳回的視頻流圖像畫面,如圖所示:
5 結(jié)論
本文設(shè)計(jì)了一種以ARM9為核心芯片的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng),在商丘工學(xué)院物聯(lián)網(wǎng)實(shí)驗(yàn)室中進(jìn)行了實(shí)地測(cè)試,結(jié)果表明,該系統(tǒng)圖像采集穩(wěn)定,監(jiān)控效果良好,具有較好的應(yīng)用前景。
參考文獻(xiàn):
[1] 韋東山. 嵌入式Linux應(yīng)用開發(fā)完全手冊(cè)[J]. 北京:人民郵電出版社,2013.
[2] 趙炯. Linux內(nèi)核完全剖析[M]. 北京:機(jī)械工業(yè)出版社,2013.
[3] 杜偉龍,曹江濤. 基于ARM-Linux無(wú)線視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].測(cè)控技術(shù),2015,34(3):109-112.
[4] 任克強(qiáng),劉蘇,謝斌.基于ARMll和Linux的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)[J].電視技術(shù),2014,38(5):156-159.
[5] 劉堂塵. 基于ARM 的遠(yuǎn)程視頻監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2012,20(8):2127-2132.
[6] 王宏志,宇皓林. 基于ARM—Linux遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2014,52(1):103-107.
[7] 劉冬.基于Qt4和OpenCV的嵌入式視頻監(jiān)控系統(tǒng)[J].現(xiàn)代電子技術(shù),2013(8):104-108.
[8] 陳玉坤,李波.基于嵌入式Linux的Ad—Hoc網(wǎng)絡(luò)視頻傳輸研究[J].測(cè)控技術(shù),2011,30(1):83-86.