摘要:本文介紹了一個(gè)基于嵌入式WEB技術(shù)的視頻監(jiān)控系統(tǒng)的架構(gòu)方案,重點(diǎn)闡述其監(jiān)控教學(xué)功能管理系統(tǒng)的設(shè)計(jì)思路,對其中涉及的關(guān)鍵技術(shù)進(jìn)行了較為詳細(xì)的敘述。
關(guān)鍵詞:嵌入式系統(tǒng);視頻監(jiān)控;教學(xué)功能;WEB
中圖分類號:G642
文獻(xiàn)標(biāo)識碼:B
1基于嵌入式WEB技術(shù)的視頻監(jiān)控系統(tǒng)概述
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。WEB是基于客戶機(jī)/服務(wù)器方式,采用HTTP協(xié)議進(jìn)行信息交互的信息發(fā)現(xiàn)和超文本技術(shù),是一種成熟的、重要的網(wǎng)絡(luò)技術(shù),實(shí)現(xiàn)了真正的跨平臺。
校園網(wǎng)嵌入式WEB監(jiān)控教育功能、教學(xué)資源庫及應(yīng)用模式建設(shè)研究,是建設(shè)一個(gè)基于嵌入式WEB技術(shù)的視頻監(jiān)控系統(tǒng),結(jié)合學(xué)校實(shí)際重點(diǎn)闡述其嵌入式WEB服務(wù)器硬件及軟件的設(shè)計(jì)思路,及其對教育功能、教學(xué)資源庫和應(yīng)用的采集監(jiān)控,實(shí)現(xiàn)管理信息化、網(wǎng)絡(luò)化?;谇度胧絎EB技術(shù)的視頻監(jiān)控系統(tǒng)結(jié)合了先進(jìn)的WEB技術(shù)與嵌入式技術(shù),其服務(wù)器采用嵌入式技術(shù)實(shí)現(xiàn),通過WEB方式實(shí)現(xiàn)服務(wù)器端與客戶端的信息交互。本文所述監(jiān)控系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。
系統(tǒng)由教育功能、教學(xué)資源及應(yīng)用的現(xiàn)場設(shè)備、嵌入式WEB服務(wù)器、傳輸網(wǎng)絡(luò)和教育功能、教學(xué)資源及應(yīng)用的監(jiān)控端組成?,F(xiàn)場設(shè)備包括攝像頭和一些測控單元,用于采集教育功能、教學(xué)資源及應(yīng)用現(xiàn)場的數(shù)字視頻信息和各種開關(guān)量、模擬量信息。并以此建設(shè)嵌入式WEB教學(xué)資源庫及應(yīng)用模式。監(jiān)控端的功能是顯示現(xiàn)場視頻和狀態(tài)信息,并根據(jù)需要向服務(wù)器端發(fā)出各種信息請求以及對現(xiàn)場設(shè)備的控制信號。一個(gè)監(jiān)控端也可以同時(shí)訪問多個(gè)服務(wù)器。
2嵌入式WEB服務(wù)器結(jié)構(gòu)設(shè)計(jì)
我們的目標(biāo)是要在上述應(yīng)用背景下研究設(shè)計(jì)出一種通用的嵌入式設(shè)備,這種ER-WEB的硬件系統(tǒng)結(jié)構(gòu),如圖2所示。這種設(shè)備不但能夠支持最通用的以太網(wǎng)絡(luò)標(biāo)準(zhǔn)與TCP/IP,還能適合于與上述傳統(tǒng)的設(shè)備集成,便于這些設(shè)備的遠(yuǎn)程控制和數(shù)據(jù)采集。也就是使這些設(shè)備網(wǎng)絡(luò)智能化,當(dāng)一臺設(shè)備具有網(wǎng)絡(luò)智能時(shí),人們可以在任何地方、任何時(shí)間、任何地點(diǎn)、通過網(wǎng)絡(luò)隨時(shí)瀏覽設(shè)備實(shí)時(shí)的狀態(tài),并在遠(yuǎn)程實(shí)現(xiàn)對這臺設(shè)備的監(jiān)視、控制、診斷、測試、配置和遠(yuǎn)程電子交收費(fèi)。
嵌入式服務(wù)器是整個(gè)監(jiān)控系統(tǒng)的核心部分,其硬件由CPU芯片、Flash芯片、內(nèi)存、網(wǎng)絡(luò)接口以及一些數(shù)據(jù)采集卡組成。主要功能包括:實(shí)現(xiàn)現(xiàn)場視頻信息的直播和點(diǎn)播;采集現(xiàn)場設(shè)備信息并進(jìn)行相應(yīng)處理,為監(jiān)控端提供WEB訪問頁面;對教育功能、教學(xué)資源及應(yīng)用監(jiān)控端的訪問進(jìn)行有效性、安全性檢查;響應(yīng)監(jiān)控端的請求,為監(jiān)控端提供所需信息;接收教育功能、教學(xué)資源及應(yīng)用監(jiān)控端的控制信息,經(jīng)過軟硬件轉(zhuǎn)換對現(xiàn)場設(shè)備進(jìn)行控制,如控制攝像頭的轉(zhuǎn)動(dòng)、啟動(dòng)現(xiàn)場的報(bào)警裝置等。每個(gè)服務(wù)器有自己的IP地址,在教育功能、教學(xué)資源及應(yīng)用監(jiān)控端可通過通用瀏覽器界面訪問服務(wù)器,一個(gè)服務(wù)器可同時(shí)為多個(gè)監(jiān)控端服務(wù)。為了實(shí)現(xiàn)視頻點(diǎn)播功能,需要存儲大量的視頻圖像信息,由于嵌入式服務(wù)器體積小,故增加了可選擇的外接存儲設(shè)備。
3嵌入式WEB服務(wù)器的軟件設(shè)計(jì)
校園網(wǎng)嵌入式WEB監(jiān)控教育功能、教學(xué)資源庫及應(yīng)用模式,從湖南省教育科學(xué)“十一五”規(guī)劃的基本原則出發(fā),堅(jiān)持兩個(gè)面向。一方面要面向全局,注重突出與國家教育科學(xué)“十一五”規(guī)劃的對接,將我省教育科學(xué)規(guī)劃融入到全國教育改革發(fā)展的大背景中去,新起點(diǎn),大視野,寬領(lǐng)域,全方位地思考和勾劃課題方向。另一方面要面向我省各級各類教育事業(yè),積極緊貼教育宏觀決策,緊貼教育教學(xué)改革的實(shí)際,緊貼學(xué)科研究前沿,緊貼熱點(diǎn)難點(diǎn),求真務(wù)實(shí),創(chuàng)新管用。建設(shè)一個(gè)基于嵌入式WEB技術(shù)的視頻監(jiān)控系統(tǒng),重點(diǎn)設(shè)計(jì)其嵌入式WEB服務(wù)器硬件及軟件,實(shí)現(xiàn)教育功能、教學(xué)資源庫和應(yīng)用的采集監(jiān)控與管理信息化、網(wǎng)絡(luò)化。
嵌入式操作系統(tǒng)是支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,是在系統(tǒng)實(shí)時(shí)性、硬件相關(guān)性、軟件固態(tài)化等方面有著突出特點(diǎn)的專用操作系統(tǒng)。本系統(tǒng)采用嵌入式LINUX操作系統(tǒng),它是在根據(jù)系統(tǒng)需要對LINUX操作系統(tǒng)進(jìn)行小型化裁剪的基礎(chǔ)上實(shí)現(xiàn)的。使用LINUX的優(yōu)勢在于:其操作系統(tǒng)的源代碼是開放的,可根據(jù)需要進(jìn)行定制;系統(tǒng)內(nèi)核小,因而對硬件的要求相對要低;支持多任務(wù)多進(jìn)程,能提供較好的實(shí)時(shí)性。由于系統(tǒng)信息處理量大、實(shí)時(shí)性要求高,操作系統(tǒng)的存儲調(diào)度、進(jìn)程管理、文件管理等都要求采取高效可行的策略。本系統(tǒng)是一個(gè)專用計(jì)算機(jī)系統(tǒng),用于測控的板卡有些是根據(jù)需要自行定制的,因此編寫相應(yīng)的驅(qū)動(dòng)程序也是必不可少的環(huán)節(jié)。
服務(wù)器的應(yīng)用軟件結(jié)構(gòu)如圖3所示。
3.1視頻服務(wù)器
視頻服務(wù)器是整個(gè)服務(wù)器的核心部分。主要包括以下幾個(gè)模塊:
⑴ 視頻壓縮編碼模塊
主要功能是實(shí)現(xiàn)對視頻信息的壓縮和編碼。在響應(yīng)監(jiān)控端的請求,接收教育功能、教學(xué)資源及應(yīng)用監(jiān)控端的控制信息,經(jīng)過軟硬件轉(zhuǎn)換對現(xiàn)場設(shè)備進(jìn)行控制的同時(shí),根據(jù)網(wǎng)絡(luò)帶寬、拓?fù)浣Y(jié)構(gòu)以及對圖像質(zhì)量的要求,本系統(tǒng)選用基于MPEG-2標(biāo)準(zhǔn)的分層可擴(kuò)展性編碼方案。其基本層提供原始視頻的基本信息,增強(qiáng)層提供原始視頻的細(xì)節(jié)。基本層可以單獨(dú)傳輸和解碼,也可與增強(qiáng)層一起傳輸和解碼。這種編碼方案能夠適應(yīng)網(wǎng)絡(luò)帶寬狀況的變化,提供不同質(zhì)量的視頻信息,在出現(xiàn)網(wǎng)絡(luò)擁塞、丟包等現(xiàn)象時(shí)仍能提供連貫性較好的視頻圖像。
實(shí)時(shí)采集模塊將獲取的視頻信息存放在待編碼視頻緩沖隊(duì)列中,等待視頻壓縮編碼進(jìn)程對視頻信息進(jìn)行壓縮和編碼處理,視頻壓縮編碼進(jìn)程將編碼后的視頻存放到已編碼視頻緩沖隊(duì)列中,同時(shí)激活或等待直播進(jìn)程和存儲管理進(jìn)程進(jìn)行相應(yīng)處理。
(2) 存儲管理與調(diào)度模塊
存儲管理模塊的主要功能是將接收到的教育功能、教學(xué)資源及應(yīng)用監(jiān)控端經(jīng)壓縮和編碼的視頻信息根據(jù)一定的策略存儲至磁盤中特定的區(qū)域。本系統(tǒng)采用等長分組存儲策略。即將視頻信息按照時(shí)序關(guān)系分割成若干數(shù)據(jù)單元,這些數(shù)據(jù)單元稱為分組,將每個(gè)分組存儲于一個(gè)大小固定的存儲單元內(nèi)。
存儲調(diào)度模塊的主要功能是響應(yīng)視頻調(diào)度模塊的請求,按照一定的磁盤調(diào)度策略和優(yōu)先級順序從磁盤中讀取信息至內(nèi)存緩沖區(qū)。由于采用等長分組存儲策略,因此系統(tǒng)的磁盤調(diào)度直接采用簡便快捷的線性調(diào)度算法。
(3) 視頻調(diào)度與傳輸模塊
視頻調(diào)度與傳輸模塊共同協(xié)作,為監(jiān)控端提供所需接收到的教育功能、教學(xué)資源及應(yīng)用監(jiān)控端經(jīng)壓縮和編碼的視頻信息。視頻傳輸模塊根據(jù)所采取的網(wǎng)絡(luò)傳輸與控制協(xié)議與監(jiān)控端建立連接,監(jiān)聽監(jiān)控端的請求;視頻調(diào)度模塊根據(jù)不同的服務(wù)類型采取相應(yīng)的調(diào)度策略創(chuàng)建視頻流,傳遞給視頻傳輸模塊;視頻傳輸模塊再將數(shù)據(jù)分組、打包,發(fā)送到監(jiān)控端,并根據(jù)路由器和監(jiān)控端反饋的網(wǎng)絡(luò)狀態(tài)信息進(jìn)行差錯(cuò)處理和擁塞控制。本系統(tǒng)對于點(diǎn)播信息采用單播傳輸方式。所謂單播是指一種單點(diǎn)到單點(diǎn)的數(shù)據(jù)傳輸模式。視頻調(diào)度采取先來先服務(wù)的策略,對于每一個(gè)點(diǎn)播請求單獨(dú)生成一個(gè)視頻流。直播信息采用分層組播方式。所謂組播是指一點(diǎn)到多點(diǎn)的數(shù)據(jù)傳輸模式,即將一份數(shù)據(jù)同時(shí)發(fā)送給一組特定的用戶。這種方式避免了數(shù)據(jù)的重復(fù)發(fā)送,節(jié)省了網(wǎng)絡(luò)帶寬,非常適合于直播視頻流的傳輸。分層組播的基本思想是發(fā)送方將每一層的壓縮視頻發(fā)送到一個(gè)組播組中,接收端根據(jù)自己的網(wǎng)絡(luò)帶寬狀況接收基本層數(shù)據(jù)和多個(gè)增強(qiáng)層數(shù)據(jù),從而獲得不同質(zhì)量的視頻。
本系統(tǒng)采用的網(wǎng)絡(luò)傳輸協(xié)議使用RTP/UDP/IP模型。RTP協(xié)議是一種提供端對端的實(shí)時(shí)媒體傳輸服務(wù)的協(xié)議,由實(shí)時(shí)傳輸協(xié)議RTP和實(shí)時(shí)傳輸控制協(xié)議RTCP兩個(gè)部分組成。RTP用于多媒體數(shù)據(jù)的傳輸,而RTCP用來監(jiān)控實(shí)時(shí)數(shù)據(jù)的傳輸。RTP的數(shù)據(jù)包頭的數(shù)據(jù)結(jié)構(gòu)非常適合媒體數(shù)據(jù)的封裝和描述。RTP協(xié)議不規(guī)定負(fù)載的格式和大小,因而具有很大的靈活性。RTCP協(xié)議為媒體流化的管理提供了平臺,利用RTCP的數(shù)據(jù)結(jié)構(gòu)可以很好地監(jiān)控信息傳輸狀況,實(shí)現(xiàn)流量及擁塞控制。RTP本身并不具有獨(dú)立傳輸數(shù)據(jù)的能力,而是必須和低層的網(wǎng)絡(luò)協(xié)議結(jié)合使用,對于IP網(wǎng)絡(luò),通常是和UDP協(xié)議結(jié)合。UDP協(xié)議采用無連接的傳輸方式,適用于對實(shí)時(shí)性要求高、允許有一定丟失率的視、音頻實(shí)時(shí)數(shù)據(jù)的傳輸。視頻數(shù)據(jù)流在傳輸時(shí)被劃分為塊,視頻數(shù)據(jù)塊依次經(jīng)過RTP、UDP、IP協(xié)議的封裝,最終成為相對獨(dú)立的網(wǎng)絡(luò)數(shù)據(jù)包提交給網(wǎng)絡(luò)傳輸媒體。RTP/UDP/IP的方式兼顧了視頻傳輸?shù)膶?shí)時(shí)性與QoS保證。由于傳輸網(wǎng)絡(luò)狀況的不確定性,還必須采取一定的擁塞控制和差錯(cuò)控制策略。針對本系統(tǒng)采用的分層可擴(kuò)展性編碼方法,選擇了基于收端的速率控制方式進(jìn)行擁塞控制。由客戶端根據(jù)網(wǎng)絡(luò)狀態(tài)增加或減少信道數(shù)量,一般最少保證基本層視頻信息的接收。服務(wù)器端編碼部分固定不變,只是在發(fā)送層參與調(diào)整,這種方式減輕了服務(wù)器的負(fù)擔(dān)。差錯(cuò)控制方面,為簡化服務(wù)器的設(shè)計(jì),選擇采用誤碼掩蓋的方法,即采用空間上相鄰的宏塊來取代出錯(cuò)的宏塊,或利用前一幀相同位置或運(yùn)動(dòng)矢量指向的位置信息來取代出錯(cuò)位置的信息。
3.2實(shí)時(shí)采集/控制模塊與測控信息處理模塊
實(shí)時(shí)采集/控制模塊是指系統(tǒng)各種外設(shè)的實(shí)時(shí)采集模塊和實(shí)時(shí)控制模塊,它們相對獨(dú)立,采用多線程的方式實(shí)現(xiàn)與底層設(shè)備驅(qū)動(dòng)程序的信息交互。實(shí)時(shí)采集模塊由一系列設(shè)備的采集模塊組成,提供所需接收到的教育功能、教學(xué)資源及應(yīng)用監(jiān)控端經(jīng)壓縮和編碼的視頻信息。在操作系統(tǒng)啟動(dòng)時(shí)加載。在服務(wù)器運(yùn)行期間始終駐留內(nèi)存運(yùn)行,定時(shí)輪詢設(shè)備端口狀態(tài),獲取設(shè)備端口的數(shù)據(jù)信息,并激活或提交給相應(yīng)的處理模塊。對于視頻數(shù)據(jù),將其加入視頻編碼緩沖隊(duì)列,由視頻壓縮編碼模塊處理;現(xiàn)場狀態(tài)信息送交測控信息處理模塊處理。測控信息處理模塊在WEB服務(wù)器和實(shí)時(shí)采集/控制模塊之間提供了信息的過濾和轉(zhuǎn)換功能。實(shí)時(shí)控制進(jìn)程根據(jù)處理后的設(shè)備信息和控制信息調(diào)用相應(yīng)設(shè)備的驅(qū)動(dòng)程序?qū)υO(shè)備進(jìn)行控制。
3.3WEB服務(wù)器
WEB服務(wù)器通過HTTP協(xié)議與監(jiān)控端瀏覽器軟件進(jìn)行信息交互,提供服務(wù)器應(yīng)用程序模塊的訪問界面和現(xiàn)場設(shè)備的信息訪問和控制界面。提供接收到的教育功能、教學(xué)資源及應(yīng)用監(jiān)控端經(jīng)壓縮和編碼的視頻信息。除此以外它還要對監(jiān)控端的訪問權(quán)限進(jìn)行控制,過濾監(jiān)控端的請求和控制信息,處理多個(gè)監(jiān)控端的請求和控制的同步和優(yōu)先級問題,從而保證系統(tǒng)的安全性和穩(wěn)定性。監(jiān)控端通過WEB頁面激活服務(wù)器的相應(yīng)應(yīng)用程序模塊,傳遞信息服務(wù)請求和控制命令。本系統(tǒng)采用Apache Server。Apache Server是一個(gè)功能強(qiáng)大的開放源代碼的WEB服務(wù)器軟件,可靈活定制,服務(wù)器程序本身所占空間很小,因而十分適用于嵌入式系統(tǒng)。
4結(jié)束語
本系統(tǒng)與一般的視頻監(jiān)控系統(tǒng)相比主要特點(diǎn)在于提供所需接收到的教育功能、教學(xué)資源及應(yīng)用監(jiān)控端經(jīng)壓縮和編碼的視頻信息;其服務(wù)器的設(shè)計(jì)基于嵌入式技術(shù)與WEB技術(shù)。要求服務(wù)器體積小、集成度高,因而硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣、去除冗余。服務(wù)器的軟件代碼要求固態(tài)化存儲,要求高質(zhì)量、高可靠性。監(jiān)控端使用通用瀏覽器界面對現(xiàn)場進(jìn)行監(jiān)控,瀏覽器所運(yùn)行的平臺與服務(wù)器所運(yùn)行的平臺獨(dú)立,從而實(shí)現(xiàn)了跨平臺。
參考文獻(xiàn):
[1] 鐘玉琢,向哲,沈洪. 流媒體和視頻服務(wù)器[M]. 北京:清華大學(xué)出版社,2003.
[2] 余兆明,李曉飛,陳來春. MPEG標(biāo)準(zhǔn)及其應(yīng)用[M]. 北京郵電大學(xué)出版社,2002.
[3] 張根源. 嵌入式系統(tǒng)與INTERNET技術(shù)[J]. 微計(jì)算機(jī)信息,2000,(3).
[4] 胡錦,蔡谷明,梁先宇編著. 單片機(jī)實(shí)用技術(shù)教程[M]. 北京:高等教育出版社,2003.
[5] 梁先宇. 嵌入式實(shí)時(shí)多任務(wù)程序設(shè)計(jì)與實(shí)現(xiàn)[J]. 中南工業(yè)大學(xué)學(xué)報(bào),2003,34(2):95.
[6] 劉水平,梁先宇. 基于模糊神經(jīng)網(wǎng)絡(luò)控制結(jié)腸灌注透析治療機(jī)[J]. 計(jì)算機(jī)測量與控制,2005,13(8).