《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ARM的農(nóng)藥噴霧飛行器越界控制系統(tǒng)設(shè)計
基于ARM的農(nóng)藥噴霧飛行器越界控制系統(tǒng)設(shè)計
2015年電子技術(shù)應(yīng)用第4期
王曉龍,,穆春陽,張盼盼,,馬 行
北方民族大學 信息與通信技術(shù)研究所,,寧夏 銀川750021
摘要: 針對當前的農(nóng)藥噴霧飛行器需要人時刻觀察是否飛出農(nóng)田邊界這一情況,,從機器視覺的角度出發(fā),綜合嵌入式,、圖像處理和測控等技術(shù),,設(shè)計了一種以ARM Contex-A8平臺為核心的農(nóng)藥噴霧飛行器越界控制系統(tǒng)。首先,,采用混合高斯模型算法進行目標檢測,,通過計算目標的形狀描述符來獲得形狀特征并進行目標定位。然后,,計算目標的質(zhì)心位置同時結(jié)合運動方向來判斷飛行器是否出界,。最后,根據(jù)綜合判斷的結(jié)果,,用無線模塊控制農(nóng)藥噴霧飛行器的飛行方向,。實驗結(jié)果表明,該系統(tǒng)能夠很好地識別到農(nóng)藥噴霧飛行器,,并能精準定位和越界判斷,,實現(xiàn)了無人操控,提高了工作效率,。
中圖分類號: TP391
文獻標識碼: A
文章編號: 0258-7998(2015)04-0036-04
The design of pesticide-spraying aircraft cross-border control system based on ARM
Wang Xiaolong,,Mu Chunyang,Zhang Panpan,,Ma Xing
Institute of Information and Communication Technology, Beifang University of Nationalities, Yinchuan 750021,,China
Abstract: In view of the ordinary pesticide-spraying aircraft need people to judge whether the aircraft flied out the farmland boundaries all the time, this paper proposes an automatic checkout and control system which is based on ARM Contex-A8 platform and combined with embedded technology, image processing technology and control technology. First, the gaussian mixture model algorithm is used to detect the targets and get its features of shape by calculating the shape descriptor for the target localization. Second, the centroid position of the targe is calculated and analyzed together with its flight paths for estimating whether the aircraft is out of the boundary. At last, the aircraft paths are controlled intelligently according to the results of the computations through the wireless module. The experimental results show that the system is able to control the pesticide-spraying aircraft flying accurately, achieve unmanned-control and improve the working efficiency.
Key words : pesticide-spraying aircraft;ARM,;cross-border detection,;Gaussian mixture model

  

0 引言

  精準農(nóng)業(yè)(Precision Agriculture)作為當今世界農(nóng)業(yè)發(fā)展的新潮流,通過信息技術(shù)支持,,可以實現(xiàn)定位,、定時、定量的現(xiàn)代化農(nóng)事操作技術(shù)實施與管理,,以最節(jié)省的投入得到更高的收入,,并高效地利用各類農(nóng)業(yè)資源為目的[1]。在這一應(yīng)用背景下,一種可超低空作業(yè),,具有重量輕,、折疊尺寸小、操作距離遠等優(yōu)點的新型多旋翼飛行器——“農(nóng)藥噴霧飛行器”應(yīng)運而生,。它特別適合于山地丘陵,、地塊小、間作套種地塊多的農(nóng)作物病蟲害防治,。但是這種飛行器一般采用人工遙控控制,,這就需要技術(shù)人員時刻觀察并判斷飛行器是否飛出農(nóng)田邊界,,這不僅造成人力資源的浪費,,而且效率相對較低,易出現(xiàn)誤判[2],,尤其當農(nóng)作物過高,,飛行器超低空飛行時,工作人員的視角容易受到限制,,這個問題就表現(xiàn)得更加突出,。

  針對上述問題,本文設(shè)計了一個能夠自動檢測農(nóng)藥噴霧飛行器是否越界的智能控制系統(tǒng),。本系統(tǒng)融入了嵌入式技術(shù),、圖像處理技術(shù)和測控等技術(shù),并以Contex-A8為內(nèi)核的S5PV210作為核心平臺,, 在第三方庫OpenCV,、Qt的基礎(chǔ)上通過混合高斯模型、形狀特征提取等算法實現(xiàn)了運動目標的檢測,、識別和定位,,最終實現(xiàn)了農(nóng)藥噴霧飛行器越界檢測,并通過無線模塊控制農(nóng)藥噴霧飛行器智能飛行,,無人操控,。實驗結(jié)果表明,該系統(tǒng)能夠很好地識別到飛行器并準確地控制農(nóng)藥噴霧飛行器飛行,,減輕了工作人員的體力勞動,,同時提高了工作效率。

1 飛行器越界控制系統(tǒng)農(nóng)田作業(yè)分析


001.jpg


009.jpg

  假設(shè)矩形ABCD為一塊農(nóng)田的模擬圖,,如圖1所示,,表1為設(shè)置的農(nóng)藥噴霧飛行器飛行參數(shù)。農(nóng)藥噴霧飛行器的運動方向越界判定分析如下:

  假設(shè)農(nóng)藥噴霧飛行器的飛行軌跡為從農(nóng)田的BC邊界飛入,,垂直飛到AD邊界再折返,,以此類推。由表1的參數(shù)可知攝像頭標定的邊界應(yīng)在農(nóng)田ABCD的內(nèi)部(至少距邊界1 m內(nèi)),如直線fg和eh所示,。

002.jpg

  當農(nóng)藥噴霧飛行器從攝像頭2前飛過,,系統(tǒng)根據(jù)越界檢測算法可以檢測到農(nóng)藥噴霧飛行運動軌跡,并判斷飛行方向為從右向左(如圖2所示),,即進入農(nóng)田,,此時不發(fā)出控制信號;當飛行器飛至攝像頭1前,,即eh線時,,根據(jù)運動軌跡判斷飛行方向向左,即要飛出邊界,,此時發(fā)出控制信號,,使飛行器沿eh向下平移并折返;當飛行器折返后再次飛至線fg時,,運動軌跡判斷飛行方向向右,,即要飛出邊界,此時發(fā)出控制信號,。以此類推,,直至控制農(nóng)藥噴霧飛行器完成整個農(nóng)田噴藥作業(yè)。

2 越界控制系統(tǒng)方案設(shè)計

  2.1 總體結(jié)構(gòu)設(shè)計

  系統(tǒng)的核心平臺是以Contex-A8為內(nèi)核的S5PV210主板,,利用USB高清攝像頭實時捕獲農(nóng)田邊界的視頻信號,,然后視頻信號經(jīng)Contex-A8分析和處理后實現(xiàn)農(nóng)藥噴霧飛行器這個運動目標的檢測、識別和定位,,進而判斷其是否越過農(nóng)田邊界,,最終系統(tǒng)通過無線模塊nRF24L01實現(xiàn)對農(nóng)藥噴霧飛行器智能控制。系統(tǒng)整體結(jié)構(gòu)圖如圖3所示,。

003.jpg

  2.2 USB高清攝像頭

  USB高清攝像頭采用的是TTQ甜甜圈的USB2.0高速廣角超高清監(jiān)控攝像頭,,其采用CMOS傳感器,CS標準卡口,,最大分別率為1 024×768,,像素為1 200萬,每秒可以采集30幀圖像,,視頻幀的格式是YUV422或者MJPG,。鏡頭采用的是焦距為2.8~12 mm,通光口徑為1.4 mm,,視場角為25°~103°的廣角攝像頭,,清晰成像距離可達到800 m。

  2.3 無線收發(fā)模塊

  nRF24L01是一款工作在2.4~2.5 GHz世界通用ISM頻段的單片無線收發(fā)器芯片,,具有125個可選工作頻道,,數(shù)據(jù)傳輸率為1(或2) Mb/s,,SPI接口數(shù)據(jù)速率為0~8 Mb/s,工作電壓為1.9~3.6 V,,擁有自動應(yīng)答及自動重發(fā)功能[3],。

3 越界檢測控制程序設(shè)計

  農(nóng)藥噴霧飛行器越界檢測控制程序是基于QT和OpenCV開發(fā),運行環(huán)境為ARM-Linux嵌入式操作系統(tǒng),,核心算法主要包括對圖像的預(yù)處理,、基于混合高斯模型的運動目標檢測、基于形狀特征的目標識別定位,、基于質(zhì)心位置和運動方向的目標越界檢測等,,最終實現(xiàn)對農(nóng)藥噴霧飛行器的越界判斷和通過無線模塊對其的控制。農(nóng)藥噴霧飛行器越界檢測控制程序設(shè)計框圖如圖4所示,。

004.jpg

  3.1 第三方計算機視覺庫OpenCV的移植

  OpenCV是由Intel公司發(fā)起并參與開發(fā)且在近年來迅速普及的計算機視覺研究工具,,是一個跨平臺的計算機視覺庫[4]。它源代碼開放,,輕量高效,,并提供了非常豐富的幀提取函數(shù)和視覺處理算法,,使開發(fā)者可以在其視頻開發(fā)或圖像處理項目中直接進行算法移植或?qū)⑵涮砑幼约壕帉懙某绦蛑?,達到事半功倍的效果[5]。移植過程為,,首先從官網(wǎng)上下載源碼包,,然后根據(jù)嵌入式ARM系統(tǒng)安裝步驟安裝交叉編譯器、參數(shù)配置和編譯,,經(jīng)測試最終使用的版本為OpenCV2.4.2,。

  3.2 圖像預(yù)處理

  考慮到圖像處理涉及到大量的矩陣操作和S5PV210的性能以及監(jiān)控區(qū)域的復(fù)雜性,預(yù)處理線程首先采用人工標定的方法對視頻的每一幀進行ROI(感興趣區(qū)域)提取,,然后使用OpenCV的blur()和GaussianBlur()等庫函數(shù)對圖像進行去噪,、消除模糊和增強對比度等處理,最終得到一個有利于后期處理的圖片,。整個過程如圖5所示,,其圖像中的豎直黑線表示界線。

005.jpg

  3.3 混合高斯模型[6]目標檢測算法實現(xiàn)

  高斯模型是一種用高斯概率密度函數(shù)來量化對象并將其分解為由若干個高斯概率密度函數(shù)所組成的模型,?;诟咚鼓P偷谋尘疤崛〗⒃谙袼丶墸煌趩胃咚鼓P偷氖?,混合高斯模型將圖像的每個像素設(shè)計成由若干個(一般為3~5個)高斯模型根據(jù)各自的權(quán)值加和共同產(chǎn)生的[7],。然后將采集到的圖像像素與這幾個高斯分布分別進行匹配,以確定哪些像素屬于背景,。又因為監(jiān)控區(qū)域時刻都會有變化,,比如風吹樹動,、人員流動或物體的進入等,使最初得到的背景不再具有可信度,,因此還需要不斷地對各個高斯分布的權(quán)值,、均值和方差進行實時更新,這樣處理有助于抗噪,,比如光照變化,、樹葉晃動等,以達到背景模型的更準確表達,。其中混合高斯像素點判為背景的概率計算公式如下:

  1.png

  其中Xt的概率p(Xt)是該像素分別屬于K個高斯分布的概率加權(quán)和,;K為高斯模型的數(shù)量(3~5個);(k,,t)分別表示t時刻第k個高斯模型的權(quán)重,、均值和方差,RA[RA2V{EVBJPXE9Q61N$Z0.png表示t時刻第k個高斯模型的概率密度函數(shù),。

  混合高斯參數(shù)更新函數(shù)為:

  2.png

  其中,,M(k,t)=1,,匹配成功

  0,,匹配不成功,a(取值0~1之間)為各個高斯分布權(quán)重的更新率,;?籽為參數(shù)的更新率,,?籽越大,參數(shù)調(diào)整越快,。

  混合高斯背景更新函數(shù)為:

  3.png

  其中H表示經(jīng)過以上步驟的調(diào)整得到的K個高斯分布并取前H個高斯分布作為新的背景,;T表示屬于背景高斯分布的權(quán)值和占總權(quán)值的最小比例;b是滿足T的最合適的高斯分布數(shù),。

  根據(jù)以上理論,,基于OpenCV實現(xiàn)混合高斯模型目標檢測算法的關(guān)鍵代碼為:

  BackgroundSubtractorMOG mog;//定義混合高斯

  mog(frame, foreground, 0.02); //更新背景圖片并且輸出前景

  threshold(foreground, foreground, 128, 255,

  THRESH_BINARY_INV);

  3.4 目標的識別定位算法

006.jpg

  運動目標識別定位算法如圖6所示,其中形態(tài)學濾波是為消除細小的噪聲干擾又能填充物體內(nèi)細小的空洞,,有利于目標輪廓提取,,質(zhì)心坐標是根據(jù)連通域的幾何距求出。一幅數(shù)字圖像的階2-D距定義為:

  4.png

  其中M和N分別是圖像的高和寬,,p和q是非零正整數(shù),,mpq為(p+q)矩。根據(jù)式(4)的mpq可求出連通域質(zhì)心坐標,,質(zhì)心的計算公式為:

  5.png

  其中x表示質(zhì)心的橫坐標,,y表示質(zhì)心的縱坐標。最后將質(zhì)心(x,,y)坐標輸出,,為目標越界判斷和控制提供依據(jù),。

  運動目標識別定位算法的實現(xiàn)代碼如下:

  (1)調(diào)用OpenCV的庫函數(shù)dilate()和erode()函數(shù),實現(xiàn)二值形態(tài)學閉運算,。具體實現(xiàn)代碼為:

  dilate( foreground, foreground, element);//膨脹

  erode( foreground, foreground, element); //腐蝕

  其中每一個函數(shù)中第一個foreground表示輸入圖像,,第二個表示經(jīng)函數(shù)處理后輸出圖像,element表示用于腐蝕和膨脹處理的模板,。

  (2)調(diào)用函數(shù):find_Contours(foreground, outgroud, con-

  tours, point_num, MAX_CON) 提取二值圖像中有效輪廓存于contours中,。其中foreground表示輸入待提取輪廓的圖像;outgroud表示輸出圖像,;contours是一個容器變量,,用以存放輪廓的數(shù)量、長度和每個輪廓的坐標,;point_num和MAX_CON分別表示有效輪廓的下限和上限,,濾除無效輪廓。

  (3)調(diào)用函數(shù):get_barycenter(contours,,barycenter)實現(xiàn)從有效輪廓變量contours中計算形狀描述符和識別有效的輪廓,,并將最終質(zhì)心的坐標存儲到barycenter中,其類型是cv::Point,,表示一個坐標為整數(shù)的二維點,。

  3.5 目標越界判斷及控制

  目標越界判斷的兩個條件是運動目標質(zhì)心位置和運動方向,且運動方向由質(zhì)心的運動軌跡可求出,。因此,,判斷農(nóng)藥噴霧飛行器是否在右邊界越界的條件表達式如下:

  6.jpg

  其中crossAlarm越界標記,,1為越界,;flag表示運動方向標號,規(guī)定從左向右為0,,從右向左為1,;是質(zhì)心坐標,g(k,,y)表示界線函數(shù)(k為常數(shù)),。通過異或(0^flag,1^flag)可有效地解決雙向越界報警,,實現(xiàn)單方向越界報警,。左邊界越檢測算法和右側(cè)的類似。程序中的主要函數(shù)為judge_barycenter(barycenter,,B_left,,B_right),其中bary-

  center為質(zhì)心坐標,,B_left 和B_right分別表示左,、右邊界函數(shù)常數(shù)k,,返回值為0或1,存于crossAlarm,。

  當檢測到農(nóng)藥噴霧飛行器越界crossAlarm=1,,程序馬上通過軟中斷控制無線模塊nRF24L01發(fā)送控制命令給農(nóng)藥噴霧飛行器。為了保證控制的正確率,,控制命令采用包含校驗和的數(shù)據(jù)包發(fā)送,,并且農(nóng)藥噴霧飛行器解碼后要做出答復(fù),數(shù)據(jù)包的格式為:包頭+包長度+命令+校驗位,,校驗方式為和校驗,。

4 系統(tǒng)的測試

  本文設(shè)計的基于ARM的農(nóng)藥噴霧飛行器越界控制系統(tǒng)主要由Contex-A8圖像檢測控制系統(tǒng)、nRF2401無線控制模塊,、高清攝像頭捕獲終端和三腳架等部分組成,,且最終在農(nóng)田進行測試。首先用三腳架將攝像頭抬升到一定高度使攝像頭前無遮擋物,,然后啟動農(nóng)藥噴霧飛行器飛躍農(nóng)田的邊界,,經(jīng)混合高斯和目標的識別定位算法處理過程產(chǎn)生的效果如圖7~10所示,其中圖7是由圖5(c)經(jīng)混合高斯模型算法處理得到的,。

007.jpg

  為了驗證系統(tǒng)的可靠性,,根據(jù)農(nóng)藥噴霧飛行器工作的天氣條件,系統(tǒng)分別在晴朗微風,、晴朗中風,、陰天微風3種條件下進行測試,測試的數(shù)據(jù)如表2所示,。

010.jpg

  現(xiàn)場測試的實驗結(jié)果表明,,基于ARM的農(nóng)藥噴霧飛行器越界控制系統(tǒng)能夠正確檢測、識別定位和判斷農(nóng)藥噴霧飛行器是否越界,,并控制其正確飛行完成農(nóng)田作業(yè),。同時分析得:雖然光線的強弱和風速對系統(tǒng)有一定的影響,但在不同的天氣環(huán)境測試該系統(tǒng)時正確率也可達到92.85%,。因此本系統(tǒng)可以滿足客戶需求,,實現(xiàn)對農(nóng)藥噴霧飛行器農(nóng)田作業(yè)的智能控制,在精準,、智能農(nóng)業(yè)中具有一定的推廣價值,。

  參考文獻

  [1] 胡承鍵.加速寧夏農(nóng)用無人機開發(fā)應(yīng)用促進精準農(nóng)業(yè)發(fā)展[J].寧夏農(nóng)林科技,2014,,55(5):8-10.

  [2] 林蔚紅,,孫雪鋼,劉飛,,等.我國農(nóng)用航空植保發(fā)展現(xiàn)狀和趨勢[J].農(nóng)業(yè)裝備技術(shù),,2014,,40(1):6-10.

  [3] 樊冬雪,成怡,,海林,,等.四軸飛行器視覺導(dǎo)航系統(tǒng)設(shè)計[J].計算機技術(shù)與應(yīng)用,2014,,40(8):142-146.

  [4] 尹俊超,,劉直芳.基于OpenCV的運動目標檢測與跟蹤[J].計算機工程與設(shè)計,2011,,32(8):2817-2820.

  [5] 劉瑞幀,,于士琪.OpenCV教程基礎(chǔ)篇[M].北京:北京航空航天大學出版社,2007.

  [6] Gan Xinsheng,,Zhao Shubin.Comparison on background subtraction algorithms for moving target detection[J].Command Control & Simulation,,2008,30(3):45-50.

  [7] 李娟,,邵春福,,楊勵雅.基于混合高斯模型的行人檢測方法[J].吉林大學學報(工學版),2011,,41(1):41-45.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。