基于linux、qt的視頻監(jiān)控系統(tǒng)的設計與實現(xiàn)--畢業(yè)論文_第1頁
已閱讀1頁,還剩48頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  本科學生畢業(yè)論文(設計)</p><p>  2014年 5 月 8 日</p><p> 題目(中 文):基于Linux、QT的視頻監(jiān)控系統(tǒng)的設計與實現(xiàn)</p><p> (英 文):Design and implementation of video</p><p> monitoring syste

2、m based on Linux and QT</p><p> 姓 名XXXX</p><p> 學 號XXXXXXXXXXXX</p><p> 院 (系)XXXXXXXX</p><p> 專業(yè)、年級XXXXXXXXXX</p><p> 指導教師XXXX</p><p

3、>  畢業(yè)論文(設計)任務書</p><p>  2013 年 11 月 30 日</p><p>  畢業(yè)論文(設計)任務書</p><p>  注:本任務書一式三份,由指導教師填寫,經教研室審批后一份下達給學生,一份交指導教師,一份留系里存檔。</p><p>  本科畢業(yè)論文(設計)開題報告書</p><p&

4、gt;  注:此表由學生本人填寫,一式三份,一份留系里存檔,指導老師和本人各保存一份</p><p>  畢業(yè)論文(設計)中期檢查表</p><p>  注:此表用于指導教師在學生畢業(yè)論文(設計)初稿完成后對學生執(zhí)行任務書情況進行中期檢查時用,由指導教師填寫。</p><p>  畢業(yè)設計(論文)指導過程記錄表</p><p>  注:本表與

5、畢業(yè)論文一起裝訂存檔。</p><p>  本科畢業(yè)論文(設計)評審表</p><p>  說明:評定成績分為優(yōu)秀、良好、中等、及格、不及格五個等級,實評總分90—100分記為優(yōu)秀,80—89分記為良好,70—79分記為中等,60—69分記為及格,60分以下記為不及格。</p><p>  說明:評定成績分為優(yōu)秀、良好、中等、及格、不及格五個等級,實評總分90—10

6、0分記為優(yōu)秀,80—89分記為良好,70—79分記為中等,60—69分記為及格,60分以下記為不及格。</p><p>  本科畢業(yè)論文(設計)答辯記錄表</p><p><b>  目 錄</b></p><p><b>  緒論1</b></p><p>  1 基于Linux、QT的視頻監(jiān)

7、控系統(tǒng)概述4</p><p>  1.1 視頻監(jiān)控系統(tǒng)的組成4</p><p>  1.2 開發(fā)環(huán)境簡介4</p><p>  1.2.1 Linux環(huán)境簡介4</p><p>  1.2.2 QT技術簡介4</p><p>  1.2.3 V4L2編程技術簡介5</p><p> 

8、 2 系統(tǒng)總體設計概述7</p><p>  2.1 分析系統(tǒng)需求7</p><p>  2.2 系統(tǒng)的軟件結構及整體框架7</p><p>  2.2.1 整體結構框圖7</p><p>  2.2.2 模塊的功能分析8</p><p>  3 系統(tǒng)中各模塊功能的具體實現(xiàn)9</p><

9、p>  3.1 服務器:數(shù)據(jù)采集部分9</p><p>  3.1.1 模塊功能描述9</p><p>  3.1.2 技術概要9</p><p>  3.1.3 邏輯概要及流程圖10</p><p>  3.2 服務器:數(shù)據(jù)處理17</p><p>  3.2.1 模塊功能描述17</p>

10、;<p>  3.2.2 技術概要17</p><p>  3.2.3 邏輯概要及程序流程圖17</p><p>  3.3 客戶端:數(shù)據(jù)獲取19</p><p>  3.3.1 模塊功能描述19</p><p>  3.3.2 技術概要19</p><p>  3.3.3 邏輯概要及流程圖1

11、9</p><p>  3.4 客戶端:QT視頻渲染21</p><p>  3.4.1 模塊功能描述21</p><p>  3.4.2 技術概要22</p><p>  3.4.3 邏輯概要及流程圖22</p><p>  4 視頻監(jiān)控系統(tǒng)測試23</p><p>  4.1 系統(tǒng)

12、測試目標23</p><p>  4.2 系統(tǒng)測試過程23</p><p>  4.3 系統(tǒng)測試結果25</p><p><b>  結論26</b></p><p><b>  參考文獻27</b></p><p><b>  致 謝28</b

13、></p><p><b>  插圖索引</b></p><p>  圖1 視頻監(jiān)控系統(tǒng)結構圖7</p><p>  圖2 服務器(server)端視頻數(shù)據(jù)采集流程10</p><p>  圖3 打開USB攝像頭設備流程圖11</p><p>  圖4 查詢視頻設備信息流程圖12&l

14、t;/p><p>  圖5 設置視頻采集方式流程圖13</p><p>  圖6 申請緩沖區(qū)流程圖14</p><p>  圖7 緩沖區(qū)設置流程圖15</p><p>  圖8 視頻數(shù)據(jù)處理流程圖16</p><p>  圖9 服務器端數(shù)據(jù)處理流程圖18</p><p>  圖10 服務器

15、端數(shù)據(jù)幀封裝結構圖19</p><p>  圖11 服務器與客戶端TCP網絡編程流程圖20</p><p>  圖12 客戶端的數(shù)據(jù)分割流程圖21</p><p>  圖13 客戶端視頻渲染模塊流程圖22</p><p>  圖14 啟動系統(tǒng)效果圖(左:客戶端,右:服務端)24</p><p>  圖15 客

16、戶端準備連接時效果圖(左:客戶端,右:服務端)24</p><p>  圖16 系統(tǒng)網絡連接后效果圖(左:客戶端,右:服務端)25</p><p>  基于Linux、QT的視頻監(jiān)控系統(tǒng)的設計與實現(xiàn)</p><p><b>  摘 要</b></p><p>  隨著社會的網絡技術的不斷更新,計算機多媒體應用技術及

17、網絡技術方面的發(fā)展之迅速是有目共睹的,在銀行,商場監(jiān)控,城市交通管理,酒店等安全保衛(wèi)方面,視頻監(jiān)控系統(tǒng)的市場需求量大幅度上升,市場上出現(xiàn)了多種圖像采集和傳輸?shù)漠a品,視頻監(jiān)控系統(tǒng)的發(fā)展趨勢必然是數(shù)字化,網絡化,即采用嵌入式網絡攝像機,利用嵌入式監(jiān)控設備體積小巧,性能穩(wěn)定,通訊便利等特點。</p><p>  在我國現(xiàn)階段,流媒體技術以及嵌入式網絡視頻監(jiān)控技術的研發(fā)還不夠成熟,大多是針對那些大,中型工程所開發(fā)的視頻監(jiān)

18、控系統(tǒng)。但是對于小型的場所來說,成本太高,視頻監(jiān)控系統(tǒng)的功能復雜。因此我們可以設計一種低成本的,簡便的,新型的視頻監(jiān)控系統(tǒng)針對上述用戶群。這是一項非常有意義的工程。</p><p>  視頻監(jiān)控系統(tǒng)的設計論文主要介紹了整個系統(tǒng)的開發(fā)流程,運用模塊化分析設計的方法,采用各個模塊程序流程圖對整個系統(tǒng)的設計以及實現(xiàn)進行詳細的說明,全文共分為緒論、系統(tǒng)的總體設計、各模塊的具體功能實現(xiàn)、視頻監(jiān)控系統(tǒng)的測試以及結論這五個部分

19、。利用v4l2進行數(shù)據(jù)采集,基于TCP編程和多線程編程對數(shù)據(jù)進行處理,QT技術來實現(xiàn)客戶端程序。視頻數(shù)據(jù)的發(fā)送是采用HTTP協(xié)議,Linux系統(tǒng)下C語言編程實現(xiàn)的。</p><p>  【關鍵詞】:Linux QT技術 v4l2編程 http協(xié)議</p><p>  Design and implementation of video monitoring system based

20、on Linux and QT</p><p><b>  Abstract</b></p><p>  Along with the social network technology unceasing renewal, computer multimedia application technology and network technology aspect

21、s 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 surveillance systemincreased significantl

22、y. Appeared on the market a variety of image acquisition and transmission products, the development trend of video surveillance system must be digit</p><p>  At the present stage of our country, research and

23、 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 small place

24、, 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.</

25、p><p>  This paper mainly introduces the system development process, the use of the design method of modularization analysis, the program flow chart of each module of the system design and implementation are de

26、scribed 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, and the conclusion of this test the five part.

27、 Data collection by v4l2, TCP and multi thread programming for data processing</p><p>  【Key words】 Linux QT Technology v4l2 Programming http Protocol</p><p><b>  緒論</b></p&

28、gt;<p>  Linux是一個基于Unix的操作系統(tǒng),它也是Unix家族的一元,與Unix不同的是,它可以運行在不同的硬件平臺上,它于1991年誕生于芬蘭的一個大學生Linus Torvalds手中,不過當時還只是一個雛形,為了不讓自己的這個羽翼未滿的操作系統(tǒng)夭折,Linus將自己的作品Linux通過Internet發(fā)布,從此大量的一批知名的、不知名的編程人員以及電腦黑客加入到Linux系統(tǒng)的開發(fā)過程中來,Linux

29、就這樣的逐漸成長起來了[1]。到目前為止,Linux的內核已經發(fā)展到了3.14,并在次基礎上發(fā)展了數(shù)十種發(fā)行版,其中有經過長期發(fā)展洗禮的Redhat(Fedora),也有發(fā)展迅猛使用方便的Ubuntu。</p><p>  在流媒體技術的發(fā)展中,視頻技術的發(fā)展越來越迅速,大量應用于安防與教育事業(yè),比如在遠程視頻教育、在線遠程視頻會議、醫(yī)療、各種場所的視頻監(jiān)控以及危險區(qū)域的探測等方面。Linux操作系統(tǒng)在發(fā)展的過程

30、具備了很好的網絡性能。Linux系統(tǒng)下提供了非常豐富的開源軟件和視頻支持,支持各種硬件平臺,因此Linux平臺成為了視頻采集的最佳平臺。Linux系統(tǒng)上的軟件開發(fā)具有高可靠性、低成本、高度自動化、高可配置性、及低耗費等一些優(yōu)點,同時能夠很好的完成多任務和實時性的設計需求。</p><p>  我國資深嵌入式系統(tǒng)專家——沈緒榜院士曾預言:“未來十年將會產生針頭大小,具有超過一億次運算能力的嵌入式智能芯片”。這些將為

31、我們的開發(fā)提供了相當大的創(chuàng)造空間。中國應當注意發(fā)展這一智力密集型產業(yè)”。</p><p>  綜上所述,嵌入式Linux操作系統(tǒng)在廣泛和深入的應用于各個領域,應用的技術也越來越復雜。針對基于網絡傳輸?shù)囊曨l監(jiān)控系統(tǒng)的實際需求與應用,結合視頻的圖像采集技術與編碼技術,嵌入式Linux操作系統(tǒng)和網絡編程技術等多方面的新興技術,設計的一套Linux網絡視頻監(jiān)控系統(tǒng),用來進行視頻數(shù)據(jù)的采集、視頻數(shù)據(jù)的壓縮編碼與解碼以及視頻

32、的網絡傳輸,該系統(tǒng)基于Linux操作系統(tǒng)進行開發(fā)的,從USB攝像頭捕捉視頻數(shù)據(jù),QT實現(xiàn)客戶端和服務器端,即可查看遠程視頻影像。</p><p><b>  論文的目的及意義:</b></p><p>  視頻監(jiān)控系統(tǒng)的設計主要說明視頻監(jiān)控系統(tǒng)的詳細設計與實現(xiàn)。介紹了系統(tǒng)中各個模塊的設計與模塊功能的實現(xiàn)以及應用的相關技術。在論文中,我將會對每一個模塊的設計以及實現(xiàn)方法

33、給出簡單的文字說明以及設計的流程圖。</p><p>  我寫這篇論文的主要是學習熟悉基于TCP/IP網絡的遠程視頻監(jiān)控系統(tǒng)的基本知識和相關的多媒體開發(fā)技術。隨著4G通訊時代的到來,我們更可以將視頻監(jiān)控客戶端發(fā)展到移動終端,這將使我們更加方便。</p><p>  項目背景及未來發(fā)展應用方向:</p><p>  縱觀視頻監(jiān)控的研究進展,從閉路電視系統(tǒng)構建的模擬系統(tǒng)

34、、經歷了數(shù)字信號控制的模擬視頻監(jiān)控系統(tǒng)、過渡到數(shù)字硬盤錄像設備為核心的視頻監(jiān)控系統(tǒng)和當代的數(shù)字網絡視頻監(jiān)控系統(tǒng)這幾大重要階段。</p><p>  數(shù)字網絡視頻監(jiān)控系統(tǒng)與其它監(jiān)控系統(tǒng)的優(yōu)點:</p><p><b>  a、布控區(qū)域廣闊</b></p><p>  數(shù)字網絡視頻監(jiān)控系統(tǒng)是可以超越地域的限制的,可以延伸整個需要布控區(qū)域,這是因為它

35、將網絡視頻信號采集終端直接連入網絡,并且能夠解除信號的衰減和纜線長度的局限性,而且網絡是不受距離長短的影響。</p><p>  b、系統(tǒng)具有幾乎無限的無縫擴展能力</p><p>  需要增加設備時只要將IP地址進行擴充操作就行了,因為所有的IP地址都在系統(tǒng)中進行了標識。</p><p>  c、可組成非常復雜的監(jiān)控網絡</p><p> 

36、 監(jiān)控系統(tǒng)是以基于網絡視頻信號采集終端為核心,在組網方式上與基于PC平臺的監(jiān)控和傳統(tǒng)的模擬監(jiān)控方式有了質的飛躍,視頻信號采集終端輸出已完成了從模擬到數(shù)字的轉換并壓縮,在網絡上傳輸時采用統(tǒng)一的協(xié)議,能夠實現(xiàn)跨路由器、跨網關等的遠程視頻傳輸。</p><p>  d、性能穩(wěn)定可靠,無需專人管理</p><p>  視頻監(jiān)控系統(tǒng)中采集視頻信號的終端應用了嵌入式Linux技術,主要采用嵌入式多任務

37、實時操作系統(tǒng),又能夠將網絡功能和視頻壓縮功能集中到一個極小體積的設備內,同時可以直接連入廣域網絡或者局域網絡,即插即看,系統(tǒng)的穩(wěn)定性、可靠性、實時性得到了極大的提升,能夠運用于無人值守的環(huán)境中。</p><p>  e、我們可以從視頻監(jiān)控中心同時觀看多個USB網絡攝像頭視頻,但是對網絡帶寬是有一定的要求。</p><p>  目前視頻監(jiān)控系統(tǒng)應用主要有以下應用領域:</p>

38、<p>  ·食品監(jiān)督系統(tǒng)主要是對食品的原料,和衛(wèi)生的隨時檢查等;</p><p>  ·教育系統(tǒng)、電力系統(tǒng)、部隊系統(tǒng)、石化系統(tǒng)等的視頻監(jiān)控與安全檢測等;</p><p>  ·在銀行系統(tǒng)、鐵路系統(tǒng)、醫(yī)療系統(tǒng)等的視頻監(jiān)控與安全檢測;</p><p>  ·稅務系統(tǒng)主要是報稅服務大廳監(jiān)控;</p><

39、;p>  ·鋼鐵系統(tǒng)主要是安全生產管理監(jiān)控系統(tǒng);</p><p><b>  未來應用領域:</b></p><p>  在不久的將來視頻監(jiān)控會出現(xiàn)在農村及每個實體經濟的商人手中。</p><p>  對農村和農民而言:農產品是主要經濟來源,農產品的收成直接決定著農民的收入,主要監(jiān)控糧食的生成,同時還可以做一些其他溫度和濕度的感

40、光性能,增加農產品的收成同時幫助農民致富。</p><p>  未來的實體經濟來說,視頻監(jiān)控也是很重要的。隨著科技的發(fā)展,工廠模式已經走上了現(xiàn)代化之路,那管理上也應該得以更近。用視頻管理,用視頻收集資料,這樣不僅提高了處理速度,同時也可以收集到更多的數(shù)據(jù)參數(shù)以供以后的自身發(fā)展做參考。</p><p>  視頻監(jiān)控的智能化是趨勢,也是近年的熱點,大環(huán)境給了我們視頻智能化的大好空間,那就得好好

41、利用。</p><p>  基于Linux、QT的視頻監(jiān)控系統(tǒng)概述</p><p>  該系統(tǒng)的開發(fā)是在Linux操作系統(tǒng)上進行,采用了QT編程技術、Socket網絡編程技術、TCP/IP網絡協(xié)議以及Unix系統(tǒng)高級編程技術而實現(xiàn)的。</p><p><b>  視頻監(jiān)控系統(tǒng)的組成</b></p><p>  視頻監(jiān)控系

42、統(tǒng)大致可分為三大模塊:視頻數(shù)據(jù)信號的采集部分、網絡傳輸部分以及遠程客戶端視頻的渲染部分。</p><p><b>  開發(fā)環(huán)境簡介</b></p><p><b>  Linux環(huán)境簡介</b></p><p>  該系統(tǒng)是在Linux環(huán)境上開發(fā)的,Linux是Unix這個大家族中的一員。Linux操作系統(tǒng)是一個基于POS

43、IX和Unix的多CPU、支持多線程、多任務和的多用戶操作系統(tǒng);能夠運行主要的應用程序、網絡協(xié)議和Unix工具軟件;它同時支持32位硬件和64位硬件平臺;Linux繼承了Unix的以網絡為核心的設計思想,是一個性能穩(wěn)定的多用戶、實時的網絡操作系統(tǒng)[2]。</p><p>  我這次使用的Linux的桌面系統(tǒng)Ubuntu12.04 32位操作系統(tǒng)。Linux系統(tǒng)可以運行在不同的硬件平臺,這個對于我們這些軟件開發(fā)者來

44、說無疑是件非常好的事,可以進行各種平臺的系統(tǒng)移植。最典型的有安卓系統(tǒng),其內核也是Linux系統(tǒng)內核。在Linux環(huán)境開發(fā)視頻監(jiān)控系統(tǒng)的好處就在于以后能夠很好的移植到移動終端。</p><p><b>  QT技術簡介</b></p><p>  QT是Nokia公司開發(fā)的一個集成開發(fā)環(huán)境,它封裝有自己的一套庫,以至于能實現(xiàn)跨平臺編程。QT是一個非常好的C++圖形用戶界

45、面UI設計應用程序框架。它給應用程序開發(fā)者提供了一套功能齊全的進行藝術級的圖形用戶界面程序設計所需的功能[3]。Qt很容易擴展,并且 允許真正地組件編程?;旧螿t和X Window上的GTK,Openwin,Motif等圖形界面庫和 Windows 平臺上的ATL,CL,OWL,VMFC是非常類似的[4]。</p><p>  QT模塊化程度非常高是因為它有非常好的封裝機制,而且具有非常好的可重用性,這將非常方

46、便了應用程序開發(fā)用戶進行軟件開發(fā)。QT提供了一種安全類型來替代callback,稱為信號和槽(signals/slots)。這些都使得不同模塊之間的協(xié)同工作變得非常簡單。</p><p>  QT提供了基于模版的date/timefile、directory management、serialization、I/O device、collections、類,而且還包括了多達250個以上的C++類。甚至還包括了正則

47、表達式的處理功能。支持2D/3D/圖形渲染,支持OpenGL。而且有大量的開發(fā)文檔。</p><p>  V4L2編程技術簡介</p><p>  V4L2編程主要是針對于uvc免驅USB設備的設計的一個軟件編程框架,主要是用于采集USB攝像頭的視頻信息等。V4L2有以下編程模式:</p><p>  a. 設置采集方式:</p><p> 

48、 打開視頻設備后,可以設置該視頻設備的屬性,例如放縮、裁剪等。這一步是可選的。在Linux編程中實現(xiàn)對設備的I/O通道進行統(tǒng)一管理一般通過調用系統(tǒng)的ioctl()函數(shù)。</p><p>  extern int ioctl(int __fd, unsigned long int __request, …) __THROW;</p><p>  __fd:USB視頻設備的設備ID號

49、,例如調用了系統(tǒng)open()函數(shù)來打開視頻通道后返回的videoFd</p><p>  __request:具體的命令標識符。</p><p><b>  b. 一般操作流程</b></p><p><b>  1) 打開設備文件</b></p><p>  int fd = open(“/dev

50、/video0”, O_RDWR);</p><p>  2) 查詢并獲取到USB視頻設備的設備屬性,可以查看到該設備具有的一些功能,例如USB視頻設備是否具有視頻輸入輸出的功能,或者音頻輸入輸出的功能等。</p><p>  VIDIOC_QUERYCAP,struct v4l2_capability </p><p>  v4l2_std_id std; <

51、;/p><p><b>  do{</b></p><p>  ret= ioctl(fd, VIDIOC_QUERYSTD, &std); </p><p>  }while (ret == -1 && errno == EAGAIN); </p><p>  switch(std){</p&

52、gt;<p>  case V4L2_STD_NTSC: </p><p><b>  //…… </b></p><p>  case V4L2_STD_PAL: </p><p><b>  //……</b></p><p><b>  }</b></p

53、><p>  3) 選擇USB視頻設備的視頻輸入,有些視頻設備可以有多個視頻輸入。</p><p>  VIDOC_S_INPUT,struct v4l2_input</p><p>  4) 設置視頻采集的的視頻幀格式和視頻制式,視頻制式包括幀的格式,NTSC,PAL,包括寬度(width)和高度(height)等。</p><p>  VID

54、IOC_S_STD,VIDIOC_S_FMT,struct v4l2_std_id,struct v4l2_format</p><p>  5) 向驅動申請緩沖,一般不超過5個。</p><p>  struct v4l2_requestbuffers</p><p><b>  6) 申請物理內存</b></p><p&

55、gt;  從內核申請到幀緩沖空間,并將其映射到用戶空間去,然后可以直接對采集到的視頻數(shù)據(jù)幀進行操作了,不必再去進行復制緩沖區(qū)內容了。</p><p>  將從內核中申請下來的緩存進行入隊列操作,存放采集到的視頻幀數(shù)據(jù)。</p><p>  VIDIOC_QBUF,struct v4l2_buffer</p><p>  7) 開始視頻的采集</p>&

56、lt;p>  enum v4l2_buf_type type</p><p>  type = V4L2_BUF_TYPE_VIDEO_CAPTURE; </p><p>  if (ioctl (fd, VIDIOC_STREAMON, &type) < 0) </p><p><b>  { </b></p

57、><p>  printf("VIDIOC_STREAMON error\n"); </p><p>  // return -1; </p><p><b>  }</b></p><p>  8) 進行出隊列操作從而獲取已采集數(shù)據(jù)到的視頻幀緩沖數(shù)據(jù),取得原始采集數(shù)據(jù)。VIDIOC_DQBUF</

58、p><p>  將緩沖區(qū)重新入隊列尾,這樣可以循環(huán)采集</p><p>  VIDIOC_QBUF</p><p>  9) 停止視頻采集。</p><p>  VIDIOC_STREAMOFF</p><p>  10) 關閉視頻設備。</p><p><b>  close(fd)&l

59、t;/b></p><p><b>  系統(tǒng)總體設計概述</b></p><p><b>  分析系統(tǒng)需求</b></p><p>  視頻監(jiān)控系統(tǒng)主要由服務端程序和客戶端程序構成。服務器(server)端是基于Linux系統(tǒng)環(huán)境下的網絡服務器程序。服務端中視頻數(shù)據(jù)的采集部分利用v4l2(video for Linu

60、x II)對網絡攝像頭(USB攝像頭)進行控制和訪問并且獲取由攝像頭捕獲到的視頻數(shù)據(jù),然后由huffman編碼進行壓縮,然后再通過網絡服務將獲取到的視頻數(shù)據(jù)進行封裝成http數(shù)據(jù)幀并利用http協(xié)議發(fā)送到客戶端。</p><p>  由于視頻監(jiān)控系統(tǒng)的服務器(server)端視頻數(shù)據(jù)是通過http協(xié)議發(fā)送的,所以此系統(tǒng)客戶端沒有平臺限制,只要支持HTTP1.0以上的平臺就可以訪問系統(tǒng)的服務。而且,系統(tǒng)的服務還可以

61、直接通過web瀏覽器訪問(對firefox、Google Chrome瀏覽器支持最佳)。為了提高傳輸效率我們還需要進行客戶端的軟件開發(fā),由于對客戶端沒有平臺要求,即實現(xiàn)跨平臺,所以在Windows、Linux、android等平臺都可以實現(xiàn)。視頻監(jiān)控系統(tǒng)的設計主要以Linux為例用QT實現(xiàn)一個簡易的客戶端軟件,同時還可以用瀏覽器訪問,既同時實現(xiàn)了C/S架構與B/S架構的網絡視頻監(jiān)控系統(tǒng)。</p><p>

62、;  系統(tǒng)的軟件結構及整體框架</p><p><b>  整體結構框圖</b></p><p>  視頻監(jiān)控系統(tǒng)總體結構圖如圖1所示</p><p><b>  視頻監(jiān)控系統(tǒng)結構圖</b></p><p>  上圖所示,為視屏監(jiān)控系統(tǒng)的結構總圖,其主要作用是為后續(xù)的軟件模塊設計及程序代碼的編寫打了

63、個初略的框架,這也是視頻監(jiān)控系統(tǒng)設計的指明燈。從圖中可以看出主要的流程,以及邏輯關系。在當今社會互聯(lián)網、移動互聯(lián)網發(fā)展非常迅速,網絡遠程視頻監(jiān)控是必然趨勢,TCP/IP和socket的創(chuàng)建使視頻可以融入到互聯(lián)網中。4G時代的到來,使得我們可以將實時視頻監(jiān)控發(fā)展到移動終端上,這將更加方便我們的日常生活。</p><p><b>  模塊的功能分析</b></p><p>

64、;  服務器(server)端負責視頻數(shù)據(jù)的采集,采集可以通過v4l2編程實現(xiàn),有詳細的API開發(fā)文檔,以及v4l2編程的相關資料可以參考。</p><p>  客戶端(client)主要負責的是將接收到的視頻數(shù)據(jù)通過QT編程將其渲染出來。主要用到了QT中的信號(signal)和槽(slot)機制、以及繪圖事件,QT是利用C++編程,而且它封裝了一套自己的庫可以實現(xiàn)跨平臺,這也就解決了前面提到的客戶端的跨平臺特性

65、。</p><p>  還有連接Server與Cclient的就是采用Socket網絡服務器的搭建,這主要采用的是Linux環(huán)境網絡編程。該網絡的搭建主要是利用基于TCP/IP協(xié)議的HTTP協(xié)議,將服務器(server)端采集到的視頻數(shù)據(jù)封裝成http數(shù)據(jù)幀的形式,然后利用http協(xié)議將視頻數(shù)據(jù)幀發(fā)送到客戶端(client)。由于是實時傳輸,所以還用到多線程,使得每個客戶端(client)相互獨立,各個線程都將執(zhí)

66、行一個死循環(huán),源源不斷的給客戶端發(fā)送視頻數(shù)據(jù)。</p><p>  系統(tǒng)中各模塊功能的具體實現(xiàn)</p><p>  服務器:數(shù)據(jù)采集部分</p><p><b>  模塊功能描述</b></p><p>  視頻數(shù)據(jù)的采集是視頻監(jiān)控系統(tǒng)中相當重要的,沒有視頻數(shù)據(jù)的采集就不可能有后面視頻的編碼、視頻的解碼、視頻數(shù)據(jù)的網絡傳

67、輸,也就是說沒有視頻數(shù)據(jù)采集就沒有監(jiān)控的傳播。這一模塊需要查看、配置設備的屬性并從設備中獲取圖像數(shù)據(jù)。</p><p>  根據(jù)獲取到的設備信息,利用v4l2(vidoo for Linux II)通過函數(shù)ioctl()對USB攝像頭進行配置,打開設備,開啟視頻流功能,然后開始進行視頻數(shù)據(jù)采集,采集到數(shù)據(jù)后將數(shù)據(jù)保存,采集完畢以后關閉設備功能,最后關閉視頻設備,退出整個程序。</p><p&g

68、t;<b>  技術概要</b></p><p>  當前模塊需要涉及到對設備的I/O進行相關的操作,主要通過v4l2(video for Linux II)框架對視頻設備進行設置和控制。主要用到了以下幾個宏定義:</p><p>  VIDIOC_REQBUFS:分配內存。</p><p>  VIDIOC_QUERYBUF:將分配出來的數(shù)據(jù)

69、緩存區(qū)映射到物理地址。</p><p>  VIDIOC_S_FMT:讀取當前驅動的視頻捕獲格式。</p><p>  VIDIOC_ENUM_FMT:獲取USB視頻設備驅動所支持的視頻格式。</p><p>  VIDIOC_QUERYCAP:查詢驅動功能。</p><p>  VIDIOC_G_FMT:設置當前驅動的視頻捕獲格式。<

70、/p><p>  VIDIOC_TRY_FMT:檢驗視頻設備驅動的顯示格式是否正確。</p><p>  VIDIOC_CROPCAP:查詢驅動的修剪能力。</p><p>  VIDIOC_S_CROP:設置視頻信號的邊框。</p><p>  VIDIOC_G_CROP:讀取視頻信號的邊框。</p><p>  VID

71、IOC_QBUF:把視頻數(shù)據(jù)從緩存中取出來。</p><p>  VIDIOC_DQBUF:把視頻數(shù)據(jù)放回隊列。</p><p>  VIDIOC_STREAMON:開始視頻數(shù)據(jù)顯示函數(shù)。</p><p>  VIDIOC_STREAMOFF:結束視頻顯示函數(shù)。</p><p>  VIDIOC_QUERYSTD:查看USB視頻設備支持的標準

72、(例如: NTSC(歐洲標準)、PAL(亞洲標準))。</p><p>  其中還可以通過查閱v4l2編程技術提供的API文檔,熟悉一些結構體屬性的賦值以及一些控制標記具有的實際意義。</p><p><b>  邏輯概要及流程圖</b></p><p>  這一節(jié)主要介紹了服務器(server)端的如何采集視頻數(shù)據(jù)。圖2是視頻采集流程圖,描述

73、了服務器(server)端視頻數(shù)據(jù)采集的主要編程步驟。</p><p>  服務器(server)端視頻數(shù)據(jù)采集流程</p><p>  下面將對沒一個步驟進行詳細的介紹:</p><p>  打開視頻video設備:</p><p>  打開USB視頻設備(視頻監(jiān)控系統(tǒng)的設計中指的是我們的USB攝像頭)。我們利用Linux系統(tǒng)提供的接口函數(shù)

74、open來對設備進行打開的操作。下圖(圖3)對這一過程進行了詳細的描述。FD是USB攝像頭設備文件描述符,簡單的來說,F(xiàn)D只是一個int型(即整數(shù)),在調用Linux系統(tǒng)編程中的open()函數(shù)時的返回值。起到的是一個索引的作用,其進程通過查找文件描述符表項從而找到該FD所指向的文件。在Linux系統(tǒng)中,一切設備皆文件,所以不管是打開的文件還是打開設備都是通過此表中的文件描述符來引用的。</p><p>  打開

75、USB攝像頭設備流程圖</p><p>  2) 獲取視頻設備信息(查詢視頻設備信息):</p><p>  查詢USB攝像頭設備驅動的相關信息以及和視頻數(shù)據(jù)采集相關的參數(shù),根據(jù)查詢到的設備信息初步判斷設備類型以及將要處理的數(shù)據(jù)類型。利用ioctl()函數(shù)以及v4l2提供的兩個結構體v4l2_capbility和v4l2_format來保存獲取到的USB攝像頭設備驅動信息和數(shù)據(jù)幀信息。詳細

76、流程如下圖(圖4)所示。VIDIOC_G_FMT、VIDIOC_S_FMT等需要通過查閱v4l2提供的API來理解具體意義。</p><p>  查詢視頻設備信息流程圖</p><p>  3) 設置USB攝像頭采集方式:</p><p>  設置USB攝像頭(視頻設備)的視頻采集方式,例如視頻數(shù)據(jù)幀的采集速率(即每秒鐘采集到的視頻幀數(shù)量)、采集圖像的分辨率等一些參

77、數(shù)的設置。用到v4l2中的v4l2_streamparm和v4l2_format兩個結構體以及VIDIOC_S_PARM和VIDIOC_S_FMT兩個宏,相關用法的介紹請詳細查閱v4l2框架的API文檔。具體實現(xiàn)方法參照下圖(圖5)。</p><p>  設置視頻采集方式流程圖</p><p>  4) 向驅動申請緩存</p><p>  向內核驅動申請幾塊緩沖區(qū)(

78、此緩沖區(qū)是由內核管理的,所以需要向內核申請),用來存放USB攝像頭設備采集的視頻數(shù)據(jù)。從內核中申請緩存用到v4l2編程中的結構體v4l2_requestbuffer和宏定義VIDIOC_REQBUFS。具體的實現(xiàn)方法參照下圖(圖6)。</p><p><b>  申請緩沖區(qū)流程圖</b></p><p>  5) 設置緩沖區(qū)屬性</p><p>

79、;  緩存申請到了后,對申請到的緩存進行必要的設置。其實緩沖區(qū)的設置是很重要的,因為緩存的作用在傳輸數(shù)據(jù)上占有舉足輕重的地位,他是CPU和內存的中間產物,緩存指的是臨時文件交換區(qū),電腦經常把常用的文件從存儲器里提取出來存放到臨時緩存里面。還要設置緩存的訪問方式以及使用內存映射的訪問方式,對緩存進行映射,并建立緩存隊列。具體設置方法如下圖(圖7)所示。</p><p><b>  緩沖區(qū)設置流程圖<

80、/b></p><p>  6) 視頻圖像采集到的數(shù)據(jù)處理</p><p>  設置視頻設備屬性時,需要用到這兩個宏定義VIDIOC_STREAMON和VIDIOC_STREAMOFF。通過對視頻設備進行設置VIDIOC_STREAMON和VIDIOC_STREAMOFF來控制視頻設備的開始和停止采集數(shù)據(jù),在設置開始和停止中間通過對緩存的輪換讀取來獲得視頻設備采集到的視頻數(shù)據(jù)并對其進

81、行數(shù)據(jù)處理(這里說的數(shù)據(jù)處理主要書對圖像進行壓縮(也就是進行huffman編碼)和傳輸兩個部分,具體的處理方式在后面做詳細介紹)。獲得視頻設備采集到的數(shù)據(jù)需要調用VIDIOC_QBUF和VIDIOC_DQBUF兩個宏定義來控制對緩沖隊列進行進/出隊操作。詳見下圖(圖8)。</p><p><b>  視頻數(shù)據(jù)處理流程圖</b></p><p><b>  服

82、務器:數(shù)據(jù)處理</b></p><p><b>  模塊功能描述</b></p><p>  完成圖像壓縮、編碼、封裝。在此需要設計web服務器端程序,有的是用QT界面設計編程來建立的,并且建立web服務器以供客戶端進行訪問。</p><p>  對從攝像頭設備采集到的視頻數(shù)據(jù)進行一次huffman編碼,把圖片轉換成jpeg或者jp

83、g格式的。這個步驟也可以在客戶端完成,但是考慮到瀏覽器不支持這項操作。為了實現(xiàn)C/S架構的同時,也支持B/S架構,我們就在服務器端進行這些數(shù)據(jù)的處理。</p><p>  建立一個基于TCP/IP協(xié)議的web服務器,當有客戶端進行連接服務器時采用HTTP協(xié)議的網絡發(fā)送經過處理后的視頻數(shù)據(jù)幀,這些數(shù)據(jù)已經經過HTTP協(xié)議進行了封裝。</p><p><b>  技術概要</b

84、></p><p>  這一模塊主要涉及到對原始圖像數(shù)據(jù)進行的壓縮編碼以及基于C語言的網絡和多線程的編程。</p><p>  關于視頻的壓縮編碼部分在視頻監(jiān)控系統(tǒng)的設計中只是簡單的調用現(xiàn)有接口(API),不做需要深入的研究。視頻監(jiān)控系統(tǒng)通過對基于C語言的socket網絡編程和多線程編程熟悉,可以參考《UNIX環(huán)境高級編程》中的網絡編程部分,就可以實現(xiàn)網絡服務器的功能以及多任務的處理

85、功能。</p><p>  邏輯概要及程序流程圖</p><p>  這一模塊的作用實際上是上一個模塊中提到的“數(shù)據(jù)處理”部分。由于視頻設備采集到的每一幀視頻數(shù)據(jù)經過了huffman編碼以后都會變成一張完整的圖片,所以我們在下面發(fā)送視頻數(shù)據(jù)的傳輸部分需要做一個簡單的數(shù)據(jù)封裝,下面分別給出了程序流程圖(圖9)和數(shù)據(jù)封裝格式(圖10)。</p><p>  在這個模塊中

86、功能的實現(xiàn)是可以參照一下圖示進行程序的編寫,這里已經給出了模塊的設計框架。</p><p>  服務器端數(shù)據(jù)處理流程圖</p><p>  服務器端數(shù)據(jù)幀封裝結構圖</p><p><b>  客戶端:數(shù)據(jù)獲取</b></p><p><b>  模塊功能描述</b></p><

87、p>  客戶端獲取視頻數(shù)據(jù),主要利用socket連接方式獲取??蛻舳耸紫认蚍掌鞫税l(fā)送視頻數(shù)據(jù)請求,根據(jù)服務器端的響應信息,從而可以接收視頻數(shù)據(jù)??蛻舳伺c服務器端需要建立網絡連接必須要進行了“三次握手”,才連接成功,然后視頻監(jiān)控系統(tǒng)的客戶端向服務器端發(fā)送視頻數(shù)據(jù)。</p><p>  客戶端與服務器建立TCP連接,向服務器發(fā)送了http請求,接收服務器返回的響應信息,并且根據(jù)響應信息按照一定的格式進行數(shù)據(jù)的

88、接收,接收到數(shù)據(jù)后還要根據(jù)服務器端數(shù)據(jù)幀的封裝結構,將有效數(shù)據(jù)(既視頻數(shù)據(jù)幀)提取出來,然后就能夠將提取出來的視頻數(shù)據(jù)渲染出來。</p><p><b>  技術概要</b></p><p>  客戶端獲取數(shù)據(jù)模塊主要涉及到基于TCP/IP協(xié)議的客戶端編程,關于客戶端編程的方法比較靈活,在編程語言框架的選擇方面也比較廣泛,其實有多種編程語言都可以實現(xiàn)客戶端程序的編寫,

89、我選用的是用QT編程來實現(xiàn),以此為例來實現(xiàn)客戶端程序的編寫。</p><p><b>  邏輯概要及流程圖</b></p><p>  這一模塊主要涉及到TCP客戶端編程和對從服務器接收到的數(shù)據(jù)進行分割處理,TCP客戶端的編程比較程序化,有統(tǒng)一的編程步驟和一般流程,數(shù)據(jù)分割需要根據(jù)服務端數(shù)據(jù)發(fā)送情況(即數(shù)據(jù)的封裝結構)來確定。下面給出TCP網絡編程流程(圖11)和數(shù)據(jù)

90、分割步驟(圖12)。</p><p>  TCP客戶端編程利用的是服務器socket()來連接,這里是個難點,在測試的時候出現(xiàn)了一些小錯誤。提示錯誤是:bind error 綁定出錯。</p><p>  服務器與客戶端TCP網絡編程流程圖</p><p>  客戶端的數(shù)據(jù)分割流程圖</p><p>  客戶端:QT視頻渲染</p>

91、;<p><b>  模塊功能描述</b></p><p>  我們在客戶端看到的視頻圖像其實是一張一張單獨的圖片連續(xù)不斷的刷新所形成的,視頻監(jiān)控系統(tǒng)中主要是通過QT中的安全機制——信號(signals)和槽(slots)以及QT控件的繪圖事件來刷新圖片的。所以這一模塊中主要是將上一模塊所接收到的視頻幀數(shù)據(jù)通過QT中的繪圖事件(PaintEvent)將圖片刷新加載到控件上,從而

92、形成了連續(xù)的視頻圖像,實現(xiàn)了視頻渲染的功能,經過后續(xù)的一些測試,發(fā)現(xiàn)這一過程將會消耗大量的CPU資源。</p><p><b>  技術概要</b></p><p>  這一模塊主要涉及到了QT的編程和繪圖事件的使用,包括了對一些控件的控制和線程的控制。由于循環(huán)顯示圖像時候會阻塞圖形界面,所以此時應該用一個單獨的線程來完成刷新圖像的工作。對于QT相關一些知識請詳細參考

93、QT官方提供的API文檔。</p><p><b>  邏輯概要及流程圖</b></p><p>  視頻圖像的刷新流程,這一模塊主要用到信號和槽的機制來實現(xiàn)的??蛻舳艘曨l渲染模塊流程可參考下圖(圖13)。</p><p>  客戶端視頻渲染模塊流程圖</p><p><b>  視頻監(jiān)控系統(tǒng)測試</b&

94、gt;</p><p><b>  系統(tǒng)測試目標</b></p><p>  軟件測試是一門充滿了智慧和挑戰(zhàn)性的科學,它涉及到了工具技術的使用、方法論、過程論等諸多技術領域。測試的目的就是為了找出并且解決程序開發(fā)過程中存在的Bug。軟件測試的最終目標,就是為了更早地、更快地將軟件程序或軟件產品中所存在的各種缺陷找出來,并告訴軟件開發(fā)人員,讓他們更好地完善軟件系統(tǒng)。最終

95、能夠及時的發(fā)布出一個高質量,高性能的軟件產品,更好地滿足客戶的所提出的軟件需求。</p><p>  測試分為黑盒測試與白盒測試,其主要區(qū)別是:黑盒測試只需對其功能、性能等進行測試就行了而不需要深入去了解程序的具體實現(xiàn)代碼與軟件的功能實現(xiàn)過程;而白盒測試則需要了解程序代碼的編寫以及實現(xiàn)的過程,通過對底層代碼的了解從而找出程序的不足指出以及Bug。</p><p>  對于視頻監(jiān)控系統(tǒng)我們分

96、別進行黑盒測試與白盒測試。</p><p><b>  系統(tǒng)測試過程</b></p><p>  視頻監(jiān)控系統(tǒng)的測試將分別對服務端和客戶端進行,我們可以下執(zhí)行步驟。</p><p>  連接好USB攝像頭,在Linux終端運行服務端程序,獲取攝像頭設備的數(shù)據(jù),如果攝像頭有不匹配或者連接問題,則會報錯。</p><p> 

97、 如上一步正常則運行客戶端程序,也就是采用QT設計的圖形化界面,其實在沒有開啟服務端程序時,也可以開啟客戶端,但是不能獲取到視頻數(shù)據(jù)。</p><p>  在客戶端輸入服務端的IP地址(如本地攝像頭IP為127.0.0.1),設置想要查看的窗口,按照自己的要求進行監(jiān)控,還可以通過界面上shoot,通過服務端可以設計客戶端相關信息在圖形化界面上顯示出來,以便用戶查看。</p><p>  用

98、戶可以同時安裝多個USB攝像頭,通過客戶端查看各個USB攝像頭拍攝到的視頻。</p><p>  系統(tǒng)調試及運行是的效果圖如下圖(圖14、圖15、圖16)所示。</p><p>  啟動系統(tǒng)效果圖(左:客戶端,右:服務端)</p><p>  客戶端準備連接時效果圖(左:客戶端,右:服務端)</p><p>  系統(tǒng)網絡連接后效果圖(左:客戶

99、端,右:服務端)</p><p><b>  系統(tǒng)測試結果</b></p><p>  測試結果:功能基本實現(xiàn),目前未發(fā)現(xiàn)Bug。</p><p><b>  結論</b></p><p>  在視頻監(jiān)控系統(tǒng)課題的所設計和實現(xiàn)中,充分利用了Linux操作系統(tǒng)作為嵌入式操作系統(tǒng)的諸多優(yōu)勢,嵌入式Lin

100、ux系統(tǒng)下的視頻網絡監(jiān)控系統(tǒng)是計算機軟硬件、電工電子裝置以及網絡通信等多方面的有機結合而形成的,它主要以網絡化、交互性、智能化為特征,結構較為復雜。如果采用OSI七層模型的內容和形式,把相應的控制模塊硬件、視頻數(shù)據(jù)采集、視頻數(shù)據(jù)的編碼、視頻數(shù)據(jù)的解碼和視頻監(jiān)控軟件以及開發(fā)環(huán)境的搭建等進行有機結合,可以形成一個統(tǒng)一完整的系統(tǒng)框架。在Linux 操作系統(tǒng)中調用v4l2編程中的API接口和底層設備驅動程序來完成視頻捕獲操作。v4L2 是Lin

101、ux 操作系統(tǒng)中的內核驅動,主要是關于視頻的開發(fā)。它為Linux操作系統(tǒng)中的各種視頻設備提供了統(tǒng)一的API編程接口,應用程序可以通過這些接口函數(shù)進行操縱各種不同的設備。結合了QT技術構建了具有圖形化界面支持的嵌入式系統(tǒng)開發(fā)平臺,這種系統(tǒng)結構模式是目前在PC上進行視頻監(jiān)控系統(tǒng)開發(fā)的熱點。</p><p>  對未來視頻監(jiān)控的展望:未來的視頻監(jiān)控系統(tǒng)應該更加趨向智能化、人性化、同時能夠自行的對異常情況分析判斷。另外在

102、不久的未來,視頻監(jiān)控系統(tǒng)還可具有安防互動功能,與各種傳感器,控制器鏈接,實現(xiàn)自動目標跟蹤等功能。而且隨著4G通信技術的發(fā)展和成熟,視頻監(jiān)控系統(tǒng)的成本也應該進一步降低,并且能夠將其移植到移動終端,以適應更廣泛領域的需要。</p><p>  由于我還是個初學者,雖然最終能夠實現(xiàn)了一些功能,但是對中間相關的一些模塊開發(fā),比如驅動等等還不是很熟悉,還有待進一步學習和掌握。論文的撰寫還有很多不足,還望老師多多指正。<

103、;/p><p><b>  參考文獻</b></p><p>  凌進.網絡視頻監(jiān)控技術的應用和發(fā)展[D].北京:北京郵電大學.2007.6,7:38.</p><p>  倪繼利.Linux內核分析及編程[M].北京:電子工業(yè)出版社,2006.1,4:315.</p><p>  戴麗.基于Video4Linux的USB攝

104、像頭圖像采集實現(xiàn)[J].合肥工業(yè)大學.2006,2:31.</p><p>  劉斌.基于嵌入式系統(tǒng)的視頻采集模塊的設計[D].西安電子科技大學,2006,53:38.</p><p>  許海燕,付炎.嵌入式系統(tǒng)技術與應用[M] .機械工業(yè)出版社,2002.</p><p>  鄒思軼.嵌入式Linux 設計與應用[M] .清華大學出版社,2002.</p&

105、gt;<p>  劉富強.數(shù)字視頻監(jiān)控系統(tǒng)開發(fā)及應用[M ] .北京:機械工業(yè)出版社,2003.</p><p>  王英杰,陳祥獻,耿晨歌.嵌入式網絡化多媒體視頻監(jiān)控系統(tǒng)的設計與實現(xiàn)[J ]</p><p>  薩默菲爾德(英),布蘭切特(加)[C.GUI.QT.4編程(第二版)] [電子書]</p><p>  Linux窗口程序設計-QT4精彩實

106、例分析-PTF [電子書]</p><p><b>  致 謝</b></p><p>  我們大學的學習今天已經畫了一個完美的句號,感謝大學四年以來,各位老師對我的諄諄教誨,感謝**,感謝大家有緣能在生命中重要的四年,我的朋友,同學,老師,在這四年來給我的支持與關懷。</p><p>  為順利完成此次設計,我傾注了大量的時間和精力,最終取

107、得了成功。當然,這份成功的取得是與老師和同學的熱心幫助也是分不開的。在畢業(yè)課題設計過程當中,**老師給予了我悉心的分析和技術上的指導,同時也提供了許多寶貴的想法和建議。于此,謹向他們致以最誠摯的謝意。</p><p>  首先,感恩父母在這二十幾年以來對我的養(yǎng)育和照撫、體貼和關懷。正是在他們的慈愛與呵護下,我才能快樂地成長、勇敢地追求自己的夢想。</p><p>  其次,感謝這么多年以來

溫馨提示

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

最新文檔

評論

0/150

提交評論