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

?

基于S3C2440網(wǎng)絡(luò)視頻采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2014-09-10 18:42李佳林劉永春
電腦知識(shí)與技術(shù) 2014年6期
關(guān)鍵詞:嵌入式

李佳林 劉永春

摘要:針對(duì)目前工業(yè)控制、通信網(wǎng)絡(luò)、生活小區(qū)等領(lǐng)域廣泛運(yùn)用到網(wǎng)絡(luò)視頻監(jiān)控,對(duì)基于ARM-Linux的網(wǎng)絡(luò)視頻采集系統(tǒng)的設(shè)計(jì)方案和實(shí)現(xiàn)方法進(jìn)行了深入研究。設(shè)計(jì)了以上位機(jī)PC、下位機(jī)TQ2440開發(fā)板以及USB攝像頭為主體的硬件體系結(jié)構(gòu),硬件系統(tǒng)的核心單元是ARM(S3C2440)。軟件系統(tǒng)以嵌入式Linux操作系統(tǒng)為基礎(chǔ),將網(wǎng)絡(luò)傳輸與視頻采集相結(jié)合,通過視頻服務(wù)器(MJPG-streamer)觀測遠(yuǎn)端的實(shí)時(shí)情況,從而實(shí)現(xiàn)網(wǎng)絡(luò)視頻的采集。在本文的最后,提出了該系統(tǒng)加入WiFi模塊改進(jìn)的可能性,對(duì)相關(guān)領(lǐng)域的研究具有一定的參考價(jià)值。

關(guān)鍵詞:嵌入式;Linux系統(tǒng);視頻采集;ARM;S3C2440

中圖分類號(hào):TP277 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)06-1314-03

Design and Implementation of Network Video Capture System Based on S3C2440

LI Jia-lin, LIU Yong-chun

(College of Automation and Electronic Information, Sichuan University of Science & Engineering, Zigong 643000, China)

Abstract: For the current industrial control , communication networks, living quarters and other fields are widely applied to video surveillance network , based on ARM-Linux network video capture system design and implementation methods for in-depth study. Design the hardware architecture composed of upper machine PC, the lower machine TQ2440 development board and USB camera, the core unit of the hardware system is ARM (S3C2440). Software system based on embedded Linux operating system, the network transmission and video capture combining real-time observation of the situation via remote video server (MJPG-streamer), in order to achieve network video collection . In the last article, and proposed system by adding the possibility of improving WiFi module, the research of relevant field has certain reference value.

Key words: Embedded ; Linux systems ; Video capture ; ARM; S3C2440

隨著步入21世紀(jì)信息時(shí)代的發(fā)展,電子技術(shù)和網(wǎng)絡(luò)已經(jīng)深入都人們生活得各個(gè)領(lǐng)域,尤其是以“信息采集及處理”為核心的視頻采集系統(tǒng)。目前國內(nèi)外該系統(tǒng)主要應(yīng)用于工業(yè)控制及檢測,視頻監(jiān)控,通訊網(wǎng)絡(luò),計(jì)算機(jī)視覺,安全防控系統(tǒng)等[1]。

嵌入式視頻采集系統(tǒng)具有高效,體積小,實(shí)時(shí)穩(wěn)定,低成本等優(yōu)點(diǎn)。目前32位的ARM處理器相比于其他處理器具有明顯的優(yōu)勢,不僅提供了豐富的硬件資源和外部擴(kuò)展功能,而且其性能上也進(jìn)一步得到了提升[2]。采用USB接口攝像頭不僅具有高的采樣速率,而且通用性強(qiáng)。運(yùn)用Linux操作系統(tǒng),該系統(tǒng)不僅源代碼開放,而且具有豐富的網(wǎng)絡(luò)功能和良好的可移植性。該文設(shè)計(jì)是基于32位的嵌入式微處理器ARM9(S3C2440)[3]和嵌入式操作系統(tǒng)ARM-Linux的圖像采集系統(tǒng)[4]。

1 系統(tǒng)架構(gòu)

本文設(shè)計(jì)的核心是以天嵌科技生產(chǎn)的TQ2440(S3C2440)微處理器,配合源代碼開放的Linux系統(tǒng),通過市場上廣泛應(yīng)用中星微公司生產(chǎn)的zc301p芯片的USB攝像頭采集視頻信息[5],然后將USB攝像頭所采集的圖像出給S3C2440進(jìn)行預(yù)處理,在通過英特網(wǎng)(internet)傳送給遠(yuǎn)端的客戶端,而客戶端運(yùn)用ARM-Linux系統(tǒng)下開發(fā)的視頻服務(wù)器進(jìn)行觀看,從而實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)視頻采集過程。整體框架如圖1 所示:

圖1 系統(tǒng)整體架構(gòu)

2 硬件體系結(jié)構(gòu)

嵌入式網(wǎng)絡(luò)視頻采集的的硬件設(shè)計(jì)包括核心板和開發(fā)板兩部分,核心板是S3C2440微處理芯片,必需的復(fù)位、晶振電路以及Flash存儲(chǔ)器、RAM存儲(chǔ)器。擴(kuò)展板的功能模塊有串口、網(wǎng)口、JTAG、LCD等。系統(tǒng)硬件框圖如圖2所示。

圖2 系統(tǒng)硬件結(jié)構(gòu)

2.1 嵌入式微處理器S3C2440

由于圖像數(shù)字采集和處理需要一款高性能的微處理器來實(shí)現(xiàn) ,所以該設(shè)計(jì)采用ARM芯片作為微處理器,而ARM9微處理器就提供了高可靠、低功耗等諸多有點(diǎn)。設(shè)計(jì)采用的Samsung公司生產(chǎn)的S3C2440芯片,該芯片是一款基于ARM920T內(nèi)核的16/32位的RISC嵌入式微處器,其主頻高達(dá)400MHz。其內(nèi)置了USB控制器提供了多USB的支持,2個(gè)USB Host和 1個(gè)USB Slave控制器,芯片集成了1個(gè)LCD控制器,16KB指令Cache(I-Cache)/16KB數(shù)據(jù)(D-Cache),3路UART,2路SPI,攝像頭接口(支持最大4096[×]4096的輸入,2048[×]2048的縮放輸入),8路10位ADC和觸摸屏接口[6]。

2.2 USB攝像頭

本設(shè)計(jì)采用中星微公司生產(chǎn)的zc301p芯片的USB攝像頭作為數(shù)字圖像傳感器設(shè)備,其不僅具有快速、高效、穩(wěn)定、便捷等優(yōu)點(diǎn),而且S3C2440微處理器中集成了USB主控制器,可以很便捷的與USB接口的攝像頭相接[7]。該64位的zc301p芯片可支持ARM9/11,且具有快速壓縮引擎,2至8倍壓縮比,MMX技術(shù)高速軟解壓等功能[8]。

3 系統(tǒng)軟件設(shè)計(jì)

本次軟件設(shè)計(jì)的核心采用的是性能穩(wěn)定,提供強(qiáng)大圖像處理功能ARM-Linux嵌入式操作系統(tǒng)為基礎(chǔ)。軟件設(shè)計(jì)部分包括Linux內(nèi)核配置、Yaffs文件系統(tǒng)以及MJPEG-streamer視頻服務(wù)器[9]。

3.1 USB攝像頭驅(qū)動(dòng)

本次軟件設(shè)計(jì)采用Linux-2.6.30.4版本的內(nèi)核,可以很好的支持zc301系列USB攝像頭,所以只需對(duì)Linux內(nèi)核進(jìn)行簡單配置即可實(shí)現(xiàn)USB攝像頭的驅(qū)動(dòng)功能。其配置單如下:

Device Drivers —>

Multimedia devices —>

***Multimedia core support***

<*>Video For Linux

[*] Enable Video For Linux API1(DEPERECATED)

[*] Video capture adapters —>

— Video capture adapters

<*> OV9650 Drivers for EmbedSky SKY2440/TQ2440 Board

[*] V4L USB Devices —>

— V4L USB Devices

<*> USB Video Class(UVC)

[*] UVC input events device support

<*> GSPCA based webcams —>

—GSPCA based webcams

[*] USB ZC0301[P] Image Processor and Control Chip support

3.2 Yaffs文件系統(tǒng)和MJPG-Streamer的移植

Flash的設(shè)計(jì),選用Yaffs的文件系統(tǒng)該文件系統(tǒng)具有磨損平衡和掉電回復(fù)的健壯性,節(jié)約內(nèi)存空間和縮短掛載時(shí)間,提高數(shù)據(jù)塊查找,兼顧消耗平均和減少系統(tǒng)開銷等優(yōu)點(diǎn),Yaffs包括:內(nèi)部的實(shí)現(xiàn)層、管理層、Flash接口層三個(gè)層次,由于Yaffs很容易與嵌入式Linux相連接,所以更容易加到嵌入式Linux系統(tǒng)當(dāng)中;其次還具有掉電保護(hù)的作用,對(duì)于一些數(shù)據(jù)重要數(shù)據(jù)起到了保護(hù)的作用,同時(shí)也對(duì)嵌入式Linux性能也起到了安全保護(hù)作用。Ysffs內(nèi)部具有可優(yōu)化系統(tǒng)的垃圾回收的計(jì)算方法和可提高系統(tǒng)運(yùn)行速度的貪心算法以及能夠?qū)崿F(xiàn)安全按比例額分配的隨機(jī)選擇的計(jì)算方法,從而可以減少系統(tǒng)所運(yùn)行的資源和將嵌入式Linux的成本按比例進(jìn)行分配[10]。

M-JPEG視頻流服務(wù)器 是將模擬信號(hào)轉(zhuǎn)化為數(shù)字?jǐn)?shù)據(jù),是一種數(shù)字壓縮格式。M-JPEG壓縮技術(shù)在整個(gè)視頻壓縮當(dāng)中具有劃時(shí)代的意義,M-JPEG的壓縮方式是基于幀內(nèi)和幀獨(dú)立,雖然不能與MPEG-4、H.263、H.264的傳輸量相比,但它在網(wǎng)絡(luò)視頻采集中任然廣泛使用。

現(xiàn)將M-JPEG視頻流服務(wù)器移植到目標(biāo)板的具體過程如下:

1) 首先將mipg_streamer源碼包復(fù)制到pc的linux系統(tǒng)下,然后解壓源代碼:#tar xvfz mipg_streamer.tar.gz –C 0pt/EmbedSky/apps/,然后進(jìn)入到源代碼當(dāng)中,#cd /opt/EmbedSky/apps/mipg_streamer;

2) 將源碼中所有的makefile文件的CC=Gcc改為CC=arm-linux-gcc,然后就可以編譯其源代碼,其中選擇的交叉編譯器為arm-linux-gcc4.3.3,現(xiàn)在可將所得的二進(jìn)制文件在目標(biāo)板運(yùn)行;

3) 將mipeg-client目錄下的bin/win32-upx/目錄下的viewer.exe復(fù)制到wondows平臺(tái)下,即可執(zhí)行該程序,該程序是作為pc端通過網(wǎng)絡(luò)查看攝像頭采集圖像的播放器;

4) 進(jìn)入mipg_streamer目錄下,使用#make編譯后,會(huì)得到mipg_streamer和input*.so或output*.so的組件,然后將*.so文件復(fù)制到開發(fā)板的文件系統(tǒng)的lib/WebCam目錄下,將 mipg_streamer文件復(fù)制到開發(fā)板的文件系統(tǒng)sbin/目錄下,最后便可測試網(wǎng)絡(luò)攝像機(jī)了。

網(wǎng)絡(luò)視頻采集的軟件開發(fā)流程如圖3所示:

圖3 網(wǎng)絡(luò)視頻采集軟件開發(fā)流程圖

4 系統(tǒng)測試及結(jié)果

將開發(fā)板用串口線與PC相連,保持兩者之間能正常通信,確定TQ2440開發(fā)板接好了攝像頭,開發(fā)板所燒寫的linux-2.6.30.4內(nèi)核中已經(jīng)擁有USB攝像頭的驅(qū)動(dòng),并確保攝像頭是接好的。在hypertrm.exe串口端口輸入啟動(dòng)命令:mipg_streamer –i “/lib/input_uvc.so –yuv” –o “/lib/output_http.so –w 192.168.1.6: 8080”,其中192.168.1.6是服務(wù)器(TQ2440開發(fā)板)的ip,8080是打開的端口號(hào)。超級(jí)終端下可以出現(xiàn)以下信息:

MJPG-Streamer [493]: Using V4L2 device.:/dev/video0

MJPG-Streamer [493]: Desired resolution: 640[×]480

MJPG-Streamer [493]: Frames Per Second.: 5

MJPG-Streamer [493]: Format ……………: MJPEG

MJPG-Streamer [493]: Serving client:192.168.1.58

使用V4L2作為驅(qū)動(dòng)程序,獲取視頻數(shù)據(jù),默認(rèn)的分辨率是:640[×]480,每秒傳送的是5幀,圖像格式是MJPEG,并顯示了PC端打開了接收程序viewer.exe,然后再Ip欄目中輸入開發(fā)板的Ip和打開的端口號(hào),點(diǎn)擊connect即可看到攝像頭所采集的圖像。

客戶端測試結(jié)果如圖4所示:

圖4 測試結(jié)果

5 結(jié)束語

本次系統(tǒng)設(shè)計(jì)是基于高速ARM9(S3C2440)為核心,加上具有豐富網(wǎng)絡(luò)功能的嵌入式Linux系統(tǒng),并將視頻流服務(wù)器MJPG-streamer的進(jìn)行移植。該系統(tǒng)不僅實(shí)現(xiàn)了遠(yuǎn)程視頻監(jiān)控,而且系統(tǒng)開發(fā)過程結(jié)構(gòu)清晰,性能穩(wěn)定。在測試結(jié)果中,還可以改變分辨率的參數(shù),實(shí)現(xiàn)清晰度不同的現(xiàn)實(shí)。最近幾年,由于無線局域網(wǎng)(WLAN)的廣泛使用,可以通過移植WIFI模塊實(shí)現(xiàn)無線網(wǎng)絡(luò)視頻監(jiān)控,用戶可以通過手機(jī)或其它設(shè)備更加方便、快捷地實(shí)時(shí)監(jiān)控。

參考文獻(xiàn):

[1] 劉竹林.基于ARM嵌入式視頻采集處理系統(tǒng)設(shè)計(jì)[J].十堰職業(yè)技術(shù)學(xué)院學(xué)報(bào),2011,24(6):106-108.

[2] 羅發(fā)秀,文環(huán)明,馬曉紅.基于ARM嵌入式圖像采集系統(tǒng)設(shè)計(jì)[J].電腦開發(fā)與應(yīng)用,2009,22(3):42-44.

[3] 胡書衛(wèi),陸培倫.一種基于Linux的嵌入式視頻監(jiān)控系統(tǒng)實(shí)現(xiàn)[J].安防系統(tǒng)設(shè)計(jì),2009(1):38-40.

[4] 王波波,王錚,等.ARM9完全學(xué)習(xí)手冊[M].北京:化學(xué)工業(yè)出版社,2012.

[5] 吳晴,周健.嵌入式圖像采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子測量技術(shù),2007,30(6):89-92.

[6] 于艷萍.朱曉智,王中訓(xùn).基于ARM9和USB攝像頭的網(wǎng)絡(luò)視頻采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012,34(24):49-51.

[7] 馮麗芳,孫俊,周俊華,等.基于ARM9的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)實(shí)現(xiàn)[J].電力自動(dòng)化設(shè)備,2006,10(26):95-97.

[8] 王俊,陳啟美.基于WiFi-Mesh的視頻監(jiān)控系統(tǒng)在高速公路的應(yīng)用[J].中國交通信息化,2011(7):74-75.

[9] 王旭輝,謝蕾.基于本體的多模式Web服務(wù)發(fā)現(xiàn)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(16)3868-3871.

[10] Robert Love.linux Kenel Development[M].Person Education,2004:263-265.

猜你喜歡
嵌入式
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
搭建基于Qt的嵌入式開發(fā)平臺(tái)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
Altera加入嵌入式視覺聯(lián)盟
倍福 CX8091嵌入式控制器
扶余县| 德钦县| 古蔺县| 疏附县| 庄浪县| 建始县| 东乌珠穆沁旗| 娄底市| 宝坻区| 卫辉市| 宁夏| 布拖县| 饶河县| 福贡县| 兴仁县| 梁河县| 双江| 科技| 兴国县| 文登市| 卢湾区| 湾仔区| 瑞丽市| 罗定市| 绍兴县| 商都县| 黑龙江省| 五家渠市| 普格县| 商城县| 宣武区| 平舆县| 松桃| 德化县| 定西市| 清徐县| 雷州市| 理塘县| 乌鲁木齐县| 松滋市| 舒城县|