




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、防 災(zāi) 科 技 學 院畢 業(yè) 設(shè) 計題目基于micro 2440的無線視頻監(jiān)控系統(tǒng)學生姓名學號系 別防災(zāi)儀器系專 業(yè)測控技術(shù)與儀器班級開題時間2013年12月25日答辯時間2014年6月6日指導(dǎo)教師職 稱教授 基于micro 2440的無線視頻監(jiān)控系統(tǒng) 摘要隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,信息技術(shù)的編解碼技術(shù)的成熟,視頻監(jiān)控系統(tǒng)的內(nèi)容不斷豐富,更新。傳統(tǒng)的監(jiān)控系統(tǒng)準確性、時效性卻很低,然而視頻監(jiān)控系統(tǒng)現(xiàn)代科學技術(shù)的發(fā)展,已經(jīng)得到了充分的人力解放。本論文主要研究實現(xiàn)數(shù)據(jù)采集、數(shù)據(jù)傳輸和數(shù)據(jù)存儲這些功能,這樣就能給各行各業(yè)節(jié)省勞動力帶來更大的福音. 本文首先是介紹嵌入式linux無線網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)整體的
2、環(huán)境搭建及其現(xiàn)狀和發(fā)展,采集端,用V4L2進行圖像數(shù)據(jù)的采集;監(jiān)控端,則是采用 SDL顯示,同時運用到UDP協(xié)議傳輸。還有運用ARM硬件搭建平臺來進行移植與編譯嵌入式的linux內(nèi)核。 關(guān)鍵詞:嵌入式;無線網(wǎng)絡(luò)視頻監(jiān)控;視頻傳輸Based on micro 2440 wireless video surveillance systemAuthor huangxiTeacher hongliAbstract Along with the development of the network technology and codec technology, a huge number of IT
3、technology and the sophisticated video surveillance system in this area are more abundant and have a lot of change. we know less than reality for quality monitoring requirements , however, modern technology has been developed on the basis of video surveillance systems have been fully brought a quali
4、tative leap for the well efficiency improvement finesse liberation of human and material resources . This article first describes the overall environment for embedded linux wireless network video surveillance system to build its status and development , based on V4L2 video capture technology , as we
5、ll as how to use the ARM hardware in order to build a platform for transplantation and compile embedded linux kernel .Key word: Embedded; Wireless network video monitoring; Video transmission 目 錄引言11 緒論21.1 視頻監(jiān)控系統(tǒng)的現(xiàn)狀21.2 視頻監(jiān)控的發(fā)展趨勢21.3視頻監(jiān)控的發(fā)展歷程41.4 論文的研究意義51.5 論文工作安排52環(huán)境搭建62.1硬件的配置62.2微處理器72.3 攝像頭82.
6、4 交叉編譯器82.5 V4L2驅(qū)動程序架構(gòu)82.6 SDL 應(yīng)用編程接口92.7 UDP協(xié)議103 整體系統(tǒng)設(shè)計113.1 系統(tǒng)需求與分析113.2 系統(tǒng)總體設(shè)計113.3 采集程序?qū)崿F(xiàn)過程123.4 視頻數(shù)據(jù)的傳輸143.5 視頻的顯示153.6 Windows下客戶端164 系統(tǒng)的成果展示184.1系統(tǒng)的調(diào)試184.2 系統(tǒng)設(shè)計的展示18致 謝20參考文獻20防災(zāi)科技學院畢業(yè)設(shè)計引言近年來,人們對電子產(chǎn)品的需求不斷提升,從簡單的家居生活到辦公室工作環(huán)境,從工廠流水線制造到體育競技場的賽事監(jiān)控,甚至涉及到管理制度等等,視頻監(jiān)控都表現(xiàn)得很重要。而在如今這個信息化時代,社會對于大量視頻數(shù)據(jù)傳輸
7、越來越高注重的是質(zhì)量以及實時性的要求。視頻監(jiān)控信息內(nèi)容廣泛而豐富,各個行業(yè)領(lǐng)域都將廣泛應(yīng)用視頻監(jiān)控系統(tǒng),它為管理行業(yè)、信息產(chǎn)業(yè)、監(jiān)控行業(yè)都提供了可靠、便捷、廉價的服務(wù)。視頻網(wǎng)絡(luò)可以直接通過視頻的采集,讓我們隨時隨地能夠看到我們想要關(guān)注的一些事情,讓我們的科技變得更加的進步,同時也省去了大量時間和人力,使計算機更好的被人類所利用。1 緒論1.1 視頻監(jiān)控系統(tǒng)的現(xiàn)狀隨著發(fā)展各種多媒體技術(shù),視頻網(wǎng)絡(luò)監(jiān)控如今已經(jīng)成為了安全防范系統(tǒng)的重要一步,人們更加廣泛的應(yīng)用視頻網(wǎng)絡(luò)監(jiān)控來進行服務(wù)和資源整合。而且視頻監(jiān)控信息內(nèi)容廣泛而豐富,各個行業(yè)領(lǐng)域都將廣泛應(yīng)用視頻監(jiān)控系統(tǒng),它為管理行業(yè)、信息產(chǎn)業(yè)、監(jiān)控行業(yè)都提供了
8、可靠、便捷、廉價的服務(wù)。視頻網(wǎng)絡(luò)系統(tǒng)涉及的領(lǐng)域十分的廣泛,如今的計算機更是堪比一個高速運轉(zhuǎn)的人腦,通過視頻網(wǎng)絡(luò)系統(tǒng),可以像人的眼睛一樣搜集和采集數(shù)據(jù),然后傳輸?shù)酱竽X進行一系列的分析和處理,并實現(xiàn)記憶功能。這個時候安全防范在如今看起來,就并不是一件繁瑣的事情了,現(xiàn)在的保安只需要坐在一臺計算機前,很輕松就能觀察到各個方位和角落的畫面,只需要在緊急情況發(fā)生的時候采取一定的措施就可以了,不用時時刻刻的去巡視。1.2 視頻監(jiān)控的發(fā)展趨勢我們對于視頻監(jiān)控這個詞語并不陌生,這是因為時頻頻監(jiān)控的誕生距今已經(jīng)有幾十年的歷史了,傳統(tǒng)的視頻監(jiān)控是指模擬視頻監(jiān)控,這是最早期的一類系統(tǒng),雖然如今隨著科學技術(shù)的發(fā)展更多關(guān)
9、注的是數(shù)字監(jiān)控系統(tǒng)以及智能網(wǎng)絡(luò)監(jiān)控系統(tǒng),但是正是因為有了模擬視頻監(jiān)控系統(tǒng)作為基奠,才有了后期更智能、更便捷的新一代監(jiān)控視頻系統(tǒng)的到來。其實在發(fā)展早期的模擬視頻監(jiān)控的時候,它就已經(jīng)具有了許多良好的性能,和純熟的技術(shù)。網(wǎng)絡(luò)應(yīng)用的普及,傳輸數(shù)據(jù)信息個領(lǐng)域的飛速發(fā)展,以及流媒體技術(shù)的不斷深化應(yīng)用,使得現(xiàn)在的視頻監(jiān)控系統(tǒng)研究領(lǐng)域朝著更多元、更智能、更高清和無線快捷的方向前進。1)多元化我們都知道視頻監(jiān)控系統(tǒng)起初是為了強大安全防范系統(tǒng),如今的社會雖然科技很發(fā)達,文明相比于以前也有了很大提升,但潛在的不安全因素仍然很多,如果純粹靠人力去解決這些問題,顯然這是一項非常巨大的工程,而且收到的效果也不如人意。所以
10、這種局面更促進了視頻行業(yè)向高科技高水平的道路發(fā)展,視頻行業(yè)的需求刺激了越來越多的人從事視頻行業(yè)的研究,他們有著不同的設(shè)備和技術(shù)。這個行業(yè)的高效率發(fā)展構(gòu)建了現(xiàn)代化開放的一系列視頻管理系統(tǒng),這個系統(tǒng)常常包含不同的產(chǎn)品,甚至不同的廠家。但是我們不必要過多的憂慮這些產(chǎn)品能不能進行統(tǒng)一,因為現(xiàn)在很多的產(chǎn)品都制定了詳細的標準,使得系統(tǒng)的二次開發(fā)和調(diào)整都變得更加方便和靈活,及時是不同的產(chǎn)品,也完全能夠互相之間進行編解和聯(lián)通。所以,總的來說多元化的視頻監(jiān)控系統(tǒng)的發(fā)展,更有利于刺激和帶動視頻監(jiān)控行業(yè)的更新?lián)Q代和欣欣向榮。2) 智能性不管是用在安保措施方面還是普通的畫面采集需要,視頻監(jiān)控系統(tǒng)都發(fā)揮了很大的作用,但
11、是我們知道,早期傳統(tǒng)的模擬視頻監(jiān)控系統(tǒng)是離不開人員控制的,它常常需要一定的人員守候在計算機屏幕前,并且還要有一些相應(yīng)的控制方式。但是長時間枯燥的勞動會讓人的注意力逐漸不集中,以至于疲勞感也會增強,這個時候我們就需要更多的人員輪換值班。雖然在一定程度上,相比于以前的純?nèi)斯し?wù),監(jiān)控系統(tǒng)已經(jīng)發(fā)揮了很大一部分的作用,但是,顯然我們還有更多的提升空間。這個時候我們可以選擇使用更高級的技術(shù),就是預(yù)先定義和存儲報警規(guī)則,即把一系列的特殊情況轉(zhuǎn)化為數(shù)據(jù)存儲在計算機里,然后在視頻監(jiān)控采集到預(yù)先定義的行為之后,系統(tǒng)自動做出相應(yīng)的警報提示,這樣用戶只需在接到訊息之后進行處理就行。現(xiàn)在為了完成此項功能,已經(jīng)開發(fā)了V
12、CA這種技術(shù),但是這項新興的技術(shù)仍須完善和提升,才能得到普遍用戶的認可。當然,如果此項技術(shù)發(fā)展成熟,將運用到的行業(yè)將不止是安全監(jiān)控領(lǐng)域,也可以運用到企業(yè)工作運行管理,嬰兒監(jiān)護等等日常生活中。3) 民用性軍事化的利用視頻監(jiān)控已經(jīng)是過去式了,視頻監(jiān)控早已滲透到各個行業(yè)領(lǐng)域中,它的民用性在最近十幾年里的體現(xiàn)已經(jīng)是顯而易見的事情了,甚至可以毫不夸張的說,人們的生活已經(jīng)離不開視頻監(jiān)控系統(tǒng),它的出現(xiàn)改變了普通百姓的生活,讓人們生活在這個社會中更方便,更有安全感。工廠的生產(chǎn)流程都運用到了視頻監(jiān)控,這更方便于公司的管理,不僅有利于提高員工的工作效率,也讓出現(xiàn)的員工與老板之間的矛盾得到解決,因為有證可查。學???/p>
13、試的監(jiān)考工作也依賴于監(jiān)控系統(tǒng),這讓考試更加具有公平性。視頻監(jiān)控在日常生活中扮演著非常特殊的角色,它甚至更像一個服務(wù)者,旨在為客戶提供方便,快捷,人性化的服務(wù),這就是視頻監(jiān)控系統(tǒng)所謂的民用性。1.3視頻監(jiān)控的發(fā)展歷程1、第一代視頻監(jiān)控系統(tǒng):模擬視頻監(jiān)控時代視頻監(jiān)控最早稱為模擬閉合電路監(jiān)控系統(tǒng),用攝像機進行圖片的有效采集,然后是通過電纜進行傳輸和視頻的切換,它的實現(xiàn)成本和運輸成本通常都比較低,但是因為依靠于電纜進行連接,只適用于小范圍的傳輸,所以對場所的要求十分嚴格。而且這種早期的監(jiān)控系統(tǒng)很難達成互相連通的功能,他們的各個部件之間的運行方式都是獨立進行運作的,無法進行相應(yīng)的協(xié)議,所以更不可能實現(xiàn)智
14、能化的報警裝置。但是不得不承認的一點就是,模擬視頻監(jiān)控技術(shù)的發(fā)展為之后的監(jiān)控系統(tǒng)奠定了扎實的基礎(chǔ)。2、 第二代視頻監(jiān)控系統(tǒng):數(shù)字視頻監(jiān)控時代數(shù)字視頻監(jiān)控出現(xiàn)在二十世紀九十年代,它結(jié)束了模擬監(jiān)控時代,標著一個新的監(jiān)控視頻時代的誕生,但是這個監(jiān)控系統(tǒng)的是在二十一世紀初才得到真正的大量技術(shù)投入和實際的應(yīng)用。雖然它仍然采用模擬的視頻信號處理,但是結(jié)構(gòu)和性能都已經(jīng)發(fā)生了翻天覆地的變化,具有很高的可靠性。但是由于模擬化的信號系統(tǒng)仍具有比較大的不足,現(xiàn)在的視頻信號都在向趨于數(shù)字化的道路上去發(fā)展。3、第三代視頻監(jiān)控系統(tǒng):智能網(wǎng)絡(luò)視頻監(jiān)控時代近幾年來智能網(wǎng)絡(luò)監(jiān)控系統(tǒng)的發(fā)展已經(jīng)標志著智能網(wǎng)絡(luò)視頻監(jiān)控技術(shù)的時代已經(jīng)
15、到來,這是一場革命性的創(chuàng)新技術(shù),操作系統(tǒng)運用到的是Linux操作系統(tǒng),具有強大的設(shè)備支撐。智能網(wǎng)絡(luò)使得視頻監(jiān)控不受制于地域限制,政府部門最近也全面建立起來了“社會防控體系”,因此,視頻監(jiān)控技術(shù)的研究也是一種趨勢和潮流。1.4 論文的研究意義本論文主要研究開發(fā)平臺的搭建,并學習linux操作系統(tǒng)下的相關(guān)知識,了解ARM平臺中視頻采集和傳輸?shù)姆椒?,通過設(shè)計基于micro2440監(jiān)控系統(tǒng)的實現(xiàn)方案,完成視頻監(jiān)控系統(tǒng)的整體程序設(shè)計,保證視頻的質(zhì)量和穩(wěn)定性。1.5 論文工作安排首先,本論文詳細介紹要實現(xiàn)此方案所必須用到的各個器件的功能以及型號,并說明選擇的理由。再把已經(jīng)學習過的需要的原理及協(xié)議進行詳細的
16、記錄,其中利用到的源程序和代碼對于總體設(shè)計來說都是至關(guān)重要的。然后在基本知識的學習與整合后,進行周密的整體結(jié)構(gòu)設(shè)計,其中包括硬件和軟件的設(shè)計。購買好相應(yīng)的芯片和器件之后就能進行開發(fā)平臺的搭建,根據(jù)實際情況解決好實際問題之后,制作出相應(yīng)的實物,并根據(jù)功能展示出成果。 2環(huán)境搭建2.1硬件的配置2.1.1Micro2440 Micro2440是一個雙層電路底板, 核心板部分是使用的是長布線以求滿足信號完整性,為了方便插頭并導(dǎo)致更方便的CPU信號引腳,芯板用2.0mm的定位銷的“U”型的間距,我們也可以把它稱為“U”型u2440芯板??扉W存儲單元的NAND閃存和閃光的跳線J1也不是兩個,我們可以開始
17、選擇NAND或不系統(tǒng)。一是從NAND Flash引導(dǎo)(mini2440是);一是從開機也不閃光。存儲空間的分配兩種起動方式的每件作品都是不同的,如下圖: 圖2.1 micro2440接口布局下面則是SDRAM 部分原理圖: 圖2.2 SDRAM的部分原理圖實際中產(chǎn)品中大多數(shù)都是使用一片 Nand Flash , Nand Flash不包含地址線,從下面的原理圖可以看出:圖2.3 NandFlash和NorFlash的原理圖2.2微處理器嵌入式微處理器是用于處理信號的,如今的微處理器經(jīng)過不斷的開發(fā)和修整,已經(jīng)具有低功耗和高可靠性的特點。嵌入式處理器類型有很多,主要型號有ARM、MIPS、Powe
18、r PC等等,我們在此用到的是ARM系列的產(chǎn)品,它支持設(shè)備數(shù)據(jù)的采集,傳輸和顯示??紤]到最終功能的良好實現(xiàn),多方面的性能對比之后我選擇的是s3c2440芯片。2.3 攝像頭中星微ZC301P:此設(shè)計采用的是經(jīng)典中星微301P方案,它具有穩(wěn)定逼真的色彩性能,速率為30fps/s,采用的是USB接口,感光器件:CMOS1/3INCH, 雙pk-635攝像頭采集視頻。選擇zc301p芯片是因為zc301p芯片擁有強大、先進的技術(shù)。選擇的攝像頭對決定視頻的質(zhì)量和清晰度具有很大的影響,所以在經(jīng)過仔細比較之后,采用的是中星微ZC301P方案。2.4 交叉編譯器通俗來說就是在一個平臺上生成另外一個平臺上的可
19、執(zhí)行各種代碼,但是有時候在編譯程序時,產(chǎn)生的中間文件會很占用內(nèi)存和磁盤的剩余空間,這樣一來就堆CPU的處理的要求比較高,在進行ARM-linux嵌入式開發(fā)時,我們必須運用到交叉編譯器。2.5 V4L2驅(qū)動程序架構(gòu)無線視頻監(jiān)控系統(tǒng)的重要組成部分為Linux內(nèi)核驅(qū)動程序和V4L2的視頻設(shè)備技術(shù),在Linux系統(tǒng)下,選擇 V4L2作為實現(xiàn)視頻采集功能的關(guān)鍵技術(shù),是因為V4L2技術(shù)能流暢的進行視頻的捕捉,它的開源方案其實是與Linux是一致的。2.5.1 V4L2驅(qū)動主要使用的ioctl 命令值如下所示:1、 控制命令: VIDIOC_QUERYCAP ,查詢設(shè)備的功能;2、 控制命令:VIDIOC_
20、ENUM_FMT,獲取視頻的格式的功能;3、 控制命令:VIDIOC_S_FMT,設(shè)置視頻數(shù)據(jù)格式的功能;4、 控制命令:VIDIOC_REQBUFS,請求分配視頻緩沖區(qū)的功能;5、 控制命令:VIDIOC_QUERYBUF,查詢已經(jīng)分配的相關(guān)信息的功能;6、 控制命令:VIDIOC_QBUF,投放視頻緩沖區(qū)到輸入隊列中的功能;7、 控制命令:VIDIOC_DQBUF,取得一個保存有數(shù)據(jù)的視頻緩沖區(qū)的功能;8、 控制命令:VIDIOC_STREAMON,開始啟動采集命令的功能;9、 控制命令:VIDIOC_STREAMOFF,停止采集命令的功能;2.6 SDL 應(yīng)用編程接口首先介紹一下SDL里
21、面的surface,surface的功能是存儲圖形的像素,用來進行定義圖像的屬性,例如寬度和高度等各種變量,SDL的研發(fā)可以包括很多個或者一個surface,我們最終的目的則是把一系列完整的圖像信息都復(fù)制到一個特殊的顯示屏surface上,讓屏幕上顯示這個圖像,這就是SDL的原理。下面是SDL技術(shù)用到的函數(shù)以及它的意義:2.7 UDP協(xié)議UDP協(xié)議是在OSI參考模型中,傳輸層的協(xié)議,用來發(fā)送數(shù)據(jù)包不需要訂購。它像TCP協(xié)議用于處理網(wǎng)絡(luò)數(shù)據(jù)包,但不同于TCP ,也是一種無連接的協(xié)議,位于四樓,在OSI模型的傳輸層,是在一層的TCP / IP協(xié)議的。 UDP沒有包組,裝配,而不是優(yōu)先考慮包的缺點,
22、也就是說,當發(fā)送的消息的時候并不明確是否安全到達。UDP協(xié)議的到來已使用多年,但即使在今天,UDP仍然是一個非常實用和可行的網(wǎng)絡(luò)傳輸層協(xié)議。3 整體系統(tǒng)的設(shè)計3.1 系統(tǒng)需求與分析通過對設(shè)計的所需要的功能分析我們可以來進行整個系統(tǒng)的分析設(shè)計,為了避免工作中出現(xiàn)各種開發(fā)后續(xù)的問題,我們應(yīng)該首先把需要的功能形成一個具體的網(wǎng)絡(luò)。具體的視頻監(jiān)控應(yīng)該具有如下功能:1. 視頻回放功能。2. 圖像查閱功能。3. 視頻監(jiān)控功能。4.設(shè)計美觀簡潔、方便快捷。3.2 系統(tǒng)總體設(shè)計PC機SDL顯示Zc301p視頻采集設(shè)備S3C2440微處理器RT3070無線設(shè)備 圖3.1 無線視頻監(jiān)控系統(tǒng)的設(shè)計的整體結(jié)構(gòu)這個系統(tǒng)是
23、由攝像采集圖像,然后用Linux處理器對采集到的圖像進行處理,再通過網(wǎng)絡(luò)傳輸視頻信號至監(jiān)控端,最終則顯示在顯示屏上。3.3 采集視頻圖像實現(xiàn)過程視頻的采集設(shè)備依賴于對V4L2標準技術(shù)的支持:(1)設(shè)備的初始化打開攝像頭int fd = open(/dev/video0, O_RDWR, 0); if (fd0)printf(open errorn);pcrmr(camera_cap:);return-1;return 0;)組成人員使用printf函數(shù)組成人員可以得到的信息。通過調(diào)用ioctl vidiocswin調(diào)整圖像的亮度,對比度等等。 (2)視頻截取捕捉視頻圖像,要有使用mmap0與內(nèi)
24、存管理的一種方式單元的CPU ( MMU ) ,使用3C2410的主題是MMU的CPU 。(3)攝像頭設(shè)備文件到內(nèi)存區(qū)的映射 addr:共享內(nèi)存的起始地址,一般設(shè)0,表示由系統(tǒng)分配:應(yīng)用程序的絕對地址通過調(diào)用此函數(shù),設(shè)備文件內(nèi)容可以被映射到在地圖上可讀和可寫的存儲器區(qū)域的存儲器區(qū)域,并且可以被不同的進程之間共享。返回一個指向圖像的存儲區(qū)域時,該函數(shù)是成功的,失敗的返回值1。 (4)數(shù)據(jù)采集框架要捕獲的幀,并在內(nèi)存中的數(shù)據(jù)進行數(shù)據(jù)+ camera_mbuf的每一幀的起始位置。偏移frame,其中攝像頭mbuf的一份聲明中視頻buf結(jié)構(gòu)變量,使用的ioctl(FD,VmIOCGMBUF,及攝像頭攝
25、像頭mbuf的信息,那么就沒有空間使用下面的緩沖回路控制左為數(shù)據(jù)收集過程是連續(xù)采集。3.4 視頻數(shù)據(jù)的傳輸為了實現(xiàn)監(jiān)控功能,我們首先完成視頻采集,然后應(yīng)該進行關(guān)鍵的視頻圖像數(shù)據(jù)網(wǎng)絡(luò)傳輸,才能建立完整的視頻采集。網(wǎng)絡(luò)服務(wù)器的基礎(chǔ)是客戶端和服務(wù)器之間的數(shù)據(jù)通信。視頻傳輸系統(tǒng)的網(wǎng)絡(luò)是基于UDP協(xié)議的實現(xiàn),前端嵌入機作為視頻服務(wù)器負責視頻捕捉和創(chuàng)造良好的UDP服務(wù)器,等待客戶端連接,然后客戶端做一系列的初始化,對服務(wù)器的有效連接,獲得建立連接來接收數(shù)據(jù),并實時顯示后的反應(yīng)。第二章的結(jié)尾部分進行了詳細的UDP被描述。 UDP開發(fā)板端:(1)建立數(shù)據(jù)報套接字socketsockfd=socket(AF_I
26、NET,SOCK_DGRAM,0);(2)服務(wù)器IP地址bindbind(sockfd,(struct sockaddr *)&addr,sizeof(struct sockaddr_in)(3)向客戶端發(fā)送數(shù)據(jù)sendtosendto(sockfd,ptcur,imagesize,0,(struct sockaddr*)&addrdst,sizeof(struct sockaddr_in); 其函數(shù)原型為:ssize_t sendto(int s,const void*buf,size_t len,int flags,const struct sockaddr* to,socklen_t t
27、olen);第1個參數(shù)表示套接字描述符第2個參數(shù)表示發(fā)送緩沖區(qū)的指針第3個參數(shù)表示發(fā)送緩沖區(qū)的大小第4個參數(shù)是標志第5個參數(shù)表示目的主機的sockaddr_in指針第6個參數(shù)表示目的主機的sizeof(struct sockaddr_in);返回值:成功返回已經(jīng)發(fā)送的數(shù)據(jù)長度,數(shù)據(jù)長度可以為0(4)關(guān)閉套接字close()close(sockfd);PC機顯示端:主要部分與開發(fā)板端相同,發(fā)送函數(shù)改為接收函數(shù)。imagesize=recvfrom(socket_descriptor,message,sizeof(message),0,(struct sockaddr *)&sin,&sin_le
28、n);其函數(shù)原型為:ssize_t recvfrom(int s,void*buf,size_t len,int flags,struct sockaddr* from,socklen_t *fromlen);參數(shù):s-套接字描述符buf-接收數(shù)據(jù)的緩沖區(qū)大小len-接收數(shù)據(jù)的緩沖區(qū)長度flags-接收數(shù)據(jù)的標志from-客戶端或者是服務(wù)器的地址fromlen-客戶端或者是服務(wù)器的地址長度指針返回值:成功返回接收的字節(jié)數(shù),發(fā)生錯誤時返回-1.3.5 視頻的顯示 本設(shè)計使用的攝像頭ZC0301PL采集到的是JPEG格式的數(shù)據(jù),所以在顯示端本設(shè)計將接收到的數(shù)據(jù)保存為.jpg文件,然后利用SDL的擴
29、展庫,顯示該文件。(1) 啟動SDL并初始化SDL_Init(SDL_INIT_EVERYTHING);(2) 建立顯示窗口 screen = SDL_SetVideoMode( 320, 240, 24, SDL_SWSURFACE );調(diào)用SDL_SetVideoMode()是用來建立一個320像素寬、240像素高的24位(位/像素)窗口。(3) 加載圖片loadjpg = IMG_Load(0.jpg);使用IMG_Load()來加載圖片。在加載過程中茹過發(fā)生了錯誤,則會返回NULL。IMG_Load()可以加載BMP, PNM, XPM, LBM, PCX, GIF, JPEG, TG
30、A 和 PNG 格式的文件。(4) 將加載的圖片應(yīng)用到窗口上SDL_BlitSurface( imagejpg, NULL, screen, NULL );在本設(shè)計里,它是將加載好的圖像應(yīng)用到窗口上。(5) 刷新窗口SDL_Flip( screen )(6) 釋放加載的圖片SDL_FreeSurface( imagejpg );(7) 關(guān)閉SDLSDL_Quit();3.6 Windows下客戶端Windows下客戶端程序和Linux下客戶端程序相似。這里采用的開發(fā)平臺式Microsoft Visual Studio 2010,需要的SDL庫包括SDL-devel-1.2.15-VC.zip和
31、SDL_image-devel-1.2.12-VC.zip。Windows下的Socket通信和Linux下的Socket通信相似,用到的函數(shù)基本相同,只不過需要包含的頭文件有些不同,而且Windows需要對Windows Socket庫進行初始化。1、Windows下需要的頭文件:#include #include #pragma comment(lib,ws2_32.lib)2、初始化Windows Socket庫WORD wVersionRequested;WSADATA wsaData;wVersionRequested = MAKEWORD( 1, 1 );WSAStartup( wVersionRequested, &wsaData );下面是監(jiān)控畫面:圖3.2 Windows 下的監(jiān)控畫面4 系統(tǒng)的成果展示4.1系統(tǒng)的調(diào)試1、編譯文件編譯開發(fā)板端的程序arm: #arm-l
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 23090-26:2025 EN Information technology - Coded representation of immersive media - Part 26: Conformance and reference software for carriage of geometry-based point
- 2025至2030中國白色水泥行業(yè)發(fā)展分析及競爭格局與發(fā)展趨勢預(yù)測報告
- 2025至2030中國男士帆布鞋行業(yè)供需趨勢及投資風險報告
- 2025至2030中國電商物流行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國特醫(yī)食品行業(yè)發(fā)展分析及前景趨勢與投資報告
- 培訓課件軟件
- 智慧城市基礎(chǔ)設(shè)施建設(shè)中的通信電纜技術(shù)創(chuàng)新
- 幼兒園新教師健康教育培訓
- 心理輔導(dǎo)在學生學習中的重要性
- 從學生到職業(yè)領(lǐng)袖的教育之路
- 2025年四川廣安愛眾股份有限公司招聘筆試參考題庫含答案解析
- 2024起重吊裝及起重機械安裝拆卸工程監(jiān)理作業(yè)指引
- 威脅情報收集與整合-洞察分析
- 期末教師會議校長精彩講話:最后講了存在的問題
- 知名連鎖漢堡店食安QSC稽核表
- 攝影設(shè)備采購合同范例
- DB41T 1812-2019 蘋果簡約栽培技術(shù)規(guī)程
- 【《三只松鼠公司員工激勵現(xiàn)狀調(diào)查及優(yōu)化建議(附問卷)14000字》(論文)】
- 護理不良事件登記本及護理不良事件報告新規(guī)制度
- 農(nóng)業(yè)土壤檢測技術(shù)行業(yè)發(fā)展前景及投資風險預(yù)測分析報告
- 廣東省深圳市羅湖區(qū)2023-2024學年二年級下學期期末考試數(shù)學試題
評論
0/150
提交評論