基于WEB的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計_第1頁
基于WEB的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計_第2頁
基于WEB的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計_第3頁
基于WEB的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計_第4頁
基于WEB的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于WEB勺遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究與設(shè)計專業(yè)班級:學(xué)生姓名:指導(dǎo)教師姓名:指導(dǎo)教師職稱:摘要隨著網(wǎng)絡(luò)通信技術(shù)和嵌入式技術(shù)的發(fā)展,基于嵌入式We服務(wù)器的視頻監(jiān)控系統(tǒng)已成為監(jiān)控領(lǐng)域的發(fā)展趨勢,采用B/S架構(gòu)的嵌入式We服務(wù)器,監(jiān)控者無需到現(xiàn)場操作,系統(tǒng)成本低廉,設(shè)備體積小巧,安裝方便,故障維護(hù)升級簡單,安全可靠,滿足了現(xiàn)代消費者的需求。本文針對視頻監(jiān)控設(shè)備前端一體化、小型化和便攜等相關(guān)需求,以動態(tài)數(shù)據(jù)交互技術(shù)和移動通信技術(shù)為基礎(chǔ),借助嵌入式系統(tǒng)的網(wǎng)絡(luò)支持,設(shè)計了一種基于Wei®務(wù)器的B/S方式的遠(yuǎn)程視頻監(jiān)控系統(tǒng)。設(shè)計中以ARM芯片和Linux系統(tǒng)為軟硬件開發(fā)平臺,結(jié)合嵌入式We鼓術(shù),給出

2、了視頻監(jiān)控系統(tǒng)的總體設(shè)計方案,深入研究了各個功能模塊。目前3%線通信網(wǎng)絡(luò)正在普及,為了滿足未來移動監(jiān)控的需要,本系統(tǒng)數(shù)據(jù)傳輸引入了3%線模塊的方案,為后續(xù)研究奠定了基礎(chǔ)。本文主要研究的嵌入式We服務(wù)器的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的軟件設(shè)計,對現(xiàn)代視頻監(jiān)控的研究具有一定的參考價值。關(guān)鍵詞:視頻監(jiān)控嵌入式WebARMLinux3G無線通信ThedesignofremotevideosurveillancesystembasedonWEBAbstractWiththedevelopmentofthecommunicationandnetworktechnologyandembeddedtechnology,t

3、hevideosurveillancesystembasedontheembeddedWebserverhasbeenthedevelopmenttendencyinthemonitoringfield.BecauseanembeddedWebserverbasedonB/Sisusuallyadoptedbyremotemonitoringsystem,itneedn'tbeoperatedataspecialphysicalposition.Thisdesignmethodcanreducethecostaswellasthesizeoftheentiresystem.Thedev

4、iceismoreconvenienttobeinstalled,easiertobemaintainedandupgraded.ItcanprovidesafeandreliableservicestomeetthedemandsformodernpeopleThispaperaimingatsatisfyingtheneedsofthefront-endintegration,compact,portableincurrentvideosurveillancesystems,aWeb-basedtheB/Smoderemotevideomonitoringsystemisdesigned.

5、WeadopttheARM7andLinuxsystemsassofthardwaredevelopmentplatforminourdesignCombiningwithembeddedWebtechnology.Wearemainlyengagedinfollowingwork.3Gwirelesscommunicationnetworksarecurrentlypopular,inordertomeettheneedsoffuturemotionmonitor,thedatatransmissionofthesystemintroduces3Gwirelessmodule.Itlayst

6、hefoundationforfurtherstudyAnembeddedWebserverforremotevideomonitoringsystemdescribedinthispaperhasacertainreferencevalueforvehiclevideomotionmonitoringKeywords:VideomonitoringembeddedWebARMLinux3GwirelesscommunicationII第一章緒論11.1課題研究的背景和意義11.1.1模擬視頻監(jiān)控系統(tǒng)11.1.2本地數(shù)字視額監(jiān)控系統(tǒng)21.1.3遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)21.2視頻監(jiān)控系統(tǒng)的發(fā)展趨勢

7、31.3嵌入式視頻監(jiān)控系統(tǒng)常見設(shè)計方案41.4本文的主要研究工作6第二章總體方案設(shè)計及平臺搭建72.1遠(yuǎn)程視頻監(jiān)控系統(tǒng)方案設(shè)計72.1.1監(jiān)控系統(tǒng)整體網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計72.1.2視頻監(jiān)控系統(tǒng)硬件方案設(shè)計102.1.3視頻監(jiān)控系統(tǒng)的系統(tǒng)軟件選擇112.2系統(tǒng)開發(fā)平臺的搭建122.3嵌入式Linux的移植132.4本章小結(jié)14第三章視頻采集模塊的設(shè)計與實現(xiàn)153.1基于V4L2的視頻采集模塊設(shè)計153.1.1 V4L2視頻采集的數(shù)據(jù)結(jié)構(gòu)153.1.2 V4L2視頻采集的流程163.1.3 1.3視頻數(shù)據(jù)的存儲233.2視頻編碼233.2.1視頻編碼技術(shù)的選擇243.2.2基于FFmpeg勺H.264編

8、碼253.3視頻數(shù)據(jù)庫273.3.1SQLite數(shù)據(jù)庫的設(shè)計273.3.2SQLite的編譯與移植293. 4本章小結(jié)30第四章Wet®務(wù)器的搭建與數(shù)據(jù)的傳輸314. 1嵌入式Web服務(wù)器白構(gòu)建311.1.1 嵌入式WetK務(wù)器白選擇311.1.2 Boa的移植和配置331.1.3 公共網(wǎng)關(guān)接口(CGI)技術(shù)342. 23G無線網(wǎng)絡(luò)視頻傳輸364. 3本章小結(jié)39第五章總結(jié)與展望40iii5. 1總結(jié)405.2展望41致謝42參考文獻(xiàn)42IV第一章緒論網(wǎng)絡(luò)通信和微電子技術(shù)的快速發(fā)展和人民物質(zhì)生活水平的提高,使得人們的生產(chǎn)行為,生活方式發(fā)生了重大的變化,視頻監(jiān)控以其直觀,方面和內(nèi)容豐富

9、等特點日益受到人們的重視。安防監(jiān)控從銀行到交通路口,從連鎖超市到小區(qū)范圍,都會看到監(jiān)控產(chǎn)品的存在,大量犯罪案件在安防監(jiān)控產(chǎn)品的幫助下破獲。人們意識到視頻監(jiān)控對生產(chǎn)生活的安全非常重要,而網(wǎng)絡(luò)視頻監(jiān)控憑借其先進(jìn)的技術(shù)和貼近用戶習(xí)慣的使用方式,逐步走進(jìn)人們的生活當(dāng)中。視頻監(jiān)控系統(tǒng)在保護(hù)安全,預(yù)防犯罪方面起到不可低估的作用,監(jiān)控市場領(lǐng)域不斷擴(kuò)大。據(jù)權(quán)威部門統(tǒng)計,1998年全國圖像監(jiān)控系統(tǒng)的市場總額為650億元,今年來一直保持15%至30%的速度快速增長。隨著攝像設(shè)備價格逐漸下降,計算機(jī)計算能力增強(qiáng)和網(wǎng)絡(luò)速度的提高,視頻監(jiān)控技術(shù)得到了快速的發(fā)展。1.1課題研究的背景和意義視頻監(jiān)控系統(tǒng)的產(chǎn)生和發(fā)展有兩個方

10、面的原因:一方面,隨著人們安全防范觀念的加強(qiáng),人們迫切希望通過監(jiān)控的方式來預(yù)防和減少公共場所的破壞及犯罪活動。另一方面,視頻技術(shù)和網(wǎng)絡(luò)通信技術(shù)日益成熟,為它的實現(xiàn)和應(yīng)用奠定了基礎(chǔ);而計算機(jī)技術(shù)和多媒體技術(shù)的迅速發(fā)展,將自動控制和多媒體技術(shù)融入到視頻監(jiān)控系統(tǒng)中來,促進(jìn)了它的普及和應(yīng)用。視頻監(jiān)控系統(tǒng)的發(fā)展大致經(jīng)歷了三個階段:a、模擬視頻監(jiān)控系統(tǒng);b、本地數(shù)字視頻監(jiān)控系統(tǒng);c、遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。1.1.1模擬視頻監(jiān)控系統(tǒng)采用模擬方式傳輸,最簡單的就是將圖像信號直接送入視頻電纜進(jìn)行傳輸。每一監(jiān)控點的視頻信號都通過一條電纜線連接到中心控制室的多路切換器上,以手動切換方式選擇監(jiān)控點圖像,使之顯示在監(jiān)視

11、器上。模擬視頻監(jiān)控有以下弊端:運行及維護(hù)成本高;視頻圖像的質(zhì)量不能在任意時刻調(diào)整;無法聯(lián)網(wǎng),只能以點對點的方式監(jiān)控現(xiàn)場,使得布線工程量極大;檢索困難;難以做到無人值守。1.1.2本地數(shù)字視額監(jiān)控系統(tǒng)進(jìn)入20世紀(jì)80年代,隨著數(shù)字化技術(shù)的發(fā)展,人們從過去的模擬處理方式轉(zhuǎn)向數(shù)字處理方式,開始使用計算機(jī)處理圖像信號。利用計算機(jī)的數(shù)據(jù)處理能力與顯示器的高清晰度,將視頻信號通過視頻采集卡采集到計算機(jī)中,顯示在顯示器上,大大提高了圖像的畫質(zhì),但是控制與切換仍采用傳統(tǒng)的單片機(jī)方式,只是計算機(jī)用口與之相連,完成控制工作。盡管它有良好的人機(jī)界面,較好的穩(wěn)定性,但它不能稱為真正的數(shù)字圖像監(jiān)控系統(tǒng)。其根本原因在于系

12、統(tǒng)設(shè)計的出發(fā)點不是基于計算機(jī),而是基于傳統(tǒng)模式。大部分時間里,計算機(jī)只是充當(dāng)一個外部監(jiān)視器的角色,并且傳統(tǒng)單片機(jī)系統(tǒng)固有的弊端并沒有克服,通信協(xié)議的多樣化與專用化很難統(tǒng)一,導(dǎo)致現(xiàn)有的計算機(jī)資源遠(yuǎn)遠(yuǎn)滿足不了多種設(shè)備的要求。另外計算機(jī)的運行速度較低,而數(shù)字視頻的數(shù)據(jù)量又很大,這樣就限制了利用一臺計算機(jī)同時處理更多數(shù)字視頻信號的能力。很難組建大型監(jiān)控系統(tǒng)。1.1.3遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)第三代視頻監(jiān)控系統(tǒng)一一遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的關(guān)鍵設(shè)備是網(wǎng)絡(luò)視頻信號采集終端(也被稱為視頻服務(wù)器),網(wǎng)絡(luò)視頻信號采集終端采用嵌入式實時多任務(wù)操作系統(tǒng)。攝像機(jī)送來的視頻信號在網(wǎng)絡(luò)視頻信號采集終端數(shù)字化

13、后由高效壓縮芯片壓縮,通過內(nèi)部總線送到網(wǎng)絡(luò)接口發(fā)送到網(wǎng)絡(luò)上,網(wǎng)絡(luò)上用戶可以直接用在PC機(jī)上用瀏覽器觀看網(wǎng)絡(luò)視頻信號采集終端傳送過來的攝像機(jī)所拍攝的圖像,授權(quán)用戶還可以通過計算機(jī)網(wǎng)絡(luò)透過網(wǎng)絡(luò)視頻信號采集終端控制攝像機(jī)鏡頭和云臺的動作或?qū)ο到y(tǒng)進(jìn)行配置操作。由于把視頻壓縮和網(wǎng)絡(luò)功能集中到一個體積很小的設(shè)備內(nèi),可以直接連入局域網(wǎng),達(dá)到即插即用,省掉多種復(fù)雜的電纜,安裝方便,僅需設(shè)置一個IP地址,用戶也無需安裝任何硬件設(shè)備,僅通過PC機(jī)用瀏覽器即可觀看。數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)與其它監(jiān)控系統(tǒng)的比較:布控區(qū)域廣闊。數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的網(wǎng)絡(luò)視頻信號采集終端直接連入網(wǎng)絡(luò),沒有線纜長度和信號衰減的限制,同時網(wǎng)絡(luò)是

14、沒有距離概念的,徹底拋棄了地域的概念,擴(kuò)展布控區(qū)域;系統(tǒng)具有幾乎無限的無縫擴(kuò)展能力。所有設(shè)備都以IP地址進(jìn)行標(biāo)識,增加設(shè)備只是意味著IP地址的擴(kuò)充;可組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò)。采用基于網(wǎng)絡(luò)視頻信號采集終端為核心的系統(tǒng),在組網(wǎng)方式上與以往的監(jiān)控方式有極大的不同,由于視頻信號采集終端輸出已完成模擬到數(shù)字的轉(zhuǎn)換并壓縮,采用統(tǒng)一的協(xié)議在網(wǎng)絡(luò)上傳輸,支持跨網(wǎng)關(guān)、跨路由器的遠(yuǎn)程視頻傳輸;性能穩(wěn)定可靠,無需專人管理。視頻信號采集終端實際上基于嵌入式電腦技術(shù),采用嵌入式實時多任務(wù)操作系統(tǒng),又由于視頻壓縮和網(wǎng)絡(luò)功能集中到一個體積很小的設(shè)備內(nèi),直接連入局域網(wǎng)或廣域網(wǎng),即插即看,系統(tǒng)的實時性、可靠性大大提高,也無需專

15、人管理,非常適合無人值守的環(huán)境;當(dāng)需要同時觀看多路監(jiān)控視頻時,對網(wǎng)絡(luò)帶寬就會有一定的要求。1.2視頻監(jiān)控系統(tǒng)的發(fā)展趨勢將嵌入式系統(tǒng)技術(shù)、無線通信技術(shù)和基于TCP/IP的Internet就技術(shù)結(jié)合在一起的視頻監(jiān)控系統(tǒng)將成為監(jiān)控系統(tǒng)的未來發(fā)展方向。利用嵌入式技術(shù)采集并對現(xiàn)場信息進(jìn)行相應(yīng)處理,再通過無線通信方式傳輸?shù)絀nternet上,用戶通過internet來管理和使用信息。由于采用了3曲無線數(shù)據(jù)通信方式,可省去有線方式下必須采用的物理布線,并且無線方式有利于對監(jiān)視點的合理安排,克服了傳統(tǒng)系統(tǒng)只能用于固定現(xiàn)場的監(jiān)視。因此,這種監(jiān)視方式在工農(nóng)業(yè)生產(chǎn)、移動通信、家用電器自動化等領(lǐng)域都具有相當(dāng)廣闊的應(yīng)用

16、前景。目前,視頻監(jiān)控系統(tǒng)的發(fā)展趨勢可以概括為:1)視頻監(jiān)控數(shù)字化。視頻監(jiān)控發(fā)展經(jīng)歷了模擬視頻監(jiān)控、半數(shù)字監(jiān)控、數(shù)字監(jiān)控三個階段。對于視頻監(jiān)控,數(shù)字化存儲帶來的是一場革命性的變化。數(shù)字化是21世紀(jì)的時代特征,視頻監(jiān)控的數(shù)字化是監(jiān)控技術(shù)的必然趨勢。2)視頻監(jiān)控智能化。智能化是視頻監(jiān)控技術(shù)發(fā)展比較高級的層次。由于視頻監(jiān)控的數(shù)據(jù)量非常大,而用戶真正需要的信息只是少部分,真正需要監(jiān)視的只是發(fā)生概率很小的某些事件,如何通過海量數(shù)據(jù)獲取有價值的信息,如何從目視解釋變?yōu)闄C(jī)器自動解釋是視頻監(jiān)控技術(shù)發(fā)展的一個新方向。因為能把視頻監(jiān)控從靜態(tài)的、事后取證變成動態(tài)的、實時預(yù)防和告警對用戶來說明顯更加重要。實際上現(xiàn)有的大

17、型監(jiān)控系統(tǒng)都配置自動位移偵測、晝夜自適應(yīng)切換存儲、預(yù)警設(shè)置(如可疑人物照片、指紋等)等一些基本的智能化功能。3)視頻監(jiān)控IP化視頻網(wǎng)絡(luò)、PTW都是網(wǎng)絡(luò)快速發(fā)展的重要應(yīng)用。隨著Internet技術(shù)的發(fā)展,基于IP的視頻監(jiān)控更能為人們所接受,網(wǎng)絡(luò)攝像機(jī)把壓縮的視頻信息通過TCP/IP協(xié)議,采用流媒體技術(shù)實現(xiàn)視頻在網(wǎng)上的多路復(fù)用傳輸,擁有授權(quán)的用戶可以隨時訪問互聯(lián)網(wǎng),實現(xiàn)對整個監(jiān)控系統(tǒng)的指揮、調(diào)度、存儲、授權(quán)控制等功能。因此,基于IP的視頻監(jiān)控將會成為主流。4)視頻監(jiān)控?zé)o線化。隨著無線寬帶網(wǎng)絡(luò)的發(fā)展,基于3G勺無線視頻應(yīng)用備受關(guān)注。當(dāng)監(jiān)控點分散且與監(jiān)控中心距離較遠(yuǎn),或被監(jiān)控對象不固定(如出租車、運鈔

18、車等)時,利用傳統(tǒng)有線網(wǎng)絡(luò)的視頻監(jiān)控往往成本高且難以實現(xiàn),而基于多種無線傳輸手段的移動視頻監(jiān)控具有不可替代的優(yōu)勢。根據(jù)視頻網(wǎng)絡(luò)傳輸方式,遠(yuǎn)程視頻監(jiān)控系統(tǒng)可分為有線網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控和無線網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控兩種方式。無線視頻監(jiān)控系統(tǒng)克服有線網(wǎng)絡(luò)鋪設(shè)上投資成本高、距離受限的弊端,使遠(yuǎn)程視頻監(jiān)控系統(tǒng)的無線化逐漸成為近年來的發(fā)展趨勢。遠(yuǎn)程視頻監(jiān)控的無線化包括兩個方面:1)監(jiān)控中心(監(jiān)控者)和被監(jiān)控對象都是可以移動的,不受有線網(wǎng)絡(luò)束縛,監(jiān)控地點靈活,即監(jiān)控者和被監(jiān)控對象都可以是動態(tài)的。2)視頻監(jiān)控網(wǎng)絡(luò)的無線化。無線網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控又分為兩種:一種單獨構(gòu)建無線網(wǎng)絡(luò),基于WLAN®線局域網(wǎng))、無線城域網(wǎng)的WiMA

19、M術(shù)的視頻監(jiān)控系統(tǒng)技術(shù)已經(jīng)成熟,但自己構(gòu)建網(wǎng)絡(luò)需要傳輸設(shè)備、中繼站等,工作量大。另一種基于移動通信網(wǎng)絡(luò),依托遍布全球的2秘口3前線通信網(wǎng)絡(luò),打破了距離的限制,可以實現(xiàn)全球漫游監(jiān)控。2Gl信網(wǎng)絡(luò)主要是利用GPRSCDMAEDGE據(jù)業(yè)務(wù)通過Internet進(jìn)行通信,GPRSCDMA/EDGE據(jù)傳輸理論最大值為171.2kbps/144kbps/473.6kbps。中國國產(chǎn)3Gs準(zhǔn)TD-SCDMA通信網(wǎng)絡(luò),網(wǎng)絡(luò)數(shù)據(jù)傳輸帶寬將達(dá)到2MbpsH.264格式的壓縮編碼視頻幀率為30fps/25fpS/15fps所占用的碼率為384Kbp合256Kbp少128Kbps因此,基于3Gffi信網(wǎng)絡(luò)的遠(yuǎn)程視頻監(jiān)控

20、系統(tǒng)有望實現(xiàn)實時監(jiān)控流暢視頻。1.3嵌入式視頻監(jiān)控系統(tǒng)常見設(shè)計方案目前,國內(nèi)外基于嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的研究,一般集中于嵌入式視頻4監(jiān)控系統(tǒng)的設(shè)計、嵌入式操作系統(tǒng)的研究、視頻圖像處理以及視頻圖像的網(wǎng)絡(luò)傳輸?shù)葞讉€方面。在嵌入式視頻監(jiān)控系統(tǒng)設(shè)計方面,一般考慮系統(tǒng)的整體結(jié)構(gòu)和功能,基于B/S(瀏覽器和服務(wù)器)或者C/S(客戶端和服務(wù)器)架構(gòu),具體功能模塊采用軟件或硬件技術(shù)等。例如小型網(wǎng)絡(luò)攝像機(jī),系統(tǒng)由圖像傳感器、嵌入式處理器、圖像處理器、網(wǎng)絡(luò)接口組成,通過壓縮優(yōu)化算法和背景差分算法,可以使攝像機(jī)實現(xiàn)實時的圖像壓縮、傳輸,并能跟蹤目標(biāo),該系統(tǒng)的主要特點是實時性的提高;在嵌入式操作系統(tǒng)方面,除對系統(tǒng)進(jìn)

21、行一些剪裁和移植外,一般集中于嵌入式系統(tǒng)驅(qū)動程序的研究,例如在嵌入式Linux下對視頻采集設(shè)備驅(qū)動程序的研究等;關(guān)于視頻圖像處理的研究,一般是通過一定的圖形分析算法,實現(xiàn)目標(biāo)識別,目標(biāo)跟蹤,以及報警等功能。例如利用背景差分算法,在圖像處理中控制運動模塊,使攝像機(jī)可以跟蹤信息庫中的目標(biāo)網(wǎng)等;對于視頻圖像網(wǎng)絡(luò)傳輸?shù)难芯糠矫妫纾性贗P組播方式下的網(wǎng)絡(luò)視頻傳輸方案,可以大大的節(jié)約網(wǎng)絡(luò)帶寬,提高視頻的播放效率?;蛘卟捎昧髅襟w的格式傳送視頻圖像數(shù)據(jù),可以更好的實現(xiàn)視頻的傳輸及播放等?,F(xiàn)階段,嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的解決方案主要有以下幾種:1)視頻采集芯片+DSPE理器該方案中由視頻采集芯片完成圖像的

22、預(yù)處理,由DS浣成圖像的編碼,基于MPEG-4H.264或MJPEG準(zhǔn)的壓縮,經(jīng)以太網(wǎng)網(wǎng)絡(luò)傳輸。方案的主要缺點是控制不夠靈活,不適合作系統(tǒng)控制,另外,DSP!常沒有強(qiáng)大的操作系統(tǒng)支持。2)DS比理器+嵌入式處理器該方案采用由DSPI成基于MPEG-4H.264或MJPEG準(zhǔn)的圖像壓縮,在嵌入式處理器ARWFPGA:運行嵌入式操作系統(tǒng)進(jìn)行系統(tǒng)控制和網(wǎng)絡(luò)傳輸。方案的主要缺點是:由于有兩個主要的芯片,設(shè)計、調(diào)試、使用等方面具有一定難度,且系統(tǒng)成本偏高。3)圖像采集芯片+嵌入式處理器該方案中,在嵌入式處理器上運行嵌入式操作系統(tǒng)進(jìn)行系統(tǒng)控制和網(wǎng)絡(luò)傳輸。方案的主要缺點是:其應(yīng)用主要針對某一類產(chǎn)品,如數(shù)碼攝

23、像機(jī),所以具有一定的局限性;缺乏強(qiáng)大的圖像處理能力,很難滿足高實時性要求。4)其他方案可以采用DS砰央處理器完成圖像壓縮編碼、編碼數(shù)據(jù)網(wǎng)絡(luò)傳輸和本地存儲,CPLDI成圖像采集的控制邏輯的脫機(jī)遠(yuǎn)程視頻監(jiān)控方案。1.4本文的主要研究工作1、課題研究背景和意義;2、嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)中的關(guān)鍵技術(shù)介紹:3、系統(tǒng)的硬件結(jié)構(gòu)設(shè)計,包括:1、硬件系統(tǒng)整體結(jié)構(gòu)的設(shè)計;2、以微處理器S3c4510斯核心的主控電路及其外圍電路的設(shè)計;4、宿主機(jī)上硬件開發(fā)平臺的搭建。5、系統(tǒng)的軟件設(shè)計,包括:1、嵌入式Linux系統(tǒng)uCLinux的來源、特點以及結(jié)構(gòu)介紹:2、宿主機(jī)上Linux開發(fā)環(huán)境的建立與使用;3、uCLi

24、nux內(nèi)核的升級、編譯方法和詳細(xì)過程:4、在uCLinux上添加用戶應(yīng)用程序的步驟;5、嵌入式WE服務(wù)器的介紹以及與其相關(guān)的各項技術(shù)簡介;6、嵌入式WEB務(wù)器各個功能模塊的實現(xiàn),包括主程序、用戶管理模塊、設(shè)備管理模塊、網(wǎng)絡(luò)管理模塊的實現(xiàn)。第二章總體方案設(shè)計及平臺搭建隨著壓縮編碼技術(shù)、計算機(jī)網(wǎng)絡(luò)技術(shù)和嵌入式系統(tǒng)的發(fā)展以及芯片成本的下降,以嵌入式視頻服務(wù)器為核心的視頻監(jiān)測系統(tǒng)在市場上嶄露頭角。通用的Web服務(wù)器通常用于有大量用戶并發(fā)訪問的普通網(wǎng)站,以強(qiáng)有力的數(shù)據(jù)庫為用戶提供商業(yè)服務(wù),而嵌入式處理器能力和存儲容量有限,通用大型服務(wù)器無法在嵌入式設(shè)備上運行。因此,采用功能相對簡單、體積更小、消耗資源更

25、少的嵌入式Web服務(wù)器,是近年來出現(xiàn)的一種較為先進(jìn)的方案。目前,嵌入式Web艮務(wù)器的實現(xiàn)方法可以分成自主實現(xiàn)和修改移植兩種。自主設(shè)計需要自己開發(fā)網(wǎng)絡(luò)協(xié)議,難度及工作量較大。由于Linux的開放源碼思想和優(yōu)良的網(wǎng)絡(luò)功能,使它非常適合于嵌入式Web艮務(wù)器應(yīng)用中,并能為開發(fā)者縮短開發(fā)周期和成本,這種開發(fā)方式是現(xiàn)在以至今后流行的開發(fā)方法。2.1遠(yuǎn)程視頻監(jiān)控系統(tǒng)方案設(shè)計比較前面給出的幾種嵌入式網(wǎng)絡(luò)視頻監(jiān)測系統(tǒng)的解決方案,對于網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)來說,視頻采集卡+DSPT案沒有強(qiáng)大的操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議棧,不太適合做網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng);DSP+ARM案中,DS進(jìn)行圖像處理,刪進(jìn)行指令控制,設(shè)計得當(dāng)效果不錯,但該方

26、案采用了兩個處理器,成本提高,開發(fā)周期長,設(shè)計、調(diào)試上也具有一定困難;視頻采集卡+ARMT案缺乏強(qiáng)大的圖像處理能力,不能滿足實時性要求。目前,嵌入式微處理器性能大大提高,3G5線通信技術(shù)日趨成熟普及,因此,本文方案只采用AR腺心處理器,軟件方式壓縮視頻圖像,成本低廉,適合家庭應(yīng)用。2.1.1監(jiān)控系統(tǒng)整體網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng)是以嵌入式設(shè)備作為Web艮務(wù)器接入Internet網(wǎng)絡(luò)的.嵌入式設(shè)備連接到網(wǎng)絡(luò)后,以何種網(wǎng)絡(luò)結(jié)構(gòu)構(gòu)成系統(tǒng),就涉及到了網(wǎng)絡(luò)體系結(jié)構(gòu)的選擇問題。網(wǎng)絡(luò)體系結(jié)構(gòu)對整個網(wǎng)絡(luò)監(jiān)控系統(tǒng)來說是處于基礎(chǔ)地位的,合理選擇網(wǎng)絡(luò)體系結(jié)構(gòu)對系統(tǒng)運行效率、系統(tǒng)應(yīng)用的廣泛性和可維護(hù)性都有至關(guān)重要

27、的作用。C/S和B/S結(jié)構(gòu)是當(dāng)今世界開發(fā)模式技術(shù)架構(gòu)的兩大主流技術(shù)。C/S是美國Borland公司最早研發(fā),B/S是美國微軟公司研發(fā)。目前,這兩項技術(shù)已被世界各國所掌握,國內(nèi)公司以C/S?OB/S技術(shù)開發(fā)出的產(chǎn)品也很多,這兩種技術(shù)都有自己一定的市場份額和客戶群。C/S(Clien/Server)結(jié)構(gòu)即客戶機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),C/S結(jié)構(gòu)充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理地分配到Client端和Server端,降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的We購用發(fā)展,We即ClientServe

28、r應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件。因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW器來實現(xiàn),極少部分事務(wù)邏輯在客戶端(Browser)實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量,降低了用戶的總體成本(T

29、CO)【14】。Client/Server結(jié)構(gòu)是建立在局域網(wǎng)的基礎(chǔ)上的,Browser/Server結(jié)構(gòu)是建立在廣域網(wǎng)的基礎(chǔ)上的??偨Y(jié)它們主要的區(qū)別如下:(1)硬件環(huán)境不同C/S一般建立在專用的網(wǎng)絡(luò)上,小范圍里的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù)。B/S建立在廣域網(wǎng)之上的,不必是專門的網(wǎng)絡(luò)硬件環(huán)境,例如電話上網(wǎng),租用設(shè)備,信息自己管理,有比C/S更強(qiáng)的適應(yīng)范圍,一般只要有操作系統(tǒng)和瀏覽器就行。(2)對安全要求不同C/S通常面向相對固定的用戶群,對信息安全的控制能力很強(qiáng)。一些高度機(jī)密的信息系統(tǒng)采用C7號構(gòu)比較適宜,通過B/S發(fā)布部分可公開的信息。由于B/S建立在廣域網(wǎng)基礎(chǔ)

30、上,對安全的控制能力相對弱,面向的是不可知的用戶群。(3)對程序架構(gòu)不同C/S程序更加注重流程,也可對權(quán)限多層次校驗,對系統(tǒng)運行速度可以較少考慮。B/S對安全以及訪問速度的多重考慮,建立在需要更加優(yōu)化的基礎(chǔ)之上。比C/S有更高的要求,B/S結(jié)構(gòu)的程序架構(gòu)是發(fā)展的趨勢,從微軟的.Net系列,全面支持網(wǎng)絡(luò)的構(gòu)件搭建的系統(tǒng),至ijSUNf口舊M隹的JavaBea附件技術(shù)等,使B/S更加成熟。(4)軟件重用不同C/S程序從整體性方面考慮,構(gòu)件的重用性不如在B/S要求下的構(gòu)件的重用性好。B/S的多重結(jié)構(gòu),具有構(gòu)件相對獨立的功能。(5)系統(tǒng)維護(hù)不同系統(tǒng)維護(hù)是軟件生存周期中開銷大、相當(dāng)重要的環(huán)節(jié)。C/S程序

31、必須從整體考察,處理出現(xiàn)的問題以及系統(tǒng)升級難,通常是再做一個全新的系統(tǒng)。B/S構(gòu)件組成方面,構(gòu)件可個別的更換,實現(xiàn)系統(tǒng)的無縫升級。系統(tǒng)維護(hù)開銷減到最小,用戶從網(wǎng)上自己下載安裝就可以實現(xiàn)升級。(6)處理問題不同C/S程序可以處理用戶面固定,并且在相同區(qū)域,安全要求高的需求,與操作系統(tǒng)相關(guān),應(yīng)該都是相同的系統(tǒng)。B/S建立在廣域網(wǎng)上,面向不同的用戶群,分散地域,這是C/S無法做到的,與操作系統(tǒng)平臺關(guān)系最小。(7)用戶接口不同C/S多是建立在windows平臺上,表現(xiàn)方法有限,對程序員普遍要求較高。B/S建立在瀏覽器上,有更加豐富和生動的表現(xiàn)方式與用戶交流,并且大部分難度減低,降低開發(fā)成本。(8)信息

32、流不同C/S程序一般是典型的中央集權(quán)的機(jī)械式處理,交互性相對低。B/S信息流向可變化。綜上所述,根據(jù)C/S和B/S結(jié)構(gòu)的不同點,比較出C/S結(jié)構(gòu)具有應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕、數(shù)據(jù)的儲存管理功能較為透明的優(yōu)點,C/S結(jié)構(gòu)的劣勢是高昂的維護(hù)成本且投資大。B/S結(jié)構(gòu)維護(hù)和升級方式簡單,成本低廉、操作系統(tǒng)選擇更多,但有應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較重的缺點。本文監(jiān)控系統(tǒng)具有家庭小型應(yīng)用的特點,數(shù)據(jù)量不大,需要成本低廉、簡單易用、維護(hù)方便,因此,本文的視頻監(jiān)控系統(tǒng)采用B/翎構(gòu)。2. 1.2視頻監(jiān)控系統(tǒng)硬件方案設(shè)計1)開發(fā)環(huán)境的簡圖嵌入式系統(tǒng)通常為一個資源受限的系統(tǒng)。直接在嵌入式系統(tǒng)的硬件平臺上編寫軟件比較困

33、難,有時甚至是不可能的。目前,一般采用的辦法是,先在通用計算機(jī)上編寫程序,然后,通過交叉編譯,生成目標(biāo)平臺上可運行的二進(jìn)制代碼格式,最后下載到目標(biāo)平臺上的特定位置上運行。具體的硬件平臺連接如2.1圖所10視頻采集,轉(zhuǎn)換模塊視頻編碼模塊壓縮視頻數(shù)據(jù)以及存儲編碼流攝像頭MPEG-4編碼芯片IME6400外部的SDRAMK4643232E用作程序的運行空間,數(shù)據(jù)及堆棧段兩片HY57V641620芯片構(gòu)建SDRAM存儲器系統(tǒng)S3C4510B存放程序代碼,常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)提供EEPROM存儲空間,存儲用戶信息,配置信息以及網(wǎng)絡(luò)配置FLASH存儲器HY29LV1603G網(wǎng)絡(luò)接口

34、物理層芯片RTL8021BL提供網(wǎng)絡(luò)接入通道IIC存儲器AT24C16網(wǎng)絡(luò)隔離變壓器PE68515變壓和保護(hù)ARM系統(tǒng)傳輸接口RJ45端口傳輸媒體圖2.1系統(tǒng)的硬件結(jié)構(gòu)原理圖2.1.3視頻監(jiān)控系統(tǒng)的系統(tǒng)軟件選擇嵌入式操作系統(tǒng)已經(jīng)被廣泛應(yīng)用到大量以嵌入式處理器為硬件基礎(chǔ)的系統(tǒng)中,常見的嵌入式操作系統(tǒng)有:Linux、VxWorksWindowsCESymbian、Palm等。這些操作系統(tǒng)都各有自己強(qiáng)勁的優(yōu)勢,Linux以其開源的經(jīng)濟(jì)優(yōu)勢得到中小型企業(yè)的青睞;VxWorkSSr有優(yōu)良的可靠性和卓越的實時性,系統(tǒng)和開發(fā)環(huán)境都是專用的,開發(fā)成本高、支持硬件數(shù)量有限,使得其多數(shù)應(yīng)用在高精尖技術(shù)領(lǐng)域中;Wi

35、ndowsCEt著全球最大的操作系統(tǒng)廠商Microsoft強(qiáng)大的技術(shù)后盾,市場份額越來越多:Symbian®作系統(tǒng)是全球最大的手機(jī)開發(fā)制造商N(yùn)OKIA勺手機(jī)操作系統(tǒng),廣泛應(yīng)用于高端智能手機(jī)上:Palm是專門為掌上電腦開發(fā)的OS占用內(nèi)存少,具有極強(qiáng)的開放性【9】。11本系統(tǒng)的嵌入式設(shè)備考慮到源代碼的學(xué)習(xí)性和家用設(shè)備成本問題,采用了開放源代碼、高性能可剪裁內(nèi)核、網(wǎng)絡(luò)功能優(yōu)秀的Linux系統(tǒng)。本系統(tǒng)Linux內(nèi)核采用了2.6.12版本,與2.4.x版本相比,Linux2.6內(nèi)核對系統(tǒng)的穩(wěn)定性、統(tǒng)一的設(shè)備模型、即插即用支持、大數(shù)量的蝴支持、擴(kuò)展性、文件系統(tǒng)等方面進(jìn)行了改進(jìn),尤其是搶占式內(nèi)核、

36、I/O性能的改進(jìn)提高了系統(tǒng)的實時性。這將顯著提高交互式和多媒體應(yīng)用程序的性能。因此,本文的嵌入式視頻監(jiān)控系統(tǒng)的總體架構(gòu)圖如圖2.2所示。圖2.2基于嵌入式WebK務(wù)器視頻監(jiān)控系統(tǒng)總體架構(gòu)圖2. 2系統(tǒng)開發(fā)平臺的搭建有的嵌入式操作系統(tǒng)的處理能力和存儲能力較弱,不能在它上面安裝開發(fā)軟件;有的嵌入式操作系統(tǒng)的處理器結(jié)構(gòu)特殊,沒有可以在上面運行的開發(fā)工具。所以,在嵌入式系統(tǒng)開發(fā)時,通常需要采取交叉開發(fā)的方式進(jìn)行。交叉開發(fā)環(huán)境的模型如圖2.3所示。12交叉編譯程序代碼目標(biāo)程序HOSTTARGET數(shù)據(jù)通信圖2.3交叉編譯環(huán)境模型TARGET嵌入式系統(tǒng),HOST開發(fā)主機(jī)。在開發(fā)主機(jī)上可以安裝開發(fā)工具,編輯、

37、編譯目標(biāo)系統(tǒng),然后在目標(biāo)板上運行。這種在主機(jī)環(huán)境下開發(fā),在目標(biāo)板上運行的開發(fā)模式稱為交叉開發(fā)。2.3嵌入式Linux的移植從軟件的角度來看,一個嵌入式Linux的系統(tǒng)通??煞譃樗膫€層次,如圖2.4所示:圖2.4嵌入式系統(tǒng)的軟件體系結(jié)構(gòu)這四個層次自下而上為:1)引導(dǎo)加載程序。包括固化在固件firmware)中的Boot代碼(可選)和BootLoader兩大部分。2)操作系統(tǒng)內(nèi)核。如Linux內(nèi)核,通常包含內(nèi)核的啟動參數(shù)。3)文件系統(tǒng)。包括根文件系統(tǒng)和建立于Flash內(nèi)存設(shè)備之上的文件系統(tǒng)。在嵌13入式系統(tǒng)中,通常用Ramdis冰作為文件系統(tǒng)。4)用戶應(yīng)用程序。針對特定用戶的專用應(yīng)用程序。有時在用

38、戶應(yīng)用程序和內(nèi)核層之間可能還會包括一個嵌入式圖形用戶界面。2. 4本章小結(jié)本章對遠(yuǎn)程視頻監(jiān)控系統(tǒng)總體方案進(jìn)行了設(shè)計,搭建了主機(jī)開發(fā)環(huán)境和嵌入式開發(fā)環(huán)境,對嵌入式Linux系統(tǒng)的Bootloader、kemel和根文件系統(tǒng)進(jìn)行修改和移植。14第三章視頻采集模塊的設(shè)計與實現(xiàn)視頻數(shù)據(jù)的采集是視頻監(jiān)控系統(tǒng)實現(xiàn)的第一步,也是視頻壓縮和視頻傳輸?shù)幕A(chǔ)。本監(jiān)控系統(tǒng)由多個功能模塊構(gòu)成,視頻服務(wù)器主要涉及到三部分功能,一部分是基于V4L2勺圖像采集,一部分是建立嵌入式We服務(wù)器,設(shè)計CG屐序,實現(xiàn)用戶遠(yuǎn)程通過Web5面控制視頻采集傳輸?shù)墓δ?,另外部分是建立視頻數(shù)據(jù)庫。本章主要對Linux下采用V4L2B準(zhǔn)的US

39、暇像頭驅(qū)動程序的圖像采集過程進(jìn)行介紹,并采用FFmpeg寸視頻圖像進(jìn)行H.264格式的壓縮編碼,同時建立視頻數(shù)據(jù)庫,以便瀏覽器端對圖像數(shù)據(jù)操作。3. 1基于V4L2的視頻采集模塊設(shè)計V4L(VideoforLinux)是在linux內(nèi)核中關(guān)于視頻設(shè)備的API接口,涉及開關(guān)視頻設(shè)備、采集并處理視頻圖像信息。V4LR2.1.x版本的內(nèi)核中開始出現(xiàn)。V4L2(VideoforLinuxTwo)是V4L8口標(biāo)準(zhǔn)的改進(jìn)版本,修復(fù)了第一代的部分設(shè)計bug。從2.5.x開始,V4L2S;被集成到了內(nèi)核里。V4L2g音頻、視頻和其他輸出設(shè)備的內(nèi)核接口。與V4Lffi比,它的擴(kuò)展性和靈活性都得到了極大的提高,并

40、且支持的硬件設(shè)備也更多,但由于它對V4L故了徹底的改造,使得它與丫41不兼容.USIM像頭在Linux中屬于字符設(shè)備,成功加載了US暇像頭驅(qū)動程序后,插入攝像頭就會生成設(shè)備文件“/dev/video()因此,在應(yīng)用程序中通過讀寫該文件取得攝像頭采集的圖像數(shù)據(jù)。對于US由攝像頭,其驅(qū)動程序中需要提供基本的I/O操作接口函數(shù)open()、read()、write()、close()的實現(xiàn),對中斷的處理實現(xiàn),內(nèi)存映射功能以及對I/O通道的控制接口函數(shù)ioctl()的實現(xiàn)等,并把它們定義在structfile_operations中。這樣當(dāng)應(yīng)用程序?qū)υO(shè)備文件進(jìn)行諸如open()等系統(tǒng)調(diào)用操作時,Lin

41、ux內(nèi)核將通過fileoperations結(jié)構(gòu)訪問驅(qū)動程序提供的函數(shù)。3.1.1 V4L2視頻采集的數(shù)據(jù)結(jié)構(gòu)在Linux系統(tǒng)的/usr/include/linux/videodev2.h中定義了v412常用的數(shù)據(jù)結(jié)構(gòu):15structv4l2_requestbuffersreqbufs;/向驅(qū)動申請幀緩沖的請求,里面包含申請的個數(shù)structv4l2-capability設(shè)備structv4l2_inputinputcap;/這個設(shè)備的功能,/視頻輸入structv4l2_standard;/structv4l2_formatfmtstructv412_bufferbuf;/v4l2_std_

42、idstdid;/structv4l2_querytrl;/structv4l2_controlcontrol;/3.1.2 V4L2視頻采集的流程視頻的制式,比如PALNTSC/幀的格式,比如寬度,高度等代表驅(qū)動中的一幀視頻制式,例如:V4L2_STD_PAI_B查詢的控制具體控制的值Linux下基于V4L2API接口進(jìn)行圖像采集的程序?qū)崿F(xiàn)流程圖如圖3.1.2所示:16圖3.1視頻圖像采集流程圖具體的視頻采集主要步驟為:1)打開視頻設(shè)備在Linux中,把視頻設(shè)備看作設(shè)備文件,即/dev,video0。通過調(diào)用open()函數(shù)來實現(xiàn),open()函數(shù)帶有三個參數(shù),第一個為設(shè)備文件名,第二個則是

43、打開的類型。17用非阻塞模式打開攝像頭設(shè)備:intcameraFd;cameraFd=open("/dev/video0",O_RDW|R_NONBLOCK,O)如果用阻塞模式打開攝像頭設(shè)備,則:cameraFd=open("/dev/video0,O_RDWR,O)應(yīng)用程序能夠使用阻塞模式或非阻塞模式打開視頻設(shè)備,如果使用非阻塞模式調(diào)用視頻設(shè)備,即使尚未捕獲到信息,驅(qū)動依舊會把緩存(DQBUFF果的東西返回給應(yīng)用程序。2)設(shè)定屬性及采集方式打開視頻設(shè)備后,可以設(shè)置該視頻設(shè)備的屬性,例如裁剪、縮放等。這一步是可選的。在Linux編程中,一般使用ioctl函數(shù)來對設(shè)

44、備的I/O通道進(jìn)行管理:Extemintioctl(int_fd,unsignedlongint_requst,)_THROW;_fd:設(shè)備的ID,例如剛才用open函數(shù)打開視頻通道后返回的camerFd;_request:具體的命令標(biāo)志符。在進(jìn)行V4L2ff發(fā)中,一般會用到以下的命令標(biāo)志符:VIDIOC_REQBUF的配內(nèi)存VIDIOC_QUERYBU把VIDIOC_REQBUFS抨己的數(shù)據(jù)緩存轉(zhuǎn)換成物理地址VIDIOC_QUERYCA查詢驅(qū)動功能VIDIOC_ENUM_FM球取當(dāng)前驅(qū)動支持的視頻格式VIDIOC_S_FMT設(shè)置當(dāng)前驅(qū)動的頻捕獲格式VIDIOC_DQBUF把數(shù)據(jù)放回緩存隊列V

45、IDIOC_STREAMON始視頻顯示函數(shù)VIDIOC_STREAMOFF束視頻顯示函數(shù)VIDIOC_QUERYST臉查當(dāng)前視頻設(shè)備支持的標(biāo)準(zhǔn),例如PAL4ENTSC這些IO調(diào)用,有些是必須的,有些是可選擇的。查當(dāng)前視頻設(shè)備支持的標(biāo)準(zhǔn)在亞洲,一般使用PAL(720x576)制式的攝像頭,而歐洲一般使用NTSC(720x480),使用VIDIOC_QUERYSTD測:18v412_std_idstd;doret=ioctl(fd,VIDl0C_QUERYSTD&std);wllile(ret=-1&&errno=EAGAIN);switch(std)caseV4L2_ST

46、D_NYSCcaseV4L2_STD_PAL捕獲格式當(dāng)檢測完視頻設(shè)備支持的標(biāo)準(zhǔn)后,還需要設(shè)定視頻捕獲格式:structv4l2_formatfmt;memset(&fmt,0,sizeof(fmt);fmt.type=V4L2_BUF_TYPE_VIDEO_CAPTUREfmt.fmt.pix.width=720;fmt.fmt.pix.height=576;fmt.fmt.pix.pixelformat=V4L2_PIX_FMT_YUYV;fmt.fmt.pix.field=V4L2_FIELD_INTERLACED;if(ioctl(fd,VIDIOC_S_FMT,&fmt

47、)=-1)return-lv4l2_format結(jié)構(gòu)體定義如下:structv4l2_formatenumv412_buf_type;/數(shù)據(jù)流類型,必須永遠(yuǎn)是/v4L2_BUF_VIDEO_CAPTUREunionstructV412_pix_formatpix;structV412windowwin19structV412_vbi_formatvbi;_u8raw_data200;fmt;;structv412_pix_format_u32width;寬,必須是16的倍數(shù)_u32height;高,必須是16的倍數(shù)_u322pixelformat;/視頻數(shù)據(jù)存儲類型,例如是YUV42:2還是I

48、沁Benumv412_fieldfield;_u32bytesperline;_u32sizeimage;enumv4l2_colorspacecolorspace;_u32priv;分配內(nèi)存視頻捕獲分配內(nèi)存:structv412_requestbuffersreq;if(ioctl(fd,VIDIOC_REQBUFS&req)=-1)return-1;v412_requestbuffers定義如下:structV412_requestbuffers_u32count;/緩存數(shù)量,也就是說在緩存隊列里保持多少張照片enumv412_buf_typetype;/數(shù)據(jù)流類型,必須永遠(yuǎn)是/V

49、4L2_BUF_TYPE_VIDEO_CAPTUREenumv412_memorymemory/V4L2_MEMORY_MM®P/V4L2MEMORY_USERPTR20_u32reserved2;獲取并記錄緩存的物理空間使用VIDIOC_REQBUF鼠們獲取了req.count個緩存,下一步通過調(diào)用VIDIOC_QUERYBU峰來獲取這些緩存的地址,然后使用mmap數(shù)轉(zhuǎn)換成應(yīng)用程序中的絕對地址,如圖3.2所示,最后把這段緩存放入緩存隊列:VIDIOC_QUERYBUF0x800000000X100000000X800000010X100000010x800000020X100000

50、020X80000003mmap0X100000030X800000040X100000040X800000050X10000005內(nèi)核地址用戶地址圖3.2mma的數(shù)地址傳喚視頻采集方式操作系統(tǒng)一般把系統(tǒng)使用的內(nèi)存劃分成用戶空間和內(nèi)核空間,分別由應(yīng)用程序管理和操作系統(tǒng)管理。應(yīng)用程序可以直接訪問內(nèi)存的地址,而內(nèi)核空間存放的是供內(nèi)核訪問的代碼和數(shù)據(jù),用戶不能直接訪問。v412捕獲的數(shù)據(jù),最初是存放在內(nèi)核空間的,這意味著用戶不能直接訪問該段內(nèi)存,必須通過某些手段來轉(zhuǎn)換地址。Linux系統(tǒng)下有三種視頻采集方式:使用read、write方式,mmap存映射方式和用戶指針模式。read、write方式:通

51、過內(nèi)核緩沖區(qū)來讀取數(shù)據(jù),在用戶空間和內(nèi)核空間不斷拷貝數(shù)據(jù),占用了大量用戶內(nèi)存空間,效率不高。mmap存映射方式:mmap(統(tǒng)調(diào)用使得進(jìn)程之間通過映射同一文件實現(xiàn)內(nèi)存共享,訪問時只需要指針而不用調(diào)用文件操作函數(shù)。通過把設(shè)備文件映射到內(nèi)存21中,加速了I/o訪問。這是一種有效的方式。上面的mmap數(shù)就是使用這種方式。用戶指針模式:內(nèi)存片段由應(yīng)用程序自己分配。這點需要在v412_requestbuffers里將memo針段設(shè)置成V4L2_MEMORY_USERPTR.因此,本文在程序?qū)崿F(xiàn)中采用了內(nèi)存映射方式截取視頻圖像樣,捕獲到的視頻數(shù)據(jù)被映射到內(nèi)存區(qū)域,該映射內(nèi)容區(qū)可讀寫并且可供不同進(jìn)程共享。要對

52、視頻數(shù)據(jù)進(jìn)行壓縮等處理工作則可通過訪問內(nèi)存映射區(qū)域進(jìn)行。3)處理采集數(shù)據(jù)V4L2W一個數(shù)據(jù)緩存,存放req.count數(shù)量的緩存數(shù)據(jù)。數(shù)據(jù)緩存采用FIFO的方式,當(dāng)應(yīng)用程序調(diào)用緩存數(shù)據(jù)時,緩存隊列將最先采集到的視頻數(shù)據(jù)緩存送出,并重新采集一張視頻數(shù)據(jù)。這個過程需要用到兩個ioctl命令,VIDIOC_DQBUF和VIDIOC_QBU:Fstructv412_bufferbuf;memset(&buf,O,sizeof(buf);buf.type=V4L2_BUF_TYPE_VIDEO_CAPATUREbuf.memory=V4L2_MEMORY_MMAPbuf.index=0:/讀取緩

53、存if(ioctl(cameraFd,VIDIOC_dqbuf,&buf)=-1)return-1;/?視頻處理算法/重新放入緩存隊列if(ioctl(cameraFd,VIDIOC_QBUF,&buf)=-1)return-l;4)關(guān)閉視頻設(shè)備使用close函數(shù)關(guān)閉一個視頻設(shè)備:close(cameraFd);22本課題的視頻采集圖像效果,如圖3.3示3.1.3視頻數(shù)據(jù)的存儲由于保存文件是保存在USBM盤上,也就是需要不停的讀寫I/O設(shè)備,這樣的操作需要耗費大量的時間和資源,因此保存視頻文件模塊也是利用一個單獨線程來實現(xiàn)以提高程序的執(zhí)行效率。對于用戶而言,存儲的圖像能達(dá)到記錄

54、的目的即可,對連續(xù)性的要求并不高,所以本系統(tǒng)以約10幀/秒的速度進(jìn)行存儲,以此達(dá)到節(jié)省存儲空間的目的。存儲速率的控制是通過定時器來完成的。同樣,此功能模塊也有自己的循環(huán)緩沖區(qū)存放壓縮后的視頻數(shù)據(jù),該線程不斷從該緩沖區(qū)讀取JPE嗷據(jù),通過調(diào)用avilib庫的相關(guān)函數(shù)把這些視頻數(shù)據(jù)保存為avi格式的文件。對于“avi"格式文件,目前大多數(shù)播放器都能播放該格式的視頻文件。3.2視頻編碼通過USE®像頭獲取的視頻圖像數(shù)據(jù)量較大,而網(wǎng)絡(luò)帶寬有限,不適合網(wǎng)絡(luò)實時傳輸,為了使視頻圖像在現(xiàn)有的網(wǎng)絡(luò)上有較高的傳輸速率和較好的視頻質(zhì)量和有效的存儲視頻數(shù)據(jù),需要將原始的視頻圖像進(jìn)行壓縮編碼。23

55、3.2.1視頻編碼技術(shù)的選擇傳統(tǒng)的視頻壓縮編碼都是以香農(nóng)信息論為基礎(chǔ),用統(tǒng)計概率模型來描述信源,編碼實體是像素或像素塊。這種基于數(shù)理統(tǒng)計、旨在消除視頻數(shù)據(jù)相關(guān)冗余的編碼技術(shù)被稱為第一代視頻編碼技術(shù),JPEGMPEG-1H.261、H.263是其典型代表。第一代視頻編碼技術(shù)沒有考慮接受者特性、視頻信息的重要程度和具體含義,只是以去除數(shù)據(jù)的冗余為出發(fā)點,是一種較低層次的編碼技術(shù)。由此,出現(xiàn)了基于內(nèi)容的第二代視頻編碼技術(shù),它是以去除視頻內(nèi)容的冗余為出發(fā)點,在視頻編碼時充分考慮了人眼的視覺特性影像。目前監(jiān)控中主要采用MJPEGMPEG-1/2MPEG4(SP/ASP)H.264/AVG幾種視頻編碼技術(shù)

56、。用戶關(guān)心的主要要素有:清晰度、存儲量(帶寬)、穩(wěn)定性和價格。1)MJPEGMJPEG(MotionJPEG玨縮技術(shù),HE要是吁二靜態(tài)視頻壓縮發(fā)展起來的技術(shù),它的主要特點是基本不考慮視頻流中不同幀之間的變化,只單獨對某一幀進(jìn)行壓縮。MJPEG縮技術(shù)可以獲取清晰度很高的視頻圖像,可以動態(tài)調(diào)整幀率、分辨率。但由于沒有考慮到幀間變化,造成大量冗余信息被重復(fù)存儲,因此單幀視頻的占用空間較大,目前流行的MJPE使術(shù)最好的也只能做到3G節(jié)/幀,通常要820Ks2)MPEG-1/2MPEG-標(biāo)準(zhǔn)主要針對SIF標(biāo)準(zhǔn)分辨率(NTSCJ為352x240;PA附為352x288)的圖像進(jìn)行壓縮.壓縮位率主要目標(biāo)為1.5Mb/S.較MJPEG術(shù),MPEGfc實時壓縮、每幀數(shù)據(jù)量、處理速度上有顯著的提高。但MPEGfe有較多不利地方:存儲容量還是過大、清晰度不夠高和網(wǎng)絡(luò)傳輸困難。MPEG-2MPEG1基礎(chǔ)上進(jìn)行了擴(kuò)充和提升,和MPEG1向下兼容,主要針對存儲媒體、數(shù)字電視、高清晰等應(yīng)用領(lǐng)域,分辨率為:低(352x288),中(720x480),次高(1440x1080),高(1920x1080)。MPEG-視頻相對MPEG推

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論