基于Linux、QT的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--畢業(yè)論文_第1頁(yè)
基于Linux、QT的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--畢業(yè)論文_第2頁(yè)
基于Linux、QT的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--畢業(yè)論文_第3頁(yè)
基于Linux、QT的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--畢業(yè)論文_第4頁(yè)
基于Linux、QT的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩39頁(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)介

1、本科學(xué)生畢業(yè)論文(設(shè)計(jì))題目(中 文: 基于Linux 、QT 的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) (英 文:姓 名 學(xué) 號(hào) 院 (系) 專業(yè)、年級(jí) 指導(dǎo)教師XXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX2014年 5 月 8 日湖南科技學(xué)院本科畢業(yè)論文(設(shè)計(jì))誠(chéng)信聲明本人鄭重聲明:所呈交的本科畢業(yè)論文(設(shè)計(jì)),是本人在指導(dǎo)老師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果,成果不存在知識(shí)產(chǎn)權(quán)爭(zhēng)議,除文中已經(jīng)注明引用的內(nèi)容外,本論文不含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫(xiě)過(guò)的作品成果。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律結(jié)果由本人

2、承擔(dān)。本科畢業(yè)論文(設(shè)計(jì))作者簽名:年 月 日 畢業(yè)論文(設(shè)計(jì))任務(wù)書(shū)課題名稱: 基于Linux 、QT 的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 學(xué)生姓名: XXXX 系 別: XXXXXXXX 專 業(yè): XXXXXXXX 指導(dǎo)教師:XXX日湖南科技學(xué)院本科畢業(yè)論文(設(shè)計(jì))任務(wù)書(shū) A注:本任務(wù)書(shū)一式三份,由指導(dǎo)教師填寫(xiě),經(jīng)教研室審批后一份下達(dá)給學(xué)生,一份交指導(dǎo)教師,一份留系里存檔。B 湖南科技學(xué)院畢業(yè)論文(設(shè)計(jì))中期檢查表 注:此表用于指導(dǎo)教師在學(xué)生畢業(yè)論文(設(shè)計(jì))初稿完成后對(duì)學(xué)生執(zhí)行任務(wù)書(shū)情況進(jìn)行中期檢查時(shí)用,由指導(dǎo)教師填寫(xiě)。湖南科技學(xué)院畢業(yè)設(shè)計(jì)(論文)指導(dǎo)過(guò)程記錄表 H I 秀,8089分記為良好,7

3、079分記為中等,6069分記為及格,60分以下記為不及格。J 秀,8089分記為良好,7079分記為中等,6069分記為及格,60分以下記為不及格。K 湖南科技學(xué)院本科畢業(yè)論文(設(shè)計(jì))答辯記錄表 L 目 錄緒論 . . 11 基于Linux 、QT 的視頻監(jiān)控系統(tǒng)概述 . . 41.1 視頻監(jiān)控系統(tǒng)的組成 . . 41.2 開(kāi)發(fā)環(huán)境簡(jiǎn)介 . . 41.2.1 Linux環(huán)境簡(jiǎn)介 . 41.2.2 QT技術(shù)簡(jiǎn)介 . 41.2.3 V4L2編程技術(shù)簡(jiǎn)介 . 52 系統(tǒng)總體設(shè)計(jì)概述 . . 72.1 分析系統(tǒng)需求 . . 72.2 系統(tǒng)的軟件結(jié)構(gòu)及整體框架 . . 72.2.1 整體結(jié)構(gòu)框圖 .

4、. 72.2.2 模塊的功能分析 . . 83 系統(tǒng)中各模塊功能的具體實(shí)現(xiàn) . . 93.1 服務(wù)器:數(shù)據(jù)采集部分 . . 93.1.1 模塊功能描述 . . 93.1.2 技術(shù)概要 . . 93.1.3 邏輯概要及流程圖 . . 103.2 服務(wù)器:數(shù)據(jù)處理 . . 173.2.1 模塊功能描述 . . 173.2.2 技術(shù)概要 . . 173.2.3 邏輯概要及程序流程圖 . . 173.3 客戶端:數(shù)據(jù)獲取 . . 193.3.1 模塊功能描述 . . 193.3.2 技術(shù)概要 . . 193.3.3 邏輯概要及流程圖 . . 193.4 客戶端:QT 視頻渲染 . 213.4.1 模塊

5、功能描述 . . 213.4.2 技術(shù)概要 . . 223.4.3 邏輯概要及流程圖 . . 224 視頻監(jiān)控系統(tǒng)測(cè)試 . . 234.1 系統(tǒng)測(cè)試目標(biāo) . . 234.2 系統(tǒng)測(cè)試過(guò)程 . . 234.3 系統(tǒng)測(cè)試結(jié)果 . . 25結(jié)論 . . 26參考文獻(xiàn) . . 27致 謝 . . 28插圖索引圖1 視頻監(jiān)控系統(tǒng)結(jié)構(gòu)圖 . . 7圖2 服務(wù)器(server )端視頻數(shù)據(jù)采集流程 . 10圖3 打開(kāi)USB 攝像頭設(shè)備流程圖 . 11圖4 查詢視頻設(shè)備信息流程圖 . . 12圖5 設(shè)置視頻采集方式流程圖 . . 13圖6 申請(qǐng)緩沖區(qū)流程圖 . . 14圖7 緩沖區(qū)設(shè)置流程圖 . . 15圖8

6、 視頻數(shù)據(jù)處理流程圖 . . 16圖9 服務(wù)器端數(shù)據(jù)處理流程圖 . . 18圖10 服務(wù)器端數(shù)據(jù)幀封裝結(jié)構(gòu)圖 . . 19圖11 服務(wù)器與客戶端TCP 網(wǎng)絡(luò)編程流程圖 . . 20圖12 客戶端的數(shù)據(jù)分割流程圖 . . 21圖13 客戶端視頻渲染模塊流程圖 . . 22圖14 啟動(dòng)系統(tǒng)效果圖(左:客戶端,右:服務(wù)端) . . 24圖15 客戶端準(zhǔn)備連接時(shí)效果圖(左:客戶端,右:服務(wù)端) . . 24圖16 系統(tǒng)網(wǎng)絡(luò)連接后效果圖(左:客戶端,右:服務(wù)端) . . 25基于Linux 、QT 的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要隨著社會(huì)的網(wǎng)絡(luò)技術(shù)的不斷更新,計(jì)算機(jī)多媒體應(yīng)用技術(shù)及網(wǎng)絡(luò)技術(shù)方面的發(fā)展之迅

7、速是有目共睹的,在銀行,商場(chǎng)監(jiān)控,城市交通管理,酒店等安全保衛(wèi)方面,視頻監(jiān)控系統(tǒng)的市場(chǎng)需求量大幅度上升,市場(chǎng)上出現(xiàn)了多種圖像采集和傳輸?shù)漠a(chǎn)品,視頻監(jiān)控系統(tǒng)的發(fā)展趨勢(shì)必然是數(shù)字化,網(wǎng)絡(luò)化,即采用嵌入式網(wǎng)絡(luò)攝像機(jī),利用嵌入式監(jiān)控設(shè)備體積小巧,性能穩(wěn)定,通訊便利等特點(diǎn)。在我國(guó)現(xiàn)階段,流媒體技術(shù)以及嵌入式網(wǎng)絡(luò)視頻監(jiān)控技術(shù)的研發(fā)還不夠成熟,大多是針對(duì)那些大,中型工程所開(kāi)發(fā)的視頻監(jiān)控系統(tǒng)。但是對(duì)于小型的場(chǎng)所來(lái)說(shuō),成本太高,視頻監(jiān)控系統(tǒng)的功能復(fù)雜。因此我們可以設(shè)計(jì)一種低成本的,簡(jiǎn)便的,新型的視頻監(jiān)控系統(tǒng)針對(duì)上述用戶群。這是一項(xiàng)非常有意義的工程。視頻監(jiān)控系統(tǒng)的設(shè)計(jì)論文主要介紹了整個(gè)系統(tǒng)的開(kāi)發(fā)流程,運(yùn)用模塊化分

8、析設(shè)計(jì)的方法,采用各個(gè)模塊程序流程圖對(duì)整個(gè)系統(tǒng)的設(shè)計(jì)以及實(shí)現(xiàn)進(jìn)行詳細(xì)的說(shuō)明,全文共分為緒論、系統(tǒng)的總體設(shè)計(jì)、各模塊的具體功能實(shí)現(xiàn)、視頻監(jiān)控系統(tǒng)的測(cè)試以及結(jié)論這五個(gè)部分。利用v4l2進(jìn)行數(shù)據(jù)采集,基于TCP 編程和多線程編程對(duì)數(shù)據(jù)進(jìn)行處理,QT 技術(shù)來(lái)實(shí)現(xiàn)客戶端程序。視頻數(shù)據(jù)的發(fā)送是采用HTTP 協(xié)議,Linux 系統(tǒng)下C 語(yǔ)言編程實(shí)現(xiàn)的?!娟P(guān)鍵詞】:Linux QT 技術(shù) v4l2編程 http 協(xié)議Design and implementation of video monitoring system basedon Linux and QTAbstractAlong with the so

9、cial network technology unceasing renewal, computer multimedia application technology and network technology aspects of the rapid development of is be obvious to all.in banks, shopping malls monitoring, urban traffic management, security and other aspects of the hotel. Market demand for video survei

10、llance systemincreased significantly. Appeared on the market a variety of image acquisition and transmission products, the development trend of video surveillance system must be digital, network, and the use of embedded network camera. With the embedded monitoring equipment compact, stable performan

11、ce, communication facilities and so on.At the present stage of our country, research and development of streaming media technology and the embedded network video monitoring technology is not mature enough, mostly in those big, video monitoring system and medium engineering development. But for a sma

12、ll place, the cost is too high, the video monitoring system with complex functions. Therefore, we according to the user group, can design a simple, low cost, video monitoring system model. This is a very meaningful project.This paper mainly introduces the system development process, the use of the d

13、esign method of modularization analysis, the program flow chart of each module of the system design and implementation are described in detail, the full text is divided into introduction, the overall design of the system, each module of the specific function realization of video monitoring system, a

14、nd the conclusion of this test the five part. Data collection by v4l2, TCP and multi thread programming for data processing based on QT technology to realize the client program. Sending video data is using HTTP protocol, the Linux system under the C programming language.【Key words】 Linux QT Technolo

15、gy v4l2 Programming http Protocol V緒論Linux 是一個(gè)基于Unix 的操作系統(tǒng),它也是Unix 家族的一元,與Unix 不同的是,它可以運(yùn)行在不同的硬件平臺(tái)上,它于1991年誕生于芬蘭的一個(gè)大學(xué)生Linus Tor v alds 手中,不過(guò)當(dāng)時(shí)還只是一個(gè)雛形,為了不讓自己的這個(gè)羽翼未滿的操作系統(tǒng)夭折,Linus 將自己的作品Linux 通過(guò)Internet 發(fā)布,從此大量的一批知名的、不知名的編程人員以及電腦黑客加入到Linux 系統(tǒng)的開(kāi)發(fā)過(guò)程中來(lái),Linux 就這樣的逐漸成長(zhǎng)起來(lái)了1。到目前為止,Linux 的內(nèi)核已經(jīng)發(fā)展到了3.14,并在次基礎(chǔ)上發(fā)展了

16、數(shù)十種發(fā)行版,其中有經(jīng)過(guò)長(zhǎng)期發(fā)展洗禮的Redhat(Fedora,也有發(fā)展迅猛使用方便的Ubuntu 。在流媒體技術(shù)的發(fā)展中,視頻技術(shù)的發(fā)展越來(lái)越迅速,大量應(yīng)用于安防與教育事業(yè),比如在遠(yuǎn)程視頻教育、在線遠(yuǎn)程視頻會(huì)議、醫(yī)療、各種場(chǎng)所的視頻監(jiān)控以及危險(xiǎn)區(qū)域的探測(cè)等方面。Linux 操作系統(tǒng)在發(fā)展的過(guò)程具備了很好的網(wǎng)絡(luò)性能。Linux 系統(tǒng)下提供了非常豐富的開(kāi)源軟件和視頻支持,支持各種硬件平臺(tái),因此Linux 平臺(tái)成為了視頻采集的最佳平臺(tái)。Linux 系統(tǒng)上的軟件開(kāi)發(fā)具有高可靠性、低成本、高度自動(dòng)化、高可配置性、及低耗費(fèi)等一些優(yōu)點(diǎn),同時(shí)能夠很好的完成多任務(wù)和實(shí)時(shí)性的設(shè)計(jì)需求。我國(guó)資深嵌入式系統(tǒng)專家沈

17、緒榜院士曾預(yù)言:“未來(lái)十年將會(huì)產(chǎn)生針頭大小,具有超過(guò)一億次運(yùn)算能力的嵌入式智能芯片”。這些將為我們的開(kāi)發(fā)提供了相當(dāng)大的創(chuàng)造空間。中國(guó)應(yīng)當(dāng)注意發(fā)展這一智力密集型產(chǎn)業(yè)”。綜上所述,嵌入式Linux 操作系統(tǒng)在廣泛和深入的應(yīng)用于各個(gè)領(lǐng)域,應(yīng)用的技術(shù)也越來(lái)越復(fù)雜。針對(duì)基于網(wǎng)絡(luò)傳輸?shù)囊曨l監(jiān)控系統(tǒng)的實(shí)際需求與應(yīng)用,結(jié)合視頻的圖像采集技術(shù)與編碼技術(shù),嵌入式Linux 操作系統(tǒng)和網(wǎng)絡(luò)編程技術(shù)等多方面的新興技術(shù),設(shè)計(jì)的一套Linux 網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng),用來(lái)進(jìn)行視頻數(shù)據(jù)的采集、視頻數(shù)據(jù)的壓縮編碼與解碼以及視頻的網(wǎng)絡(luò)傳輸,該系統(tǒng)基于Linux 操作系統(tǒng)進(jìn)行開(kāi)發(fā)的,從USB 攝像頭捕捉視頻數(shù)據(jù),QT 實(shí)現(xiàn)客戶端和服務(wù)

18、器端,即可查看遠(yuǎn)程視頻影像。論文的目的及意義:視頻監(jiān)控系統(tǒng)的設(shè)計(jì)主要說(shuō)明視頻監(jiān)控系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)。介紹了系統(tǒng)中各個(gè)模塊的設(shè)計(jì)與模塊功能的實(shí)現(xiàn)以及應(yīng)用的相關(guān)技術(shù)。在論文中,我將會(huì)對(duì)每一個(gè)模塊的設(shè)計(jì)以及實(shí)現(xiàn)方法給出簡(jiǎn)單的文字說(shuō)明以及設(shè)計(jì)的流程圖。我寫(xiě)這篇論文的主要是學(xué)習(xí)熟悉基于TCP/IP網(wǎng)絡(luò)的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的基本知識(shí)和相關(guān)的多媒體開(kāi)發(fā)技術(shù)。隨著4G 通訊時(shí)代的到來(lái),我們更可以將視頻監(jiān)控客戶端發(fā)展到移動(dòng)終端,這將使我們更加方便。項(xiàng)目背景及未來(lái)發(fā)展應(yīng)用方向:縱觀視頻監(jiān)控的研究進(jìn)展,從閉路電視系統(tǒng)構(gòu)建的模擬系統(tǒng)、經(jīng)歷了數(shù)字信號(hào)控制的模擬視頻監(jiān)控系統(tǒng)、過(guò)渡到數(shù)字硬盤(pán)錄像設(shè)備為核心的視頻監(jiān)控系統(tǒng)和當(dāng)

19、代的數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)這幾大重要階段。數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)與其它監(jiān)控系統(tǒng)的優(yōu)點(diǎn):a 、布控區(qū)域廣闊數(shù)字網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)是可以超越地域的限制的,可以延伸整個(gè)需要布控區(qū)域,這是因?yàn)樗鼘⒕W(wǎng)絡(luò)視頻信號(hào)采集終端直接連入網(wǎng)絡(luò),并且能夠解除信號(hào)的衰減和纜線長(zhǎng)度的局限性,而且網(wǎng)絡(luò)是不受距離長(zhǎng)短的影響。b 、系統(tǒng)具有幾乎無(wú)限的無(wú)縫擴(kuò)展能力需要增加設(shè)備時(shí)只要將IP 地址進(jìn)行擴(kuò)充操作就行了,因?yàn)樗械腎P 地址都在系統(tǒng)中進(jìn)行了標(biāo)識(shí)。c 、可組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò)監(jiān)控系統(tǒng)是以基于網(wǎng)絡(luò)視頻信號(hào)采集終端為核心,在組網(wǎng)方式上與基于PC 平臺(tái)的監(jiān)控和傳統(tǒng)的模擬監(jiān)控方式有了質(zhì)的飛躍,視頻信號(hào)采集終端輸出已完成了從模擬到數(shù)字的

20、轉(zhuǎn)換并壓縮,在網(wǎng)絡(luò)上傳輸時(shí)采用統(tǒng)一的協(xié)議,能夠?qū)崿F(xiàn)跨路由器、跨網(wǎng)關(guān)等的遠(yuǎn)程視頻傳輸。d 、性能穩(wěn)定可靠,無(wú)需專人管理視頻監(jiān)控系統(tǒng)中采集視頻信號(hào)的終端應(yīng)用了嵌入式Linux 技術(shù),主要采用嵌入式多任務(wù)實(shí)時(shí)操作系統(tǒng),又能夠?qū)⒕W(wǎng)絡(luò)功能和視頻壓縮功能集中到一個(gè)極小體積的設(shè)備內(nèi),同時(shí)可以直接連入廣域網(wǎng)絡(luò)或者局域網(wǎng)絡(luò),即插即看,系統(tǒng)的穩(wěn)定性、可靠性、實(shí)時(shí)性得到了極大的提升,能夠運(yùn)用于無(wú)人值守的環(huán)境中。e 、我們可以從視頻監(jiān)控中心同時(shí)觀看多個(gè)USB 網(wǎng)絡(luò)攝像頭視頻,但是對(duì)網(wǎng)絡(luò)帶寬是有一定的要求。目前視頻監(jiān)控系統(tǒng)應(yīng)用主要有以下應(yīng)用領(lǐng)域:·食品監(jiān)督系統(tǒng)主要是對(duì)食品的原料,和衛(wèi)生的隨時(shí)檢查等;·

21、;教育系統(tǒng)、電力系統(tǒng)、部隊(duì)系統(tǒng)、石化系統(tǒng)等的視頻監(jiān)控與安全檢測(cè)等; ·在銀行系統(tǒng)、鐵路系統(tǒng)、醫(yī)療系統(tǒng)等的視頻監(jiān)控與安全檢測(cè);·稅務(wù)系統(tǒng)主要是報(bào)稅服務(wù)大廳監(jiān)控;·鋼鐵系統(tǒng)主要是安全生產(chǎn)管理監(jiān)控系統(tǒng);未來(lái)應(yīng)用領(lǐng)域:在不久的將來(lái)視頻監(jiān)控會(huì)出現(xiàn)在農(nóng)村及每個(gè)實(shí)體經(jīng)濟(jì)的商人手中。對(duì)農(nóng)村和農(nóng)民而言:農(nóng)產(chǎn)品是主要經(jīng)濟(jì)來(lái)源,農(nóng)產(chǎn)品的收成直接決定著農(nóng)民的收入,主要監(jiān)控糧食的生成,同時(shí)還可以做一些其他溫度和濕度的感光性能,增加農(nóng)產(chǎn)品的收成同時(shí)幫助農(nóng)民致富。未來(lái)的實(shí)體經(jīng)濟(jì)來(lái)說(shuō),視頻監(jiān)控也是很重要的。隨著科技的發(fā)展,工廠模式已經(jīng)走上了現(xiàn)代化之路,那管理上也應(yīng)該得以更近。用視頻管理,用視頻收

22、集資料,這樣不僅提高了處理速度,同時(shí)也可以收集到更多的數(shù)據(jù)參數(shù)以供以后的自身發(fā)展做參考。視頻監(jiān)控的智能化是趨勢(shì),也是近年的熱點(diǎn),大環(huán)境給了我們視頻智能化的大好空間,那就得好好利用。1 基于Linux 、QT 的視頻監(jiān)控系統(tǒng)概述該系統(tǒng)的開(kāi)發(fā)是在Linux 操作系統(tǒng)上進(jìn)行,采用了QT 編程技術(shù)、Socket 網(wǎng)絡(luò)編程技術(shù)、TCP/IP網(wǎng)絡(luò)協(xié)議以及Unix 系統(tǒng)高級(jí)編程技術(shù)而實(shí)現(xiàn)的。1.1 視頻監(jiān)控系統(tǒng)的組成視頻監(jiān)控系統(tǒng)大致可分為三大模塊:視頻數(shù)據(jù)信號(hào)的采集部分、網(wǎng)絡(luò)傳輸部分以及遠(yuǎn)程客戶端視頻的渲染部分。1.2 開(kāi)發(fā)環(huán)境簡(jiǎn)介1.2.1 Linux 環(huán)境簡(jiǎn)介該系統(tǒng)是在Linux 環(huán)境上開(kāi)發(fā)的,Linu

23、x 是Unix 這個(gè)大家族中的一員。Linux 操作系統(tǒng)是一個(gè)基于POSIX 和Unix 的多CPU 、支持多線程、多任務(wù)和的多用戶操作系統(tǒng);能夠運(yùn)行主要的應(yīng)用程序、網(wǎng)絡(luò)協(xié)議和Unix 工具軟件;它同時(shí)支持32位硬件和64位硬件平臺(tái);Linux 繼承了Unix 的以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶、實(shí)時(shí)的網(wǎng)絡(luò)操作系統(tǒng)2。我這次使用的Linux 的桌面系統(tǒng)Ubuntu12.04 32位操作系統(tǒng)。Linux 系統(tǒng)可以運(yùn)行在不同的硬件平臺(tái),這個(gè)對(duì)于我們這些軟件開(kāi)發(fā)者來(lái)說(shuō)無(wú)疑是件非常好的事,可以進(jìn)行各種平臺(tái)的系統(tǒng)移植。最典型的有安卓系統(tǒng),其內(nèi)核也是Linux 系統(tǒng)內(nèi)核。在Linux 環(huán)境開(kāi)

24、發(fā)視頻監(jiān)控系統(tǒng)的好處就在于以后能夠很好的移植到移動(dòng)終端。1.2.2 QT 技術(shù)簡(jiǎn)介QT 是Nokia 公司開(kāi)發(fā)的一個(gè)集成開(kāi)發(fā)環(huán)境,它封裝有自己的一套庫(kù),以至于能實(shí)現(xiàn)跨平臺(tái)編程。QT 是一個(gè)非常好的C+圖形用戶界面UI 設(shè)計(jì)應(yīng)用程序框架。它給應(yīng)用程序開(kāi)發(fā)者提供了一套功能齊全的進(jìn)行藝術(shù)級(jí)的圖形用戶界面程序設(shè)計(jì)所需的功能3。Qt 很容易擴(kuò)展,并且 允許真正地組件編程。基本上Qt 和X Window 上的GTK ,Openwin ,Motif 等圖形界面庫(kù)和 Windows 平臺(tái)上的ATL ,CL ,OWL ,VMFC 是非常類似的4。QT 模塊化程度非常高是因?yàn)樗蟹浅:玫姆庋b機(jī)制,而且具有非常好的

25、可重用性,這將非常方便了應(yīng)用程序開(kāi)發(fā)用戶進(jìn)行軟件開(kāi)發(fā)。QT 提供了一種安全類型來(lái)替代callback ,稱為信號(hào)和槽(signals/slots)。這些都使得不同模塊之間的協(xié)同工作變得非常簡(jiǎn)單。QT 提供了基于模版的date/timefile、directory management、serialization 、I/O device 、collections 、類,而且還包括了多達(dá)250個(gè)以上的C+類。甚至還包括了正則表達(dá)式的處理功能。支持2D/3D/圖形渲染,支持OpenGL 。而且有大量的開(kāi)發(fā)文檔。1.2.3 V4L2編程技術(shù)簡(jiǎn)介V4L2編程主要是針對(duì)于uvc 免驅(qū)USB 設(shè)備的設(shè)計(jì)的一

26、個(gè)軟件編程框架,主要是用于采集USB 攝像頭的視頻信息等。V4L2有以下編程模式:a. 設(shè)置采集方式:打開(kāi)視頻設(shè)備后,可以設(shè)置該視頻設(shè)備的屬性,例如放縮、裁剪等。這一步是可選的。在Linux 編程中實(shí)現(xiàn)對(duì)設(shè)備的I/O通道進(jìn)行統(tǒng)一管理一般通過(guò)調(diào)用系統(tǒng)的ioctl ()函數(shù)。extern int ioctl(int _fd, unsigned long int _request, _THROW; _fd:USB 視頻設(shè)備的設(shè)備ID 號(hào),例如調(diào)用了系統(tǒng)open ()函數(shù)來(lái)打開(kāi)視頻通道后返回的videoFd_request:具體的命令標(biāo)識(shí)符。b. 一般操作流程1 打開(kāi)設(shè)備文件int fd = open

27、(“/dev/video0”, O_RDWR;2 查詢并獲取到USB 視頻設(shè)備的設(shè)備屬性,可以查看到該設(shè)備具有的一些功能,例如USB 視頻設(shè)備是否具有視頻輸入輸出的功能,或者音頻輸入輸出的功能等。VIDIOC_QUERYCAP,struct v4l2_capabilityv4l2_std_id std;doret= ioctl(fd, VIDIOC_QUERYSTD, &std;while (ret = -1 && errno = EAGAIN;switch(stdcase V4L2_STD_NTSC:/case V4L2_STD_PAL:/3 選擇USB 視頻設(shè)備的視

28、頻輸入,有些視頻設(shè)備可以有多個(gè)視頻輸入。 VIDOC_S_INPUT,struct v4l2_input4 設(shè)置視頻采集的的視頻幀格式和視頻制式,視頻制式包括幀的格式,NTSC ,PAL ,包括寬度(width )和高度(height )等。VIDIOC_S_STD,VIDIOC_S_FMT,struct v4l2_std_id,struct v4l2_format5 向驅(qū)動(dòng)申請(qǐng)緩沖,一般不超過(guò)5個(gè)。struct v4l2_requestbuffers6 申請(qǐng)物理內(nèi)存從內(nèi)核申請(qǐng)到幀緩沖空間,并將其映射到用戶空間去,然后可以直接對(duì)采集到的視頻數(shù)據(jù)幀進(jìn)行操作了,不必再去進(jìn)行復(fù)制緩沖區(qū)內(nèi)容了。將從內(nèi)

29、核中申請(qǐng)下來(lái)的緩存進(jìn)行入隊(duì)列操作,存放采集到的視頻幀數(shù)據(jù)。 VIDIOC_QBUF,struct v4l2_buffer7 開(kāi)始視頻的采集enum v4l2_buf_type typetype = V4L2_BUF_TYPE_VIDEO_CAPTURE;if (ioctl (fd, VIDIOC_STREAMON, &type < 0printf("VIDIOC_STREAMON errorn"/ return -1;8 進(jìn)行出隊(duì)列操作從而獲取已采集數(shù)據(jù)到的視頻幀緩沖數(shù)據(jù),取得原始采集數(shù)據(jù)。VIDIOC_DQBUF將緩沖區(qū)重新入隊(duì)列尾,這樣可以循環(huán)采集VIDI

30、OC_QBUF9 停止視頻采集。VIDIOC_STREAMOFF10 關(guān)閉視頻設(shè)備。close(fd2 系統(tǒng)總體設(shè)計(jì)概述2.1 分析系統(tǒng)需求視頻監(jiān)控系統(tǒng)主要由服務(wù)端程序和客戶端程序構(gòu)成。服務(wù)器(server )端是基于Linux 系統(tǒng)環(huán)境下的網(wǎng)絡(luò)服務(wù)器程序。服務(wù)端中視頻數(shù)據(jù)的采集部分利用v4l2(video for Linux II )對(duì)網(wǎng)絡(luò)攝像頭(USB 攝像頭)進(jìn)行控制和訪問(wèn)并且獲取由攝像頭捕獲到的視頻數(shù)據(jù),然后由huffman 編碼進(jìn)行壓縮,然后再通過(guò)網(wǎng)絡(luò)服務(wù)將獲取到的視頻數(shù)據(jù)進(jìn)行封裝成http 數(shù)據(jù)幀并利用http 協(xié)議發(fā)送到客戶端。由于視頻監(jiān)控系統(tǒng)的服務(wù)器(server )端視頻數(shù)據(jù)

31、是通過(guò)http 協(xié)議發(fā)送的,所以此系統(tǒng)客戶端沒(méi)有平臺(tái)限制,只要支持HTTP1.0以上的平臺(tái)就可以訪問(wèn)系統(tǒng)的服務(wù)。而且,系統(tǒng)的服務(wù)還可以直接通過(guò)web 瀏覽器訪問(wèn)(對(duì)firefox 、Google Chrome瀏覽器支持最佳)。為了提高傳輸效率我們還需要進(jìn)行客戶端的軟件開(kāi)發(fā),由于對(duì)客戶端沒(méi)有平臺(tái)要求,即實(shí)現(xiàn)跨平臺(tái),所以在Windows 、Linux 、android 等平臺(tái)都可以實(shí)現(xiàn)。視頻監(jiān)控系統(tǒng)的設(shè)計(jì)主要以Linux 為例用QT 實(shí)現(xiàn)一個(gè)簡(jiǎn)易的客戶端軟件,同時(shí)還可以用瀏覽器訪問(wèn),既同時(shí)實(shí)現(xiàn)了C/S架構(gòu)與B/S架構(gòu)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。2.2 系統(tǒng)的軟件結(jié)構(gòu)及整體框架2.2.1 整體結(jié)構(gòu)框圖視頻監(jiān)

32、控系統(tǒng)總體結(jié)構(gòu)圖如圖1所示 圖1 視頻監(jiān)控系統(tǒng)結(jié)構(gòu)圖上圖所示,為視屏監(jiān)控系統(tǒng)的結(jié)構(gòu)總圖,其主要作用是為后續(xù)的軟件模塊設(shè)計(jì)及程序代碼的編寫(xiě)打了個(gè)初略的框架,這也是視頻監(jiān)控系統(tǒng)設(shè)計(jì)的指明燈。從圖中可以看出主要的流程,以及邏輯關(guān)系。在當(dāng)今社會(huì)互聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)發(fā)展非常迅速,網(wǎng)絡(luò)遠(yuǎn)程視頻監(jiān)控是必然趨勢(shì),TCP/IP和socket 的創(chuàng)建使視頻可以融入到互聯(lián)網(wǎng)中。4G 時(shí)代的到來(lái),使得我們可以將實(shí)時(shí)視頻監(jiān)控發(fā)展到移動(dòng)終端上,這將更加方便我們的日常生活。2.2.2 模塊的功能分析服務(wù)器(server )端負(fù)責(zé)視頻數(shù)據(jù)的采集,采集可以通過(guò)v4l2編程實(shí)現(xiàn),有詳細(xì)的API 開(kāi)發(fā)文檔,以及v4l2編程的相關(guān)資料

33、可以參考。客戶端(client )主要負(fù)責(zé)的是將接收到的視頻數(shù)據(jù)通過(guò)QT 編程將其渲染出來(lái)。主要用到了QT 中的信號(hào)(signal )和槽(slot )機(jī)制、以及繪圖事件,QT 是利用C+編程,而且它封裝了一套自己的庫(kù)可以實(shí)現(xiàn)跨平臺(tái),這也就解決了前面提到的客戶端的跨平臺(tái)特性。還有連接Server 與Cclient 的就是采用Socket 網(wǎng)絡(luò)服務(wù)器的搭建,這主要采用的是Linux 環(huán)境網(wǎng)絡(luò)編程。該網(wǎng)絡(luò)的搭建主要是利用基于TCP/IP協(xié)議的HTTP 協(xié)議,將服務(wù)器(server )端采集到的視頻數(shù)據(jù)封裝成http 數(shù)據(jù)幀的形式,然后利用http 協(xié)議將視頻數(shù)據(jù)幀發(fā)送到客戶端(client )。由

34、于是實(shí)時(shí)傳輸,所以還用到多線程,使得每個(gè)客戶端(client )相互獨(dú)立,各個(gè)線程都將執(zhí)行一個(gè)死循環(huán),源源不斷的給客戶端發(fā)送視頻數(shù)據(jù)。3 系統(tǒng)中各模塊功能的具體實(shí)現(xiàn)3.1 服務(wù)器:數(shù)據(jù)采集部分3.1.1 模塊功能描述視頻數(shù)據(jù)的采集是視頻監(jiān)控系統(tǒng)中相當(dāng)重要的,沒(méi)有視頻數(shù)據(jù)的采集就不可能有后面視頻的編碼、視頻的解碼、視頻數(shù)據(jù)的網(wǎng)絡(luò)傳輸,也就是說(shuō)沒(méi)有視頻數(shù)據(jù)采集就沒(méi)有監(jiān)控的傳播。這一模塊需要查看、配置設(shè)備的屬性并從設(shè)備中獲取圖像數(shù)據(jù)。根據(jù)獲取到的設(shè)備信息,利用v4l2(vidoo for Linux II)通過(guò)函數(shù)ioctl ()對(duì)USB 攝像頭進(jìn)行配置,打開(kāi)設(shè)備,開(kāi)啟視頻流功能,然后開(kāi)始進(jìn)行視頻數(shù)

35、據(jù)采集,采集到數(shù)據(jù)后將數(shù)據(jù)保存,采集完畢以后關(guān)閉設(shè)備功能,最后關(guān)閉視頻設(shè)備,退出整個(gè)程序。3.1.2 技術(shù)概要當(dāng)前模塊需要涉及到對(duì)設(shè)備的I/O進(jìn)行相關(guān)的操作,主要通過(guò)v4l2(video for Linux II)框架對(duì)視頻設(shè)備進(jìn)行設(shè)置和控制。主要用到了以下幾個(gè)宏定義:1) VIDIOC_REQBUFS:分配內(nèi)存。2) VIDIOC_QUERYBUF:將分配出來(lái)的數(shù)據(jù)緩存區(qū)映射到物理地址。3) VIDIOC_S_FMT:讀取當(dāng)前驅(qū)動(dòng)的視頻捕獲格式。4) VIDIOC_ENUM_FMT:獲取USB 視頻設(shè)備驅(qū)動(dòng)所支持的視頻格式。5) VIDIOC_QUERYCAP:查詢驅(qū)動(dòng)功能。6) VIDIO

36、C_G_FMT:設(shè)置當(dāng)前驅(qū)動(dòng)的視頻捕獲格式。7) VIDIOC_TRY_FMT:檢驗(yàn)視頻設(shè)備驅(qū)動(dòng)的顯示格式是否正確。8) VIDIOC_CROPCAP:查詢驅(qū)動(dòng)的修剪能力。9) VIDIOC_S_CROP:設(shè)置視頻信號(hào)的邊框。10)VIDIOC_G_CROP:讀取視頻信號(hào)的邊框。11)VIDIOC_QBUF:把視頻數(shù)據(jù)從緩存中取出來(lái)。12)VIDIOC_DQBUF:把視頻數(shù)據(jù)放回隊(duì)列。13)VIDIOC_STREAMON:開(kāi)始視頻數(shù)據(jù)顯示函數(shù)。14)VIDIOC_STREAMOFF:結(jié)束視頻顯示函數(shù)。15)VIDIOC_QUERYSTD:查看USB 視頻設(shè)備支持的標(biāo)準(zhǔn)(例如: NTSC(歐洲標(biāo)

37、準(zhǔn))、PAL (亞洲標(biāo)準(zhǔn))。其中還可以通過(guò)查閱v4l2編程技術(shù)提供的API 文檔,熟悉一些結(jié)構(gòu)體屬性的賦值以及一些控制標(biāo)記具有的實(shí)際意義。 3.1.3 邏輯概要及流程圖這一節(jié)主要介紹了服務(wù)器(server )端的如何采集視頻數(shù)據(jù)。圖2是視頻采集流程圖,描述了服務(wù)器(server )端視頻數(shù)據(jù)采集的主要編程步驟。圖2 服務(wù)器(server )端視頻數(shù)據(jù)采集流程否 下面將對(duì)沒(méi)一個(gè)步驟進(jìn)行詳細(xì)的介紹: 1) 打開(kāi)視頻video 設(shè)備:打開(kāi)USB 視頻設(shè)備(視頻監(jiān)控系統(tǒng)的設(shè)計(jì)中指的是我們的USB 攝像頭)。我們利用Linux 系統(tǒng)提供的接口函數(shù)open 來(lái)對(duì)設(shè)備進(jìn)行打開(kāi)的操作。下圖(圖3)對(duì)這一過(guò)程進(jìn)

38、行了詳細(xì)的描述。FD 是USB 攝像頭設(shè)備文件描述符,簡(jiǎn)單的來(lái)說(shuō),F(xiàn)D 只是一個(gè)int 型(即整數(shù)),在調(diào)用Linux 系統(tǒng)編程中的open ()函數(shù)時(shí)的返回值。起到的是一個(gè)索引的作用,其進(jìn)程通過(guò)查找文件描述符表項(xiàng)從而找到該FD 所指向的文件。在Linux 系統(tǒng)中,一切設(shè)備皆文件,所以不管是打開(kāi)的文件還是打開(kāi)設(shè)備都是通過(guò)此表中的文件描述符來(lái)引用的。圖3 打開(kāi)USB 攝像頭設(shè)備流程圖 2) 獲取視頻設(shè)備信息(查詢視頻設(shè)備信息):查詢USB 攝像頭設(shè)備驅(qū)動(dòng)的相關(guān)信息以及和視頻數(shù)據(jù)采集相關(guān)的參數(shù),根據(jù)查詢到的設(shè)備信息初步判斷設(shè)備類型以及將要處理的數(shù)據(jù)類型。利用ioctl ()函數(shù)以及v4l2提供的兩

39、個(gè)結(jié)構(gòu)體v4l2_capbility和v4l2_format來(lái)保存獲取到的USB 攝像頭設(shè)備驅(qū)動(dòng)信息和數(shù)據(jù)幀信息。詳細(xì)流程如下圖(圖4)所示。VIDIOC_G_FMT、VIDIOC_S_FMT等需要通過(guò)查閱v4l2提供的API 來(lái)理解具體意義。圖4 查詢視頻設(shè)備信息流程圖 3) 設(shè)置USB 攝像頭采集方式:設(shè)置USB 攝像頭(視頻設(shè)備)的視頻采集方式,例如視頻數(shù)據(jù)幀的采集速率(即每秒鐘采集到的視頻幀數(shù)量)、采集圖像的分辨率等一些參數(shù)的設(shè)置。用到v4l2中的v4l2_streamparm和v4l2_format兩個(gè)結(jié)構(gòu)體以及VIDIOC_S_PARM和VIDIOC_S_FMT兩個(gè)宏,相關(guān)用法的介

40、紹請(qǐng)?jiān)敿?xì)查閱v4l2框架的API 文檔。具體實(shí)現(xiàn)方法參照下圖(圖5)。圖5 設(shè)置視頻采集方式流程圖 4) 向驅(qū)動(dòng)申請(qǐng)緩存向內(nèi)核驅(qū)動(dòng)申請(qǐng)幾塊緩沖區(qū)(此緩沖區(qū)是由內(nèi)核管理的,所以需要向內(nèi)核申請(qǐng)),用來(lái)存放USB 攝像頭設(shè)備采集的視頻數(shù)據(jù)。從內(nèi)核中申請(qǐng)緩存用到v4l2編程中的結(jié)構(gòu)體v4l2_requestbuffer和宏定義VIDIOC_REQBUFS。具體的實(shí)現(xiàn)方法參照下圖(圖6)。圖6 申請(qǐng)緩沖區(qū)流程圖本模塊用到的宏定義有 #define NB_BUFFER 5 表示申請(qǐng)緩沖區(qū)數(shù)量 5) 設(shè)置緩沖區(qū)屬性緩存申請(qǐng)到了后,對(duì)申請(qǐng)到的緩存進(jìn)行必要的設(shè)置。其實(shí)緩沖區(qū)的設(shè)置是很重要的,因?yàn)榫彺娴淖饔迷趥鬏?/p>

41、數(shù)據(jù)上占有舉足輕重的地位,他是CPU 和內(nèi)存的中間產(chǎn)物,緩存指的是臨時(shí)文件交換區(qū),電腦經(jīng)常把常用的文件從存儲(chǔ)器里提取出來(lái)存放到臨時(shí)緩存里面。還要設(shè)置緩存的訪問(wèn)方式以及使用內(nèi)存映射的訪問(wèn)方式,對(duì)緩存進(jìn)行映射,并建立緩存隊(duì)列。具體設(shè)置方法如下圖(圖7)所示。圖7 緩沖區(qū)設(shè)置流程圖 6) 視頻圖像采集到的數(shù)據(jù)處理設(shè)置視頻設(shè)備屬性時(shí),需要用到這兩個(gè)宏定義VIDIOC_STREAMON和VIDIOC_STREAMOFF。通過(guò)對(duì)視頻設(shè)備進(jìn)行設(shè)置VIDIOC_STREAMON和VIDIOC_STREAMOFF來(lái)控制視頻設(shè)備的開(kāi)始和停止采集數(shù)據(jù),在設(shè)置開(kāi)始和停止中間通過(guò)對(duì)緩存的輪換讀取來(lái)獲得視頻設(shè)備采集到的視

42、頻數(shù)據(jù)并對(duì)其進(jìn)行數(shù)據(jù)處理(這里說(shuō)的數(shù)據(jù)處理主要書(shū)對(duì)圖像進(jìn)行壓縮(也就是進(jìn)行huffman 編碼)和傳輸兩個(gè)部分,具體的處理方式在后面做詳細(xì)介紹)。獲得視頻設(shè)備采集到的數(shù)據(jù)需要調(diào)用VIDIOC_QBUF和VIDIOC_DQBUF兩個(gè)宏定義來(lái)控制對(duì)緩沖隊(duì)列進(jìn)行進(jìn)/出隊(duì)操作。詳見(jiàn)下圖(圖8)。圖8 視頻數(shù)據(jù)處理流程圖 3.2 服務(wù)器:數(shù)據(jù)處理3.2.1 模塊功能描述完成圖像壓縮、編碼、封裝。在此需要設(shè)計(jì)web 服務(wù)器端程序,有的是用QT 界面設(shè)計(jì)編程來(lái)建立的,并且建立web 服務(wù)器以供客戶端進(jìn)行訪問(wèn)。對(duì)從攝像頭設(shè)備采集到的視頻數(shù)據(jù)進(jìn)行一次huffman 編碼,把圖片轉(zhuǎn)換成jpeg 或者jpg 格式的

43、。這個(gè)步驟也可以在客戶端完成,但是考慮到瀏覽器不支持這項(xiàng)操作。為了實(shí)現(xiàn)C/S架構(gòu)的同時(shí),也支持B/S架構(gòu),我們就在服務(wù)器端進(jìn)行這些數(shù)據(jù)的處理。建立一個(gè)基于TCP/IP協(xié)議的web 服務(wù)器,當(dāng)有客戶端進(jìn)行連接服務(wù)器時(shí)采用HTTP 協(xié)議的網(wǎng)絡(luò)發(fā)送經(jīng)過(guò)處理后的視頻數(shù)據(jù)幀,這些數(shù)據(jù)已經(jīng)經(jīng)過(guò)HTTP 協(xié)議進(jìn)行了封裝。3.2.2 技術(shù)概要這一模塊主要涉及到對(duì)原始圖像數(shù)據(jù)進(jìn)行的壓縮編碼以及基于C 語(yǔ)言的網(wǎng)絡(luò)和多線程的編程。關(guān)于視頻的壓縮編碼部分在視頻監(jiān)控系統(tǒng)的設(shè)計(jì)中只是簡(jiǎn)單的調(diào)用現(xiàn)有接口(API ),不做需要深入的研究。視頻監(jiān)控系統(tǒng)通過(guò)對(duì)基于C 語(yǔ)言的socket 網(wǎng)絡(luò)編程和多線程編程熟悉,可以參考UNIX

44、 環(huán)境高級(jí)編程中的網(wǎng)絡(luò)編程部分,就可以實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)器的功能以及多任務(wù)的處理功能。3.2.3 邏輯概要及程序流程圖這一模塊的作用實(shí)際上是上一個(gè)模塊中提到的“數(shù)據(jù)處理”部分。由于視頻設(shè)備采集到的每一幀視頻數(shù)據(jù)經(jīng)過(guò)了huffman 編碼以后都會(huì)變成一張完整的圖片,所以我們?cè)谙旅姘l(fā)送視頻數(shù)據(jù)的傳輸部分需要做一個(gè)簡(jiǎn)單的數(shù)據(jù)封裝,下面分別給出了程序流程圖(圖9)和數(shù)據(jù)封裝格式(圖10)。在這個(gè)模塊中功能的實(shí)現(xiàn)是可以參照一下圖示進(jìn)行程序的編寫(xiě),這里已經(jīng)給出了模塊的設(shè)計(jì)框架。圖9 服務(wù)器端數(shù)據(jù)處理流程圖 圖10 服務(wù)器端數(shù)據(jù)幀封裝結(jié)構(gòu)圖3.3 客戶端:數(shù)據(jù)獲取3.3.1 模塊功能描述客戶端獲取視頻數(shù)據(jù),主要利用socket 連接方式獲取。客戶端首先向服務(wù)器端發(fā)送視頻數(shù)據(jù)請(qǐng)求,根據(jù)服務(wù)器端的響應(yīng)信息,從而可以接收視頻數(shù)據(jù)??蛻舳伺c服務(wù)器端需要建立網(wǎng)絡(luò)連接必須要進(jìn)行了“三次握手”,才連接成功,然后視頻監(jiān)控系統(tǒng)的客戶端向服務(wù)器端發(fā)送視頻數(shù)據(jù)??蛻舳伺c服務(wù)器建立TCP 連接,向服務(wù)器發(fā)送了http 請(qǐng)求,接收服務(wù)器返回的響應(yīng)信息,并且根據(jù)響應(yīng)信息按照一定的

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論