——基于LM-BP神經(jīng)網(wǎng)絡(luò)"/>
康麗鋒,王彥昆
(焦作師范高等專(zhuān)科學(xué)校,河南 焦作 454000)
目前,在全球的水果種植中,仍然依靠人工進(jìn)行采摘作業(yè),勞動(dòng)強(qiáng)度大,效率低。眾所周知,五六十年前,國(guó)內(nèi)外就有研究學(xué)者開(kāi)始進(jìn)行采摘機(jī)器人的研究,但目前尚未沒(méi)有采摘機(jī)器人成功上市,最為重要的原因是采摘機(jī)器人對(duì)水果成熟度判斷的準(zhǔn)確率太低。因此,本文提出了一種LM-BP神經(jīng)網(wǎng)絡(luò)的采摘機(jī)器人自主采摘學(xué)習(xí)能力系統(tǒng),以實(shí)現(xiàn)對(duì)水果成熟度進(jìn)行準(zhǔn)確的判斷。
BP神經(jīng)網(wǎng)絡(luò)包括輸入層、隱藏層和輸出層,每層包括許多并行計(jì)算神經(jīng)元,這些單個(gè)神經(jīng)元與生物神經(jīng)系統(tǒng)中的神經(jīng)元相似,簡(jiǎn)單且功能有限,但許多神經(jīng)元可形成具有眾多功能的網(wǎng)絡(luò)系統(tǒng)。不同層中的神經(jīng)元完全互連,而同一層中的神經(jīng)元彼此不相連。BP神經(jīng)網(wǎng)絡(luò)中單個(gè)隱藏層的結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 The Structural Chart of BP Neural Network。
圖1中,x1,x2,... ,xn為BP神經(jīng)網(wǎng)絡(luò)中的輸入自變量,包括影響水果成熟度的因素;y1,y2,... ,yn為對(duì)應(yīng)于用于預(yù)測(cè)水果是否已經(jīng)成熟的輸出;F1,F2,...,Fn為相應(yīng)訓(xùn)練數(shù)據(jù)的實(shí)際水果成熟度,即來(lái)自水果成熟度預(yù)測(cè)模型的預(yù)期輸出值;Wij為與隱藏層中的每個(gè)節(jié)點(diǎn)相對(duì)應(yīng)的權(quán)重;Wjk為與輸出層中的每個(gè)節(jié)點(diǎn)相對(duì)應(yīng)的權(quán)重;n為神經(jīng)網(wǎng)絡(luò)中的輸入節(jié)點(diǎn)數(shù);l為隱藏層節(jié)點(diǎn)數(shù);m為輸出節(jié)點(diǎn)數(shù);d為每個(gè)節(jié)點(diǎn)的閾值。
在BP神經(jīng)網(wǎng)絡(luò)中的前向傳播中,其隱藏層的輸出表達(dá)式為
(1)
輸出層的輸出表達(dá)式為
(2)
根據(jù)BP神經(jīng)網(wǎng)絡(luò)模型,定義均方誤差函數(shù),用于計(jì)算預(yù)測(cè)輸出矢量和預(yù)期輸出矢量的均方誤差。該功能定義為
(3)
將式(1)和式(2)代入式(3),可以得到BP神經(jīng)網(wǎng)絡(luò)的性能誤差函數(shù)為
(4)
通過(guò)權(quán)重的誤差函數(shù)推導(dǎo)和輸出點(diǎn)的閾值,可得
(5)
(6)
得到輸出節(jié)點(diǎn)的誤差為
(7)
將式(7)代入式(5)和式(6),可得
(8)
(9)
在輸出層節(jié)點(diǎn)中,根據(jù)傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練算法,權(quán)重和閾值調(diào)整公式為
(10)
dk(e+1)=dk(e)+ηδk
(11)
類(lèi)似地,在BP神經(jīng)網(wǎng)絡(luò)隱藏層節(jié)點(diǎn)中,權(quán)重和閾值等式為
wij(e+1)=wij(e)+Δwij=wij(e)+ηδkxi
(12)
θj(e+1)=θj(e)+ηδj
(13)
在等式(10)、(11)、(13)中,η為BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)率。權(quán)重和閾值的調(diào)整算法是影響學(xué)習(xí)能力訓(xùn)練模型預(yù)測(cè)準(zhǔn)確性的關(guān)鍵特征。
傳統(tǒng)的BP算法使用最速度梯度下降校正方法,但很容易被局部最小值捕獲,會(huì)影響收斂速度。因此,傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)算法需要改進(jìn)。
在LM-BP算法中,在一系列近似和優(yōu)化之后,使用等式(14)來(lái)調(diào)整權(quán)重和閾值,即
x(k+1)=x(k)-[JTJ+μI]-1JTe
(14)
其中,J為雅可比矩陣;系數(shù)μ為大于零的常數(shù);I是單位矩陣;e為誤差值。式(14)表明:當(dāng)訓(xùn)練開(kāi)始時(shí),系數(shù)μ的值較大,該方法為小步長(zhǎng)的梯度下降訓(xùn)練算法;當(dāng)系數(shù)降低且接近零時(shí),該方法等同于牛頓法。高斯-牛頓算法具有當(dāng)誤差接近最小值時(shí)計(jì)算速度更快、精度更高的特點(diǎn),因此使用LM算法可以極大地提高收斂速度,并確保更高的準(zhǔn)確度。基于LM-BP神經(jīng)網(wǎng)絡(luò)算法過(guò)程如圖2所示。
視覺(jué)系統(tǒng)是采摘機(jī)器人的重要組成部分。采摘任務(wù)中最關(guān)鍵的步驟之一是識(shí)別和判斷水果的成熟度,通常包括圖像獲取、圖像處理分析和結(jié)果判斷輸出等模塊。采摘機(jī)器人視覺(jué)系統(tǒng)的主要任務(wù)是獲取蘋(píng)果數(shù)字圖像,對(duì)采集的圖像進(jìn)行圖像處理,區(qū)分待測(cè)水果的成熟程度。采摘機(jī)器人視覺(jué)處理系統(tǒng)如圖3所示。
圖3 采摘機(jī)器人視覺(jué)處理系統(tǒng)Fig.3 The Vision Processing System of Picking Robot。
在自然環(huán)境中,果實(shí)生長(zhǎng)的位置和形態(tài)千奇百怪,且在圖像采集系統(tǒng)位置的影響下收集的水果圖像信息是多種多樣的。圖像可歸納為以下類(lèi)型,包括單個(gè)無(wú)遮擋的水果、遮擋的水果、重疊的水果及緊靠的水果等,如圖4所示。
圖4 水果的不同姿態(tài)位置Fig.4 The Different Posture Positions of Fruits。
采用顏色空間(也稱(chēng)為顏色模型)可以將水果的顏色用數(shù)字進(jìn)行表示,顏色空間和敏感程度在圖像處理中起著關(guān)鍵作用。顏色空間可以通過(guò)幾個(gè)組件描述所有顏色,即基于某些標(biāo)準(zhǔn)能用更可被接受的方式解釋顏色。圖像中的所有顏色都可以借助顏色空間以單點(diǎn)形式執(zhí)行表達(dá)。RGB顏色空間是最常用的顏色模型,基于R、G、B等3種基本顏色,并根據(jù)三者疊加到不同的程度,能夠合成超過(guò)1 600萬(wàn)種不同的顏色。RGB顏色空間使用單位長(zhǎng)度的立方體來(lái)表示顏色,黑、藍(lán)、綠、紅、青、品紅、黃和白的8種常見(jiàn)顏色分別位于立方體的8個(gè)頂點(diǎn)處。黑色通常放置在三維直角坐標(biāo)系的原點(diǎn)。紅色、綠色和藍(lán)色分別放在3個(gè)軸上,整個(gè)立方體放在第1個(gè)八分圓中。RGB顏色空間模型如圖5所示。
圖5 RGB顏色空間Fig.5 RGB color space。
在RGB模型中,每個(gè)像素點(diǎn)由紅色、藍(lán)色和綠色組成,意味著RGB模型有3個(gè)像素層。在進(jìn)行圖像處理中,可以通過(guò)以下公式實(shí)現(xiàn)對(duì)每個(gè)像素的紅色特征的提取,即
V=2R-B-G
(15)
其中,若“V”的值大于0,則意味著像素的紅色特征更加明顯,并且像素可以被視為“紅色”像素,即可判斷該水果的成熟度比較高。
在對(duì)水果進(jìn)行等級(jí)分類(lèi)的過(guò)程中,提取合適的水果特征對(duì)識(shí)別率具有很大的影響。以蘋(píng)果為例,特征提取的流程如圖6所示。
圖6 蘋(píng)果特征提取流程圖Fig.6 The Flow chart of Apple feature extraction。
首先將輸入的蘋(píng)果圖像進(jìn)行歸一化處理,壓縮成為224×224的格式大小;由于圖像采集或者天氣原因,輸入的蘋(píng)果圖像會(huì)存在一定的噪聲和干擾,也需要對(duì)其進(jìn)行濾波處理。蘋(píng)果圖像的預(yù)處理結(jié)束后,需要采用合適的特征提取方法,本文采用RGB三色直方圖提取特征值。
RGB三色直方圖表示在R、G、B等3個(gè)通道上不同亮度區(qū)間上分布的相應(yīng)顏色像素值,可用來(lái)檢查色調(diào)。RGB三色直方圖如圖7所示。
圖7 RGB直方圖Fig.7 RGB histogram。
由圖7可以看出:通過(guò)R、G和B三色通道可以清晰地反映出蘋(píng)果的顏色,而蘋(píng)果成熟度不同,其三色圖的顏色占比也不一樣。因此,根據(jù)蘋(píng)果的三色占比就可以判斷出水果的成熟度。RGB圖像代表每個(gè)像素占4個(gè)字節(jié)(RGB占3字節(jié),還有1個(gè)字節(jié)空),R、G、B分量各占1個(gè)字節(jié),每個(gè)分量都有256種取值可能(每個(gè)分量值是32位整數(shù))。因此,RGB圖像的直方圖是一個(gè)256×3的數(shù)組。RGB圖像直方圖的部分軟件算法為:
guid="ad00975c-af8a-4f4d-927c-54f1ec9aacdd"> tints="1,1,1"/> tints="0,0,0"/> tints="0.047059,0.584314,0.098039"/> tints="0.011765,0.235294,0.035294"/> tints="0.2,0,0"/> tints="0.929412,0.909804,0.909804"/> tints="0.854902,0.819608,0.819608"/> tints="0.784314,0.729412,0.729412"/> tints="0.709804,0.639216,0.639216"/> tints="0.639216,0.54902,0.54902"/> tints="0.564706,0.454902,0.454902"/> tints="0.494118,0.364706,0.364706"/> tints="0.419608,0.27451,0.27451"/> tints="0.34902,0.184314,0.184314"/> tints="0.27451,0.094118,0.094118"/> … 為了驗(yàn)證采摘機(jī)器人自主采摘學(xué)習(xí)能力系統(tǒng)的可行性和準(zhǔn)確性,于2018年10月25日在某蘋(píng)果種植園,進(jìn)行了蘋(píng)果的成熟度判斷與采摘試驗(yàn)。試驗(yàn)中各選擇100張全生、半熟和成熟的蘋(píng)果圖片進(jìn)行測(cè)試試驗(yàn)。其中,采用70張圖片作為訓(xùn)練樣本,30張圖片作為性能測(cè)試樣本。3種成熟度的蘋(píng)果樣本圖片如圖8所示。 圖8 3種成熟度的蘋(píng)果樣本圖片F(xiàn)ig.8 The Sample maps of apples with three maturities。 LM-BP神經(jīng)網(wǎng)絡(luò)算法的參數(shù)十分簡(jiǎn)單,只需要將3種成熟度的蘋(píng)果樣本共計(jì)210張圖片作為樣本輸入,然后選擇隱含層的的節(jié)點(diǎn)數(shù)目,便可以開(kāi)始進(jìn)行學(xué)習(xí)和訓(xùn)練。隱含層的節(jié)點(diǎn)數(shù)從10個(gè)開(kāi)始驗(yàn)證。LM-BP神經(jīng)網(wǎng)絡(luò)算法中隱含層數(shù)目對(duì)識(shí)別誤差影響的變化曲線如圖9所示。 圖9 隱含層數(shù)目對(duì)識(shí)別誤差影響的變化曲線Fig.9 The Change Curve of Implicit Layer Number Affecting Recognition Error。 由圖9可以看出:隱含層數(shù)目對(duì)識(shí)別誤差影響非常大。當(dāng)選擇140個(gè)隱含層時(shí),采摘機(jī)器人自主采摘學(xué)習(xí)能力達(dá)到較好的效果;此時(shí),若繼續(xù)增加隱含層個(gè)數(shù),采摘機(jī)器人自主采摘分類(lèi)效果性能增加非常緩慢。因此,選擇140個(gè)隱含層,LM-BP神經(jīng)網(wǎng)絡(luò)算法可以達(dá)到最優(yōu)效果。 采用LM-BP神經(jīng)網(wǎng)絡(luò)算法、圖像處理技術(shù),設(shè)計(jì)了一種基于LM-BP神經(jīng)網(wǎng)絡(luò)的采摘機(jī)器人自主采摘學(xué)習(xí)能力系統(tǒng),可以大大提高采摘機(jī)器人對(duì)水果成熟度的識(shí)別能力。測(cè)試結(jié)果表明:與BP神經(jīng)網(wǎng)絡(luò)算法相比,LM-BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練學(xué)習(xí)速度更快、測(cè)試精度更高,能夠滿足采摘機(jī)器人對(duì)目標(biāo)水果成熟度識(shí)別的要求,具有一定的應(yīng)用價(jià)值。3 測(cè)試與分析
4 結(jié)論