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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

2、了視頻監(jiān)控系統(tǒng)的總體設計方案,深入研究了各個功能模塊。目前3%線通信網絡正在普及,為了滿足未來移動監(jiān)控的需要,本系統(tǒng)數據傳輸引入了3%線模塊的方案,為后續(xù)研究奠定了基礎。本文主要研究的嵌入式We服務器的遠程視頻監(jiān)控系統(tǒng)的軟件設計,對現代視頻監(jiā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本地數字視額監(jiān)控系統(tǒng)21.1.3遠程網絡視頻監(jiān)控系統(tǒng)21.2視頻監(jiān)控系統(tǒng)的發(fā)展趨勢

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

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

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

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

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

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

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

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

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

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

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

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

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

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

21、行一些剪裁和移植外,一般集中于嵌入式系統(tǒng)驅動程序的研究,例如在嵌入式Linux下對視頻采集設備驅動程序的研究等;關于視頻圖像處理的研究,一般是通過一定的圖形分析算法,實現目標識別,目標跟蹤,以及報警等功能。例如利用背景差分算法,在圖像處理中控制運動模塊,使攝像機可以跟蹤信息庫中的目標網等;對于視頻圖像網絡傳輸的研究方面,例如,有在IP組播方式下的網絡視頻傳輸方案,可以大大的節(jié)約網絡帶寬,提高視頻的播放效率。或者采用流媒體的格式傳送視頻圖像數據,可以更好的實現視頻的傳輸及播放等?,F階段,嵌入式網絡視頻監(jiān)控系統(tǒng)的解決方案主要有以下幾種:1)視頻采集芯片+DSPE理器該方案中由視頻采集芯片完成圖像的

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

45、IDIOC_STREAMON始視頻顯示函數VIDIOC_STREAMOFF束視頻顯示函數VIDIOC_QUERYST臉查當前視頻設備支持的標準,例如PAL4ENTSC這些IO調用,有些是必須的,有些是可選擇的。查當前視頻設備支持的標準在亞洲,一般使用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捕獲格式當檢測完視頻設備支持的標準后,還需要設定視頻捕獲格式: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結構體定義如下:structv4l2_formatenumv412_buf_type;/數據流類型,必須永遠是/v4L2_BUF_VIDEO_CAPTUREunionstructV412_pix_formatpix;structV412windowwin19structV412_vbi_formatvbi;_u8raw_data200;fmt;;structv412_pix_format_u32width;寬,必須是16的倍數_u32height;高,必須是16的倍數_u322pixelformat;/視頻數據存儲類型,例如是YUV42:2還是I

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

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

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

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

52、視頻數據進行壓縮等處理工作則可通過訪問內存映射區(qū)域進行。3)處理采集數據V4L2W一個數據緩存,存放req.count數量的緩存數據。數據緩存采用FIFO的方式,當應用程序調用緩存數據時,緩存隊列將最先采集到的視頻數據緩存送出,并重新采集一張視頻數據。這個過程需要用到兩個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)關閉視頻設備使用close函數關閉一個視頻設備:close(cameraFd);22本課題的視頻采集圖像效果,如圖3.3示3.1.3視頻數據的存儲由于保存文件是保存在USBM盤上,也就是需要不停的讀寫I/O設備,這樣的操作需要耗費大量的時間和資源,因此保存視頻文件模塊也是利用一個單獨線程來實現以提高程序的執(zhí)行效率。對于用戶而言,存儲的圖像能達到記錄

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

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論