王 輝 韓娜娜 呂程序 毛文華 李沐桐 李 林
(1.中國農(nóng)業(yè)機械化科學(xué)研究院土壤植物機器系統(tǒng)技術(shù)國家重點實驗室,北京 100083;2.廣東省現(xiàn)代農(nóng)業(yè)裝備研究所,廣州 510630;3.江蘇大學(xué)農(nóng)業(yè)工程學(xué)院,鎮(zhèn)江 212013)
精準管理是現(xiàn)代果業(yè)發(fā)展的必然趨勢,其關(guān)鍵在于根據(jù)果園的果樹個體差異,定位、定時、定量開展農(nóng)事作業(yè)。冠層尺寸或三維體積是精準管理中非常重要的參數(shù),可為對靶噴藥、病蟲害防護、作物長勢識別與預(yù)估等提供重要依據(jù),對管控化學(xué)藥品過量投入、高效利用農(nóng)業(yè)資源、提高果園生產(chǎn)效益具有重要意義[1]。
我國大多數(shù)果園處于非標準化經(jīng)營狀態(tài),同一果園中果樹的冠形、間距、樹齡、樹高等均不相同[2],果園地形多變、種植密度不確定,這些都增加了在復(fù)雜果園背景中快速識別并分割單株果樹冠層的難度。目前,果樹樹冠識別與分割包括超聲波[3-4]、激光雷達[5-6]、多光譜[7-8]、機器視覺和圖像處理[9-10]等方法。雖然這些方法可精準識別分割單株樹冠,但是超聲波的識別結(jié)果易受到地形的影響,激光雷達和多光譜方法的硬件成本較高,因此一些學(xué)者嘗試利用低成本的機器視覺和圖像處理方法來進行果樹樹冠的識別和分割。傳統(tǒng)圖像處理方法分割復(fù)雜果園背景中目標的識別精度不能滿足精準果園作業(yè)需求,研究表明,深度學(xué)習(xí)方法可高精度識別果園復(fù)雜環(huán)境中的樹枝和果實[11-15]。但目前對單株果樹冠層相關(guān)分割方法的研究較少。
Mask R-CNN是文獻[16]提出的對復(fù)雜背景中目標進行檢測與分割的卷積神經(jīng)網(wǎng)絡(luò)模型,該模型采用特征金字塔網(wǎng)絡(luò)(Feature pyramid networks, FPN)[17]與Anchor技術(shù)優(yōu)化不同尺度目標的檢測效果,并結(jié)合全卷積網(wǎng)絡(luò)(Fully convolutional networks, FCN)[18],從而實現(xiàn)目標的精準分割。Mask R-CNN是先由區(qū)域推薦網(wǎng)絡(luò)產(chǎn)生興趣區(qū)域,而后進行對象檢測和分割的兩步探測器。該方法檢測準確率高、分割速度快,在復(fù)雜果園環(huán)境下具有準確檢測目標樹冠、精準分割冠層的潛力。
本文構(gòu)建單株樹冠的Mask R-CNN識別與分割模型,并從預(yù)測準確率、精確率、召回率、平均精度、擴展性等方面對模型進行評估,分析影響模型性能的關(guān)鍵因素,提出模型改進及應(yīng)用建議,以期實現(xiàn)柑橘單株樹冠的精準識別。
本文設(shè)計的圖像采集平臺如圖1a所示,將ZED stereo(Stereolabs)相機搭載在手推車上,離地高度為80 cm,與地面平行,采集的圖像存儲于計算機中。相機參數(shù)為視頻模式720P、60 f/s、單目分辨率1 280像素×720像素、深度范圍0.5~20 m,計算機配置為Windows 10、CORE i7、8 GB內(nèi)存、NVIDIA GeForce 940MX。圖像采集于廣東省廣州市從化區(qū)和江門市新會區(qū)2個柑橘種植園,采集時間為2019年11月,采集距離保持在90~130 cm,采集天氣晴朗,采集場景如圖1b所示。廣州市從化區(qū)的柑橘品種為玫瑰柑,果園地形為丘陵,樹形為自然圓頭形;江門市新會區(qū)柑橘品種為新會柑,果園地形為坡地,樹形為自然開心形。
從化區(qū)果園(果園1)地形復(fù)雜、雜草茂密,單株樹冠識別難度較大,共采集柑橘圖像1 700幅,構(gòu)建了數(shù)據(jù)集D1,其中1 200幅圖像用于模型訓(xùn)練,200幅用于模型驗證,300 幅用于模型測試。為了測試模型的適應(yīng)性,在新會區(qū)果園(果園2)采集了柑橘圖像500幅,構(gòu)建了數(shù)據(jù)集D2,只用于模型測試,未參與模型訓(xùn)練。為了對比數(shù)據(jù)集參與建模與未參與建模對識別結(jié)果的影響,構(gòu)建了數(shù)據(jù)集D3,訓(xùn)練集1 400幅圖像,包含果園1圖像1 200幅、果園2圖像200幅;驗證集只包含果園1圖像200幅;測試集只包含果園2圖像300幅。數(shù)據(jù)集結(jié)構(gòu)如表1所示。
表1 數(shù)據(jù)集結(jié)構(gòu)
柑橘圖像采用 LabelMe[19]進行人工手動標注,生成json標簽文件。本文主要針對當前作業(yè)的柑橘樹冠(目標樹冠)進行識別分割,因此在標簽制作時只考慮將柑橘圖像分為目標樹冠與背景兩類,只需標注目標樹冠即可,圖像其他部分LabelMe自動標注為背景。標記結(jié)果如圖2所示。
基于Mask R-CNN的柑橘樹冠識別與分割算法主要由兩部分組成:①利用Mask R-CNN網(wǎng)絡(luò)識別分割圖像中的樹冠;由于單株樹冠背景復(fù)雜,圖像中不止一株樹冠,模型可能會識別出多株樹冠。②過濾多余的非目標樹冠,計算每株樹冠的面積,面積最大的樹冠即為目標樹冠。算法流程如圖3所示。
1.3.1Mask R-CNN網(wǎng)絡(luò)
Mask R-CNN由特征提取網(wǎng)絡(luò)、區(qū)域推薦網(wǎng)絡(luò)(Region proposal network, RPN)、感興趣對齊層(RoIAlign)、目標檢測和分割4部分組成。將采集的柑橘園圖像數(shù)據(jù),首先利用卷積神經(jīng)網(wǎng)絡(luò)提取特征,然后RPN推薦可能存在目標的候選框(Region of interest, RoI),RoIAlign將RoI映射成固定尺寸的特征圖,特征圖通過檢測分支的全連接層進行分類和邊界框回歸,通過分割分支的FCN進行上采樣得到分割圖。
特征提取網(wǎng)絡(luò)利用卷積神經(jīng)網(wǎng)絡(luò)進行單株樹冠特征提取和組合。特征提取選用ResNet101[20-21],特征深度分為5個階段,得到特征圖C1~C5,并輸入特征組合階段。特征組合選用FPN,特征C1~C5組合生成特征圖P2~P6。組合方式如圖4所示。
RPN利用Anchor技術(shù)在P2~P6每層中產(chǎn)生不同尺度和長寬比的多個RoI,輸出每個RoI的目標與背景的置信度、邊界框的4個坐標修正值,完成一次邊界框修正。根據(jù)置信度和非極大值抑制算法(Non-maximum suppression, NMS)[22]選出較為精準的RoI輸入到RoIAlign。
RoIAlign主要作用是將特征圖中的RoI池化為固定尺寸的特征圖。RoIAlign將RoI劃分為7×7個單元,每個單元的像素由原圖四周真實像素利用雙線性插值計算該點像素。整個過程中沒有用到量化操作,原圖像素和特征圖像素是完全對齊的,與Faster R-CNN[23]中的RoIPooling相比,避免了兩次量化導(dǎo)致RoI與原位置產(chǎn)生偏差,提高了目標檢測和分割準確率。
目標檢測與分割是對RoIAlign輸出的固定尺寸的特征圖進行分類、回歸和分割。檢測分支產(chǎn)生每個RoI的類別和邊界框坐標信息;分割分支針對每個RoI產(chǎn)生K個分辨率為m×m的二值掩膜,K為分類物體的種類數(shù)目。Mask R-CNN損失函數(shù)Lloss表示為
Lloss=Lcls+Lbox+Lmask
(1)
式中,Lcls為分類損失值,Lbox為邊界框回歸損失值,Lmask為分割損失值,只計算分類結(jié)果所屬類的損失。
1.3.2模型訓(xùn)練
試驗平臺操作系統(tǒng)為Ubuntu 19.04,GPU型號為GTX 1060、運行內(nèi)存為8 GB,顯存容量為6 GB。本文所有模型訓(xùn)練及測試都在此環(huán)境下運行。采用隨機梯度下降(Stochastic gradient descent, SGD)訓(xùn)練Mask R-CNN模型(數(shù)據(jù)集為D1),模型訓(xùn)練具體流程如下:①加載訓(xùn)練集和驗證集圖像數(shù)據(jù),建立原圖像和標簽的對應(yīng)關(guān)系。②修改模型配置參數(shù),包括圖像分類數(shù)目、圖像輸入尺寸、RPN的Anchor尺度、學(xué)習(xí)率、步長等參數(shù)。③加載Microsoft COCO數(shù)據(jù)集預(yù)訓(xùn)練模型。④設(shè)置迭代次數(shù),訓(xùn)練模型并利用驗證集驗證模型的損失值。⑤根據(jù)訓(xùn)練集和驗證集損失值,重復(fù)步驟②~④,得到最優(yōu)模型。⑥利用最優(yōu)模型對測試集中的柑橘樹冠進行預(yù)測,計算樹冠的面積,過濾非目標樹冠。⑦根據(jù)目標樹冠計算評價指標,評估模型性能。
最優(yōu)模型的參數(shù)設(shè)置為:學(xué)習(xí)率為0.001、權(quán)重衰減率為0.000 1、動量值為0.9、IoU為0.7、迭代輪數(shù)為100(每輪100次),RPN的Anchor尺度為48、96、192、384、768。
為了研究預(yù)測樹冠與標注樹冠之間的匹配程度,采用準確率(Accuracy,A)、精確率(Precision,P)、召回率(Recall,R)、調(diào)和平均數(shù)(F1score)作為評價指標[24],計算公式為
(2)
(3)
(4)
(5)
式中Tc——圖像中預(yù)測樹冠與標注樹冠匹配像素數(shù)
Tb——圖像中預(yù)測背景與真實背景匹配像素數(shù)
N——圖像像素總數(shù)
Np——圖像中預(yù)測樹冠像素數(shù)
Nt——圖像中標注樹冠像素數(shù)
用構(gòu)建的模型對數(shù)據(jù)集D1和D2測試集中的柑橘樹冠進行預(yù)測,根據(jù)樹冠面積過濾非目標樹冠,過濾前后對比如圖5所示。由圖5可以看出,過濾前圖像中識別出多個樹冠,過濾后可以得到目標樹冠。根據(jù)目標樹冠的識別和分割結(jié)果計算準確率、精確率、召回率和調(diào)和平均數(shù),如表2所示。由表2可以得出,D1測試集的準確率、精確率和召回率均達到91%以上,表明模型可實現(xiàn)參與建模果園的單株樹冠的精準識別與分割;數(shù)據(jù)集D2未參與建模,并且與D1在地理位置、地形、柑橘品種和樹形等方面存在一定的差異,但是D2測試集的單株樹冠準確率、精確率和召回率均在84%~89%之間,略低于D1,本測試集結(jié)果表明模型對于不同果園環(huán)境的單株樹冠識別分割具有一定的適應(yīng)性,可實現(xiàn)未參與建模果園的單株樹冠的精準識別與分割。模型對D1和D2測試集中的單幅圖像識別時間均為0.26 s,因此可滿足對靶噴藥、病蟲害防護、作物長勢識別等作業(yè)的實時性要求。
表2 參與建模和未參與建模果園的預(yù)測結(jié)果
為了進一步對比參與建模與未參與建模果園圖像的識別結(jié)果,利用數(shù)據(jù)集D3重新訓(xùn)練模型,模型參數(shù)與最優(yōu)模型保持一致。用構(gòu)建的新模型對D3的300幅測試集圖像中的柑橘樹冠進行預(yù)測,結(jié)果如表2所示,相較于數(shù)據(jù)集D2的準確率提高了4個百分點,精確率和調(diào)和平均數(shù)提高了3個百分點,召回率提高了2個百分點。此結(jié)果表明果園參與建模可獲得更好的識別效果,應(yīng)使模型訓(xùn)練集盡可能包含不同的果園,增加數(shù)據(jù)多樣性。
綜上所述,參與建模果園與未參與建模果園相比,單株樹冠預(yù)測結(jié)果的準確率、精確率和召回率高,識別分割效果更好。因此,后續(xù)研究中將增加模型訓(xùn)練集數(shù)據(jù)多樣性,包括品種、季節(jié)、高度、樹齡、采集時間、相機角度等,盡可能使類似預(yù)測的數(shù)據(jù)存在于數(shù)據(jù)集中。針對模型用于指定果園作業(yè)的情況,后續(xù)在建模過程中增加作業(yè)果園圖像,以提高模型識別和分割性能。
SegNet[25]與Mask R-CNN同樣是基于FCN的語義分割網(wǎng)絡(luò),結(jié)構(gòu)簡單,在道路場景分割、行人檢測和工件缺陷檢測等任務(wù)中有較高的準確率,因此將SegNet模型對樹冠識別效果與本文對比。SegNet主要包括編碼(Encoder)和解碼(Decoder)2個過程。在Encoder過程中,利用卷積進行下采樣提取特征;在Decoder過程中,利用卷積進行上采樣,變大圖像豐富信息,使得在Pooling過程丟失的信息可以通過學(xué)習(xí)在Decoder中得到。SegNet中的卷積與傳統(tǒng)CNN的卷積并沒有區(qū)別。2種模型識別結(jié)果如圖6所示,SegNet模型背景的誤識別區(qū)域更多。
表3為本文模型和SegNet模型在數(shù)據(jù)集D1和D2測試集上的評價指標結(jié)果,SegNet模型的召回率高于精確率,進一步說明SegNet模型更容易將背景誤識別為目標樹冠;并且與本文模型相比準確率、精確率、召回率低約5個百分點,識別分割效果略差,表明本文模型相較于SegNet模型有更好的識別分割效果。
表3 2種模型評價指標結(jié)果對比
通過對準確率和調(diào)和平均數(shù)較低圖像的共性分析,確定模型的影響因素。準確率和調(diào)和平均數(shù)較低圖像(圖7)的共性主要有2點:①圖像樹冠中樹枝暴露、葉片較少,健康狀態(tài)欠佳。②非目標樹冠占比較多,目標樹冠邊緣不明顯,且由于圖像光線暗、飽和度低,人工標注目標樹冠難度已較大。因此,模型的影響因素為樹冠形態(tài)、非目標樹冠占比、光線強度。圖像中目標樹冠和非目標樹冠深度信息有所不同,在接下來的研究中將嘗試利用3D相機,結(jié)合圖像深度信息,提高單株樹冠識別準確率。
(1)構(gòu)建的基于Mask R-CNN單株樹冠的識別與分割模型,能精準快速識別并分割復(fù)雜環(huán)境下的單株柑橘樹冠,基本上可滿足果園精準作業(yè)過程中的樹冠識別要求。分割參與建模的果園樹冠,準確率為97%,識別時間為0.26 s。該模型對不同品種、不同環(huán)境的果園具有一定的適應(yīng)性,對未參與建模的新柑橘品種和不同地貌環(huán)境的果園預(yù)測準確率為89%。
(2)與SegNet模型相比,本文模型準確率、精確率和召回率均高約5個百分點,說明在非目標樹冠較多的復(fù)雜果園圖像中具有較好的識別分割效果。
(3)所建模型的影響因素為樹冠形態(tài)、非目標樹冠占比以及光線強度。在后續(xù)研究中將利用3D相機,結(jié)合圖像深度信息,進一步提高單株樹冠識別準確率。