余 華,吳文全
(1.武漢東湖學院 電子信息工程學院,武漢 430212;2.海軍工程大學 電子工程學院,武漢 430033)
在現(xiàn)代農(nóng)機導航系統(tǒng)中,機器視覺部分是導航系統(tǒng)的核心。為了實現(xiàn)農(nóng)機的自主導航,機器視覺部分一般采用圖像分割識別技術(shù),對農(nóng)作物的果實進行自主識別,為了實現(xiàn)這個過程,需要借助相關(guān)的智能學習算法。神經(jīng)網(wǎng)絡(luò)算法是一種最常用的機器學習方法,其計算精度受到輸入輸出層和隱含層的權(quán)值的影響較大。為了提高神經(jīng)網(wǎng)絡(luò)學習算法的計算精度,需要引入極限學習機算法,通過改變權(quán)值的設(shè)定方式,達到提高計算精度的目的。
圖像識別技術(shù)是農(nóng)機導航視覺設(shè)計的核心。與定位導航原理不同,采用機器視覺進行導航時需要對大量圖像進行實時處理,以獲得果實或者果樹的位置坐標。特別是成熟果實的識別,在進行定位時采摘農(nóng)機需要對成熟度較高的果實進行優(yōu)先采摘,因此還需要根據(jù)顏色特征對圖像進行處理,最后根據(jù)對成熟果實圖像的位置識別實現(xiàn)自主定位。
在農(nóng)機導航系統(tǒng)中,成熟果實圖像的識別是定位導航的核心部分,因此在定位之前首先需要對采集的果實和果樹圖像進行處理。圖像處理可采用極限學習機算法,通過對圖像的處理達到圖像智能分類的目的,確定成熟果實圖像的坐標位置,然后通過采摘農(nóng)機的路徑規(guī)劃實現(xiàn)農(nóng)機采摘過程自主定位功能,如圖1所示。
圖1 基于極限學習機的果實圖像識別流程
extreme learning machine
神經(jīng)網(wǎng)絡(luò)算法是目前最常用的機器學習算法,其效率和精度主要與輸入輸出層和隱含層之間的權(quán)值相關(guān)。權(quán)值的選取往往需要根據(jù)經(jīng)驗來選取,計算精度較低,效率差。如果能實現(xiàn)權(quán)值的隨機選取,將輸入輸出層和隱含層的權(quán)值計算轉(zhuǎn)換為最小二乘最優(yōu)解問題,可以有效提高神經(jīng)網(wǎng)絡(luò)泛化能力及神經(jīng)網(wǎng)絡(luò)學習速度。
圖2為基于極限學習機的神經(jīng)網(wǎng)絡(luò)算法基本模型。神經(jīng)網(wǎng)絡(luò)算法是圖像分割識別的重要算法,假設(shè)在進行神經(jīng)網(wǎng)絡(luò)訓練時有N幅圖像數(shù)據(jù)樣本,輸入和輸出樣本數(shù)據(jù)分為
xi=[xi1,xi2,…xin]T∈Rn,t=[ti1,ti2,…tim]T∈Rm
i=1,2,…,N
(1)
隱藏層節(jié)點數(shù)為L,則標準單隱含層神經(jīng)網(wǎng)絡(luò)可表示為
(2)
由公式(2)可知:閾值在輸出層位置是缺失的,因此輸入的權(quán)值和隱含層的偏置就不需要再調(diào)整,可以直接利用輸出層的權(quán)值,建立神經(jīng)網(wǎng)絡(luò)驅(qū)動模型。其表達式為
Hβ=T
(3)
其中,H為隱藏層輸出矩陣;β為輸出權(quán)值矩陣;T為輸出矩陣。在ω和b固定時,經(jīng)過激活函數(shù)將H在高維呈現(xiàn)線性關(guān)系,利用最小二乘法可得
(4)
其中,(H+)T表示樣本輸入層經(jīng)過隱藏層后的輸出矩陣的Moore-Penrose廣義逆矩陣。為了驗證極限學習機神經(jīng)網(wǎng)絡(luò)算法的計算速度和精度,對一組坐標數(shù)據(jù)進行處理,以得到定位數(shù)據(jù),計算機結(jié)果如下:
ELM('diabetes_train', 'diabetes_test', 1, 20, 'sig')
TrainingTime =
0.0568
TestingTime =
0
TrainingAccuracy =
0.9796
TestingAccuracy =
0.9868
圖2 極限學習機神經(jīng)網(wǎng)絡(luò)算法模型Fig.2 The neural network algorithm model of extreme learning machine
由實驗結(jié)果可得,極限學習機方法具有耗時短、效率高等優(yōu)點。將不同學習算法的計算結(jié)果進行了統(tǒng)計,結(jié)果如表1所示。
表1 不同學習算法精度測試
計算結(jié)果表明:相對于其他兩種算法,基于極限學習機的BP神經(jīng)網(wǎng)絡(luò)算法計算精度更高。
為了驗證方案的可行性,對其圖像處理能力進行測試。要想實現(xiàn)農(nóng)機的自動導航功能,首先需要對待作業(yè)的果樹進行識別,結(jié)果如圖3所示。
圖3 果樹采集識別圖像
工作時,首先對傳感器采集得到的果樹圖像進行處理,通過灰度值的改變提取果樹的基本輪廓,然后對某個成熟度范圍內(nèi)的果實進行定位。定位結(jié)果如圖4所示。
圖4 果實閾值分割圖像
在果樹特征提取后,基于極限學習機的神經(jīng)網(wǎng)絡(luò)算法可以成功地實行果實特征的提取。為了驗證其測量和提取的精度,將計算得到的果實面積和實際果實面積進行了對比,結(jié)果如表2所示。
表2 果實面積圖像計算值和實際值對比
Table 2 Comparison of fruit area image calculation value and actual value
測試編號實際面積/cm2計算面積/cm21162.1158.32163.2152.83159.1156.24158.3155.35156.2158.96176.3179.2
由表2可知:計算得到的果實面積和實際測量面積基本吻合,從而驗證了計算的可靠性。
通過攝像機采集果實和果樹特征圖像后,需要對圖像進行處理,提取圖像主要特征,建立圖像坐標系,然后組建相機空間坐標系,從而獲得像素點的相機空間坐標,實現(xiàn)三維重構(gòu);最后根據(jù)果實和果樹的方位和坐標,實現(xiàn)快速導航功能。對快速導航所耗時間進行了統(tǒng)計,得到了如表3所示的計算結(jié)果。為了驗證極限學習機算法計算的快速性,對定位導航所需時間進行了統(tǒng)計,結(jié)果表明:采用極限學習機算法后定位時間有了明顯縮短,定位效率有所提高。
對基于極限學習機的農(nóng)機定位精度進行了測試,結(jié)果如表4所示。由表4可以看出:在農(nóng)機導航系統(tǒng)中使用極限學習定位算法后,定位精度有了明顯提升,可以滿足農(nóng)機定位導航系統(tǒng)的設(shè)計需求。
表3 快速定位時間測試
表4 導航精度測試
續(xù)表4 %
為了提高采摘機械導航系統(tǒng)的效率和精度,在視覺導航圖像處理系統(tǒng)中引入了基于極限學習機的神經(jīng)網(wǎng)絡(luò)算法,通過對成熟果實圖像的快速識別,得到果實圖像的坐標,達到了快速定位的目的。為了驗證方案的可行性,對基于極限學習機的定位導航所需時間和定位精度進行了測試,結(jié)果表明:采用機械學習機后明顯地提高了導航效率,定位導航耗時少、精度高,可以滿足農(nóng)機定位導航系統(tǒng)的設(shè)計需求。