999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S3C2410的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)設(shè)計(jì)

2011-02-09 01:57:56董翠英
制造業(yè)自動(dòng)化 2011年5期
關(guān)鍵詞:嵌入式系統(tǒng)

董翠英

(唐山學(xué)院 信息工程系,唐山 063000)

0 引言

隨著計(jì)算機(jī)網(wǎng)絡(luò)、多媒體技術(shù)的發(fā)展和圖像處理技術(shù)的提高,視頻監(jiān)控技術(shù)得到了快速發(fā)展,被廣泛應(yīng)用到各行各業(yè),如軍事、教育、科研、娛樂(lè)、醫(yī)療、體育等[1]。針對(duì)這一點(diǎn),本文論述了如何在ARM硬件平臺(tái)上進(jìn)行嵌入式Linux內(nèi)核的編譯與移植[2],并對(duì)在Linux操作系統(tǒng)下的USB驅(qū)動(dòng)程序的開(kāi)發(fā)進(jìn)行了詳細(xì)的討論。最后,設(shè)計(jì)并實(shí)現(xiàn)了嵌入式視頻監(jiān)控系統(tǒng)軟件部分,在所建立的ARM Linux開(kāi)發(fā)平臺(tái)上實(shí)現(xiàn)了基于USB攝像頭和boa嵌入式web 服務(wù)器的視頻監(jiān)控。本文重點(diǎn)討論了USB驅(qū)動(dòng)程序和Web視頻服務(wù)器。

1 視頻監(jiān)控系統(tǒng)硬件組成

本系統(tǒng)使用的平臺(tái)功能框圖如圖1所示。該硬件平臺(tái)采用Samsung公司的處理器S3C2410。通過(guò)在USB接口上外接一個(gè)帶USB口的攝像頭,將采集到的視頻圖像數(shù)據(jù)放入輸入緩沖區(qū)。然后對(duì)圖像進(jìn)行處理,最后通過(guò)網(wǎng)絡(luò)接口將圖像發(fā)送到Internet上。

2 視頻監(jiān)控系統(tǒng)軟件設(shè)計(jì)

2.1 嵌入式Linux內(nèi)核及定制

完整的嵌入式Linux一般包含啟動(dòng)引導(dǎo)程序、內(nèi)核、文件系統(tǒng)三個(gè)基本部分。在一個(gè)新的硬件平臺(tái)上,選用嵌入式Linux作為操作系統(tǒng)來(lái)開(kāi)發(fā)軟件,必須進(jìn)行移植。根據(jù)不同的應(yīng)用系統(tǒng)設(shè)計(jì)的需要對(duì)Linux內(nèi)核的源代碼進(jìn)行修改或者裁剪然后再重新編譯內(nèi)核。

圖1 嵌入式S3C2410的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)硬件結(jié)構(gòu)

2.1.1 嵌入式系統(tǒng)引導(dǎo)程序

本系統(tǒng)選用的bootloader是vivi,vivi有兩種工作模式,即啟動(dòng)加載模式和下載模式。當(dāng)vivi處于下載模式時(shí),它為用戶提供一個(gè)命令行接口,通過(guò)該接口能使用vivi提供的一些命令集。

2.1.2 Linux內(nèi)核的剪裁及移植

一般情況下的Linux內(nèi)核的剪裁及移植,主要是針對(duì)操作系統(tǒng)中關(guān)于具體硬件以及除去不需要的功能模塊,如一些不會(huì)用到的外設(shè)支持、驅(qū)動(dòng)程序、協(xié)議、網(wǎng)絡(luò)支持、文件格式等。Linux內(nèi)核具有很好的模塊性和伸縮性,在資源要求嚴(yán)格的情況下經(jīng)過(guò)合理的裁減可獲得明顯的效果[3]。

本系統(tǒng)的內(nèi)核版本是2.4.18,操作系統(tǒng)是嵌入式linux操作系統(tǒng),其剪裁及移植具體的配置方法是,在嵌入式內(nèi)核的/kernel目錄下輸入make menuconfig命令進(jìn)行相應(yīng)選擇。

本系統(tǒng)需要進(jìn)行視頻采集,在Multimedia devices項(xiàng)下,選擇

[*] Video For Linux

系統(tǒng)選用的視頻前端為USB攝像頭,因此需要在 USB support項(xiàng)USB Multimedia devices行下,選擇相應(yīng)的設(shè)備驅(qū)動(dòng)。嵌入式內(nèi)核一般只集成了OV511等幾種攝像頭的驅(qū)動(dòng),若硬件需要其它的驅(qū)動(dòng),則要移植、編譯驅(qū)動(dòng)程序后重新配置內(nèi)核,選擇相應(yīng)的設(shè)備驅(qū)動(dòng)。內(nèi)核配置完成后,make命令后即可生成可燒寫(xiě)的內(nèi)核zImage。

2.2 視頻監(jiān)控系統(tǒng)中嵌入式Linux根文件系統(tǒng)的實(shí)現(xiàn)

文件系統(tǒng)是基于被劃分的存儲(chǔ)設(shè)備上的邏輯單位上的一種定義文件的命名、存儲(chǔ)、組織及取出的方法。本系統(tǒng)采用的是適用于嵌入式系統(tǒng)的小文件系統(tǒng)Cramfs。

重新配置編譯內(nèi)核,開(kāi)啟系統(tǒng)板的NFS文件系統(tǒng)功能后,重新編譯內(nèi)核,下載bootloader和kernel到硬件上,完成硬件設(shè)置[2]。

3 視頻監(jiān)控系統(tǒng)中圖像采集的軟件實(shí)現(xiàn)

啟動(dòng)Linux后,若要對(duì)某一硬件外設(shè)進(jìn)行讀寫(xiě),需要通過(guò)內(nèi)核調(diào)用該硬件的驅(qū)動(dòng)來(lái)實(shí)現(xiàn)。因此實(shí)現(xiàn)視頻數(shù)據(jù)的采集需要兩個(gè)步驟,一是編譯硬件接口的驅(qū)動(dòng)程序,二是通過(guò)內(nèi)核中提供的關(guān)于視頻采集部分的代碼編寫(xiě)視頻采集的應(yīng)用程序。

3.1 USB攝像頭驅(qū)動(dòng)的設(shè)計(jì)

本系統(tǒng)需要對(duì)USB攝像頭進(jìn)行訪問(wèn)和控制,USB設(shè)備的驅(qū)動(dòng)需要和嵌入式內(nèi)核掛鉤。在內(nèi)核中和視頻相關(guān)的部分是Video For Linux簡(jiǎn)稱V4L,因此USB攝像頭驅(qū)動(dòng)要符合V4L標(biāo)準(zhǔn)。在驅(qū)動(dòng)中聲明一個(gè)video_device結(jié)構(gòu),并指定文件操作函數(shù)指針數(shù)組.fops,向系統(tǒng)注冊(cè)[4]。在應(yīng)用程序發(fā)出文件操作命令的時(shí)候,內(nèi)核根據(jù)指針調(diào)用這些函數(shù),并將這些結(jié)構(gòu)作為參數(shù)傳遞,完成內(nèi)核和驅(qū)動(dòng)之間的通訊。

在USB總線標(biāo)準(zhǔn)中定義了四種傳輸方式,分別是控制、中斷、批量和等時(shí)。對(duì)于本系統(tǒng)視頻采集的實(shí)時(shí)性要求較高,攝像頭采用的是等時(shí)方式。為盡快得到圖像數(shù)據(jù),需要在URB( USB Request Block)中指定USB_ISO_ASAP標(biāo)志,使其盡快發(fā)出本URB

usb->transfer_flags=USB_ISO_ASAP

本系統(tǒng)選用的是ZC301P型芯片攝像頭,要對(duì)其驅(qū)動(dòng)進(jìn)行加載。由于Linux內(nèi)核對(duì)此類攝像頭并不支持,所以需要自行加載驅(qū)動(dòng)模塊。由于攝像頭的廠商開(kāi)發(fā)產(chǎn)品時(shí)驅(qū)動(dòng)基本上是基于Windows平臺(tái)的,在Linux下我們只能選擇開(kāi)源的驅(qū)動(dòng)源碼,本系統(tǒng)選擇的是SPCA5XX攝像頭通用驅(qū)動(dòng),在下面的驅(qū)動(dòng)網(wǎng)址:http://mxhaard.free.fr可以下載到針對(duì)embeded環(huán)境的驅(qū)動(dòng)源碼,有專門的patch,具體編譯加載步驟如下:

1)下載針對(duì)2.4內(nèi)核的驅(qū)動(dòng)補(bǔ)丁[2],usb-

2.4.31 LE06.patch.tar.gz;

2)將這個(gè)patch放到內(nèi)核源代碼的/driver/usb目錄下,然后解壓、打補(bǔ)?。?/p>

解壓:

tar-xvzf usb-2.4.31LE06.patch.tar.gz

打補(bǔ)丁:patch-p1<usb-2.4.31.patch

3)在打完補(bǔ)丁后就會(huì)在/driver/usb目錄下產(chǎn)生Config.in.rej和Makefile.rej兩個(gè).rej文件,根據(jù)這兩個(gè).rej文件分別修改此目錄下的Makefile和Config.in文件內(nèi)容,增加此部分代碼后,在完成內(nèi)核編譯后就能生成攝像頭的驅(qū)動(dòng)模塊:spca5xx.o:

4)編譯內(nèi)核,在內(nèi)核目錄下make menuconfig,裝入原內(nèi)核配置文件,進(jìn)入主菜單操作,選擇Multimedia devices子菜單,為內(nèi)核加入V4L內(nèi)核模塊。

5)在內(nèi)核主界面下選擇USB support子菜單項(xiàng),為內(nèi)核加入U(xiǎn)SB接口的驅(qū)動(dòng)模塊。

6)在USB Multimedia devices子項(xiàng)下選擇USB SPCA5XX型攝像頭。

7)在配置完內(nèi)核后,運(yùn)行make dep->make zImage->make modules之后在內(nèi)核源碼/driver/usb/spca5xx目錄中可以生成spca5xx.o驅(qū)動(dòng)模塊,通過(guò)nfs,即可在系統(tǒng)板上加載驅(qū)動(dòng)測(cè)試,加載前需確保已加載videodev.o模塊。以上已經(jīng)把整個(gè)系統(tǒng)的硬件平臺(tái),系統(tǒng)軟件,驅(qū)動(dòng)程序部分確定下來(lái),下一步將進(jìn)行圖像采集應(yīng)用軟件的開(kāi)發(fā)。

3.2 圖像采集的軟件實(shí)現(xiàn)

在攝像頭驅(qū)動(dòng)成功后,要對(duì)攝像頭進(jìn)行視頻采集的操作就是要針對(duì)V4L進(jìn)行編程。使用Servfox或者Spcaserv作為攝像頭視頻采集的服務(wù)器端程序,用Spcaview作為客戶端來(lái)實(shí)現(xiàn)視頻的接收與處理。

3.3 移植視頻服務(wù)器應(yīng)用程序Servfox

從http://mxhaard.free.fr/Spca50x/embed

ded/Servfox下載ServfoxRl_0_0.tar.gz解壓后,會(huì)發(fā)現(xiàn)在其目錄中會(huì)有一個(gè)Makefile.arm文件,將此文件修改成 Makefile,可以用Vi打開(kāi)修改編譯器路徑等,確保無(wú)誤后make,成功后就可生成我們要用到的Servfox程序。

3.4 移植客戶端Spcaview

從http://mxhaard.free.fr/spca50x/Download/下載Spcaview,由于此軟件包依賴于libsdl,所以在安裝spcaview之前必須要安裝SDL-1.2.13。

解壓源碼包:tar -zxvf SDL-1.2.13.tar.gz

安裝源碼包:cd SDL-1.2.13,運(yùn)行 ./configure文件,編譯和安裝文件。

安裝spcaview軟件:

tar -zxvf spcaview-20061208;

cd spcaview-20061208;

make

為了方便用戶查看監(jiān)控情況,設(shè)計(jì)了一種網(wǎng)絡(luò)視頻服務(wù)器,使用戶可以更方便的借助windows IE瀏覽器來(lái)查看實(shí)時(shí)監(jiān)控情況。

4 嵌入式Web視頻服務(wù)器的實(shí)現(xiàn)

隨著嵌入式技術(shù)的發(fā)展和高速寬帶網(wǎng)絡(luò)的普及,利用網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控已為人們廣泛接受,用戶使用Web瀏覽器,通過(guò)以太網(wǎng)遠(yuǎn)程訪問(wèn)內(nèi)置Web服務(wù)器的監(jiān)控?cái)z像機(jī),不但可以實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)的遠(yuǎn)程視頻監(jiān)控,而且可以向監(jiān)控現(xiàn)場(chǎng)發(fā)送指令?;贐/S結(jié)構(gòu)的網(wǎng)絡(luò)視頻監(jiān)控實(shí)現(xiàn):B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),用戶在客戶端采用瀏覽器(Browse)實(shí)現(xiàn)對(duì)Web服務(wù)器的訪問(wèn),服務(wù)器在后臺(tái)運(yùn)行程序,把結(jié)果返回給瀏覽器顯示[4]。

在系統(tǒng)中,客戶端局域網(wǎng)內(nèi)連網(wǎng)的PC,在瀏覽器地址欄內(nèi)輸入視頻服務(wù)器的IP地址,就能在網(wǎng)頁(yè)里顯示攝像頭的監(jiān)控圖像如圖2(a)所示??蛻舳嗽谏衔粰C(jī)軟件中輸入10.10.24.2在IP地址欄,客戶端就能實(shí)現(xiàn)監(jiān)控圖像的播放如圖2(b)所示。

5 結(jié)束語(yǔ)

根據(jù)以上監(jiān)控結(jié)果,可進(jìn)一步把基于ARM的視頻監(jiān)控系統(tǒng)設(shè)計(jì)成一體的網(wǎng)絡(luò)攝像頭,可廣泛用于網(wǎng)絡(luò)資源較發(fā)達(dá)的場(chǎng)合,如智能家居中主人對(duì)家庭安全情況的檢測(cè),家長(zhǎng)對(duì)幼兒在幼兒園中情況觀察、無(wú)人值守的重點(diǎn)實(shí)驗(yàn)室、公司對(duì)員工的工作情況的檢查等等。總之,隨著人們的人們的安全意識(shí)的增強(qiáng),視頻監(jiān)控被廣泛應(yīng)用到各行各業(yè),有著非常廣闊的市場(chǎng)前景。

圖2 監(jiān)控結(jié)果

[1] 駱云志,劉治紅.視頻監(jiān)控技術(shù)發(fā)展綜述[J].兵工自動(dòng)化,2009,28(1):1-3.

[2] 朱弘強(qiáng),朱惠強(qiáng),邵吉.基于雙絞線傳輸?shù)囊曨l監(jiān)控系統(tǒng)[J],計(jì)算機(jī)工程,2008,34(增刊):34-36.

[3] Advanced Linux Programming [M].First Edition,by Alex Samuel, Jeffrey Oldham and Mark Mitchell, 2001.

[4] 陳莉君.Linux操作系統(tǒng)內(nèi)核分析[M].北京:人民郵電出版社,2005.

猜你喜歡
嵌入式系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 亚洲黄色成人| 国产精品午夜福利麻豆| h网站在线播放| 精品午夜国产福利观看| 视频二区国产精品职场同事| 亚洲无码视频图片| 国产原创演绎剧情有字幕的| 在线观看国产网址你懂的| 亚洲人成色在线观看| 亚洲男人在线| 亚洲AⅤ波多系列中文字幕| 色欲色欲久久综合网| 国产91视频免费观看| 无码久看视频| 国产精品jizz在线观看软件| 久久亚洲国产最新网站| 91成人在线免费视频| 日韩精品欧美国产在线| 国产一区在线观看无码| 成人午夜天| 日韩a级片视频| 国产成人亚洲精品色欲AV| 午夜激情婷婷| 狠狠色丁婷婷综合久久| 日本午夜影院| 777午夜精品电影免费看| 国产在线98福利播放视频免费 | 国产自在线拍| 国产成人精品视频一区二区电影| 日本在线亚洲| 2020精品极品国产色在线观看| 综合天天色| 91高清在线视频| 草草影院国产第一页| 日日碰狠狠添天天爽| 国产成a人片在线播放| 永久毛片在线播| 色悠久久久久久久综合网伊人| 国产精品无码影视久久久久久久| 日韩精品亚洲人旧成在线| 2020亚洲精品无码| 久热re国产手机在线观看| 美女视频黄频a免费高清不卡| 中文无码精品A∨在线观看不卡 | 91亚洲免费视频| 91尤物国产尤物福利在线| 欧美精品一二三区| 成人精品免费视频| 亚洲va欧美va国产综合下载| а∨天堂一区中文字幕| 国产99视频精品免费视频7| 日韩欧美国产成人| 福利片91| 国产麻豆精品在线观看| 亚洲人精品亚洲人成在线| 区国产精品搜索视频| 天堂网亚洲综合在线| 国产精品大白天新婚身材| 日韩美一区二区| 丝袜无码一区二区三区| 国产视频一二三区| 国产一级特黄aa级特黄裸毛片| 69国产精品视频免费| 婷婷亚洲最大| 国产在线八区| 激情综合激情| 毛片网站观看| 精品人妻无码中字系列| 亚洲av成人无码网站在线观看| 国产h视频免费观看| 国产亚洲日韩av在线| 精品一区二区三区自慰喷水| 国产成人1024精品| 91九色视频网| 免费毛片网站在线观看| 免费黄色国产视频| 风韵丰满熟妇啪啪区老熟熟女| 久久永久精品免费视频| 久久精品亚洲中文字幕乱码| 免费观看国产小粉嫩喷水 | 亚洲中文字幕精品| 美美女高清毛片视频免费观看|