摘要:傳統(tǒng)的目標(biāo)檢測算法僅能得到目標(biāo)框,無法確定黃花菜的生長姿態(tài)。針對這一問題,在現(xiàn)有目標(biāo)檢測算法的基礎(chǔ)上優(yōu)化神經(jīng)網(wǎng)絡(luò)(Neural Network)結(jié)構(gòu),由檢測框預(yù)測改為關(guān)節(jié)點(diǎn)的預(yù)測。首先,按照錨點(diǎn)匹配的方式確定黃花菜的生長方向及長度,統(tǒng)計(jì)黃花菜目標(biāo)生長角度和長度,按照統(tǒng)計(jì)結(jié)果設(shè)置多個(gè)錨點(diǎn),實(shí)際生長角度和長度與錨點(diǎn)進(jìn)行比較,獲得目標(biāo)的相對長度和角度,并將其作為模型預(yù)測值進(jìn)行訓(xùn)練;其次,在模型中加入熱力圖預(yù)測分支,對4個(gè)關(guān)節(jié)點(diǎn)進(jìn)行預(yù)測;最后,利用目標(biāo)長度和角度信息連接關(guān)節(jié)點(diǎn)得到黃花菜目標(biāo)的生長姿態(tài)。設(shè)計(jì)針對線段擬合特點(diǎn)的評估模型方法,在計(jì)算精度的過程中引入部分親和度字段。并據(jù)此改進(jìn)非極大值抑制算法(Non-Maximum Suppression)。試驗(yàn)結(jié)果表明:采用熱力圖校準(zhǔn)后的模型對采摘目標(biāo)識(shí)別精度達(dá)91.02%,定位精度達(dá)99.8%。
關(guān)鍵詞:黃花菜;采摘機(jī)器人;神經(jīng)網(wǎng)絡(luò);機(jī)器視覺;圖像處理;目標(biāo)檢測
中圖分類號(hào):S644.3; TP183
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):20955553 (2024) 070228 07
Research on daylily joint detection algorithm based on multiple neural networks
Zhang Yanjun1, 2, Zhao Jianxin1, 2
(1. School of Mechanical Engineering, Taiyuan University of Science and Technology, Taiyuan, 030024, China;
2. Research Center Basic Hydraulic Components and Intelligent Manufacturing Engineering of
Major Equipment, Taiyuan University of Science and Technology, Taiyuan, 030024, China)
Abstract:
The traditional target detection algorithm can only get the target frame, and cannot determine the growth direction of daylily. Aiming at this problem, the neural network structure is optimized on the basis of the existing target detection algorithm, and the prediction of the detection box is changed to the prediction of the key points. Firstly, the growth direction and length of daylily are determined according to the anchor point matching method, and the growth angle and length of the daylily target are counted. Multiple anchor points are set based on the statistical results. The actual growth angle and length are compared with the anchor points to obtain the relative length and angle of the target, which is used as the model prediction value for training. Secondly, the heat map prediction branch is added to the model to predict the four key points. Finally, the growth posture of daylily target is obtained by using the target length and angle information to connect the key points. An evaluation model method for line segment fitting characteristics is designed, Introduction of Partial Affinity Fields in Calculation Accuracy, and the Non-Maximum Suppression algorithm is improved accordingly. Through experimental verification, the accuracy of picking target recognition is 91.02%, the positioning accuracy is 99.8%.
Keywords:
daylily; picking robot; neural network; machine vision; image processing; object detection
0 引言
目前,國內(nèi)外圍繞采摘機(jī)器人的視覺識(shí)別算法大體可分為兩類,即傳統(tǒng)的以顏色、梯度、紋理來分割圖像識(shí)別目標(biāo)以及以卷積神經(jīng)網(wǎng)絡(luò)來檢測目標(biāo)的方法[13]。針對各種果實(shí)背景的復(fù)雜性,大量研究人員展開相關(guān)研究。Gené-Mola等[4]通過激光建立蘋果樹的點(diǎn)云,并以目標(biāo)與相機(jī)之間的距離區(qū)分蘋果樹與背景,最后利用表面反射率來識(shí)別蘋果。Mao等[5]結(jié)合顏色分量選擇、支持向量機(jī)(SVM)以及多路卷積神經(jīng)網(wǎng)絡(luò)(MPCNN)等多種方法結(jié)合提高黃瓜識(shí)別的準(zhǔn)確率,并達(dá)到了采摘機(jī)器人所需的識(shí)別精度。Birrell等[6]利用兩個(gè)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類和定位卷心菜在菜園的相對位置。Luo等[7]通過K-means聚類算法得到葡萄串的顏色分類,并采用輪廓分析法分析屬于葡萄的顏色類別中的像素來識(shí)別葡萄。上述算法可以解決很多果實(shí)采摘的識(shí)別的問題,但使用目標(biāo)框識(shí)別果實(shí)的方式不能確定果實(shí)的生長方向和采摘位置,且異形果實(shí)難以使用目標(biāo)框進(jìn)行表示。
黃花菜因其味道鮮美,富含營養(yǎng)且具備一定的藥用價(jià)值被廣泛種植,我國的黃花菜年產(chǎn)量在500~800 kt[8]。但是,由于黃花菜的采摘環(huán)境復(fù)雜,目前尚沒有一種有效的視覺處理算法能針對黃花菜進(jìn)行識(shí)別。黃花菜是一種萱草類植物,其結(jié)構(gòu)主要包括細(xì)長狀的葉、花莖和黃花菜果實(shí)本身,一般于6—8月多雨季節(jié)開花[9]。黃花菜的花蕾在開放后會(huì)迅速衰老,因此必須在其開花前采摘,黃花菜成熟后會(huì)在幾個(gè)小時(shí)內(nèi)迅速開花,采摘時(shí)間點(diǎn)難以掌握導(dǎo)致人工采摘成本極高,對采摘機(jī)器人有較高的要求[10]。但因其種植密集,機(jī)器人難以完成自動(dòng)決策采摘,因此,設(shè)計(jì)一種視覺識(shí)別目標(biāo)果實(shí)的算法是解決黃花菜采摘機(jī)器人正確采摘目標(biāo)果實(shí)的前提。
不同品種的黃花菜顏色各異,其識(shí)別困難的原因還包括光線不同造成顏色的明暗變化。在識(shí)別過程中,花莖和葉片與果實(shí)由于顏色相近,在不同光照下增加了識(shí)別的難度。為了應(yīng)對光線變化造成的識(shí)別困難,F(xiàn)u等[11]通過一種能夠識(shí)別獼猴桃邊緣的算法來識(shí)別獼猴桃,并測試了其在白天和夜間有閃光燈下的識(shí)別效果,該方法可以滿足采摘機(jī)器人在白天和晚上燈光下進(jìn)行采摘的需求。Sa等[12]通過紅外相機(jī)捕獲甜椒圖片,利用Faster R-CNN進(jìn)行遷移學(xué)習(xí),訓(xùn)練成功后該模型可以在夜間成功識(shí)別到目標(biāo)水果。謝忠紅[13]通過變異系數(shù)賦值法改進(jìn)K-means算法,選取多種顏色空間中的顏色特征以增加精度,結(jié)果表明該改進(jìn)算法可以識(shí)別自然光和背光下的水果圖像。Amatya等[14]通過識(shí)別可見分支并將其組合成完整分支來識(shí)別與定位櫻桃樹中的震動(dòng)點(diǎn),該方法在夜間也能達(dá)到93.8%的精度。對于采摘環(huán)境的光線問題,使用不同光照條件下的數(shù)據(jù)集對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,可以提高模型對于不同光線下的圖片的識(shí)別精度。
對于黃花菜采摘環(huán)境來說,其視覺識(shí)別系統(tǒng)除了需要克服上述背景復(fù)雜光照強(qiáng)度不同的問題,主要的識(shí)別難點(diǎn)在于其形狀為細(xì)長狀,與其花莖和葉子形狀相似,導(dǎo)致其障礙物多且圖像噪聲大。
上述研究可以解決采摘機(jī)器人果實(shí)形狀和顏色與花莖、葉片等相近,不同天氣時(shí)間內(nèi)光照強(qiáng)度不同等問題。但對異形果實(shí)的識(shí)別尚有欠缺,針對傳統(tǒng)目標(biāo)檢測方法不能識(shí)別生長方向的問題。本文基于repVGG算法設(shè)計(jì)一種卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),通過分析黃花菜的長度和生長角度信息,改進(jìn)模型損失函數(shù),設(shè)計(jì)具有生長方向、關(guān)節(jié)點(diǎn)熱力圖、角度分類信息等多個(gè)輸出的模型結(jié)構(gòu),并進(jìn)行訓(xùn)練,通過線段擬合黃花菜的生長姿態(tài),達(dá)到同時(shí)預(yù)測果實(shí)的位置以及生長方向的目的,為采摘機(jī)器人提供有效的視覺識(shí)別手段。
1 數(shù)據(jù)預(yù)處理與模型
1.1 獲取數(shù)據(jù)集
數(shù)據(jù)集采集位于山西省陽城縣赤頭村,黃花菜采摘工作一般在早上,采集相機(jī)與黃花菜種植方向的角度固定為30°~60°,由上到下進(jìn)行拍攝。為使數(shù)據(jù)集符合實(shí)際種植情況,限定采集時(shí)間,最終數(shù)據(jù)集包括早上5點(diǎn)到8點(diǎn)共3 h的圖像,共計(jì)3 000張。對數(shù)據(jù)集圖像進(jìn)行標(biāo)注,如圖1所示。
對4個(gè)關(guān)節(jié)點(diǎn)進(jìn)行編號(hào),分別記作P1,P2,P3,P4,將l1,l2,l3與水平線的夾角記為α,β,γ。使用K-means聚類算法對l2和β進(jìn)行大小分類,并將長度和角度分別設(shè)置三個(gè)錨點(diǎn),計(jì)算長度與對應(yīng)長度錨點(diǎn)的比例,記為l2^,β^。按照式(1)計(jì)算l1,l3相對l2的長度和α、γ相對β的大小。
l1^=l1/l2
l3^=l3/l2
α^=α/β
γ^=γ/β
(1)
黃花菜目標(biāo)中第二段(P2,P3)的相對長度和相對角度指的是l2和β相對于該黃花菜長度錨點(diǎn)和角度錨點(diǎn)的比例l2^和β^,其長度錨點(diǎn)和角度錨點(diǎn)通過K-means聚類算法得到,如式(2)所示。
l^2=l2/lkm
β^=β/βkm
(2)
式中:
lkm——長度錨點(diǎn);
SymbolbA@km——角度錨點(diǎn)。
圖2(a)統(tǒng)計(jì)了1 600個(gè)黃花菜目標(biāo)相對長度在各個(gè)范圍內(nèi)的數(shù)量,圖2(b)統(tǒng)計(jì)了1 600個(gè)目標(biāo)的相對角度在各區(qū)間內(nèi)的數(shù)量。從圖2可知,圖像中黃花菜的相對角度和長度的大小大多位于某一較小的區(qū)間內(nèi),部分標(biāo)注誤差遠(yuǎn)離這一區(qū)間。因此,通過預(yù)設(shè)的長度和角度錨點(diǎn),只需要預(yù)測黃花菜的大小和角度屬于哪個(gè)錨點(diǎn)。大致確定其大小和方向后,再與預(yù)測的相對比例大小相乘即可得到黃花菜精確的生長角度和大小,并求得四個(gè)關(guān)鍵節(jié)點(diǎn)在圖像中的位置。根據(jù)圖2確定模型最終輸出相對長度角度,即可通過控制模型預(yù)測結(jié)果的范圍有效減小本文模型的誤差。
1.2 輸出模型改進(jìn)
在YOLOv6算法[15]中,神經(jīng)網(wǎng)絡(luò)模型的輸出層主要包含三個(gè)信息,即置信度、檢測框位置大小和類別信息。本文對網(wǎng)絡(luò)輸出層進(jìn)行改進(jìn),將原算法中輸出目標(biāo)預(yù)測框的形式改為輸出黃花菜四個(gè)關(guān)鍵節(jié)點(diǎn)的位置,將四個(gè)關(guān)鍵節(jié)點(diǎn)用線段相連,以線段擬合的方式確定目標(biāo)的大小和生長方向。四個(gè)關(guān)節(jié)點(diǎn)的信息預(yù)測原理如圖3所示。其中B表示批處理圖像數(shù),H表示寬度,W表示高度。
本文模型的三個(gè)輸出如圖3所示,前兩個(gè)主輸出負(fù)責(zé)預(yù)測四個(gè)關(guān)節(jié)點(diǎn),每個(gè)主輸出又包括四個(gè)分支輸出。以關(guān)節(jié)點(diǎn)P2代表中心點(diǎn),置信度表示預(yù)測位置存在黃花菜關(guān)節(jié)點(diǎn)P2的概率,角度類別是由聚類得到的三個(gè)生長角度錨點(diǎn),相對長度/角度代表其三條線段的相對角度和長度大小,計(jì)算如式(1)、式(2)所示。輸出張量可理解為將圖像按照H×W劃分網(wǎng)格,中心節(jié)點(diǎn)偏移量表示關(guān)節(jié)點(diǎn)P2在該預(yù)測網(wǎng)格內(nèi)相對坐標(biāo)。第三個(gè)主輸出為四個(gè)關(guān)節(jié)點(diǎn)的高斯熱力圖,主要負(fù)責(zé)通過預(yù)測關(guān)節(jié)點(diǎn)的位置對前兩個(gè)輸出進(jìn)行校正。
模型的損失函數(shù)包括對關(guān)節(jié)點(diǎn)位置的誤差、對關(guān)節(jié)點(diǎn)之間線段角度的預(yù)測誤差以及不同生長角度之間的分類誤差、目標(biāo)的置信度誤差以及高斯熱力圖誤差,如式(3)所示。
Loss=Lobj+Lcls+Lref+Lreg+Lhot
(3)
式中:
Lobj——置信度誤差;
Lcls——角度類別誤差;
Lref——相對大小/角度誤差;
Lreg——中心點(diǎn)偏移量誤差;
Lhot——高斯熱力圖誤差。
1.3 網(wǎng)絡(luò)模型細(xì)節(jié)
1.3.1 總體結(jié)構(gòu)
在參考現(xiàn)有算法[1517]的基礎(chǔ)上進(jìn)行改進(jìn),本文模型為采摘機(jī)器人視覺識(shí)別神經(jīng)網(wǎng)絡(luò)模型,對小目標(biāo)的預(yù)測能力要求不高,因此,選擇對YOLOv6算法進(jìn)行改進(jìn),并刪除小目標(biāo)預(yù)測的輸出。同時(shí),為了防止網(wǎng)絡(luò)的深度影響梯度的前向傳遞,加入殘差網(wǎng)絡(luò)[16]。模型結(jié)構(gòu)如圖4所示。
圖4中,以batchsize取1為例,第一次下采樣采用YOLOv5中的Focus層,可以保留更多信息。之后采用repVGG的結(jié)構(gòu)作為主干網(wǎng)絡(luò)連續(xù)進(jìn)行三次下采樣,保留每次下采樣的結(jié)果作為特征金字塔的一部分。同時(shí),結(jié)合實(shí)際需求對網(wǎng)絡(luò)模型進(jìn)行輕量化改進(jìn),減少神經(jīng)網(wǎng)絡(luò)的深度。主干網(wǎng)絡(luò)輸出的最終特征進(jìn)行一次殘差網(wǎng)絡(luò)運(yùn)算及一次上采樣運(yùn)算后與三次下采樣的輸出進(jìn)行特征融合,得到一個(gè)新的特征,該特征進(jìn)行殘差運(yùn)算后即得到第一個(gè)檢測頭(Head-Detect);上述新特征下采樣后與特征金字塔對應(yīng)特征進(jìn)行融合得到第二個(gè)新特征,之后通過殘差運(yùn)算后即得到第二個(gè)檢測頭;同時(shí),該特征通過4次上采樣與特征融合后,最終得到熱力圖預(yù)測結(jié)果。
神經(jīng)網(wǎng)絡(luò)的檢測頭將最終結(jié)果輸入四個(gè)分支中,經(jīng)過卷積殘差網(wǎng)絡(luò)運(yùn)算后輸出四個(gè)結(jié)果,即置信度、類別、相對角度/大小和中心點(diǎn)偏移量。Sigmoid函數(shù)負(fù)責(zé)將預(yù)測置信度和類別概率的值標(biāo)準(zhǔn)化到0和1之間,方便使用二值交叉熵[1820]計(jì)算損失。
在本文模型中,為了降低檢測誤差,期望預(yù)測結(jié)果與黃花菜關(guān)節(jié)點(diǎn)的位置輸出一個(gè)比例值,介于一定的范圍之間。因此,統(tǒng)計(jì)了1 600個(gè)目標(biāo)的期望輸出,得到期望輸出的范圍,并使用Sigmoid激活后進(jìn)行線性變換作為最終檢測結(jié)果以減小誤差。
Opa=K×Sigmoid(a)+b
Opl=K×Sigmoid(l)+b
(4)
式中:
Opa——預(yù)測角度輸出;
Opl——預(yù)測長度輸出;
K——增益系數(shù);
b——偏置輸出。
1.3.2 部分親和度字段
親和度字段[21]可以判斷目標(biāo)的關(guān)節(jié)點(diǎn)是否位于目標(biāo)上,并有一定的容錯(cuò)性,為了在驗(yàn)證模型準(zhǔn)確性的時(shí)候不受到標(biāo)注誤差的影響,引入親和度字段。如圖5所示,xp2,k和xp3,k為真實(shí)關(guān)節(jié)點(diǎn)坐標(biāo),部分親和字段定義如式(5)所示。
Lc,k(p)=
vp點(diǎn)在目標(biāo)上
0其他
(5)
式中:
v——
單位向量,方向與黃花菜目標(biāo)方向一致;
Lc,k(p)——
部分親和字段在p點(diǎn)的向量表示。
通過式(6)判斷p點(diǎn)是否在目標(biāo)上,如果在目標(biāo)上,在計(jì)算預(yù)測誤差時(shí)應(yīng)適當(dāng)減少權(quán)重,以消除模型的標(biāo)注誤差。
0≤v2·(p-xp2,k)lt;lc,k
v1·(p-xp3,k)≤σl
(6)
式中:
lc,k——目標(biāo)黃花菜的長度;
σl——目標(biāo)黃花菜的寬度。
其中,lc,k=‖xp2,k-xp3,k‖2,v1和v2互相垂直。
為了判斷預(yù)測的兩點(diǎn)dp2,dp3是否在目標(biāo)上,使用預(yù)測的部分親和字段進(jìn)行采樣,對沿線進(jìn)行PAFs線積分,如式(7)所示。
E=∫u=1u=0Lc[p(u)]·dp2-dp3‖dp2-dp3‖2du
(7)
式中:
E——dp2,dp3在目標(biāo)上的可信度;
Lc——部分親和字段函數(shù);
u——
dp2,dp3兩點(diǎn)沿線各采樣點(diǎn)比例,u∈[0,1]。
其中,p(u)=(1-u)dp2+udp3。
1.3.3 熱力圖校準(zhǔn)方法
將熱力圖中大于閾值的結(jié)果篩選出來,得到如圖6所示的熱力圖結(jié)果。依據(jù)黃花菜的寬度設(shè)置預(yù)測半徑,在預(yù)測半徑內(nèi)取一個(gè)像素點(diǎn)作為最終的預(yù)測結(jié)果,即選取置信度最大的點(diǎn)對預(yù)測結(jié)果進(jìn)行校準(zhǔn)。
圖6(a)中,xpm,n代表兩個(gè)檢測頭通過相對角度和長度預(yù)測計(jì)算得到的關(guān)節(jié)點(diǎn)位置,Cm代表高斯熱力圖中預(yù)測的關(guān)節(jié)點(diǎn)位置,計(jì)算二者的距離,選擇距離xpm,n最近的點(diǎn)Cm作為模型在該點(diǎn)的預(yù)測結(jié)果,最終得到左圖中細(xì)實(shí)線所在的預(yù)測結(jié)果。圖6(b)中,若xp2,2的一定范圍內(nèi)不存在C2,即熱力圖未檢測到C2,此時(shí)以相鄰的點(diǎn)C3為基準(zhǔn),按照預(yù)測角度和長度信息作平行線,得到C2′點(diǎn)的預(yù)測位置。當(dāng)目標(biāo)多個(gè)點(diǎn)沒有在熱力圖中被預(yù)測出來時(shí),以預(yù)測到的點(diǎn)為起點(diǎn),按照上述方法依次用平行線校準(zhǔn)每個(gè)點(diǎn)的位置。
2 試驗(yàn)方法
試驗(yàn)需要先標(biāo)注數(shù)據(jù)集,本文采用開源的標(biāo)注軟件對模型進(jìn)行目標(biāo)框的標(biāo)注,得到每個(gè)黃花菜目標(biāo)的位置后,通過編寫的關(guān)節(jié)點(diǎn)標(biāo)注程序裁剪目標(biāo)區(qū)域,并標(biāo)注關(guān)節(jié)點(diǎn)信息。在訓(xùn)練過程中,為了增強(qiáng)模型的泛化能力,采用隨機(jī)數(shù)據(jù)增強(qiáng)的方式訓(xùn)練網(wǎng)絡(luò)。使用pytorch進(jìn)行網(wǎng)絡(luò)框架構(gòu)建,硬件使用Tesla K80顯卡、12GB顯存進(jìn)行網(wǎng)絡(luò)訓(xùn)練。
2.1 識(shí)別精度與定位精度
本文以關(guān)節(jié)特征點(diǎn)擬合黃花菜的形狀來識(shí)別黃花菜,精度評估指標(biāo)主要包括識(shí)別精度AP和特征點(diǎn)的定位精度LP。
LP=1N∑Niexp-∑njdpijlengthi×δ(vpi)
(8)
式中:
N——
一張圖像中神經(jīng)網(wǎng)絡(luò)共預(yù)測出目標(biāo)的個(gè)數(shù);
dpij——
第i個(gè)目標(biāo)第j個(gè)特征點(diǎn)與數(shù)據(jù)集真實(shí)特征點(diǎn)之間的距離;
lengthi——
第i個(gè)目標(biāo)各線段相加的總長,即目標(biāo)黃花菜的總長度;
δ(vpi)——判斷該目標(biāo)預(yù)測是否準(zhǔn)確。
當(dāng)預(yù)測結(jié)果與實(shí)際位置偏差太大時(shí),判定預(yù)測結(jié)果錯(cuò)誤,此時(shí)的δ(vpi)=1,如式(9)所示。該公式可以判斷預(yù)測結(jié)果中的關(guān)節(jié)點(diǎn)與真實(shí)位置之間的差值,并反映這一目標(biāo)預(yù)測結(jié)果與實(shí)際位置之間的偏差。
δ(vpi)=0
∑njdpij
lengthilt;T
δ(vpi)=1else
(9)
式中:
T——
預(yù)測結(jié)果能完全等同于真實(shí)結(jié)果的閾值。
對T取不同的值分別統(tǒng)計(jì)計(jì)算結(jié)果,以完善模型的精度評估。識(shí)別精度計(jì)算如式(10)所示。
AP=TPTP+FP×LP
(10)
式中:
TP——預(yù)測到的目標(biāo)數(shù);
FP——沒有預(yù)測到的目標(biāo)的數(shù)量;
LP——
所有測試集圖像的平均定位精度。
2.2 總精度計(jì)算
上文對模型的識(shí)別精度與定位精度計(jì)算公式進(jìn)行了說明,但只對模型的關(guān)節(jié)點(diǎn)位置預(yù)測精度進(jìn)行了評估,沒有對預(yù)測結(jié)果的角度進(jìn)行評估,但在實(shí)際檢測過程中,角度對結(jié)果精度的影響也有必要計(jì)算在內(nèi),在關(guān)節(jié)點(diǎn)位置誤差相同的情況下,判斷目標(biāo)的角度與真實(shí)角度之間的誤差能更加精確的反映模型精度。
對于某一黃花菜目標(biāo)而言,四個(gè)標(biāo)注點(diǎn)的位置與預(yù)測結(jié)果中四個(gè)點(diǎn)位置的距離可以用于判斷模型的預(yù)測精度。因此設(shè)計(jì)一種新的判斷方法對模型的精度進(jìn)行評估,如式(11)所示。
ACξ=EξNt×SOA
(11)
式中:
ACξ——測試圖像的識(shí)別精度;
SOA——
圖像中某個(gè)目標(biāo)預(yù)測值與真實(shí)標(biāo)注之間的相對精度;
Eξ——
圖像中所有點(diǎn)的親和度字段預(yù)測可信度E均大于ξ的目標(biāo)的數(shù)量;
ξ——
所有預(yù)測點(diǎn)位于目標(biāo)上的概率,由親合度計(jì)算所得;
Nt——圖像所有目標(biāo)的總數(shù)。
SOA計(jì)算如式(12)所示。本文還使用SOA代替目標(biāo)檢測算法中的交并比IOU進(jìn)行非極大值抑制算法。
SOA=LP×acca
(12)
式中:
acca——
預(yù)測結(jié)果中黃花菜角度的預(yù)測精度。
acca為三條擬合線段中角度與真實(shí)值偏差的最大值,計(jì)算如式(13)所示。
acca=
0if 5maxi=1,2,3|α^i-αti|gt;1
1-5maxi=1,2,3|α^i-αti|else
(13)
式中:
αi^——
預(yù)測結(jié)果中黃花菜三條線段上第i條線段的角度值;
αti——
三條黃花菜三條線段上第i條線段的真實(shí)角度值。
3 試驗(yàn)結(jié)果與分析
利用訓(xùn)練集和驗(yàn)證集損失函數(shù)的下降快慢來判斷網(wǎng)絡(luò)是否出現(xiàn)欠擬合或過擬合現(xiàn)象,并通過改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)、優(yōu)化器選擇、超參數(shù)以及學(xué)習(xí)率衰減方式等來增加模型精度。訓(xùn)練結(jié)束后,通過檢測程序?qū)ψR(shí)別結(jié)果進(jìn)行驗(yàn)證,如圖7所示。
經(jīng)過K-means算法對目標(biāo)大小進(jìn)行分類,將大中型的目標(biāo)定義為需要檢測的成熟目標(biāo)。圖7(a)和圖7(c)中標(biāo)記的黃花菜數(shù)量為29只,需要檢測的成熟目標(biāo)有13只,最終預(yù)測數(shù)量為11只;圖7(b)和圖7(d)中標(biāo)記的黃花菜數(shù)量為17只,需要檢測的目標(biāo)為9只,最終預(yù)測數(shù)量為8只。從圖7可以得到,本文模型對于大中型目標(biāo)識(shí)別精度較高。圖7(a)和圖7(b)分別是兩張不同照片的未校準(zhǔn)預(yù)測結(jié)果,未經(jīng)過校準(zhǔn)的圖像定位效果較差。圖7(c)和圖7(d)是使用熱力圖對預(yù)測結(jié)果進(jìn)行校準(zhǔn)的結(jié)果,定位精度明顯提高。
另外,對模型最終的識(shí)別與定位精度進(jìn)行驗(yàn)證,結(jié)果如表1所示。
其中無校準(zhǔn)的模型預(yù)測結(jié)果相對較差,其識(shí)別精度最高為88.00%,最低為64.75%。而經(jīng)過熱力圖校準(zhǔn)后,定位精度明顯提升,由于計(jì)算過程中對允許誤差范圍內(nèi)的預(yù)測結(jié)果具有包容性,其定位精度最高為1,說明驗(yàn)證集中所有識(shí)別到的目標(biāo)的定位誤差均在允許范圍內(nèi),識(shí)別精度最低為91.02%,最高為91.10%。
對本文模型進(jìn)行精度評估,計(jì)算本文模型的ACξ值,其中ξ取0.5~0.9之間的五個(gè)不同數(shù)值。由式(9)和表1可得,閾值T越小,模型的識(shí)別和定位精度越低,但經(jīng)過熱力圖校準(zhǔn)后,閾值T對精度的影響明顯改善,為了突出ξ對精度的影響,取T=0.9計(jì)算模型的總體精度,對其結(jié)果分別進(jìn)行統(tǒng)計(jì),結(jié)果如表2所示。
當(dāng)部分親和度字段判斷目標(biāo)所有的點(diǎn)均處于該目標(biāo)上的概率大于0.5時(shí),總精度為89.8%,未經(jīng)過校準(zhǔn)的總精度為88.6%。概率大于0.5經(jīng)過校準(zhǔn)的目標(biāo)占比為91.1%,未經(jīng)過校準(zhǔn)的目標(biāo)占比為88.8%。
針對其他目標(biāo)檢測模型進(jìn)行相似的改進(jìn),即改變目標(biāo)在輸出中的編碼格式,將輸出模型由檢測框改為相對角度和相對長度的輸出,并在主干網(wǎng)絡(luò)上增加熱力圖結(jié)構(gòu)后進(jìn)行對比試驗(yàn),結(jié)果如表3所示。
本文模型的總精度最高,但幾個(gè)模型識(shí)別結(jié)果相差不大,Zhu等[22]提出的無錨模塊選擇特征的目標(biāo)檢測算法識(shí)別精度最高,圖像中的目標(biāo)大部分都能正確識(shí)別。Papandreou等[21]提出的人體姿態(tài)檢測模型定位精度與本文模型相同,該模型對關(guān)節(jié)點(diǎn)的定位準(zhǔn)確??傮w上四個(gè)模型的定位精度均保持在90%以上,總精度在80%以上。綜上所述,本文用角度和長度表示目標(biāo)關(guān)節(jié)點(diǎn)位置的編碼方式并采用熱力圖對識(shí)別結(jié)果進(jìn)行校準(zhǔn)的方法可以有效增加定位精度,提高視覺識(shí)別算法的準(zhǔn)確率,滿足智能采摘機(jī)器人對環(huán)境感知的識(shí)別需求。
4 結(jié)論
1) 對目標(biāo)檢測算法進(jìn)行改進(jìn),采用repVGG主干網(wǎng)絡(luò)以及多路神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)黃花菜位置及其姿態(tài)檢測模型。提出一種模型編碼格式,考慮相對角度和長度代替目標(biāo)框的方式進(jìn)行預(yù)測,并加入熱力圖檢測分支,根據(jù)熱力圖進(jìn)行檢測結(jié)果的校準(zhǔn)。網(wǎng)絡(luò)僅需前向傳遞一次便可得到預(yù)測結(jié)果,實(shí)現(xiàn)端到端進(jìn)行目標(biāo)檢測。同時(shí)根據(jù)網(wǎng)絡(luò)結(jié)構(gòu)特點(diǎn),提出根據(jù)目標(biāo)的長度、位置和角度對模型進(jìn)行評估的方法。
2) 通過對模型預(yù)測結(jié)果進(jìn)行評估,分別得到模型的識(shí)別精度、定位精度以及總精度。同時(shí)對校準(zhǔn)前和校準(zhǔn)后的模型精度進(jìn)行對比,經(jīng)過熱力圖校準(zhǔn)后的定位精度增加至1.0,即定位誤差在允許范圍內(nèi)。網(wǎng)絡(luò)的識(shí)別精度最高為91.1%,滿足采摘需求。模型的總精度達(dá)到89.8%,對其他網(wǎng)絡(luò)模型運(yùn)用本文的模型編碼格式以及熱力圖分支方式進(jìn)行改進(jìn)后,總精度均在80%以上,因此本文提出的使用角度和長度進(jìn)行編碼的方式適用于大多現(xiàn)有模型,并能滿足異形果實(shí)位置及姿態(tài)的識(shí)別需求。
參 考 文 獻(xiàn)
[1]R Shamshiri R, Weltzien C, Hameed I A, et al. Research and development in agricultural robotics: A perspective of digital farming [J]. International Journal of Agricultural and Biological Engineering, 2018, 11(4): 1-14.
[2]Zheng X, Lei Q, Yao R, et al. Image segmentation based on adaptive K-means algorithm [J]. EURASIP Journal on Image and Video Processing, 2018, 2018(1): 1-10.
[3]Qi C, Gao J, Pearson S, et al. Tea chrysanthemum detection under unstructured environments using the TC-YOLO model [J]. Expert Systems with Applications, 2022, 193: 116473.
[4]Gené-Mola J, Gregorio E, Guevara J, et al. Fruit detection in an apple orchard using a mobile terrestrial laser scanner [J]. Biosystems Engineering, 2019, 187: 171-184.
[5]Mao S, Li Y, Ma Y, et al. Automatic cucumber recognition algorithm for harvesting robots in the natural environment using deep learning and multi-feature fusion [J]. Computers and Electronics in Agriculture, 2020, 170: 105254.
[6]Birrell S, Hughes J, Cai J Y, et al. A field-tested robotic harvesting system for iceberg lettuce [J]. Journal of Field Robotics, 2020, 37(2): 225-245.
[7]Luo L, Tang Y, Lu Q, et al. A vision methodology for harvesting robot to detect cutting points on peduncles of double overlapping grape clusters in a vineyard [J]. Computers in Industry, 2018, 99: 130-139.
[8]劉偉, 張群, 李志堅(jiān), 等. 不同品種黃花菜游離氨基酸組成的主成分分析及聚類分析[J]. 食品科學(xué), 2019, 40(10): 243-250.
Liu Wei, Zhang Qun, Li Zhijian, et al. Principal component analysis and cluster analysis for evaluating free amino acids of different cultivars of daylily buds [J]. Food Science, 2019, 40(10): 243-250.
[9]余蕾. 大同黃花農(nóng)產(chǎn)品區(qū)域公用品牌傳播策劃案[D]. 杭州: 浙江大學(xué), 2019.
Yu Lei. Branding communication plan of Datong Day Lily regional public brand [D]. Hangzhou: Zhejiang University, 2019.
[10]李可昕, 張超凡, 劉佩冶, 等. 鮮黃花菜衰老機(jī)制與采后貯藏保鮮技術(shù)研究進(jìn)展[J]. 食品科學(xué), 2022(17): 398-404.
Li Kexin, Zhang Chaofan, Liu Peizhi, et al. Fresh daylily: Progress in research on its senescence mechanism and review of technologies for its postharvest preservation [J]. Food Science, 2022(17): 398-404.
[11]Fu L, Tola E, Al-Mallahi A, et al. A novel image processing algorithm to separate linearly clustered kiwifruits [J]. Biosystems Engineering, 2019, 183: 184-195.
[12]Sa I, Ge Z, Dayoub F, et al. DeepFruits: A fruit detection system using deep neural networks [J]. Sensors, 2016, 16(8): 1222.
[13]謝忠紅. 采摘機(jī)器人圖像處理系統(tǒng)中的關(guān)鍵算法研究[D]. 南京: 南京農(nóng)業(yè)大學(xué), 2013.
Xie Zhonghong. Research on key algorithm of image processing system of fruit picking robot [D]. Nanjing: Nanjing Agricultural University, 2013.
[14]Amatya S, Karkee M. Integration of visible branch sections and cherry clusters for detecting cherry tree branches in dense foliage canopies [J]. Biosystems Engineering, 2016, 149: 72-81.
[15]Zhu X, Lü S, Wang X, et al. TPH-YOLOv5: Improved YOLOv5 based on transformer prediction head for object detection on drone-captured scenarios [C]. Proceedings of the IEEE/CVF International Conference on Computer Vision, 2021: 2778-2788.
[16]Tian Y, Yang G, Wang Z, et al. Apple detection during different growth stages in orchards using the improved YOLO-V3 model [J]. Computers and Electronics in Agriculture, 2019, 157: 417-426.
[17]Ren S, He K, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks [J]. Advances in Neural Information Processing Systems, 2015, 28: 91-99.
[18]Jiang H, Learned-Miller E. Face detection with the faster R-CNN [C]. 2017 12th IEEE International Conference on Automatic Face amp; Gesture Recognition (FG 2017). IEEE, 2017: 650-657.
[19]張文超. 基于圖神經(jīng)網(wǎng)絡(luò)的人體姿態(tài)識(shí)別關(guān)鍵技術(shù)研究[D]. 四川: 電子科技大學(xué), 2022.
Zhang Wenchao. Research on key technologies of human posture recognition based on graph neural network [D]. Sichuan: University of Electronic Science and Technology of China, 2022.
[20]Redmon J, Farhadi A. YOLOv3: An incremental improvement [J]. ArXiv Preprint ArXiv: 1804.02767, 2018.
[21]Papandreou G, Zhu T, Chen L C, et al. PersonLab: Person pose estimation and instance segmentation with a bottom-up, part-based, geometric embedding model [C]. Proceedings of the European Conference on Computer Vision (ECCV), 2018: 269-286.
[22]Zhu C, He Y, Savvides M. Feature selective anchor-free module for single-shot object detection [C]. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019: 840-849.
[23]Zhou X, Wang D, Krhenbühl P. Objects as points [EB/OL].
https://arxiv.org/pdf/1904.07850.pdf, 2019.
中國農(nóng)機(jī)化學(xué)報(bào)2024年7期