基于嵌入式Linux的運動(dòng)目標檢測系統
摘要:選用ARM11(S3C6410)處理器作為硬件平臺,嵌入式Linux操作系統作為軟件平臺,綜合運動(dòng)圖像檢測的背景差分法和幀間差分法為算法,并與GSM模塊相結合,設計并實(shí)現了一種應用于家居環(huán)境或私人辦公室無(wú)人值守的運動(dòng)目標檢測系統。提出了系統設計的總體方案,并詳細介紹了系統軟硬件平臺的設計流程,最后對系統進(jìn)行了測試。
關(guān)鍵詞:嵌入式Linux操作系統;ARM;運動(dòng)目標檢測;幀間差分法;CSM
隨著(zhù)社會(huì )的發(fā)展和科技的進(jìn)步,人們的安防意識越來(lái)越強,而計算機網(wǎng)絡(luò )技術(shù),通信技術(shù),和數字視頻編碼技術(shù)的日益成熟,使基于計算機的多媒體視頻監控系統成為可能。但是傳統的視頻監控系統因十分復雜,功耗和成本較高且需要值守,而無(wú)法應用于諸如家居或私人辦公室等場(chǎng)所,為此,本文設計了一種以ARM11為核心處理器,嵌入式Linux為操作系統,在傳統的視頻監控的基礎上加入了目標檢測的算法,并與GSM模塊相結合,已達到無(wú)人值守的目的。
1 系統總體設計
運動(dòng)目標檢測系統采用S/B(服務(wù)器/瀏覽器)工作模式,總體上分為服務(wù)器監控模塊,短信通知模塊(GSM)和客戶(hù)查看模塊。服務(wù)器監控模塊采用三星公司的ARM11(S3C6410)微處理器,開(kāi)源的Linux操作系統,GSM模塊采用Q2403A芯片,當監控的畫(huà)面發(fā)生變化,即檢測到運動(dòng)目標時(shí),服務(wù)器會(huì )將發(fā)生變化的圖像以圖片的格式存儲起來(lái)發(fā)送給客戶(hù)端,與此同時(shí)2403A會(huì )以短信的方式通知客戶(hù),客戶(hù)可以通過(guò)IE瀏覽器來(lái)查看圖像的變化結果。系統的總體設計如圖1所示。
2 硬件結構
本文采用廣州友善之臂公司的Tiny6410開(kāi)發(fā)板,Tiny6410是一款以ARM11(三星S3C6410)作為主處理器的嵌入式板,該CPU基于A(yíng)RM11-76JZF-S核設計,內部集成了強大的多媒體處單元。硬件架構如圖2所示。短信通知模塊的Q2403A為WAVECOM公司推出的一款GSM GPRS模塊,其體積較小,重量較輕,主要由射頻天線(xiàn),內部FLASH,SRAM和GSM基帶處理器,匹配電源和一個(gè)40腳的ZIF插座組成。GSM基帶處理器是核心部件,其作用相當于一個(gè)協(xié)處理器,用來(lái)處理外部系統通過(guò)串口發(fā)送過(guò)來(lái)的AT指令。
3 軟件平臺
系統軟件平臺以L(fǎng)inux操作系統為基礎,首先在宿主機上建立交叉編譯環(huán)境,并安裝交叉編譯器arm-Linux-gcc。其次完成U-Boot以及Linux 2.6.33內核的移植和編譯,構建基于busy-box1.13.3的根文件系統,由于嵌入式服務(wù)器資源的局限性,包括內存大小,CPU的
處理能力等。因此,在設計過(guò)程中需要對內核進(jìn)行裁剪,在提高系統性能的同時(shí)減少了系統資源的占用,在剪裁過(guò)的Linux操作系統上編寫(xiě)運動(dòng)檢測的應用程序和短信報警程序。
3.1 嵌入式Linux下的運動(dòng)目標檢測算法
目前,對運動(dòng)物體的檢測和運動(dòng)參數測量的研究方向主要有2種,即:運用人工神經(jīng)網(wǎng)絡(luò )和運用圖像處理的方法,大多數專(zhuān)家學(xué)者都把研究重點(diǎn)放在運用圖像處理的方法進(jìn)行運動(dòng)目標檢測和跟蹤,現在的比較有效的圖像運動(dòng)目標檢測的方法主要是光流法和差分圖像法。一般來(lái)說(shuō)光流發(fā)的時(shí)間開(kāi)銷(xiāo)很大,其實(shí)時(shí)性和實(shí)用性。相反,圖像差分法比較簡(jiǎn)單,易于實(shí)現,圖像差分法可分為2類(lèi):背景圖像差分法和幀間差分法。背景圖像差分法是傳統運動(dòng)目標檢測方法中最直接最簡(jiǎn)序列圖像當前幀與背景圖像做減法運算。由于運動(dòng)物體和背景在灰度或色彩上存在差別,相減后所得的結果中每一像素的值和一個(gè)預先設定的閾值相比較,如果這個(gè)像素的值大于設定的閾值,則判定被監控的場(chǎng)景中存在運動(dòng)物體,總而得到運動(dòng)的目標。背景圖像差分法原理設計簡(jiǎn)單,但同時(shí)也存在受光線(xiàn),天氣等外界條件變化的影響較大。幀間差分法是一種通過(guò)對視頻圖像序列中相鄰兩幀做差分運算來(lái)獲得運動(dòng)目標輪廓的方法,它可以很好地適用于存在多個(gè)運動(dòng)目標和攝像機移動(dòng)的情況,當監控場(chǎng)景中出現異常物體運動(dòng)時(shí),幀與幀之間會(huì )出現較為明顯的差別,兩幀相減,得到兩幀圖像亮度的絕對值,判斷它是否大于閾值來(lái)分析視頻或圖像序列的運動(dòng)特性,確定圖像序列中有無(wú)物體運動(dòng),圖像序列逐幀的差分,相當于對圖像序列進(jìn)行時(shí)域上的高通濾波。幀間差分法對光線(xiàn)等場(chǎng)景變化不太敏感,能適應各種動(dòng)態(tài)環(huán)境,穩定性較好,其缺點(diǎn)是:不能提取出對象的完整區域,只能提取出邊界,當物體在前后兩幀中幾乎完全重疊時(shí),則檢測不到運動(dòng)的物體。鑒于背景差分法和幀間差分法的優(yōu)缺點(diǎn),將兩種方法結合起來(lái),使它們優(yōu)勢互補。在視頻圖像序列中,利用已有的背景差分法和幀間差分法作為啟示,將動(dòng)態(tài)圖像中連續兩幀差圖像和背景差圖像直接進(jìn)行與操作,再將結果進(jìn)行二值化處理得到運動(dòng)結果。
linux相關(guān)文章:linux教程
絕對值編碼器相關(guān)文章:絕對值編碼器原理
評論