亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于嵌入式技術(shù)的移動物體監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)

        2017-07-18 05:40:45劉鑫
        山東工業(yè)技術(shù) 2017年14期
        關(guān)鍵詞:視頻監(jiān)控

        摘 要:本課題采用的是OK6410開發(fā)板,用其作為Linux系統(tǒng)移植的一個硬件開發(fā)平臺。課題采用頻監(jiān)控技術(shù)、運動目標(biāo)檢測技術(shù)、視頻壓縮技術(shù)以及CGI動態(tài)網(wǎng)頁技術(shù)相結(jié)合的方式進(jìn)行設(shè)計的,這樣使得系統(tǒng)更加高效簡潔。本課題設(shè)計并實現(xiàn)了包括聲音報警子模塊系統(tǒng),攝像子系統(tǒng)模塊、web服務(wù)器模塊、移動監(jiān)控系統(tǒng)主模塊。系統(tǒng)首先通過USB攝像頭來采集圖片,然后將得到的圖片送到運動目標(biāo)檢測模塊中去進(jìn)行檢測,這里就要用到背景差分法來對運動的物體進(jìn)行檢測,如果檢測模塊檢測到有移動物的體就通過聲音報警模塊來報警。將圖像數(shù)據(jù)都發(fā)送到壓縮模塊中去進(jìn)行壓縮,壓縮完了以后,圖像就可以通過嵌入式Web服務(wù)器來讓圖像在pc機(jī)的瀏覽器之中能夠得到顯示,從而完成整個監(jiān)控系統(tǒng)的實現(xiàn)。本次的監(jiān)控系統(tǒng)采用模塊化的設(shè)計方法,使系統(tǒng)的設(shè)計更加高效、簡潔,并且也擁有了很好的實用性能。

        關(guān)鍵詞:視頻監(jiān)控;Linux;視頻壓縮

        DOI:10.16640/j.cnki.37-1222/t.2017.14.219

        1 緒論

        由于半導(dǎo)體科學(xué)正在快速的發(fā)展以及信息技術(shù)還有數(shù)字化的產(chǎn)品的快速普及,現(xiàn)在各個領(lǐng)域都開始運用嵌入式系統(tǒng)。如今,像計算機(jī)網(wǎng)絡(luò)領(lǐng)域、手持設(shè)備領(lǐng)域、安防領(lǐng)域還由自動控制領(lǐng)域等等這些領(lǐng)域有已經(jīng)廣泛的用到了嵌入式系統(tǒng)。本課題設(shè)計的是移動物體監(jiān)控系統(tǒng),所選的嵌入式系統(tǒng)主要應(yīng)用于對可靠性,實時性要求較高的系統(tǒng)中。這樣的監(jiān)控系統(tǒng)在商場和銀行還由其它一些公共場所用的比較多,用于防止偷竊的行為。視頻監(jiān)控系統(tǒng)所用到的技術(shù)有很多,比如說有通信技術(shù)、有自動控制技術(shù)、有計算機(jī)技術(shù)還有傳感器技術(shù)等等,對想要監(jiān)控的地方進(jìn)行遠(yuǎn)程的監(jiān)控,圖像的處理和控制的管理,從而集成出整個系統(tǒng)。

        隨著社會的發(fā)展與進(jìn)步,監(jiān)控系統(tǒng)非常的重要,它對于治安,消防,小區(qū)安保,銀行等等領(lǐng)域起到了很大的作用。在安全防范這一塊顯得格外的重要,在如今這個復(fù)雜的社會中,有著形形色色的人,其中不乏有一些動歪腦筋的人,他們會因為利益的誘惑做出一些偷竊,甚至是搶劫的行為,這個時候如果現(xiàn)場沒有任何防護(hù)措施,那么這些人將會輕而易舉的得手而不被抓捕,為了協(xié)助公安機(jī)關(guān)能夠第一時間抓捕罪犯,我覺得移動物體監(jiān)控系統(tǒng)已經(jīng)是呈現(xiàn)現(xiàn)場情況的不二選擇,同時它還有震懾不法分子的作用。

        2 系統(tǒng)分析

        2.1 可行性分析

        本課題的可行性分析,針對本課題在內(nèi)容和時間上可以做相應(yīng)的規(guī)劃。在系統(tǒng)模型上主要有四大塊,分別是:SUB攝像頭、音箱、web瀏覽器、移動物體監(jiān)控系統(tǒng),通過這四大塊的模型來實現(xiàn)整個系統(tǒng)的功能。

        2.2 需求分析

        隨著社會的發(fā)展與進(jìn)步,安全防范這一塊顯得格外的重要,在如今這個復(fù)雜的社會中,有著形形色色的人,其中不乏有一些動歪腦筋的人,他們會因為利益的誘惑做出一些偷竊,甚至是搶劫的行為,這個時候如果現(xiàn)場沒有任何防護(hù)措施,那么這些人將會輕而易舉的得手而不被抓捕,為了協(xié)助公安機(jī)關(guān)能夠第一時間抓捕罪犯,因為移動物體監(jiān)控系統(tǒng)已經(jīng)是呈現(xiàn)現(xiàn)場情況的不二選擇,同時它還有震懾不法分子的作用,因此對于監(jiān)控系統(tǒng)的研究成了當(dāng)今一個重要的課題。

        傳統(tǒng)的監(jiān)控系統(tǒng)沒有報警的功能,因此本次的設(shè)計加入了報警的這一項功能,能起到更好的警示效果,從而達(dá)到保證社會安定的作用。而且采用嵌入式ARM平臺作為系統(tǒng)的開發(fā)平臺使得系統(tǒng)更加穩(wěn)定、可靠、靈活,滿足了用戶在外觀、成本、可靠性、以及功能等各方面的需求。

        2.2.1 設(shè)計目標(biāo)

        對于移動物體監(jiān)控系統(tǒng)應(yīng)該具備如下的幾點功能:

        要能夠及時的抓拍清晰的圖像;

        能夠在特定地點對嫌疑人及時的發(fā)出警報聲;

        通過攝像頭抓取的圖像能夠及時的上傳的網(wǎng)絡(luò)便于查看;

        能夠通過視頻的形式觀看現(xiàn)場已發(fā)生的情況。

        2.2.2 性能需求

        (1)實用性:系統(tǒng)的使用性很高,方便,經(jīng)濟(jì),設(shè)計簡潔,實現(xiàn)了很好的監(jiān)控報警作用。

        (2)可靠性:系統(tǒng)安全可靠,在系統(tǒng)運行期間很少發(fā)生故障的情況,在硬件良好的情況下,系統(tǒng)流暢的運行起來。

        (3)實時性:當(dāng)有移動的物體從攝像頭下經(jīng)過時,能夠及時的發(fā)出警報聲,并且可以通過瀏覽器及時的查看抓取的圖片和視頻,具有很高的實時性。

        (4)安全性:可以采取必要的措施從而保障系統(tǒng)在運行時的安全穩(wěn)定。

        3 系統(tǒng)總體設(shè)計

        3.1 系統(tǒng)硬件平臺總體結(jié)構(gòu)設(shè)計

        本課題設(shè)計出來的系統(tǒng)采用的是ARM處理器+Linux操作系統(tǒng)+聲音報警子系統(tǒng)模塊+攝像頭子系統(tǒng)模塊+移動監(jiān)控主系統(tǒng)模塊+web服務(wù)器子系統(tǒng)模塊的方案來解決的,首先我可以通過USB攝像頭來采集到相應(yīng)的圖像,然后再把攝像頭端采集到的圖像進(jìn)行從模擬到數(shù)字的轉(zhuǎn)換,接下來對攝像頭端采集到的圖像進(jìn)行檢測,一旦發(fā)現(xiàn)有移動的物體就會報警,這一操作就需要用到背景差分法來對每一幀圖像進(jìn)行對比了,然后再通過視頻壓從而能夠完成對視頻數(shù)據(jù)的壓縮功能,這里通過移植ffmpeg來完成對圖像和視頻的流化操作,最后通過WEB服務(wù)器來接受到客戶端發(fā)過來的請求,從而實現(xiàn)網(wǎng)絡(luò)視頻數(shù)據(jù)傳輸?shù)倪@一項功能;最后在客戶端瀏覽器上顯示監(jiān)控所得到的圖片以及視頻。在本課題中,采用的硬件有OK6410的開發(fā)板,它上面帶的是ARM11的處理器。一個USB攝像頭,它是用來采集圖像和視頻數(shù)據(jù)。還有一個音箱,用來發(fā)出報警聲。最后當(dāng)然還需要pc機(jī)一臺,這樣能夠通過瀏覽器查看圖像和視頻。系統(tǒng)總體設(shè)計方案如圖1所示。

        3.2 系統(tǒng)軟件平臺總體架構(gòu)設(shè)計

        在本次的系統(tǒng)中包括兩個層面,分別是硬件層和和軟件層,要設(shè)計軟件平臺首先要設(shè)計硬件平臺設(shè)計,在此基礎(chǔ)上來對進(jìn)行軟件平臺的架構(gòu)進(jìn)行設(shè)計,在軟件平臺中主要包含以下幾部分,分別是:交叉編譯環(huán)境、BootLoader、Linux內(nèi)核源代碼、根文件系統(tǒng)、應(yīng)用軟件。整體流程如圖2所示。

        設(shè)計好了硬件和軟件平臺下面就是設(shè)計并實現(xiàn)了包括聲音報警子模塊系統(tǒng),攝像子系統(tǒng)模塊、web服務(wù)器模塊、移動監(jiān)控系統(tǒng)主模塊。

        4 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn)

        4.1 Uboot簡單分析

        了解Uboot的啟動流程對于后面的工作有很大的幫助,它一般分為兩個階段,第一個階段程序大部分是用匯編語來編寫的,它的任務(wù)是完成與體系結(jié)構(gòu)相關(guān)的硬件的初始化工作,第二個階段我們一般都是用C語言來進(jìn)行代碼的編寫的,這樣是為了能夠去實現(xiàn)更加復(fù)雜的一些功能,從可讀性與可移植性方面講,用C語言也會更好。

        (1)在移植Uboot之前首先要做的就是準(zhǔn)備好源代碼,要知道開發(fā)板的處理器是什么樣子的類型的,還有要知道Uboot支持的開發(fā)板型號。本課題采用的ok6410開發(fā)板,因此從網(wǎng)上下載支持改版本Uboot,具體的Uboot一直過程如下:

        1)將Uboot通過samba復(fù)制到linux中解壓,然打開Makefile文件,找到smdk6410_config:這個配置項后進(jìn)行配置。

        2)輸入如下命令:make forlinx_nand_ram256_config。

        3)然后編譯:make ARCH=arm CROSS_COMPILE=arm-linux- 之后會生成u-boot.bin文件。

        4)將開發(fā)板設(shè)置為sd卡啟動,sd卡中事先要燒寫好安裝uboot的輔助軟件,然偶通過usb下載線將uboot燒寫到開發(fā)nandflash中,在linux下輸入命令:/home/dnw u-boot.bin 5000000 之后等待uboot燒寫成功就可以了。

        (2)安裝tftp服務(wù)器:

        1)安裝:rpm –ivh /mnt/Packages/tftp-server-0.49-7.e16.i686.rpm。

        2)配置tftp服務(wù)器:vim /etc/xinted.d/tftp ,將Server_args的值設(shè)為-s /tftpboot,將disable的值設(shè)為no,保存并重啟tftp服務(wù)器/etc/ init.d/xinted restart。

        3)測試tftp服務(wù)器:關(guān)閉防火墻: /etc/init.d/iptables stop ,關(guān)閉Selinux: setenforce permissive ,ping通linux,使用命令netstat –a |grep tftp查看服務(wù)器是否啟動。

        (3)配置開發(fā)板網(wǎng)絡(luò)環(huán)境:

        1)設(shè)置開發(fā)板nandflash啟動,然后再通過對應(yīng)的選項進(jìn)入命令行模式。

        2)設(shè)置uboot環(huán)境變量setenv ipaddr 192.168.1.102回車,setenv serverip 192.168.1.101回車,saveenv保存到nandflash中。

        3)接下來我們設(shè)置一下開發(fā)板自動下載的功能,這樣就能自己下載自己啟動了。

        4.2 Linux內(nèi)核分析與移植

        4.2.1 Linux內(nèi)核分析

        移植Linux內(nèi)核其實一點都不簡單,是很麻煩的,它涉及的知識面很廣要深入的了解linux,因此需要開發(fā)者去學(xué)習(xí)和熟悉Linux內(nèi)核的整個體系架構(gòu)、源碼的組織結(jié)構(gòu)還有l(wèi)inux內(nèi)核的啟動流程是很有必要的,這對于接下來的移植工作有很大的幫助。

        4.2.2 移植Linux內(nèi)核

        首先需要在網(wǎng)上下載能夠支持ok6410開發(fā)板linux的內(nèi)核源代碼,然后復(fù)制到linux中并把它給解壓了,移植linux內(nèi)核的過程像下面這個樣子:

        (1)首先把原有的配置文件和中間文件給清除掉,要用到的命令是:

        make clean和make distclean

        (2)配置內(nèi)核:從網(wǎng)上下載參考的內(nèi)核配置文件config-file,將其復(fù)制到內(nèi)核源碼的目錄中,并改名為.config ,使用命令 cp config-file ./linux-ok6410/.config ,然后使用命令 make menuconfig ARCH=arm檢查配置文件是否正確。

        (3)下載mkimage工具將其復(fù)制到linux的/bin/目錄中。

        (4)編譯內(nèi)核:命令make uIamge ARCH=arm CROSS_COMPILE

        =arm-linux-之后將生成的uImage文件拷貝到根目錄中事先創(chuàng)建好的的tftpboot目錄中。

        (5)啟動開發(fā)板,然后會自動的下載內(nèi)核文件到開發(fā)板。

        4.3 根文件系統(tǒng)的創(chuàng)建

        4.3.1 根文件系統(tǒng)的簡介

        實際上根文件系統(tǒng)是一種目錄的結(jié)構(gòu),因為 Linux操作系統(tǒng)中的那些設(shè)備的存在的形式是文件形式,所以需要對這些文件要分很多的類去管它們,除此以外還要給它一個來用來與內(nèi)核交互的接口,就這樣目錄的結(jié)構(gòu)形成了。Linux它所支持得文件系統(tǒng)的種類是很多的,比如像常見的vfat文件系統(tǒng)、yaffs2文件系統(tǒng)、jffs2文件系統(tǒng)以及nfs文件系統(tǒng)等等這些文件系統(tǒng)。

        4.3.2 安裝nfs服務(wù)器

        nfs意思是網(wǎng)絡(luò)文件系統(tǒng),它的作用是為兩臺linux主機(jī)之間的通訊,它提供了類似于windows上共享目錄這樣子的服務(wù)。并且嵌入式linux開發(fā)的過程中,linux的目標(biāo)機(jī)經(jīng)常采用nfs方式來訪問linux宿主機(jī)上的文件。因此首先要做的是在linux的宿主機(jī)上搭建好一個nfs的服務(wù)器。

        步驟如下:

        首先要做的是配置nfs這個服務(wù)器 ,用到的命令是:vim /etc /exports 然后再里面加下面的這一些代碼就好了:

        /home/S4-ARM/part3/rootfs/ *(rw,sync,no_root_squash)

        啟動nfs服務(wù)器 /etc/init.d/nfs restart

        通過命令netstat –a |grep nfs可查看nfs服務(wù)器是否啟動

        4.3.3 創(chuàng)建根文件系統(tǒng)

        如何創(chuàng)建根文件系統(tǒng)呢?其實建立根文件系統(tǒng)就是在創(chuàng)建一些具有特定的功能的目錄,然后把各種各樣的文件放在里面,比如說像在/etc目錄下面就會放一些與系統(tǒng)相關(guān)的一些重要的配置文件,又比如說在/bin目錄下面放的文件是可以去執(zhí)行的一些文件等等。開發(fā)者可以用Busybox這個強(qiáng)大的工具來為自己創(chuàng)建根文件系統(tǒng),它可自動的創(chuàng)建所要的目錄,這樣使得整個創(chuàng)建的過程更加的簡單便捷了,有助于提高開發(fā)的效率。

        4.4 攝像頭子系統(tǒng)模塊設(shè)計

        采集圖像的主要操作流程如下:

        (1)打開攝像頭設(shè)備文件。

        (2)獲取驅(qū)動信息-VIDIOC_QUERYCAP;在此之后可以獲取更多的信息,不僅僅是本程序中后面的獲取設(shè)置圖像格式,我們還可以獲取攝像頭所支持的圖像格式等信息。

        (3)設(shè)置圖像格式-VIDIOC_S_FMT;

        (4)申請幀緩沖區(qū)-VIDIOC_REQBUFS; 在Linux 中一定要有幀緩沖區(qū)才能捕獲到圖像,當(dāng)申請了幀緩沖區(qū)之后,我們就可以把幀緩沖區(qū)設(shè)置成一個輸入的隊列,通過驅(qū)動程序就可以把圖像的信息全部都寫到幀緩沖區(qū)里面,圖像數(shù)據(jù)寫進(jìn)去之后幀緩沖區(qū)就會加入到輸出的隊列中去了, 用戶空間的應(yīng)用程序最重要取出輸出隊列的幀緩沖區(qū), 然后讀里面的內(nèi)容, 最后將被讀取數(shù)據(jù)以后的幀緩沖區(qū)再次放回到輸入隊列,如此循環(huán)完成視頻監(jiān)控功能。這里有一個值得注意的地方是,我們所申請到的幀緩沖區(qū)是在內(nèi)核空間里面的,因此應(yīng)用程序是無法直接去訪問到幀緩沖區(qū)的,在這里可以通過映射等一些操作來完成。并且輸入隊列和輸出隊列都通過幀緩沖來構(gòu)成的。

        (5)獲取幀緩沖的地址以及長度信息-VIDIOC_QUERYBUF;

        (6)通過 mmap 來使得內(nèi)核空間中的緩沖區(qū)能夠映射到用戶空間中去;

        (7)幀緩沖入隊列-VIDIOC_QBUF;

        (8)開始采集圖像-VIDIOC_STREAMON; 在此之后需要使用 select 函數(shù)等待輸出緩沖有數(shù)據(jù)可讀再進(jìn)行下一步操作。

        (9)取出幀緩沖(出隊)-VIDIOC_DQBUF;

        (10)訪問幀緩沖讀取數(shù)據(jù)-使用 write 等函數(shù)將數(shù)據(jù)寫入到目標(biāo)文件。

        (11) 幀緩沖重新入隊列-VIDIOC_QBUF;這里要把之前讀取過的幀緩沖重新的放入隊列中去。

        (12)關(guān)閉相關(guān)設(shè)備和文件進(jìn)行以及解除映射等掃尾工作。

        4.5 監(jiān)控主系統(tǒng)設(shè)計與開發(fā)

        Mtion主程序是一個用于移動物體的監(jiān)控程序,并且它的代碼是開源的,因此我們將它移植過來進(jìn)行系統(tǒng)的開發(fā)。步驟就下在下面:

        將 resources/motion 目錄中的源碼包解壓: tar xzf motion-3.2.12.tar.gz

        編譯、安裝 motion:

        ①進(jìn)入 motion 源碼目錄。

        ②使用命令:make,編譯源碼,使用命令:make install,將生成庫和頭文件安裝到指定的./_install 目錄下。

        ③拷貝./_install/bin/下的可執(zhí)行程序 motion 到開發(fā)板根文件系統(tǒng)的/usr/sbin 目錄下。

        ④復(fù)制 glibc 庫到開發(fā)板的 /lib/ 目錄。

        ⑤在開發(fā)板根文件系統(tǒng)目錄中創(chuàng)建/var/run/motion/目錄,在/motion/目錄下創(chuàng)建 motion.pid文件用來存放motion的進(jìn)程。

        5 總結(jié)

        傳統(tǒng)的監(jiān)控系統(tǒng)都沒有報警的功能,本系統(tǒng)最大的特色就是能夠?qū)σ苿拥奈矬w進(jìn)行判斷并報警,而且可以通過瀏覽器隨時查看攝像頭端采集到的圖像和視頻。本課題設(shè)計的監(jiān)控系統(tǒng)采用模塊化的設(shè)計方法,使系統(tǒng)的設(shè)計更加高效、簡單,并且也擁有了很好的實用性能。

        參考文獻(xiàn):

        [1]房芳,馬旭東.基于嵌入式Web技術(shù)的監(jiān)控系統(tǒng)設(shè)計與實現(xiàn)[J].計算機(jī)工程,2009,12(23):233-239.

        [2]Stephen Prata著,云巔工作室譯.C Primer Plus(第五版)中文版[M].北京:人民郵電出版社,2005.

        [3]魏洪興,諶衛(wèi)軍,康一梅,陳友東.嵌入式系統(tǒng)設(shè)計師教程[M].北京:清華大學(xué)出版社,2006.

        [4]譚浩強(qiáng).C++程序設(shè)計[M].北京:清華大學(xué)出版社,2004.

        [5]張海藩,牟永梅.軟件工程導(dǎo)論(第六版)[M].北京:清華大學(xué)出版社,2013.

        [6]孫瓊.嵌入式Linux應(yīng)用程序開發(fā)詳解[M].北京:人民郵電出版社,2006.

        作者簡介:劉鑫(1984-),男,內(nèi)蒙古包頭人,碩士,工程師,研究方向:網(wǎng)絡(luò)通信。

        猜你喜歡
        視頻監(jiān)控
        基于視頻圖像采集移動目標(biāo)檢測系統(tǒng)的設(shè)計
        數(shù)字化監(jiān)控系統(tǒng)的企業(yè)應(yīng)用
        廣東地區(qū)輸電線路在線監(jiān)測技術(shù)應(yīng)用探究
        基于嵌入式Linux的視頻監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)
        基于HTML5的視頻監(jiān)控微課設(shè)計淺析
        智能視頻檢索技術(shù)在校園安防建設(shè)中的發(fā)展應(yīng)用
        色人阁第四色视频合集网| 国产精品永久久久久久久久久| 国产区精品一区二区不卡中文| 国产精品一区二区在线观看| 亚洲精品国产第一区二区尤物| 国产成人久久蜜一区二区| 白色月光在线观看免费高清| 国产愉拍91九色国产愉拍| 亚洲综合av一区二区三区蜜桃| 成人免费a级毛片| 99久久久无码国产精品试看| 草草影院国产| 天堂av在线播放观看| 尤物精品国产亚洲亚洲av麻豆| av区无码字幕中文色| 99亚洲男女激情在线观看| 粗大的内捧猛烈进出在线视频| 无码视频一区=区| 中文字幕人妻av四季| а天堂中文地址在线| 色www视频永久免费| 婷婷五月综合缴情在线视频| 丰满熟妇人妻av无码区 | 日本一区二三区在线中文| 亚洲va视频一区二区三区| 国产激情综合在线观看| 国产极品美女高潮抽搐免费网站| 亚洲av午夜成人片精品| 国产精品后入内射日本在线观看| 日韩亚洲精品中文字幕在线观看| 欧美性色黄大片手机版| 乱子真实露脸刺激对白| 久久精品国产免费观看| 日韩精品一区二区亚洲av| 亚洲va中文字幕欧美不卡| 亚洲美女主播内射在线| 国产午夜片无码区在线播放| 日日噜狠狠噜天天噜av| 午夜精品久视频在线观看| 久久精品国产黄片一区| 人妻丰满熟妇av无码区app|