




已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于嵌入式Linux的視頻 監(jiān)控系統(tǒng)的軟件設(shè)計(jì) 基于嵌入式Linux的視頻監(jiān)控系統(tǒng)的軟件設(shè)計(jì)1、引言隨著計(jì)算機(jī)技術(shù)及網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,公安、安防行業(yè)的發(fā)展趨勢(shì)必然是全面數(shù)字化、網(wǎng)絡(luò)化。傳統(tǒng)的模擬閉路電視監(jiān)控系統(tǒng)有很多局限性:傳輸距離有限、無(wú)法聯(lián)網(wǎng),而且模擬視頻信號(hào)數(shù)據(jù)的存儲(chǔ)會(huì)耗費(fèi)大量的存儲(chǔ)介質(zhì)(如錄像帶),查詢(xún)?nèi)∽C時(shí)十分煩瑣。 基于個(gè)人計(jì)算機(jī)的視頻監(jiān)控系統(tǒng)終端功能較強(qiáng),但穩(wěn)定性不好,視頻前端(如電壓耦合元件等視頻信號(hào)的采集、壓縮、通訊)較為復(fù)雜,可靠性不高?;谇度胧絃inux視頻的網(wǎng)絡(luò)監(jiān)控系統(tǒng)不需要用于處理模擬視頻信號(hào)的個(gè)人計(jì)算機(jī),而是把視頻服務(wù)器內(nèi)置一個(gè)嵌入式Web服務(wù)器,采用嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng)。 由于把視頻壓縮和Web功能集中到一個(gè)體積很小的設(shè)備內(nèi),可以直接連入局域網(wǎng),即插即看,省掉復(fù)雜的電纜,安裝方便(僅需設(shè)置一個(gè)IP地址),用戶也無(wú)需安裝任何硬件設(shè)備,僅用瀏覽器即可觀看。 基于嵌入式Linux的視頻網(wǎng)絡(luò)監(jiān)控系統(tǒng)將嵌入式Linux系統(tǒng)連接上Web,即視頻服務(wù)器內(nèi)置一個(gè)嵌入式Web服務(wù)器,攝像機(jī)傳送來(lái)的視頻信號(hào)數(shù)字化后由高效壓縮芯片壓縮,通過(guò)內(nèi)部總線傳送到內(nèi)置的Web服務(wù)器上。2、緒論視頻監(jiān)控系統(tǒng)是安全防范系統(tǒng)的組成部分,它是一種防范能力較強(qiáng)的綜合系統(tǒng)。視頻監(jiān)控以其直觀、方便、信息內(nèi)容豐富而廣泛應(yīng)用于許多場(chǎng)合。近年來(lái),隨著計(jì)算機(jī)、網(wǎng)絡(luò)以及圖像處理、傳輸技術(shù)的飛速發(fā)展,涌現(xiàn)出大量的嵌入式視頻監(jiān)控系統(tǒng)。21視頻監(jiān)控系統(tǒng)概述視頻監(jiān)控是利用機(jī)器視覺(jué)和圖像處理的方法對(duì)圖像序列進(jìn)行運(yùn)動(dòng)檢測(cè)、運(yùn)動(dòng)目標(biāo)分類(lèi)、運(yùn)動(dòng)目標(biāo)跟蹤以及對(duì)監(jiān)視場(chǎng)景中目標(biāo)行為的理解與描述。其中,運(yùn)動(dòng)檢測(cè)、目標(biāo)分類(lèi)、目標(biāo)跟蹤屬于視覺(jué)中的低級(jí)和中級(jí)處理部分,而行為理解和描述則屬于高級(jí)處理。運(yùn)動(dòng)撿測(cè)、運(yùn)動(dòng)目標(biāo)分類(lèi)與跟蹤是視頻監(jiān)控中研究較多的三個(gè)問(wèn)題;而行為理解與描述則是近年來(lái)被廣泛關(guān)注的研究熱點(diǎn),它是指對(duì)目標(biāo)的運(yùn)動(dòng)模式進(jìn)行分析和識(shí)別,并用自然語(yǔ)言等加以描述。22視頻監(jiān)控系統(tǒng)發(fā)展視頻監(jiān)控技術(shù)的發(fā)展大致可分為四個(gè)階段:閉路電視系統(tǒng)構(gòu)建的模擬系統(tǒng)、數(shù)字信號(hào)控制的模擬視頻監(jiān)控系統(tǒng)、數(shù)字硬盤(pán)錄像設(shè)備為核心的視頻監(jiān)控系統(tǒng)和現(xiàn)在的數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。第一代視頻監(jiān)控系統(tǒng)是采用閉路電視系統(tǒng)構(gòu)建的模擬系統(tǒng),通過(guò)攝像機(jī)、監(jiān)視器、磁帶錄像機(jī)等構(gòu)成I甜。由于模擬矩陣很難做到數(shù)十路的切換,不能與報(bào)警系統(tǒng)聯(lián)動(dòng),不能對(duì)前端進(jìn)行控制且價(jià)格昂貴、操作管理復(fù)雜、很難實(shí)現(xiàn)較大系統(tǒng)的要求,已經(jīng)逐漸被淘汰。第二代視頻監(jiān)控系統(tǒng)是數(shù)字信號(hào)控制的模擬視頻監(jiān)控系統(tǒng)。數(shù)字信號(hào)控制的模擬視頻監(jiān)控系統(tǒng)又分為基于微處理器的視頻切換控制加PC機(jī)的多媒體管理和基于PC機(jī)實(shí)現(xiàn)對(duì)矩陣主機(jī)的切換控制及對(duì)系統(tǒng)的多媒體管理兩種類(lèi)型。第三代視頻監(jiān)控系統(tǒng)是以數(shù)字硬盤(pán)錄像設(shè)備為核心的視頻監(jiān)控系統(tǒng)。90年代末,隨著多媒體技術(shù)、視頻壓縮編碼技術(shù)、網(wǎng)絡(luò)通訊技術(shù)的發(fā)展,數(shù)字錄像監(jiān)控系統(tǒng)迅速崛起。數(shù)字監(jiān)控錄像系統(tǒng)通常分為兩類(lèi):一類(lèi)是基于PC機(jī)組合的計(jì)算機(jī)多媒體工作方式;另一類(lèi)是嵌入式數(shù)字監(jiān)控錄像系統(tǒng)。1基于PC的視頻監(jiān)控錄像系統(tǒng)的組成結(jié)構(gòu)為:兼容工控PC機(jī)+視頻采集卡+普通較可靠的操作系統(tǒng)平臺(tái)+應(yīng)用軟件從系統(tǒng)的組成結(jié)構(gòu)來(lái)分析:a、PC機(jī)兼容PC機(jī)用于24小時(shí)不間斷工作時(shí),其性能通常是不可靠的,工控PC機(jī)相對(duì)兼容Pc機(jī)的穩(wěn)定性有一個(gè)檔次上的提高,適用于較復(fù)雜的工作環(huán)境;b、操作系統(tǒng)以Windows 98為操作平臺(tái)的系統(tǒng):一般來(lái)說(shuō),Win98的穩(wěn)定性是有一定問(wèn)題的,如果同時(shí)應(yīng)用軟件又不是很規(guī)范,這樣就容易在使用過(guò)程中出現(xiàn)工作穩(wěn)定、死機(jī)等問(wèn)題,而基于PC機(jī)的視頻監(jiān)控錄像系統(tǒng)其軟件的實(shí)現(xiàn)是在Windows 9598NT等通用操作系統(tǒng)上,同時(shí)系統(tǒng)文件、應(yīng)用軟件和圖像文件都存儲(chǔ)在硬盤(pán)上,視頻處理必須高密度輸入大量數(shù)據(jù),同時(shí)硬盤(pán)要進(jìn)行多工工作,普通的硬盤(pán)邏輯(如Windows的FAT32)已無(wú)法適應(yīng),以致極易產(chǎn)生系統(tǒng)的不穩(wěn)定性,造成死機(jī)現(xiàn)象;c、應(yīng)用軟件采用簡(jiǎn)易應(yīng)用軟件的系統(tǒng)是不能夠應(yīng)用安防領(lǐng)域的,視頻監(jiān)控系統(tǒng)的應(yīng)用軟件能力上應(yīng)支持多任務(wù)并發(fā)處理,如監(jiān)視、錄像、回放、備份、報(bào)警、控制等的多工處理能力;d、視頻采集卡視頻監(jiān)控錄像系統(tǒng)通常均為多路輸入系統(tǒng),視頻采集卡可采用多卡方式,也可采用單卡方式。一般說(shuō),單卡方式集成度高,穩(wěn)定性會(huì)優(yōu)于多卡方式,很多采用一路一卡的方式很容易形成硬件沖突,其穩(wěn)定性會(huì)有較大的影響。目前市場(chǎng)上也有部分為追求高幀數(shù)而設(shè)計(jì)采用多卡進(jìn)行迭加的多路單卡設(shè)備,但其仍在計(jì)算機(jī)的總線上進(jìn)行傳輸、處理,PCI總線將是系統(tǒng)的瓶頸,不可能會(huì)有質(zhì)的飛躍。22嵌入方式的數(shù)字監(jiān)控錄像系統(tǒng)嵌入式系統(tǒng)的優(yōu)缺點(diǎn)a、系統(tǒng)為專(zhuān)用系統(tǒng),所以系統(tǒng)小,指令精簡(jiǎn),處理速度快b、系統(tǒng)數(shù)據(jù)置于ROMFLASH MEMORY,調(diào)用速度快,不會(huì)被改變,穩(wěn)定性好C、系統(tǒng)處理實(shí)時(shí)性好,性能穩(wěn)定d、文件管理系統(tǒng)更適合于大量的視頻數(shù)據(jù)e、該類(lèi)系統(tǒng)目前四路以上機(jī)型還較為少見(jiàn)f、在網(wǎng)絡(luò)功能、音視頻同步等方面也難令人滿意。第四代視頻監(jiān)控系統(tǒng)一數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)1數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的原理數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)16J的關(guān)鍵設(shè)備是網(wǎng)絡(luò)視頻信號(hào)采集終端(也被稱(chēng)為視頻服務(wù)器),網(wǎng)絡(luò)視頻信號(hào)采集終端采用嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng)。攝像機(jī)送來(lái)的視頻信號(hào)在網(wǎng)絡(luò)視頻信號(hào)采集終端數(shù)字化后由高效壓縮芯片壓縮,通過(guò)內(nèi)部總線送到網(wǎng)絡(luò)接口發(fā)送到網(wǎng)絡(luò)上l刀,網(wǎng)絡(luò)上用戶可以直接用在PC機(jī)上用瀏覽器觀看網(wǎng)絡(luò)視頻信號(hào)采集終端傳送過(guò)來(lái)的攝像機(jī)所拍攝的圖像,授權(quán)用戶還可以通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)透過(guò)網(wǎng)絡(luò)視頻信號(hào)采集終端控制攝像機(jī)鏡頭和云臺(tái)的動(dòng)作或?qū)ο到y(tǒng)進(jìn)行配置操作。由于把視頻壓縮和網(wǎng)絡(luò)功能集中到一個(gè)體積很小的設(shè)備內(nèi),可以直接連入局域網(wǎng),達(dá)到即插即用,省掉多種復(fù)雜的電纜,安裝方便(僅需設(shè)置一個(gè)坤地址),用戶也無(wú)需安裝任何硬件設(shè)備,僅通過(guò)PC機(jī)用瀏覽器即可觀看。2數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)與其它監(jiān)控系統(tǒng)的比較a、布控區(qū)域廣闊 數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的網(wǎng)絡(luò)視頻信號(hào)采集終端直接連入網(wǎng)絡(luò),沒(méi)有線纜長(zhǎng)度和信號(hào)衰減的限制,同時(shí)網(wǎng)絡(luò)是沒(méi)有距離概念的,徹底拋棄了地域的概念,擴(kuò)展布控區(qū)域。b、系統(tǒng)具有幾乎無(wú)限的無(wú)縫擴(kuò)展能力所有設(shè)備都以IP地址進(jìn)行標(biāo)識(shí),增加設(shè)備只是意味著口地址的擴(kuò)充。c、可組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò)采用基于網(wǎng)絡(luò)視頻信號(hào)采集終端為核心的監(jiān)控系統(tǒng),在組網(wǎng)方式上與傳統(tǒng)的模擬監(jiān)控和基于PC平臺(tái)的監(jiān)控方式有極大的不同,由于視頻信號(hào)采集終端輸出已完成模擬到數(shù)字的轉(zhuǎn)換并壓縮,采用統(tǒng)一的協(xié)議在網(wǎng)絡(luò)上傳輸,支持跨網(wǎng)關(guān)、跨路由器的遠(yuǎn)程視頻傳輸。d、性能穩(wěn)定可靠,無(wú)需專(zhuān)人管理視頻信號(hào)采集終端實(shí)際上基于嵌入式電腦技術(shù),采用嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng),又由于視頻壓縮和網(wǎng)絡(luò)功能集中到一個(gè)體積很小的設(shè)備內(nèi),直接連入局域網(wǎng)或廣域網(wǎng),即插即看,系統(tǒng)的實(shí)時(shí)性、穩(wěn)定性、可靠性大大提高,也無(wú)需專(zhuān)人管理,非常適合于無(wú)人值守的環(huán)境。e、當(dāng)監(jiān)控中心需要同時(shí)觀看較多的攝像機(jī)圖像時(shí),對(duì)網(wǎng)絡(luò)帶寬就會(huì)有一定的要求。2視頻監(jiān)控系統(tǒng)的應(yīng)用概括來(lái)說(shuō),目前視頻監(jiān)控系統(tǒng)應(yīng)用領(lǐng)域主要有以下一些方面:教育系統(tǒng)主要是校園安全監(jiān)控、電子考場(chǎng)監(jiān)控、網(wǎng)絡(luò)教學(xué)、遠(yuǎn)程教育等;電力系統(tǒng)主要是機(jī)房無(wú)人值守、變電站無(wú)人值守、發(fā)電廠安全生產(chǎn)管理監(jiān)控等;公檢法系統(tǒng)主要是社區(qū)監(jiān)控、城市安全監(jiān)控、監(jiān)獄安全監(jiān)控、庭審直播等;部隊(duì)系統(tǒng)主要是通信機(jī)房監(jiān)控、作戰(zhàn)指揮系統(tǒng)、倉(cāng)儲(chǔ)物資監(jiān)控、基層連隊(duì)的日常管理監(jiān)控系統(tǒng)等;石化系統(tǒng)主要是油井監(jiān)控、儲(chǔ)油庫(kù)監(jiān)控、加油站監(jiān)控、石化工廠安全生產(chǎn)監(jiān)控等;銀行系統(tǒng)主要是銀行監(jiān)控系統(tǒng)的聯(lián)網(wǎng)、儲(chǔ)蓄監(jiān)控、金庫(kù)監(jiān)控等;鐵路系統(tǒng)主要是站內(nèi)調(diào)度管理系統(tǒng)(視頻部分)、站內(nèi)安全管理、應(yīng)急指揮系統(tǒng)等;稅務(wù)系統(tǒng)主要是報(bào)稅服務(wù)大廳監(jiān)控;鋼鐵系統(tǒng)主要是安全生產(chǎn)管理監(jiān)控系統(tǒng);醫(yī)療系統(tǒng)主要是特護(hù)病房視頻監(jiān)控、手術(shù)直播及教學(xué)系統(tǒng)、日常安全管理監(jiān)控等。本文主要研討該系統(tǒng)的軟件實(shí)現(xiàn)部分3、總體設(shè)計(jì) 嵌入式Linux視頻網(wǎng)絡(luò)監(jiān)控系統(tǒng)是電工電子裝置、計(jì)算機(jī)軟硬件以及網(wǎng)絡(luò)、通信等多方面的有機(jī)組合體,它以智能化、網(wǎng)絡(luò)化、交互性為特征,結(jié)構(gòu)比較復(fù)雜。如果利用OSI七層模型的內(nèi)容和形式,把相應(yīng)的數(shù)據(jù)采集控制模塊硬件和應(yīng)用軟件以及應(yīng)用環(huán)境等有機(jī)組合,可以形成一個(gè)統(tǒng)一的系統(tǒng)總體框架,其系統(tǒng)總體框架示意圖如圖l所示。系統(tǒng)總體框架示意圖攝像機(jī)傳送來(lái)的視頻信號(hào)數(shù)字化后,經(jīng)過(guò)壓縮,通過(guò)RS-232/RS485將數(shù)據(jù)送到內(nèi)置的Web服務(wù)器,嵌入式LJnux系統(tǒng)的 10/100M以太網(wǎng)口實(shí)現(xiàn)接入Internet網(wǎng)絡(luò),將現(xiàn)場(chǎng)信號(hào)送到客戶端。整個(gè)系統(tǒng)的核心是嵌入式Linux系統(tǒng)。監(jiān)控系統(tǒng)啟動(dòng)后,嵌入式Linux 系統(tǒng)啟動(dòng)Web Server服務(wù)程序,接收授權(quán)客戶端瀏覽器的請(qǐng)求,Web Server將根據(jù)通信協(xié)議完成相應(yīng)的監(jiān)測(cè)。3.1硬件設(shè)計(jì)方案系統(tǒng)硬件結(jié)構(gòu)如圖1 所示,該系統(tǒng)采用Samsung 公司的ARM9 內(nèi)核芯片S3C2440作為硬件平臺(tái)的中央處理器,該處理器主頻可達(dá)400MHz,硬件接口和資源豐富,存儲(chǔ)單元包括Flash 和SDRAM,F(xiàn)lash 具有掉電保持?jǐn)?shù)據(jù)的特性,用于存儲(chǔ)Bootloader 啟動(dòng)程序、Linux 內(nèi)核映像、文件系統(tǒng)以及用戶應(yīng)用程序等。SDRAM 數(shù)據(jù)存取速度大大高于Flash 存儲(chǔ)器,用于為操作系統(tǒng)和應(yīng)用程序提供運(yùn)行空間。平臺(tái)利用RS232 接口輸出調(diào)試信息,通過(guò)以太網(wǎng)控制器芯片DM9000 擴(kuò)展了一個(gè)網(wǎng)口,用于與外部網(wǎng)絡(luò)進(jìn)行通信,通過(guò)USB HOST 接口連接USB 攝像頭采集圖像數(shù)據(jù),經(jīng)處理器壓縮并打包成視頻流后經(jīng)以太網(wǎng)進(jìn)行傳輸,終端用戶接收到視頻流,解碼后即可把視頻圖像顯示出來(lái)。圖1 系統(tǒng)硬件結(jié)構(gòu)圖3.2軟件設(shè)計(jì)方案軟件平臺(tái)采用的嵌入式操作系統(tǒng)為L(zhǎng)inux 2.6.13,Linux 具有內(nèi)核小、效率高、源碼開(kāi)放、內(nèi)核直接提供網(wǎng)絡(luò)支持等優(yōu)點(diǎn),但嵌入式系統(tǒng)的硬件資源有限,因此需根據(jù)實(shí)際需求對(duì)內(nèi)核進(jìn)行裁剪,配置所需的功能模塊,然后再移植到硬件平臺(tái)上。嵌入式系統(tǒng)的軟件開(kāi)發(fā)采用交叉編譯調(diào)試的方式,在宿主機(jī)上安裝Linux 系統(tǒng),建立交叉編譯環(huán)境,在宿主機(jī)編寫(xiě)程序代碼,再利用交叉編譯工具生成目標(biāo)機(jī)上可用的可執(zhí)行文件,最后向目標(biāo)機(jī)平臺(tái)移植。3.2.1 視頻采集模塊視頻采集模塊通過(guò)嵌入式Linux 操作系統(tǒng)調(diào)用Video4Linux(V4L)5和底層設(shè)備驅(qū)動(dòng)程序來(lái)完成視頻捕獲。V4L 是Linux 中關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動(dòng),它為L(zhǎng)inux 下的各種視頻設(shè)備提供了統(tǒng)一的編程接口,應(yīng)用程序通過(guò)這些接口函數(shù)就可以操縱各種不同的設(shè)備。視頻采集流程如圖2 所示。圖2 視頻采集流程(1)打開(kāi)視頻設(shè)備。Linux 下的視頻設(shè)備文件一般為“/dev/video0”,通過(guò)調(diào)用函數(shù)v4l_open( ),利用vd-fd=open(“/dev/video0”,O_RDWR)打開(kāi)設(shè)備并獲得設(shè)備文件描述符vd-fd。(2) 獲取設(shè)備和圖像信息。通過(guò)v4l_get_capability( ) 函數(shù)獲取設(shè)備信息, 通過(guò)v4l_get_picture( )函數(shù)獲取圖像信息。(3)內(nèi)存映射。獲取圖像的方式有兩種:read( )直接讀取和mmap( )內(nèi)存映射。直接讀取方式通過(guò)內(nèi)核緩沖區(qū)來(lái)讀取圖像數(shù)據(jù),而本文使用內(nèi)存映射方式mmap( ),內(nèi)存映射方式可以直接把設(shè)備文件映射到內(nèi)存中,進(jìn)程可以像訪問(wèn)普通內(nèi)存一樣對(duì)文件進(jìn)行訪問(wèn),讀取效率更高。初始化內(nèi)存映射時(shí),需在內(nèi)存中開(kāi)辟一塊空間,利用ioctl(vd-fd,VIDIOCGMBUF,&(vd-mbuf)操作取得需要映射的內(nèi)存空間大小vd-mbuf.size,利用mmap( )函數(shù),即vd-map=(unsigned char*) mmap(0, vd-mbuf.size, PROT_READ | PROT_WRITE,MAP_SHARED, vd-fd, 0)操作,把設(shè)備文件的內(nèi)容映射到內(nèi)存,vd-map 指針?biāo)赶虻膬?nèi)存區(qū)即為采集的圖像數(shù)據(jù),且此內(nèi)存區(qū)具有可讀寫(xiě)和共享屬性。(4)初始化采集參數(shù)。設(shè)置采集視頻圖像的寬度、高度、格式等信息。(5)采集視頻數(shù)據(jù)。利用ioctl(vd-fd, VIDIOCMCAPTURE, &(vd-mmap)操作采集一幀圖像并存放到內(nèi)存映射區(qū),采集一幀圖像后要進(jìn)行同步操作,利用ioctl(vd-fd, VIDIOCSYNC,&(vd- frame_current)操作判斷該幀圖像是否獲取完畢。對(duì)于獲取到的視頻圖像,通過(guò)視頻壓縮模塊壓縮成MPEG-4 視頻流,再通過(guò)視頻傳輸模塊把數(shù)據(jù)發(fā)送到以太網(wǎng)進(jìn)行傳輸。3.2.2 視頻壓縮模塊從攝像頭直接采集過(guò)來(lái)的圖像由于數(shù)據(jù)量較大,不利于進(jìn)行網(wǎng)絡(luò)傳輸,因此需先對(duì)其進(jìn)行壓縮編碼。MPEG-4 是目前網(wǎng)絡(luò)多媒體傳輸?shù)闹饕袷?,具有高效的壓縮率,它利用很窄的帶寬,通過(guò)幀重建技術(shù)來(lái)壓縮圖像數(shù)據(jù),以求利用最少的數(shù)據(jù)獲得最佳的圖像質(zhì)量,可滿足實(shí)時(shí)視頻傳輸?shù)囊蟆1疚挠密浖绞竭M(jìn)行視頻編碼,選擇開(kāi)源高效的Xvid 視頻編碼器對(duì)采集的視頻圖像數(shù)據(jù)進(jìn)行MPEG-4 壓縮編碼。Xvid 視頻編碼器選用0.9.2 版本,因?yàn)樵摪姹疽呀?jīng)實(shí)現(xiàn)了MPEG-4 的Simple Profile(SP)特性,而1.0 以后的版本增加了很多Advanced SP(ASP)特性及其他功能,ASP 特性的加入會(huì)增加運(yùn)算復(fù)雜度,降低編碼速度,由于嵌入式系統(tǒng)的處理能力有限,一般只使用Xvid 的SP 特性,因此實(shí)驗(yàn)選用Xvid0.9.2 編碼器,交叉編譯并移植到嵌入式系統(tǒng)內(nèi)。在宿主機(jī)Linux 操作系統(tǒng)中對(duì)Xvid0.9.2 進(jìn)行交叉編譯的步驟如下:(1) 解壓縮Xvid 源碼:tar xzvf xvidcore- 0.9.2.tar.gz(2) 進(jìn)入build/generic 目錄,創(chuàng)建編譯配置文件。由于Xvid 沒(méi)有針對(duì)ARM 的匯編優(yōu)化,因此編譯時(shí)需將匯編關(guān)閉;還需指定程序所運(yùn)行的平臺(tái)為arm-linux。執(zhí)行命令:./configure -disable-assembly -host=arm-linux(3) 編譯:make; make install 。(4) 交叉編譯完成后會(huì)生成靜態(tài)庫(kù)libxvidcore.a 和動(dòng)態(tài)庫(kù)libxvidcore.so.*,用戶程序可利用庫(kù)文件所提供的編程接口調(diào)用Xvid 里面的函數(shù)。攝像頭采集的視頻幀為YUV420 格式,通過(guò)Xvid 編碼器的encoder_encode 函數(shù)實(shí)現(xiàn)視頻壓縮,該函數(shù)定義如下:int encoder_encode(Encoder * pEnc, XVID_ENC_FRAME * pFrame, XVID_ENC_STATS *pResult);其中,pEnc 為編碼器實(shí)例的句柄;pFrame 是XVID_ENC_FRAME 類(lèi)型的結(jié)構(gòu)體變量,負(fù)責(zé)傳遞參數(shù)信息給編碼器,這些信息包含色彩空間、編碼質(zhì)量、輸入輸出數(shù)據(jù)緩沖區(qū)指針等;pResult 是XVID_ENC_STATS 類(lèi)型的結(jié)構(gòu)體變量,可以返回編碼操作執(zhí)行的狀態(tài)信息。3.2.3 視頻傳輸模塊視頻傳輸模塊負(fù)責(zé)把壓縮后的視頻流傳輸?shù)揭蕴W(wǎng),對(duì)實(shí)時(shí)性要求較高,本文使用實(shí)時(shí)傳輸協(xié)議(Real-time Transport Protocol,RTP),它可以在一對(duì)一或者一對(duì)多的網(wǎng)絡(luò)環(huán)境中實(shí)現(xiàn)流媒體數(shù)據(jù)的實(shí)時(shí)傳輸。JRTPLIB7是一個(gè)利用C+語(yǔ)言實(shí)現(xiàn)的開(kāi)源RTP 庫(kù),它完全遵循RFC 1889 設(shè)計(jì),使用SOCKET 機(jī)制實(shí)現(xiàn)網(wǎng)絡(luò)通訊,可運(yùn)行于包括Linux 和Windows 在內(nèi)的多種不同操作系統(tǒng)上。本文使用JRTPLIB 進(jìn)行實(shí)時(shí)流媒體編程,發(fā)送端操作系統(tǒng)為L(zhǎng)inux,接收端為Windows。在Linux 平臺(tái)上用JRTPLIB 進(jìn)行實(shí)時(shí)多媒體編程前,需先對(duì)JRTPLIB 進(jìn)行交叉編譯。(1) JRTPLIB 初始化通過(guò)調(diào)用RTPSessionParams 類(lèi)的SetOwnTimestampUnit( )方法設(shè)置一個(gè)恰當(dāng)?shù)臅r(shí)間戳,調(diào)用 SetMaximumPacketSize( )方法設(shè)置允許傳輸?shù)淖畲驲TP 包字節(jié)數(shù)(默認(rèn)為1400 字節(jié));通過(guò)調(diào)用RTPUDPv4TransmissionParams 類(lèi)的SetPortbase( )方法設(shè)置發(fā)送端數(shù)據(jù)傳輸所用的端口號(hào)(需為偶數(shù))。初始化完這兩個(gè)變量后,通過(guò)RTPSession 類(lèi)的Create( )方法創(chuàng)建一個(gè)RTP 會(huì)話。(2) JRTPLIB 數(shù)據(jù)傳輸RTP 會(huì)話創(chuàng)建完成后,還需指定數(shù)據(jù)發(fā)送的目標(biāo)地址,RTP 協(xié)議允許一個(gè)會(huì)話包含多個(gè)目標(biāo)地址, 增加或刪除目標(biāo)地址可通過(guò)RTPSession 類(lèi)的AddDestination( ) 、DeleteDestination( )、ClearDestinations( )方法來(lái)實(shí)現(xiàn)。目標(biāo)地址指定之后,通過(guò)RTPSession 類(lèi)的SendPacket( )方法即可向指定的目標(biāo)地址發(fā)送流媒體數(shù)據(jù)。SendPacket( )是一個(gè)重載函數(shù),具有多種形式,本文使用的形式為:int SendPacket(const void *data, size_t len, uint8_t pt, bool mark, uint32_t timestampinc);當(dāng)一幀數(shù)據(jù)所占字節(jié)數(shù)大于允許傳輸?shù)淖畲驲TP 包字節(jié)數(shù)MaxPacketSize 時(shí),需對(duì)一幀數(shù)據(jù)進(jìn)行分割傳輸,使每次發(fā)送的字節(jié)數(shù)不大于MaxPacketSize,可使用SendPacket( )的mark參數(shù)來(lái)標(biāo)識(shí)傳輸?shù)腞TP 包是否屬于同一幀數(shù)據(jù),若一幀數(shù)據(jù)需分成N 次發(fā)送,則前N-1 次發(fā)送的RTP 包的mark 標(biāo)志設(shè)為0,第N 次發(fā)送的RTP 包的mark 標(biāo)志設(shè)為1,即以mark=1來(lái)判斷分割傳輸?shù)臄?shù)據(jù)是否發(fā)送完成。實(shí)現(xiàn)過(guò)程如下:doif(lengthMaxPacketSize)mark=0;發(fā)送長(zhǎng)度為MaxPacketSize 的RTP 包;length=length-MaxPacketSize;elsemark=1;發(fā)送長(zhǎng)度為length 的RTP 包;break; /一幀數(shù)據(jù)發(fā)送完成while(1);(3) JRTPLIB 數(shù)據(jù)接收接收數(shù)據(jù)時(shí),以BeginDataAccess( )函數(shù)開(kāi)始,以EndDataAccess( )函數(shù)結(jié)束。為了能正確接收同一數(shù)據(jù)源的數(shù)據(jù)報(bào),必須先對(duì)數(shù)據(jù)源表(source table)加鎖,BeginDataAccess( )函數(shù)可實(shí)現(xiàn)這一加鎖操作,確保在使用數(shù)據(jù)源表的同時(shí)輪詢(xún)(poll)線程不能訪問(wèn)它,此時(shí)可進(jìn)行數(shù)據(jù)接收操作,當(dāng)正確接收一個(gè)數(shù)據(jù)報(bào)后,調(diào)用EndDataAccess( )函數(shù)即可實(shí)現(xiàn)對(duì)數(shù)據(jù)源表的解鎖。圖3 RTP 發(fā)送與接收流程圖RTP 發(fā)送與接收流程圖如圖3 所示。對(duì)于分割傳輸?shù)腞TP 包,根據(jù)RTP 包的mark 標(biāo)志來(lái)判斷一幀數(shù)據(jù)是否接收完成,若mark=0,則表示此RTP 包為分割傳輸?shù)臄?shù)據(jù)包,需循環(huán)接收直到mark=1 為止,然后把這些RTP 包重新組合成完整的一幀數(shù)據(jù)。3.2.4 視頻解碼與回放接收到的視頻流數(shù)據(jù)經(jīng)過(guò)Xvid 解碼器的decoder_decode 函數(shù)進(jìn)行解碼,該函數(shù)定義如下:int decoder_decode(DECODER * dec, XVID_DEC_FRAME * frame);其中,dec 為解碼器實(shí)例的句柄,frame 為XVID_DEC_FRAME 結(jié)構(gòu)體變量,包含解碼前后圖像數(shù)據(jù)的緩沖區(qū)指針、碼流長(zhǎng)度等信息。解碼后的圖像可在客戶端軟件上顯示出來(lái)。4、展望與小結(jié)在今后的工作中,需要對(duì)視頻采集模塊繼續(xù)優(yōu)化,因?yàn)閿z像頭采集的圖像信息還不是很流暢,希望通過(guò)移植QT界面,來(lái)優(yōu)化圖像的傳輸,其次,網(wǎng)絡(luò)攝像機(jī)是當(dāng)今比較熱門(mén)的產(chǎn)品,我們雖然實(shí)現(xiàn)了遠(yuǎn)程監(jiān)控,但是相關(guān)技術(shù)還有待與優(yōu)化,對(duì)服務(wù)器、客戶端之間的編程模式還不是很熟悉,需要進(jìn)一步學(xué)習(xí),另外,設(shè)計(jì)中采用的ARMg芯片功能比較強(qiáng)大,接口比較豐富,在以后的實(shí)際工作中可以根據(jù)自己的需要,可以進(jìn)行更加有效的擴(kuò)展。未來(lái)的視頻監(jiān)控系統(tǒng)應(yīng)該具有智能化的特點(diǎn),能夠自行對(duì)異常情況進(jìn)行判斷,并發(fā)出報(bào)警,這就需要合適的運(yùn)動(dòng)檢測(cè)算法對(duì)監(jiān)控圖像進(jìn)行分析判斷。另外未來(lái)的視頻監(jiān)控系統(tǒng)還可具有安防互動(dòng)功能,與各種傳感器、控制器連接,實(shí)現(xiàn)自動(dòng)目標(biāo)跟蹤等功能。在網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的未來(lái)發(fā)展空間中,這些功能的實(shí)現(xiàn)是有充分技術(shù)保障的。而且隨著技術(shù)的發(fā)展和成熟,視頻監(jiān)控系統(tǒng)的成本也應(yīng)該進(jìn)一步的降低,一世英更廣泛領(lǐng)域的需要。由于我們都屬于初學(xué)者,雖然最終實(shí)現(xiàn)了這些功能,但是對(duì)中間相關(guān)的一些模塊開(kāi)發(fā),比如驅(qū)動(dòng)等等還不太了解,只是做了部分修改,還有待于進(jìn)一步學(xué)習(xí)掌握,論文的撰寫(xiě)可能有某些不足,望老師指正。襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司登山自駕游活動(dòng)方案
- 公司短期旅游活動(dòng)方案
- 2025年信息技術(shù)與產(chǎn)業(yè)發(fā)展考試試卷及答案
- 2025年心理醫(yī)生職業(yè)倫理考試試卷及答案
- 2025年生命科學(xué)基礎(chǔ)知識(shí)考試試卷及答案
- 2025年健康管理與慢性病防控考試試題及答案
- 2025年科技創(chuàng)新與知識(shí)產(chǎn)權(quán)管理考試試題及答案
- 2025年家庭教師資格考試試卷及答案
- 2025年護(hù)理學(xué)課程公共衛(wèi)生防疫基礎(chǔ)知識(shí)考試試卷及答案
- 2025年非營(yíng)利組織發(fā)展助理考試試題及答案
- NBA-PPT簡(jiǎn)介(文字圖片技巧)
- 一例壓力性損傷的個(gè)案護(hù)理
- 初高中生物銜接課件
- 高壓電動(dòng)機(jī)預(yù)防性試驗(yàn)課件
- 2022-2023學(xué)年北京市西城區(qū)部編版五年級(jí)下冊(cè)期末考試語(yǔ)文試卷
- 副舟骨損傷查房
- 女性領(lǐng)導(dǎo)力智慧樹(shù)知到課后章節(jié)答案2023年下山東女子學(xué)院
- 沖壓成型精密五金機(jī)構(gòu)件生產(chǎn)QC工程圖
- 工程量確認(rèn)單范本
- 抖音直播運(yùn)營(yíng)團(tuán)隊(duì)薪酬績(jī)效考核管理方案(直播帶貨團(tuán)隊(duì)薪酬績(jī)效提成方案)
- 2022-2023學(xué)年遼寧省大連市沙河口區(qū)數(shù)學(xué)五下期末復(fù)習(xí)檢測(cè)模擬試題含答案
評(píng)論
0/150
提交評(píng)論