国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Linux的無(wú)線視頻監(jiān)控系統(tǒng)

2015-04-07 13:15:13任黎明孫玲玲
物聯(lián)網(wǎng)技術(shù) 2015年2期
關(guān)鍵詞:嵌入式

任黎明 孫玲玲

摘 要:闡述一種基于嵌入式Linux的無(wú)線視頻監(jiān)控系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)方法。該系統(tǒng)主要由視頻采集終端和PC上位機(jī)組成。其中,視頻采集終端主要由攝像頭視頻采集模塊、ARM模塊、WiFi模塊組成,PC上位機(jī)可進(jìn)行實(shí)時(shí)監(jiān)控。系統(tǒng)軟件采用嵌入式Linux,可編程實(shí)現(xiàn)圖像數(shù)據(jù)采集、壓縮和WiFi模塊的網(wǎng)絡(luò)連接與傳輸。實(shí)驗(yàn)結(jié)果表明監(jiān)控系統(tǒng)性能穩(wěn)定、實(shí)時(shí)性較好,在實(shí)際中具有一定應(yīng)用前景。

關(guān)鍵詞:嵌入式;WiFi;無(wú)線監(jiān)控;Linux

中圖分類號(hào):TP316 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2015)02-00-02

0 引 言

視頻監(jiān)控技術(shù)已被廣泛應(yīng)用到各行各業(yè),并且受到了越來(lái)越多的重視。視頻監(jiān)控在工業(yè)生產(chǎn)、安全防范、智能交通、公共場(chǎng)所等領(lǐng)域都有非常廣泛的應(yīng)用,對(duì)于那些需要實(shí)時(shí)監(jiān)視但人員又不能到達(dá)的場(chǎng)合,視頻監(jiān)控系統(tǒng)顯得格外重要[1]。本系統(tǒng)是基于Linux操作系統(tǒng)和ARM開(kāi)發(fā)平臺(tái)的無(wú)線視頻監(jiān)控方案,融合了嵌入式技術(shù)和WLAN技術(shù),實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控的目的,能廣泛地應(yīng)用于不同的場(chǎng)景。

1 系統(tǒng)總體設(shè)計(jì)

本文設(shè)計(jì)了一種嵌入式無(wú)線視頻監(jiān)控系統(tǒng)。該系統(tǒng)基于嵌入式ARM微處理器和Linux操作系統(tǒng)。攝像頭采集到的視頻數(shù)據(jù)使用H.264進(jìn)行壓縮編碼,然后通過(guò)WiFi技術(shù)在無(wú)線局域網(wǎng)中實(shí)現(xiàn)視頻圖像數(shù)據(jù)的傳輸,最后通過(guò)上位機(jī)軟件顯示視頻圖像。

2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2.1 系統(tǒng)開(kāi)發(fā)平臺(tái)設(shè)計(jì)

本系統(tǒng)選用基于三星S5PV210處理器的TQ210開(kāi)發(fā)板作為系統(tǒng)設(shè)計(jì)的硬件平臺(tái)。其中,攝像頭采集視頻圖像,并通過(guò)USB接口將信息傳輸至嵌入式系統(tǒng)。嵌入式Linux系統(tǒng)在外設(shè)驅(qū)動(dòng)的支持下,通過(guò)V4L2函數(shù)接口實(shí)現(xiàn)視頻圖像的采集;由于采集到的原始視頻信息數(shù)據(jù)量較大,不利于無(wú)線傳輸?shù)膶?shí)時(shí)性,并且會(huì)增加系統(tǒng)功耗,故采集后需要先通過(guò)視頻壓縮模塊進(jìn)行視頻壓縮,然后再進(jìn)行無(wú)線傳輸。視頻監(jiān)控系統(tǒng)對(duì)于系統(tǒng)的規(guī)模、吞吐量和傳輸?shù)膶?shí)時(shí)性都有比較高的要求,故系統(tǒng)使用WiFi無(wú)線來(lái)進(jìn)行視頻圖像數(shù)據(jù)傳輸。視頻圖像數(shù)據(jù)通過(guò)無(wú)線網(wǎng)絡(luò)最終傳輸?shù)缴衔粰C(jī)軟件并實(shí)時(shí)顯示。圖1所示為系統(tǒng)整體結(jié)構(gòu)圖。

圖1 系統(tǒng)整體結(jié)構(gòu)圖

本文設(shè)計(jì)的嵌入式視頻采集與傳輸系統(tǒng)使用數(shù)碼攝像頭采集視頻數(shù)據(jù),和其他接口的視頻攝像頭相比,USB數(shù)碼攝像頭可以方便地和嵌入式系統(tǒng)連接[2]。另外,USB攝像頭的采購(gòu)成本低,開(kāi)發(fā)容易。在大量調(diào)研后,本文選擇了基于ZC301芯片組的USB數(shù)碼攝像頭?;赯C301的數(shù)碼攝像頭價(jià)格合適、使用CMOS傳感器。圖2給出了系統(tǒng)硬件功能框圖。

圖2 系統(tǒng)硬件功能框圖

嵌入式視頻采集與傳輸節(jié)點(diǎn)接入網(wǎng)絡(luò)后就開(kāi)始等待上位機(jī)下發(fā)指令,一旦上位機(jī)正確配置完成嵌入式視頻采集與傳輸單元后節(jié)點(diǎn)就開(kāi)始工作。首先,節(jié)點(diǎn)通過(guò)數(shù)碼攝像頭采集視頻信息,并通過(guò)H.264算法進(jìn)行視頻信號(hào)的壓縮。然后形成的視頻數(shù)據(jù)被打包成無(wú)線局域網(wǎng)數(shù)據(jù),通過(guò)無(wú)線網(wǎng)卡發(fā)送至無(wú)線接入點(diǎn)。最后,上位機(jī)接收到視頻數(shù)據(jù),并解碼播放視頻[3]。

2.2 圖像視頻采集

使用基于ZC301芯片組的USB數(shù)碼攝像頭,利用TQ210開(kāi)發(fā)板采集圖像數(shù)據(jù)并進(jìn)行壓縮編碼,然后數(shù)據(jù)打包成RTMP格式,使用WiFi模塊傳給PC端上位機(jī)軟件,攝像頭整體框圖如圖3所示。

圖3 攝像頭整體框圖

如上圖所示,處理器對(duì)圖像傳感器數(shù)據(jù)的讀取是通過(guò)V4L2接口實(shí)現(xiàn)的。V4L2(Vedio For Linux Two)是在 Linux 內(nèi)核中關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動(dòng)框架,為上層訪問(wèn)底層的視頻設(shè)備提供了統(tǒng)一的接口,它是 V4L 的升級(jí)版本。V4L2 支持三類設(shè)備:視頻輸入設(shè)備、vib 設(shè)備和radio設(shè)備。V4L2采用了分層架構(gòu),將應(yīng)用編程接口和視頻驅(qū)動(dòng)獨(dú)立開(kāi)來(lái),增強(qiáng)了程序的獨(dú)立性和可移植性。V4L2主要流程如圖4所示。

圖4 V4L2工作流程圖

其主要流程的程序?qū)崿F(xiàn)如下:

(1)打開(kāi)攝像頭

fd = open(dev_name, O_RDWR | O_NONBLOCK, 0);

if (-1 == fd){

fprintf(stderr, "Cannot open '%s': %d, %s\n", dev_name, errno, strerror(errno));

return false;

}

在本文中使用基于ZC301芯片組的USB數(shù)碼攝像頭,設(shè)置設(shè)備名為/dev/video0。為了不出現(xiàn)無(wú)法讀取的問(wèn)題,注意要以讀寫(O_RDWR)的形式打開(kāi)該攝像頭。如果成功將返回該設(shè)備的文件描述符,否則返回錯(cuò)誤碼-1。

(2)讀取設(shè)備視頻參數(shù)

struct v4l2_capability cap;

if (-1 == xioctl(fd, VIDIOC_QUERYCAP, &cap)) {

if (EINVAL == errno) {

fprintf(stderr, "%s is no V4L2 device\n", dev_name);

return false;

} else {

return false;

}

}

這里相當(dāng)關(guān)鍵,因?yàn)橐褂迷摂z像頭,所以我們必要認(rèn)真查閱資料,了解該攝像頭的功能和特性,否則可能導(dǎo)致攝像頭無(wú)法正常工作,接下去的工作更是無(wú)從談起。這里將得到攝像頭性能參數(shù)cap,在后面的設(shè)置環(huán)節(jié)將根據(jù)該參數(shù)設(shè)置相對(duì)應(yīng)的數(shù)值。

(3)請(qǐng)求設(shè)備緩存區(qū)

struct v4l2_requestbuffers req;

req.count = 4;

req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;

req.memory = V4L2_MEMORY_MMAP;

if (-1 == xioctl(fd, VIDIOC_REQBUFS, &req)) {

if (EINVAL == errno) {

fprintf(stderr, "%s does not support memory mapping\n", dev_name);

return false;

} else {

return false;

}

}

該步驟將在設(shè)備中開(kāi)辟4個(gè)緩存區(qū)用于采集視頻,緩存區(qū)在設(shè)備中聲明,在用戶空間開(kāi)辟,接下來(lái)分別為這4個(gè)映射地址。

2.3 H.264視頻壓縮

相對(duì)于其它傳統(tǒng)壓縮標(biāo)準(zhǔn)來(lái)講,H.264對(duì)視頻數(shù)據(jù)的壓縮率高出不少,并且其自身對(duì)信道的適應(yīng)能力以及多媒體兼容性方面都具有明顯優(yōu)勢(shì),因此該種標(biāo)準(zhǔn)在當(dāng)今視頻壓縮以及無(wú)線傳輸方面得到了十分廣泛的應(yīng)用。H.264視頻編碼過(guò)程主要分三步實(shí)現(xiàn),分別是H.264編碼器的設(shè)計(jì)、視頻數(shù)據(jù)的壓縮程序設(shè)計(jì)、X264庫(kù)文件的交叉編譯。

2.4 WiFi視頻傳輸

本文中選用WiFi來(lái)傳輸視頻圖像數(shù)據(jù)原因如下:其一,傳輸速度非???,傳輸帶寬能滿足實(shí)時(shí)視頻數(shù)據(jù)的要求。其二,無(wú)線電波的覆蓋范圍廣,室外空曠場(chǎng)所理論上WiFi最遠(yuǎn)覆蓋半徑可達(dá)900英尺左右,約合300米。其三,方便快捷,無(wú)須布線,只要附近設(shè)置有“熱點(diǎn)”,就可高速連接到因特網(wǎng)接,使遠(yuǎn)程傳輸和控制成為可能[4]。

2.5 PC上位機(jī)視頻顯示

在設(shè)置好ARM平臺(tái)IP及端口號(hào)以后,可在上位機(jī)發(fā)送視頻采集指令并查看實(shí)時(shí)視頻圖像,實(shí)時(shí)顯示圖像如圖5所示。

圖5 視頻服務(wù)器總體結(jié)構(gòu)圖

3 結(jié) 語(yǔ)

本文提出了基于Linux的無(wú)線視頻監(jiān)控系統(tǒng),并且實(shí)現(xiàn)了基本功能,經(jīng)測(cè)試,本方案具有較高的傳輸速度,顯示圖像畫面清晰。未來(lái)若能加入無(wú)線Mesh網(wǎng)絡(luò)設(shè)備,組成更大規(guī)模無(wú)線視頻監(jiān)控系統(tǒng),應(yīng)用前景將會(huì)更加廣泛。雖然該方案可以成功運(yùn)行,但實(shí)驗(yàn)室的運(yùn)行環(huán)境和實(shí)際環(huán)境會(huì)有不少差別,故有待未來(lái)做進(jìn)一步改進(jìn)。

參考文獻(xiàn)

[1]黃宇.基于H.264的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2011.

[2] Jianmiao Hu,Jianmei Cen.Video surveillance in public space in China[J].Frontiers of Law in China,2009,12(5):12-14.

[3]謝猛.基于ARM和Linux平臺(tái)的移動(dòng)視頻監(jiān)控小車研制[D].武漢:華中師范大學(xué),2013.

[4]耿元鳴.幾種主流視頻編碼方式的性能比較和分析[J].電子科技,2007(7):51-54.

猜你喜歡
嵌入式
搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
Altera加入嵌入式視覺(jué)聯(lián)盟
倍福 CX8091嵌入式控制器
红原县| 乌审旗| 乌鲁木齐县| 通渭县| 哈密市| 华蓥市| 虹口区| 兴宁市| 南和县| 修水县| 麻阳| 嘉鱼县| 德格县| 罗甸县| 新和县| 黄大仙区| 家居| 华池县| 昌黎县| 桑日县| 新津县| 内江市| 安庆市| 石景山区| 昌黎县| 巴青县| 抚远县| 渭南市| 宁阳县| 车险| 沂源县| 改则县| 怀安县| 五指山市| 彰化市| 田阳县| 犍为县| 巫溪县| 万州区| 江川县| 咸丰县|