嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第1頁
嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第2頁
嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第3頁
嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第4頁
嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 分類號_ 密級_ UDC _ 學(xué)號_北京郵電大學(xué)畢業(yè)設(shè)計(jì)(論文)論文題目thesis Topic學(xué)生姓名學(xué) 號所 在 院 系專 業(yè) 班 級導(dǎo)師姓名職稱完成日期2012年6月 日嵌入式監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要 本文分析了一種基于嵌入式Linux的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。系統(tǒng)以嵌入式Linux為核心平臺,通過嵌入式平臺建立的基于TCP/IP協(xié)議的視頻服務(wù)器,將usb攝像頭采集來的圖像數(shù)據(jù)壓縮后,經(jīng)過網(wǎng)絡(luò)傳輸,完成對監(jiān)控現(xiàn)場的網(wǎng)絡(luò)視頻監(jiān)控任務(wù)。論文首先闡述了嵌入式網(wǎng)絡(luò)視頻的監(jiān)控系統(tǒng)的發(fā)展?fàn)顩r,以及整體構(gòu)建,然后介紹了嵌入式Linux操作系統(tǒng)以及各種軟件開發(fā)平臺,分析了主要的編程技術(shù)以及如何搭建交叉編譯

2、平臺,并對在Linux操作系統(tǒng)下的USB驅(qū)動程序進(jìn)行了研究。本文重點(diǎn)討論了圖像采集、編碼和網(wǎng)絡(luò)通信程序的設(shè)計(jì)原理與實(shí)現(xiàn)。最后以提供的例子進(jìn)行了系統(tǒng)整體測試,并提出了進(jìn)一步開發(fā)設(shè)想。本文的研究結(jié)果具有較大的工程實(shí)際意義,并對基于IP技術(shù)的各種視頻通信應(yīng)用具有一定的參考價(jià)值。關(guān)鍵詞: 嵌入式; Linux; 視頻監(jiān)控; TCP/IP; QT;Designand implementation of embedded monitoring systemAbstract This paper analyzes a network video monitoring system based on embe

3、dded Linux. The system uses embedded Linux as the core platform, video server based on TCP/IP protocol is established through the embedded platform, the image data collected by the USB camera to compression, through the network transmission, network video monitoring task of monitoring the scene. Thi

4、s paper first describes the development status of embedded network video monitoring system, as well as the overall construction, then introduced the embedded Linux operating system and software development platform, analyzed the main programming technology and how to build the cross compile platform

5、, and in the Linux operating system under the USB driver program based on. This paper discussed the design principle and implementation of image acquisition, coding and network communication program. Finally, in order to provide examples of the system is tested, and put forward the plan of further d

6、evelopment. The results of this research have great practical significance, and the IP technology based on video communication application has some reference value.Keywords: embedded system; Linux; video; surveillance; TCP/IP; QT目 錄摘 要iAbstractii1.緒論11.1 研究背景及現(xiàn)狀11.1.1 研究背景11.1.2 視頻監(jiān)控的現(xiàn)狀11.2 研究目的和意義2

7、1.3 本論文的主要工作31.4 論文總體結(jié)構(gòu)32.硬件平臺概述42.1 硬件平臺介紹42.1.1 攝像頭介紹42.1.2 運(yùn)行硬件平臺介紹52.2 軟件平臺介紹52.2.1 Linux操作系統(tǒng)52.2.2 QT62.2.3 Vi編輯器92.2.4 ARM交叉編譯環(huán)境103.V4L2詳細(xì)介紹123.1 V4L2概述123.1.1什么是V4L2123.1.2 V4L2的主要功能123.2 V4L2使用方法133.2.1 V4L2驅(qū)動的主要ioctl133.2.2 V4L2的主要結(jié)構(gòu)133.2.3 V4L2操作流程144 .軟件詳細(xì)設(shè)計(jì)164.1 軟件運(yùn)行環(huán)境方案164.2 服務(wù)器設(shè)計(jì)方案164.

8、2.1 視頻采集初始化164.2.2 申請并設(shè)置視頻采集的幀緩沖區(qū)174.2.3 視頻傳輸194.3 客戶端設(shè)計(jì)方案204.3.1 客戶端界面204.3.2 錄像功能234.3.3 拍照功能234.4 軟件使用流程說明244.4.1 打開服務(wù)端24結(jié) 論29致 謝30參考文獻(xiàn)31外文原文32中文翻譯46 1.緒論1.1 研究背景及現(xiàn)狀隨著多媒體技術(shù)、信息電子技術(shù)和網(wǎng)絡(luò)通信技術(shù)的發(fā)展,視屏監(jiān)控系統(tǒng)正在朝著平臺化、智能化和網(wǎng)絡(luò)化的方向發(fā)展,嵌入式監(jiān)控系統(tǒng)以其獨(dú)有的微小性、穩(wěn)定性、功能針對性而被廣泛應(yīng)用在各個(gè)領(lǐng)域。1.1.1 研究背景隨著人類社會不斷的向數(shù)字化、網(wǎng)絡(luò)化、全球一體化發(fā)展,人們接收的信息

9、量越來越大。有人說:一切競爭都是對信息的競爭。信息的重要性正在逐步的被人們所意識到,人們在接受更多信息的同時(shí),對能獲取更多信息的意愿也變得更加強(qiáng)烈。從古至今,信息傳輸方式已經(jīng)進(jìn)行了好幾次重大的變革:從最原始書信傳遞,到之后的聲音傳遞,再到更加生動的圖像傳遞,最后到現(xiàn)在高端的視頻傳遞,都可以看做是人們獲取更多信息量的意愿所推動的產(chǎn)物。俗話說:“百聞不如一見”。在這幾項(xiàng)傳輸方式中,視頻傳遞無疑是其中的佼佼者:首先視頻可以真實(shí)地還原當(dāng)時(shí)的情景,使傳輸?shù)男畔⒏庇^、更有表現(xiàn)力,其次,視頻信息具有非常高的真實(shí)性和說服力:文字可以造假,聲音可以模仿,圖片可以修改,而視頻信息是非常難以偽造的,而修改后的視頻

10、也很難不留下痕跡,可謂是最有說服力的信息之一。而視頻還有傳輸信息量大的特點(diǎn)。因此,信息在信息的傳輸中具有舉足輕重的地位。如今電子信息技術(shù)、計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)通信技術(shù)正在飛速的發(fā)展,這也給視頻信息的制作和傳輸提供了技術(shù)保證。在視頻信息剛剛開始發(fā)展的時(shí)候,生動形象的視頻雖然給人們帶來了很多便利,但是也產(chǎn)生了一些問題:未經(jīng)壓縮的視頻文件的數(shù)據(jù)量是非常之大的,動輒可達(dá)數(shù)十GB,而一張vcd光盤只有650MB,如果想要將一部視頻完整的保存視頻下來,則需要幾十張vcd,這樣大的數(shù)據(jù)量,即使放在現(xiàn)在的硬件設(shè)施和網(wǎng)絡(luò)環(huán)境下,都是難以承受的,何況是當(dāng)時(shí)還不算寬裕的條件.因此,必須對捕獲到的海量的視頻數(shù)據(jù)進(jìn)行高效的

11、壓縮,這有將數(shù)據(jù)壓縮到一個(gè)合理的大小,才能解決視頻的存儲和傳輸?shù)汝P(guān)鍵問題。1.1.2 視頻監(jiān)控的現(xiàn)狀隨著社會發(fā)展和科技的日新月異,視頻監(jiān)控技術(shù)在不斷的發(fā)展并被應(yīng)用到社會的各行各業(yè),并因其所扮演的重要角色而受到人們的關(guān)注,目前視頻監(jiān)控系統(tǒng)的類別按信號的不同可以分為模擬監(jiān)控和數(shù)字監(jiān)控,按傳輸介質(zhì)的不同可以分為有線監(jiān)控和無線監(jiān)控。模擬監(jiān)控主要是由模擬攝像頭構(gòu)成的閉路監(jiān)控系統(tǒng)。由于是早期視頻監(jiān)控系統(tǒng)的主要模式,所以在國內(nèi)仍然被許多地方使用。由于采用閉路線纜進(jìn)行數(shù)據(jù)傳輸,可以提供清晰可靠的視頻信息,但是存在著許多較為明顯的局限性:第一、傳輸?shù)木嚯x短,由于使用線纜,所以只能架設(shè)在離視頻采集點(diǎn)較近的地方,數(shù)

12、據(jù)傳輸率較低,而且視頻質(zhì)量會受到傳輸距離的影響,如果距離過長會導(dǎo)致視頻質(zhì)量明顯下降;第二、系統(tǒng)的可擴(kuò)展性較差,由于電腦或電視上的接口有限,所以固定的設(shè)備只能接受有限的視頻,沒法充分利用計(jì)算機(jī)的處理能力,形成復(fù)雜的視頻網(wǎng)絡(luò)。第三、后期處理能力不強(qiáng),無法利用視頻處理技術(shù)處理捕獲的數(shù)據(jù),也就無法對視頻進(jìn)行篩選,只能存儲所有的視頻,降低了磁盤空間的利用率。第四、必須架設(shè)專線,無法利用現(xiàn)有網(wǎng)絡(luò),極大地浪費(fèi)了資金,增加了系統(tǒng)的花銷。但隨著圖像處理技術(shù),計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)通信技術(shù)的發(fā)展,出現(xiàn)了基于嵌入式技術(shù)的有線網(wǎng)絡(luò)數(shù)字視頻監(jiān)控系統(tǒng)。相比于傳統(tǒng)的模擬監(jiān)控,它有很多優(yōu)點(diǎn):它擁有權(quán)限控制,可以輕易的定制用戶組,授

13、權(quán)特定用戶進(jìn)行特定的工作。用戶可以在瀏覽器上輸入特定網(wǎng)址來進(jìn)行系統(tǒng)的訪問,實(shí)現(xiàn)視頻監(jiān)控、查看設(shè)備運(yùn)行信息等功能,不需要攜帶龐大的專用設(shè)備,只需要在有因特網(wǎng)的地方就可以隨時(shí)監(jiān)控。給人們帶來了極大的方便。因此基于嵌入式技術(shù)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)有著良好的應(yīng)用前景和發(fā)展前景,完美的替代了陳舊落后的模擬監(jiān)控。隨著無線技術(shù)的快速發(fā)展,數(shù)字監(jiān)控系統(tǒng)在原有的網(wǎng)絡(luò)監(jiān)控系統(tǒng)的基礎(chǔ)上,扔掉了網(wǎng)絡(luò)電纜,改用無線的方式進(jìn)行傳輸,使人們對視頻操作的系統(tǒng)不再局限于有網(wǎng)絡(luò)電纜的地方,WIFI的崛起和普及的速度人盡皆知,短短的時(shí)間內(nèi),WIFI熱點(diǎn)遍布全球各個(gè)角落。只要在有WIFI的地方,你就可以用手機(jī)、平板、筆記本等便攜式設(shè)備連

14、接因特網(wǎng)來訪問視頻監(jiān)控系統(tǒng),使視頻監(jiān)控系統(tǒng)變得更加靈活、可用性更高。即使你走到了一個(gè)沒有WIFI熱點(diǎn)的地方,你也可以使用成熟的3G/4G網(wǎng)絡(luò)等無線數(shù)據(jù)通信方式、之前的2G/2.5G網(wǎng)絡(luò)由于傳輸速率較低,無法完美地訪問數(shù)據(jù)傳輸量大的視頻監(jiān)控系統(tǒng),但3G網(wǎng)絡(luò)的峰值速率可以達(dá)到153.6Kbps,4G網(wǎng)絡(luò)的峰值數(shù)據(jù)更是可以達(dá)到驚人的100Mbps的恐怖速率,這樣網(wǎng)絡(luò)的速率就已不再是問題。如今國內(nèi)大部分的無線視頻監(jiān)控系統(tǒng)所處理成的視頻還是JPEG格式壓縮,但是隨著社會的發(fā)展,人們對視頻監(jiān)控系統(tǒng)的性能指標(biāo)比如視頻畫面的大小、輸出流的大小、傳輸?shù)姆绞胶蛯?shí)時(shí)性等方面也提出了更高的要求,傳統(tǒng)的JPEG壓縮已經(jīng)

15、達(dá)不到人們對系統(tǒng)性能的要求,所以現(xiàn)在的視頻監(jiān)控系統(tǒng)大多已經(jīng)投入了MPEG4或者H.264壓縮技術(shù)的陣營。使用這些技術(shù)的視頻監(jiān)控系統(tǒng)大多都使用了第三方生產(chǎn)的專用芯片或者顯示卡,還有第三方的視頻解碼庫來實(shí)現(xiàn)對視頻編碼的壓縮。這樣做的好處在于可以使用第三方成熟的技術(shù),快速的開發(fā)出實(shí)用的視頻監(jiān)控系統(tǒng),并且無需在技術(shù)的研發(fā)上投入高昂的資金,從而縮短產(chǎn)品的研發(fā)周期,降低產(chǎn)品的研發(fā)費(fèi)用。但是也帶來了一些缺點(diǎn):比如過分依賴第三方成熟的技術(shù),從而使自己的技術(shù)核心競爭力變低、而且第三方產(chǎn)品的好壞直接影響到了自己商品的質(zhì)量、長期來看成本依然偏高等問題。所以視頻壓縮技術(shù)在未來的應(yīng)用前景和發(fā)展前景必將一片光明。1.2

16、研究目的和意義在視頻監(jiān)控系統(tǒng)不斷的發(fā)展、在人們?nèi)粘I钪兴嫉谋戎卦絹碓酱蟮那闆r下,對視頻監(jiān)系統(tǒng)進(jìn)行不斷地研究,將這門課題研究的更加成熟,從而給人們帶了更大的便利性已經(jīng)成為了比較熱門的方向,本文旨在了解并熟悉視頻監(jiān)控系統(tǒng)的發(fā)展背景和工作流程,并利用現(xiàn)有技術(shù)和平臺制作出一套工作穩(wěn)定、可用程度高、具有相關(guān)需要功能的視頻監(jiān)控系統(tǒng)。為以后更加深入的研究打下堅(jiān)實(shí)的基礎(chǔ),同時(shí)拋磚引玉,在制作這套系統(tǒng)的同時(shí),也對自己大學(xué)所學(xué)的知識和技術(shù)進(jìn)行復(fù)習(xí)和總結(jié),為以后即將到來的工作有一個(gè)非常好的準(zhǔn)備。并且拓展思維,將自己不在局限于大學(xué)的學(xué)習(xí)生活和模式下,學(xué)會以一個(gè)軟件開發(fā)者的角度來看待、了解并解決問題。1.3 本論文

17、的主要工作本文根據(jù)視頻監(jiān)控系統(tǒng)的工作流程,結(jié)合已經(jīng)擁有的技術(shù),打算開發(fā)一套基于Linux操作系統(tǒng)下的視頻監(jiān)控系統(tǒng),監(jiān)控系統(tǒng)通過視頻攝像頭來采集視頻數(shù)據(jù),在接收到視頻數(shù)據(jù)后,服務(wù)器使用Linux下的V4L2格式對數(shù)據(jù)進(jìn)捕獲,并對信息進(jìn)行必要的處理。之后通過TCP/IP的傳輸方式,將數(shù)據(jù)傳輸?shù)娇蛻舳耍蛻舳藢鬏數(shù)男畔⑦M(jìn)行處理后,將其完整的顯示在其屏幕上,并將視頻壓縮成通用的AVI格式保存,同時(shí)實(shí)現(xiàn)幾個(gè)常用到的功能,比如說將視頻的某個(gè)瞬間進(jìn)行拍照并保存成圖片等。本文筆者的任務(wù)如下:熟悉Linux操作系統(tǒng),掌握Linux下的常用的操作命令。探索基于Linux平臺下的軟件開發(fā)流程。熟練的掌握Linux

18、下的各種開發(fā)工具,掌握Linux下對特定的視頻攝像頭的驅(qū)動程序的編寫和讀取。深入理解基于Linux下的Video for Linux 2的接口函數(shù),用于捕獲視頻信息,仔細(xì)研究可以將圖片壓縮成視頻的開源庫,實(shí)現(xiàn)視頻的壓縮和存儲。1.4 論文總體結(jié)構(gòu)全文共分為五章,各章內(nèi)容安排如下:第一章 緒論。介紹研究背景,并對視頻監(jiān)控系統(tǒng)的現(xiàn)狀和發(fā)展情況做一個(gè)簡要的說明,提出研究目的和意義,進(jìn)一步明確研究目標(biāo)以及所要完成的工作。第2章 視頻監(jiān)控系統(tǒng)的開發(fā)平臺。對平臺做一個(gè)簡單的介紹,并介紹搭建的過程。第3章 V4L2的介紹與使用方式。對Linux下的Video For Linux 2進(jìn)行詳細(xì)的介紹,并詳細(xì)講述

19、使用方法和重要函數(shù)。第4章 視頻監(jiān)控系統(tǒng)的軟件設(shè)計(jì)和編碼。軟件部分采用模塊化設(shè)計(jì),通過對服務(wù)端和客戶端的分別編碼,實(shí)現(xiàn)整個(gè)視頻監(jiān)控系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。第5章 結(jié)束語。對所完成的任務(wù)進(jìn)行總結(jié),指出該系統(tǒng)的不足指出,以此來展望之后的研究。 2.硬件平臺概述2.1 硬件平臺介紹2.1.1 攝像頭介紹攝像頭(CREMA)作為一種視頻輸入設(shè)備,在電子技術(shù)成熟的今天被廣泛的應(yīng)用與視頻聊天、視頻會議、視頻監(jiān)控、遠(yuǎn)程醫(yī)療和視頻攝錄等方面,由于圖像傳感和解析技術(shù)的成熟,使得攝像頭所攝錄的圖片和視頻的質(zhì)量有了明顯的提高,同時(shí)由于硬件技術(shù)的成熟,攝像頭的價(jià)格也在大幅度的下降。相比于傳統(tǒng)的、專業(yè)的攝像機(jī)等視頻輸入工具,

20、攝像頭具有體積小、使用性高、方便、即插即用等特性,如今人們在進(jìn)行非專業(yè)的視頻圖像錄制時(shí),再也不需要扛著“長槍短炮”了,只需小小的攝像頭并可達(dá)到錄制的要求。攝像頭正在取代著一部分的錄制設(shè)備,在人們的日常生活中扮演著越來越重要的角色。攝像頭一般被分為數(shù)字?jǐn)z像頭和模擬攝像頭兩大類。模擬攝像頭可以采集的模擬視頻信號轉(zhuǎn)化成數(shù)字信號,之后將其存儲到計(jì)算機(jī)里。模擬攝像頭捕捉到的信號必須經(jīng)過特定的設(shè)備將模擬信號轉(zhuǎn)化成數(shù)字信號,并加以壓縮后才可被計(jì)算機(jī)所運(yùn)用,數(shù)字?jǐn)z像頭可以直接捕捉影像,然后通過USB或者串并口傳到計(jì)算機(jī)里。目前市場上的攝像頭主要是以數(shù)字?jǐn)z像頭為主,并且目前計(jì)算機(jī)上的接口多為USB接口,所以數(shù)字

21、攝像頭又以USB接口數(shù)字?jǐn)z像頭為主,以下介紹USB數(shù)字?jǐn)z像頭。USB數(shù)字?jǐn)z像頭的工作原理為:景物通過鏡頭生成的光學(xué)圖像投射到了光傳感器的上面,由光傳感器將其轉(zhuǎn)化為電信號,經(jīng)過A/D(模數(shù)轉(zhuǎn)換)轉(zhuǎn)換后變?yōu)閿?shù)字圖像信號,再送到數(shù)字信號處理芯片DSP中進(jìn)行加工處理,將其轉(zhuǎn)化為特定的圖像格式,如JPEG格式,再通過USB結(jié)構(gòu)傳輸?shù)教幚砥髦羞M(jìn)行處理,實(shí)現(xiàn)圖像顯示存儲或編碼傳輸。USB數(shù)字?jǐn)z像頭結(jié)構(gòu)圖如圖所示:圖2-1 數(shù)字?jǐn)z像頭結(jié)構(gòu)圖 在組成攝像頭的所有部件中,最重要、最為核心的兩個(gè)部件是圖像傳感器芯片和DSP芯片。圖像傳感器是一種半導(dǎo)體芯片,其中表面包含有幾十萬到幾百萬的光電二極管。光電二極管受到光照

22、射時(shí),就會產(chǎn)生電荷。它可以分為CCD和CMOS兩類,光電二極管的芯能將直接決定攝像頭的最大分辨率和圖像質(zhì)量。CCD的優(yōu)點(diǎn)是靈敏度高,噪音小,信噪比大,但是生產(chǎn)工藝復(fù)雜、成本高、功耗高。CMOS的優(yōu)點(diǎn)是集成度高、功耗低(不到CCD的1/3)、成本低, 但是噪音比較大、靈敏度較低、對光源要求高。從成本考慮,市場上大多還是采用CMOS的圖像傳感器,各廠商通過采用影像光源自動增益補(bǔ)償技術(shù),自動亮度、白平衡控制技術(shù),色飽和度、對比度、邊緣增強(qiáng)以及伽馬校正等先進(jìn)的影像控制技術(shù),完全可以達(dá)到與CCD攝像頭相媲美的效果。數(shù)字信號處理芯片DSP一般包括這三個(gè)模塊:鏡像信號處理器ISP,JPEG圖像解碼器,USB

23、設(shè)備控制器,主要功能是通過一系列的復(fù)雜數(shù)據(jù)算法運(yùn)算,對數(shù)字圖像信號進(jìn)行優(yōu)化處理(如壓縮編碼),并把處理后的信號通過USB等接口傳到PC等設(shè)備。DSP芯片類型的不同將直接影響圖片格式的差異。USB攝像頭的圖像格式主要有以下幾種:JPEG格式,YUV格式和第三格式。其中第三格式是指廠家用自己的圖像壓縮算法對RGB格式的數(shù)據(jù)壓縮后得到的圖片格式。同一種圖像格式的攝像頭由于采集芯片型號的不同,捕獲的圖像數(shù)據(jù)流可能也會存在微小的差異,有些芯片會在JPEG圖像數(shù)據(jù)前加一定的頭部,有些則沒有;有些YUV格式的芯片采用YYUV的數(shù)據(jù)流格式,有些則采用YUVY數(shù)據(jù)流格式。2.1.2 運(yùn)行硬件平臺介紹本系統(tǒng)的的運(yùn)

24、行硬件為一臺裝有Linux虛擬機(jī)的Window操作系統(tǒng)的筆記本電腦,配置為:處理器i5,內(nèi)存12G。2.2 軟件平臺介紹2.2.1 Linux操作系統(tǒng)Linux操作系統(tǒng)是一套可以免費(fèi)使用和自由傳播的操作系統(tǒng),是一個(gè)是一個(gè)基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。Linux操作系統(tǒng)誕生于1991 年的10 月5 日。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在

25、各種計(jì)算機(jī)硬件設(shè)備中,比如手機(jī)、平板電腦、路由器、視頻游戲控制臺、臺式計(jì)算機(jī)、大型機(jī)和超級計(jì)算機(jī)。嚴(yán)格來講,Linux這個(gè)詞本身只表示Linux內(nèi)核,但實(shí)際上人們已經(jīng)習(xí)慣了用Linux來形容整個(gè)基于Linux內(nèi)核,并且使用GNU 工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。Linux的文件結(jié)構(gòu):/: 根目錄所有的目錄、文件、設(shè)備都顯示在/之下,/是Linux文件系統(tǒng)的組織者,也是最上層的管理者。/bin:bin是二進(jìn)制binary的英文縮寫。在一般的系統(tǒng)當(dāng)中,都可以再這個(gè)目錄下找到Linux的最常用的命令。系統(tǒng)需要的那些命令經(jīng)常位于此處。/boot:Linux的內(nèi)核以及引導(dǎo)系統(tǒng)程序所需要的文件目錄,一般情

26、況下,GRUB或者LILO系統(tǒng)引導(dǎo)管理器也位于這個(gè)目錄。/cdrom:這個(gè)目錄在剛剛完成系統(tǒng)安裝的時(shí)候是空的,可以將光驅(qū)文件系統(tǒng)掛載到此目錄上。/dev:dev是設(shè)備device 英文縮寫。這個(gè)目錄對所有的用戶都十分重要。因?yàn)樵谶@個(gè)目錄中包含了所有Linux系統(tǒng)中使用的外部設(shè)備。但是這里并不是用來放外部設(shè)備的驅(qū)動的,而是一個(gè)訪問這些外部設(shè)備的端口??梢苑浅7奖愕娜ピL問這些外部設(shè)備,和訪問其他的文件和目錄沒有任何區(qū)別。/etc:etc這個(gè)目錄是Linux系統(tǒng)中最重要的目錄之一。在這個(gè)目錄下存放了系統(tǒng)管理時(shí)要用到的各種配置文件和子目錄。要用到的網(wǎng)絡(luò)配置文件,文件系統(tǒng),系統(tǒng)配置文件,設(shè)備配置信息,設(shè)

27、置用戶信息等都在這個(gè)目錄下。/home:如果建立了一個(gè)用戶,用戶名是XX,那么在/home下就會有一個(gè)對應(yīng)的路徑名為/home/xx路徑,用來存放用戶的主目錄。/lib:lib是庫library英文縮寫。這個(gè)目錄是被用來存放系統(tǒng)動態(tài)連接共享庫的。幾乎所有的應(yīng)用程序都會用到這個(gè)目錄下的共享庫。因此,不要輕易的對這個(gè)目錄進(jìn)行操作。/root:Linux超級權(quán)限用戶root的家目錄。/sbin:這個(gè)目錄是用來存放系統(tǒng)管理員的系統(tǒng)管理程序。大多是設(shè)計(jì)系統(tǒng)管理的命令的存放, 是超級權(quán)限用戶root的可執(zhí)行命令存放地,普通的用戶無權(quán)執(zhí)行這個(gè)目錄下的命令。/usr:這是Linux系統(tǒng)中占用應(yīng)哦按控件最大的目

28、錄,用戶的很多應(yīng)用程序和文件都存放在這個(gè)目錄下。/tmp:臨時(shí)文件目錄,用來存放不同程序執(zhí)行時(shí)所產(chǎn)生的臨時(shí)文件。2.2.2 QTQT是一個(gè)由奇趣科技在1991年開發(fā)的跨平臺C+圖形用戶界面應(yīng)用程序開發(fā)框架。它可以開發(fā)GUI程序,也可以用于開發(fā)非GUI程序,比如控制臺工具和服務(wù)器。QT是面向?qū)ο蟮目蚣?,使用特殊的代碼生成擴(kuò)展以及一些宏,易于擴(kuò)展,允許組建編程。2008年,奇趣公司被諾基亞公司收購,QT因此成為諾基亞旗下的編程語言工具。2012年,QT被Digla收購。Qt的優(yōu)勢:Qt具有優(yōu)良的跨平臺特性:QT支持包括Windows、Linux、UNIX等數(shù)十個(gè)系統(tǒng)。面向?qū)ο螅篞T良好的封裝機(jī)制使

29、得QT的模塊化程度非常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。QT提供了一種稱為signal/slots的安全類型來替代callback,這使得各個(gè)模塊之間的協(xié)同工作變得十分簡單。豐富的API:QT包括多達(dá)250個(gè)以上的C+類,還提供基于模板的collections,serialization,file,I/O device,directory management,date/time類。甚至還包括正則表達(dá)式的處理功能。支持2D/3D圖形渲染,支持OpenGL。大量的開發(fā)文檔。XML支持。常用類:QDialog:代表對話框,用來實(shí)現(xiàn)那些只是暫時(shí)存在的用戶界面,是獨(dú)立的窗口,但通常也有父

30、窗口。對話框有模態(tài)和非模態(tài)兩種,非模態(tài)對話框的行為和使用方法都類似于普通的窗口,模態(tài)對話框則有所不同,當(dāng)模態(tài)對話框顯示時(shí),其他窗口將全部進(jìn)入非激活狀態(tài),不能接受鍵盤和鼠標(biāo)事件。模態(tài)的方式又可分為兩種,一種是對整個(gè)應(yīng)用程序模態(tài),這時(shí)它的出現(xiàn)將導(dǎo)致程序中的所有窗口失去響應(yīng);另一種是對窗口模態(tài),這時(shí)僅僅會導(dǎo)致它所在的整個(gè)窗口樹失去響應(yīng)。構(gòu)造:QDialog(QWidget *parent = 0, Qt:WindowFlags f = 0);模態(tài)性:void setModal(bool modal);/設(shè)置對話框的模態(tài)性,當(dāng)modal為true時(shí)為模態(tài),默認(rèn)對整個(gè)應(yīng)用程序模態(tài)void setWind

31、owModality(Qt:WindowModality windowModality);/設(shè)為對窗口模態(tài).Qt:WindowModality有以下取值: Qt:NonModal:非模態(tài) Qt:WindowModal:窗口模態(tài) Qt:ApplicationModal:應(yīng)用程序模態(tài)Qt:WindowModality windowModality() const;/得到窗口的模態(tài)性bool isModal() const;/判斷窗口是否為模態(tài)的QLabel: 代表標(biāo)簽,是一個(gè)用于顯示文本或圖像的窗口部件構(gòu)造:QLabel(QWidget *parent = 0, Qt:WindowFlags f

32、= 0);QLabel(const QString &text, QWidget *parent = 0, Qt:WindowFlags f = 0);/能夠同時(shí)通過參數(shù)text給出要顯示的文本,因此是最常用的構(gòu)造方式屬性:QString text() const;/獲取顯示的文本void setText(const QString &text);/設(shè)置顯示的文本,這是一個(gè)槽const QPixmap *pixmap() const;/獲取顯示的圖像void setPixmap(const QPixmap &pixmap);/設(shè)置顯示的圖像,這是一個(gè)槽void setNum(int num);

33、/設(shè)置顯示的文本為代表整數(shù)num的字符串,這是一個(gè)槽void setNum(double num);/設(shè)置顯示的文本為代表浮點(diǎn)數(shù)num的字符串void clear;/清空顯示內(nèi)容alignment代表顯示內(nèi)容的對齊方式:Qt:Alignment alignment() const;/獲取對齊方式void setAlignment(Qt:Alignment align);/設(shè)置對齊方式Qt:Alignment有以下取值: Qt:AlignLeft:水平方向靠左 Qt:AlignRight:水平方向靠右 Qt:AlignHCenter:水平方向居中 Qt:AlignJustify:水平方向調(diào)整間距

34、兩端對齊 Qt:AlignTop:垂直方向靠上 Qt:AlignBottom:垂直方向靠下 Qt:AlignVCenter:垂直方向居中 Qt:AlignCenter:等價(jià)于Qt:AlignHcenter | Qt:AlignVCenter,即水平和垂直方向都居中indent代表文本的縮進(jìn)值:int indent() const:/獲取文本縮進(jìn)值void setIndent(int indent);/設(shè)置文本縮進(jìn)值 margin代表顯示內(nèi)容的邊距:int margin() const;/獲取邊距void setMargin(int margin);/設(shè)置邊距wordWrap代表顯示的文本是否允

35、許換行:bool wordWrap() const;/判斷是否允許換行void setWordWrap(bool on);/設(shè)置是否允許行換行scaledContents表示顯示圖像時(shí)是否允許縮放:bool hasScaledContents() const;/判斷是否允許圖像縮放void setScaledContents(bool on);/設(shè)置是否允許圖像縮放,如果允許縮放,則顯示圖像時(shí)會進(jìn)行縮放以填滿整個(gè)顯示區(qū)域 QPushButton:代表按鈕,它繼承了QAbstractButton,因此也有其全部的屬性,信號和槽構(gòu)造:QPushButton(QWidget *parent = 0)

36、;QPushButton(const QString &text, QWidget *parent = 0);QPushButton(const QIcon &icon, const QString &text, QWidget *parent = 0);/text是按鈕上顯示的文本,icon是按鈕的圖標(biāo),生成的對象默認(rèn)是沒有開關(guān)狀態(tài)的屬性:bool isFlat() const;/判斷外觀是否為扁平狀void setFlat(bool flat);/設(shè)置外觀是否為扁平狀如果為true,則按鈕是扁平的,否則就是立體的如果一個(gè)按鈕在對話框中,那么它就有默認(rèn)和自動默認(rèn)的概念,分別由default屬

37、性以及autoDefault屬性控制:bool isDefault(0 const;/判斷按鈕是否為默認(rèn)按鈕void setDefault(bool on);/設(shè)置按鈕是否為默認(rèn)按鈕bool autoDefault() const;/判斷按鈕是否為自動默認(rèn)按鈕void setAutoDefault(bool)/設(shè)置按鈕是否為自動默認(rèn)按鈕對話框中同一時(shí)刻只能有一個(gè)默認(rèn)按鈕,當(dāng)用戶按回車鍵時(shí),等價(jià)于在對話框中單擊這個(gè)按鈕.實(shí)際上,對話框中還有一個(gè)主默認(rèn)按鈕的概念。一個(gè)自動默認(rèn)按鈕得到焦點(diǎn)時(shí),就會變成默認(rèn)按鈕;失去焦點(diǎn)時(shí),主默認(rèn)按鈕就成為默認(rèn)按鈕。而設(shè)置一個(gè)按鈕的默認(rèn)屬性為true將同時(shí)使它成為對話

38、框的主默認(rèn)按鈕。2.2.3 Vi編輯器Vi編輯器是Visual interface的簡稱,通常稱之為VI。它可以執(zhí)行諸如輸出、刪除、查找、替換、塊操作等眾多文本操作,而用戶可以根據(jù)自己的需要對其進(jìn)行定制,這是其他編輯程序所沒有的。Vi搬機(jī)器并不是一個(gè)排版程序,它不像Word或WPS那樣可以對字體、格式、段落等其他屬性進(jìn)行編排,它只是一個(gè)文本編輯程序。沒有菜單,只有命令,且命令繁多。Vi有三種編輯模式:命令模式、插入模式和末行模式。其中命令模式可以控制屏幕光標(biāo)的移動,字符、字或行的刪除,移動復(fù)制某區(qū)段進(jìn)入插入模式下,或者到末行模式;插入模式用于做文字輸入等相關(guān)操作;末行模式用于將文件保存或退出v

39、i,也可以設(shè)置編輯環(huán)境,如尋找字符串、列出行號等。vi模式切換的方式如圖所示。 圖2-2 Vi模式切換方式 Vi的基本操作:進(jìn)入vi:$ vi myfile切換至插入模式:在命令行模式下按一下字母i就可以進(jìn)入插入模式。切換至命令模式:按下Esc鍵就可以進(jìn)入命令模式。2.2.4 ARM交叉編譯環(huán)境交叉編譯是嵌入式開發(fā)過程中的一項(xiàng)重要技術(shù),其主要特征是某機(jī)器中執(zhí)行的程序代碼不是在本機(jī)編譯生成,而是由另一臺機(jī)器編譯生成,一般把前者稱為目標(biāo)機(jī),后者稱為主機(jī)。采用交叉編譯的主要原因在于,多數(shù)嵌入式目標(biāo)系統(tǒng)不能提供足夠的資源供編譯過程使用,因而只好將編譯工程轉(zhuǎn)移到高性能的主機(jī)中進(jìn)行,這就需要在強(qiáng)大的pc機(jī)

40、上建立一個(gè)用于目標(biāo)機(jī)的交叉編譯環(huán)境。這是一個(gè)由編譯器、連接器和解釋器組成的綜合開發(fā)環(huán)境。linux下的交叉編譯環(huán)境重要包括以下幾個(gè)部分: 1.針對目標(biāo)系統(tǒng)的編譯器gcc;2.針對目標(biāo)系統(tǒng)的二進(jìn)制工具binutils;3.目標(biāo)系統(tǒng)的標(biāo)準(zhǔn)c庫glibc,有時(shí)出于減小libc 庫大小的考慮,你也可以用別的c庫來代替glibc,例如uClibc、newlib等;4.目標(biāo)系統(tǒng)的linux內(nèi)核頭文件。交叉編譯環(huán)境的搭建方法:交叉編譯環(huán)境搭建所需要的文件:binutils-2.15.tar.bz2:這個(gè)壓縮包包含有l(wèi)d,ar,as等一些產(chǎn)生或者處理二進(jìn)制文件的工具。其主要目的是為GNU系統(tǒng)提供匯編和連接工具

41、等。gcc-3.4.5.tar.bz2:這個(gè)壓縮包主要是為GNU系統(tǒng)提供C 編譯器。現(xiàn)在支持多種語言,這其中包括C/C+、Fortran、Java、Objective-C、Ada等。glibc-2.2.5.tar.gz:Libc是很多用戶層應(yīng)用都要用到的庫,用于定義系統(tǒng)調(diào)用和其它一些基本的函數(shù)調(diào)用。glibc-linuxthreads-2.2.5.tar.gz:這是Libc用于支持Posix線程而單獨(dú)發(fā)布的一個(gè)壓縮包。linux-2.6.8.tar.bz2:這個(gè)壓縮包就是Linux的內(nèi)核,在編譯glibc時(shí),要用到Linux內(nèi)核中的include目錄的內(nèi)核頭文件。 3.V4L2詳細(xì)介紹3.1

42、V4L2概述3.1.1什么是V4L2Video for Linux two(Video4Linux2)簡稱V4L2,是V4L的改進(jìn)版。V4L2是linux操作系統(tǒng)下用于采集圖片、視頻和音頻數(shù)據(jù)的API接口,配合適當(dāng)?shù)囊曨l采集設(shè)備和相應(yīng)的驅(qū)動程序,可以實(shí)現(xiàn)圖片、視頻、音頻等的采集。在遠(yuǎn)程會議、可視電話、視頻監(jiān)控系統(tǒng)和嵌入式多媒體終端中都有廣泛的應(yīng)用。在Linux下,所有外設(shè)都被看成一種特殊的文件,成為“設(shè)備文件”,可以象訪問普通文件一樣對其進(jìn)行讀寫。一般來說,采用V4L2驅(qū)動的攝像頭設(shè)備文件是/dev/v4l/video0。為了通用,可以建立一個(gè)到/dev/video0的鏈接。V4L2支持兩種方

43、式來采集圖像:內(nèi)存映射方式(mmap)和直接讀取方式(read)。V4L2在include/linux/videodev.h文件中定義了一些重要的數(shù)據(jù)結(jié)構(gòu),在采集圖像的過程中,就是通過對這些數(shù)據(jù)的操作來獲得最終的圖像數(shù)據(jù)。Linux系統(tǒng)V4L2的能力可在Linux內(nèi)核編譯階段配置,默認(rèn)情況下都有此開發(fā)接口。V4L2從Linux 2.5.x版本的內(nèi)核中開始出現(xiàn)。V4L2規(guī)范中不僅定義了通用API元素(Common API Elements),圖像的格式(Image Formats),輸入/輸出方法(Input/Output),還定義了Linux內(nèi)核驅(qū)動處理視頻信息的一系列接口(Interface

44、s),這些接口主要有:視頻采集接口Video Capture Interface;視頻輸出接口 Video Output Interface;視頻覆蓋/預(yù)覽接口Video Overlay Interface;視頻輸出覆蓋接口Video Output Overlay Interface;編解碼接口Codec Interface。3.1.2 V4L2的主要功能V4L2的主要功能是使程序有發(fā)現(xiàn)設(shè)備和操作設(shè)備的能力.它主要是用一系列的回調(diào)函數(shù)來實(shí)現(xiàn)這些功能。像設(shè)置攝像頭的頻率、幀頻、視頻壓縮格式和圖像參數(shù)等等。當(dāng)然也可以用于其他多媒體的開發(fā),如音頻等。V4L2是為Linux操作系統(tǒng)開發(fā)的,所以此框架只

45、能運(yùn)行在Linux操作系統(tǒng)之上。3.2 V4L2使用方法3.2.1 V4L2驅(qū)動的主要ioctl/*查詢能力*/#define VIDIOC_QUERYCAP _IOR(V, 0, struct v4l2_capability) /*獲得格式*/#define VIDIO_G_FMT _IOWR(V, 4, struct v4l2_format) /*設(shè)置格式*/#define VIDIOC_S_FMT _IOWR(V, 5, struct v4l2_format) /*申請內(nèi)存*/#define VIDIOC_REQBUFS _IOWR(V, 8, strut v4l2_requestbuf

46、fers) /*獲得Framebuffer*/#define VIDIOC_G_FBUF _IOW(V, 10, struct v4l2_framebuffer) /*設(shè)置Framebuffer*/#define VIDIOC_S_BUF _IOW(V, 11, struct v4l2_framebuffer) /*設(shè)置Overlay*/#define VIDIOC_OVERLAY _IOW(V, 14, int) /*將內(nèi)存加入隊(duì)列*/#define VIDIOC_QBUF _IOWR(V, 15, struct v4l2_buffer) /*從隊(duì)列取出內(nèi)存*/#define VIDIOC_

47、DQBUF _IOWR(V, 17, strut v4l2_buffer) /*開始流*/#define VIDIOC_STREAMON _IOW(V, 18, int)/*停止流*/#define VIDIOC_STREAMOFF _IOW(V, 19, int) /*得到控制*/#define VIDIOC_G_CTRL _IOWR(V, 27, struct v4l2_control) /*設(shè)置控制*/#define VIDIOC_S_CTRL _IOWR(V, 28, struct v4l2_control) 3.2.2 V4L2的主要結(jié)構(gòu)1)設(shè)備能力結(jié)構(gòu) struct v4l2_ca

48、pability _u8 driver16;/驅(qū)動名 _u8 card32;/例如Hauppauge winTV _u8 bus_info32;/PCI總線信息 _u32 version;/內(nèi)核版本 _u32 capabilities;/設(shè)備能力 _u32 reserved4; ; 2)數(shù)據(jù)格式結(jié)構(gòu) struct v4l2_format enum v4l2_buf_type type;/本結(jié)構(gòu)的數(shù)據(jù)類型 ;3)像素格式結(jié)構(gòu) struct v4l2_pix_format _u32 width;/寬度 _u32 height;/高度 4)請求緩沖 struct v4l2_requestbuffer

49、s _u32 count;/緩存數(shù)量 enum v4l2_buf_type type;/數(shù)據(jù)流類型 5)數(shù)據(jù)流類型包括V4L2_MEMORY_MMAP和V4L2_MEMORY_USERPTR enum v4l2_memory ; 3)像素格式結(jié)構(gòu) struct v4l2_pix_format _u32 width;/寬度 _u32 height;/高度 4)請求緩沖 struct v4l2_requestbuffers _u32 count;/緩存數(shù)量 enum v4l2_buf_type type;/數(shù)據(jù)流類型 3.2.3 V4L2操作流程1. 打開設(shè)備文件。 關(guān)鍵操作:int fd=ope

50、n(”/dev/video0,O_RDWR);2. 取得設(shè)備的capability 關(guān)鍵操作:ioctl(fd, VIDIOC_QUERYSTD, &std);3. 設(shè)置視頻的制式和幀格式,制式包括PAL,NTSC,幀的格式個(gè)包括寬度和高度等。 關(guān)鍵操作:ret = ioctl(fd, VIDIOC_S_FMT, &fmt); 4. 向驅(qū)動申請幀緩沖,一般不超過5個(gè)。 關(guān)鍵操作:ioctl(fd, VIDIOC_REQBUFS, &req);5. 將申請到的幀緩沖映射到用戶空間,以便操作緩存到的幀。將申請到的幀緩沖全部入隊(duì)列,以便存放采集到的數(shù)據(jù)。 關(guān)鍵操作:memset( &buf, 0,

51、sizeof(buf) ); ioctl(fd, VIDIOC_QUERYBUF, &buf); buffersnumBufs.start = mmap (NULL, buf.length,PROT_READ | PROT_WRITE, MAP_SHARED, fd, buf.m.offset);6. 開始視頻的采集。 關(guān)鍵操作:ioctl (fd, VIDIOC_STREAMON, &type);7. 出隊(duì)列以取得已采集數(shù)據(jù)的幀緩沖,取得原始采集數(shù)據(jù)。VIDIOC_DQBUF, 將緩沖重新入隊(duì)列尾,這樣可以循環(huán)采集。 關(guān)鍵操作:ioctl(fd, VIDIOC_DQBUF, &buf);8.

52、 停止視頻的采集。 關(guān)鍵操作:ioctl (fd, VIDIOC_STREAMOFF, &type);9. 關(guān)閉視頻設(shè)備。 關(guān)鍵操作:close(fd); 4 .軟件詳細(xì)設(shè)計(jì)4.1 軟件運(yùn)行環(huán)境方案軟件平臺采用的嵌入式操作系統(tǒng)為Linux 2.4.21。Linux 具有內(nèi)核小、效率高、源碼開放、內(nèi)核直接提供網(wǎng)絡(luò)支持等優(yōu)點(diǎn),但嵌入式系統(tǒng)的硬件資源有限,因此需根據(jù)實(shí)際需求對內(nèi)核進(jìn)行裁剪,配置所需的功能模塊,然后再移植到硬件平臺上。嵌入式系統(tǒng)的軟件開發(fā)采用交叉編譯調(diào)試的方式在宿主機(jī)上安裝Linux 系統(tǒng),建立交叉編譯環(huán)境,在宿主機(jī)編寫程序代碼,再利用交叉編譯工具生成目標(biāo)機(jī)上可用的可執(zhí)行文件,用該文件

53、向目標(biāo)機(jī)平臺移植。 4.2 服務(wù)器設(shè)計(jì)方案服務(wù)器模塊通過嵌入式Linux 操作系統(tǒng)調(diào)用Video4Linux2和底層設(shè)備驅(qū)動程序來完成視頻捕獲。V4L2是Linux 中關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動,它為Linux 下的各種視頻設(shè)備提供了統(tǒng)一的編程接口,應(yīng)用程序通過這些接口函數(shù)就可以操縱各種不同的設(shè)備。視頻采集流程如圖4-1所示。 圖4-1 視頻采集流程圖4.2.1 視頻采集初始化在Linux下,攝像頭硬件已經(jīng)被映射為設(shè)備文件“/dev/video0”,用open函數(shù)打開這個(gè)設(shè)備文件,獲得其文件描述符fd,然后對這個(gè)文件描述符進(jìn)行參數(shù)初始化。1.設(shè)置視頻點(diǎn)陣格式和點(diǎn)陣大小主要是對結(jié)構(gòu)體v4l2_for

54、mat進(jìn)行賦值,它由type和聯(lián)合體fmt構(gòu)成,來描述視頻設(shè)備當(dāng)前行為和數(shù)據(jù)的格式。把type賦值為視頻采集類型V4L2_BUF_TYPE_VIDEO_CAPTURE,表示定義了一個(gè)視頻采集流類型的buffer。fmt中,pix為表示圖形格式的v4l2_pix_format型結(jié)構(gòu)體。需要設(shè)定pix里的幾個(gè)變量,pixelformat表示采集格式,設(shè)置為V4L2_PIX_FMT_YUV420;width、height表示圖像的寬度、高度,以字節(jié)為單位;sizeimage表示圖像所占的存儲空間大小,以字節(jié)為單位;bytesperline表示每一行的字節(jié)數(shù)。賦值后,用ioctl函數(shù)通過這個(gè)結(jié)構(gòu)體對fd進(jìn)行設(shè)置。struct v4l2_streamparm enum v4l2_buf_type type;union struct v4l2_capt

溫馨提示

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

評論

0/150

提交評論