張偉榮,溫浩軍,2,譙超凡,汪光巖
(1.石河子大學(xué)機(jī)械電氣工程學(xué)院,新疆石河子 832000;2.農(nóng)業(yè)農(nóng)村部西北農(nóng)業(yè)裝備重點(diǎn)實(shí)驗(yàn)室,新疆石河子 832000)
【研究意義】玉米是我國(guó)北方地區(qū)的主要糧食作物[1],傳統(tǒng)農(nóng)業(yè)機(jī)械智能化水平較低[2]。精準(zhǔn)施肥技術(shù)能夠區(qū)分施肥對(duì)象與土壤背景,根據(jù)作物特征調(diào)整施肥量,有效降低化肥量的使用,對(duì)節(jié)約作業(yè)成本和減少環(huán)境污染有重要意義[3]。精準(zhǔn)對(duì)靶施肥通過(guò)實(shí)時(shí)檢測(cè)來(lái)定位每一株玉米的位置,通過(guò)施肥器對(duì)單株玉米進(jìn)行定點(diǎn)施肥,減少了施肥量并有效提高化肥的利用率?!厩叭搜芯窟M(jìn)展】應(yīng)用機(jī)器視覺(jué)或者深度學(xué)習(xí)的方法在果園果實(shí)檢測(cè)[4-6]、田間作物病蟲(chóng)害檢測(cè)[7-9]、識(shí)別作物及雜草[10-12]等均有研究。苗榮慧等[13]基于圖像分塊及重構(gòu)的方法,識(shí)別菠菜重疊葉片雜草,平均識(shí)別率達(dá)到83%以上。胡煉等[14]利用超綠色法2G-R-B結(jié)合Otsu法對(duì)進(jìn)行處理,隨后利用行與列的像素累加曲線和正弦波曲線等方法擬合識(shí)別出作物及定位棉苗和生菜苗的質(zhì)心位置。魏帥均等[15]利用超綠因子與Otsu法分割出苗期玉米植株,并結(jié)合水平集法與分治法,俯視圖像識(shí)別單株玉米冠層的株心,但是該方法田間適用性較差。孫哲等[16]對(duì)數(shù)據(jù)集訓(xùn)練了Faster R-CNN模型,對(duì)自然環(huán)境下的西蘭花幼苗進(jìn)行有效檢測(cè),確定了最優(yōu)的特征提取網(wǎng)絡(luò)為ResNet101。宗澤等[17]基于Faster R-CNN算法和差分內(nèi)積線性特性改進(jìn)質(zhì)心檢測(cè)算法對(duì)玉米冠層進(jìn)行識(shí)別與質(zhì)心定位計(jì)算,但無(wú)法計(jì)算玉米苗的葉面積信息?!颈狙芯壳腥朦c(diǎn)】目前部分相關(guān)研究的方法大部分適用于靜態(tài)環(huán)境下,達(dá)不到田間作業(yè)實(shí)時(shí)性與準(zhǔn)確性的要求,沒(méi)有計(jì)算出作業(yè)對(duì)象的葉面積信息,田間實(shí)際作業(yè)環(huán)境下玉米苗與株芯識(shí)別精度低。研究田間實(shí)際作業(yè)環(huán)境下,玉米苗葉面積計(jì)算與株芯識(shí)別的圖像分割方法。提高株芯識(shí)別精度對(duì)于田間實(shí)際作業(yè)情況下的精準(zhǔn)施肥具有重要意義?!緮M解決的關(guān)鍵問(wèn)題】采集田間實(shí)際作業(yè)環(huán)境下玉米苗俯視圖像,以不同特征提取網(wǎng)絡(luò)的Mask R-CNN圖像分割算法,獲取適應(yīng)不同光照強(qiáng)度及有無(wú)苗草交叉重合的最優(yōu)卷積主干網(wǎng)絡(luò),構(gòu)建玉米苗葉面積提取與株芯識(shí)別精度最優(yōu)的檢測(cè)模型,為對(duì)靶精準(zhǔn)施肥技術(shù)提供理論基礎(chǔ)。
1.1.1 圖像采集與預(yù)處理
圖片采集設(shè)備為FLIR BFS-U3-32S4C-C彩色工業(yè)相機(jī),最大分辨率為2 048×1 536像素。當(dāng)玉米幼苗處于2~5葉時(shí),分別采集有無(wú)伴生雜草的陰天和晴天兩種不同的光照條件下的玉米苗圖像。拍攝時(shí)相機(jī)離地高度約為50 cm,角度設(shè)置為垂直地面,以減輕陽(yáng)光和反射對(duì)圖像清晰度的影響。采集不同生長(zhǎng)階段田間玉米苗圖像共650張。圖1
1.1.2 圖像數(shù)據(jù)預(yù)處理
將原圖像尺寸2 048×1 536等比例縮放為800×600,在訓(xùn)練深度學(xué)習(xí)模型時(shí),采用包括加噪聲、隨機(jī)模糊、平移、水平與垂直鏡像、對(duì)角翻轉(zhuǎn)等數(shù)據(jù)擴(kuò)增方法。數(shù)據(jù)增強(qiáng)技術(shù)加快了數(shù)據(jù)集的構(gòu)建,增加模型訓(xùn)練的魯棒性和泛化能力,降低過(guò)擬合的可能性,得到1 800張擴(kuò)增后的幼苗數(shù)據(jù)集。
將數(shù)據(jù)集圖像按照7∶2∶1的比例隨機(jī)劃分為訓(xùn)練集1 260張、驗(yàn)證集360張及測(cè)試集180張。訓(xùn)練集用來(lái)進(jìn)行特征提取和訓(xùn)練模型參數(shù),驗(yàn)證集用來(lái)對(duì)模型進(jìn)行參數(shù)優(yōu)化,測(cè)試集用來(lái)評(píng)估訓(xùn)練后模型的性能。將整體樣本按照COCO數(shù)據(jù)集格式使用labelme[18]圖像標(biāo)注工具對(duì)圖像進(jìn)行手工標(biāo)注,生成玉米苗和株芯的蒙版圖像及對(duì)應(yīng)的json文件。圖2
1.1.3 試驗(yàn)環(huán)境
模型訓(xùn)練平臺(tái)為臺(tái)式計(jì)算機(jī),軟件操作系統(tǒng)采用Ubuntu18.04,處理器為Intel(R) Core(TM)i7-9700K,主頻4.20 GHz,硬盤(pán)2T,內(nèi)存32G,顯卡NVIDIA Geforce RTX 2080Ti。采用了基于PyTorch的Detectron2框架,同時(shí)采用CUDA 10.2對(duì)訓(xùn)練過(guò)程進(jìn)行加速,使用Mask R-CNN在COCO數(shù)據(jù)集上預(yù)訓(xùn)練模型的遷移學(xué)習(xí)方法以減少訓(xùn)練時(shí)間。
1.2.1 圖像分割算法
Mask R-CNN[19]是一種經(jīng)典的圖像分割算法,可以檢測(cè)圖像中的目標(biāo)對(duì)象并標(biāo)記對(duì)象區(qū)域輪廓,提取相關(guān)的像素進(jìn)行面積計(jì)算。采用此算法識(shí)別玉米芯具體位置和冠層面積的大小。
Mask R-CNN 結(jié)合了用于目標(biāo)檢測(cè)的Faster R-CNN[20]和用于語(yǔ)義分割的全卷積網(wǎng)絡(luò)FCN[21]。在Faster R-CNN檢測(cè)到目標(biāo)的基礎(chǔ)上,將FCN用于掩碼預(yù)測(cè),邊界回歸和分類。Mask R-CNN模型的框架,主要包括以ResNet/ResNeXt為卷積主干的特征提取層、區(qū)域建議網(wǎng)絡(luò)(Region proposal network,RPN)、雙線性插值(ROIAlign)以及全連接FC和全卷積網(wǎng)絡(luò)FCN。利用殘差網(wǎng)絡(luò)(Residual network,ResNet)和特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network,F(xiàn)PN)對(duì)輸入圖像進(jìn)行特征提取并生成多尺度特征圖(Feature Map)。將輸出的特征圖發(fā)送到區(qū)域提議網(wǎng)絡(luò)(RPN)以生成正負(fù)樣本,選出玉米苗上的感興趣區(qū)域(Region of interest,RoI)。映射從RPN輸出的ROI到特征圖后,ROIAlign層進(jìn)一步對(duì)特征圖進(jìn)行像素校正以提取共享特征圖中的相應(yīng)目標(biāo)特征,分別輸出到全連接層FC和全卷積網(wǎng)絡(luò)FCN,以進(jìn)行目標(biāo)分類和實(shí)例分割,完成分類分?jǐn)?shù)、邊界框、分割蒙版以及像素值的計(jì)算。圖3
1.2.2 改進(jìn)卷積主干網(wǎng)絡(luò)
輸入的圖片通過(guò)骨干網(wǎng)絡(luò)提取多尺度特征圖,其骨干網(wǎng)絡(luò)由殘差網(wǎng)絡(luò)ResNet和特征金字塔網(wǎng)絡(luò)FPN組成。ResNet[22]是一種借鑒了跨層連接的深度殘差卷積網(wǎng)絡(luò),采用ResNeXt[23]作為特征提取網(wǎng)絡(luò)的Mask R-CNN圖像分割算法,實(shí)現(xiàn)對(duì)玉米苗及株芯的識(shí)別、檢測(cè)與分割。
ResNeXt網(wǎng)絡(luò)模型是在ResNet基礎(chǔ)上改進(jìn)的,吸收了VGG[24]堆疊重復(fù)網(wǎng)絡(luò)層的優(yōu)點(diǎn)以及Inception[25]網(wǎng)絡(luò)拆分-轉(zhuǎn)換-合并的思想。ResNeXt的本質(zhì)是分組卷積(Group Convolution),通過(guò)變量基數(shù)(Cardinality)來(lái)控制組的數(shù)量,用一種平行堆疊且相同拓?fù)浣Y(jié)構(gòu)的塊替代原來(lái)ResNet三層卷積的塊。在ResNeXt中,拆分-轉(zhuǎn)換-合并的形式可表示為
(1)
其中,C表示基數(shù),指一個(gè)模塊中具有相同拓?fù)浞种У臄?shù)量,Ti(x)表示具有相同拓?fù)浣Y(jié)構(gòu)的每個(gè)分支的變換。圖4
1.2.3 損失函數(shù)
Mask R-CNN的損失函數(shù)有3部分組成:邊界框的分類損失,邊界框的位置回歸損失及掩膜損失。網(wǎng)絡(luò)中每個(gè)樣本ROI的損失函數(shù)L為
L=Lbox+Lcls+Lmask.
(2)
其中,有3部分組成:Lbox為分類計(jì)算損失,Lcls為邊界框的位置回歸損失,Lmask為掩膜計(jì)算損失。邊框損失函數(shù)、分類計(jì)算損失如式及掩膜計(jì)算損失如下式所示,
(3)
(4)
(5)
(6)
1.2.4 評(píng)估指標(biāo)
使用平均準(zhǔn)確度均值(Mean Average Precision,mAP)作為評(píng)估訓(xùn)練模型精度的指標(biāo)。mAP是用于預(yù)測(cè)目標(biāo)位置和類別的算法性能指標(biāo),指的是多個(gè)類別平均精度(Average Precision,AP)的平均值,較高的mAP值表明該模型更好。圖像分割中,每一類都可以根據(jù)準(zhǔn)確率P(Precision)和召回率R(Recall)繪制一條曲線,精確率均值A(chǔ)P就是該曲線下的面積。多個(gè)指標(biāo)的計(jì)算公式如下:
(7)
(8)
(9)
(10)
其中,TP表示被正確預(yù)測(cè)為正樣本的數(shù)量,F(xiàn)P表示負(fù)樣本被預(yù)測(cè)為正樣本的樣本數(shù)量,F(xiàn)N表示正樣本被預(yù)測(cè)為負(fù)樣本的樣本數(shù)量,k表示類別的數(shù)目;P指準(zhǔn)確率,指正確檢測(cè)到的樣本占所有實(shí)際被檢測(cè)到樣本的比例;R指召回率,指正確檢測(cè)的樣本數(shù)占應(yīng)檢測(cè)到樣本數(shù)的比例。
孟欣欣等[26]為了更好評(píng)價(jià)Mask R-CNN模型對(duì)圖片的分割效果,引入了分割精度(SA),公式為:
(11)
其中RS表示測(cè)試圖像中目標(biāo)的實(shí)際像素點(diǎn)個(gè)數(shù),TS表示測(cè)試圖像中分割算法計(jì)算得到的像素點(diǎn)個(gè)數(shù)。分割精度均值(mSA)定義如下:
(12)
其中n表示測(cè)試圖像的數(shù)量。
研究表明,在訓(xùn)練階段,在迭代過(guò)程中4個(gè)模型的整體損失都呈整體下降趨勢(shì),其中以ResNeXt-FPN為卷積主干網(wǎng)絡(luò)的檢測(cè)模型總體訓(xùn)練損失值要低于相同殘差層數(shù)的ResNet-FPN卷積主干網(wǎng)絡(luò),ResNeXt50-FPN要低ResNet50-FPN,ResNeXt101-FPN要低于ResNet101-FPN。ResNeXt101-FPN卷積主干Mask R-CNN的mAP為0.547,這表明其具有最佳的分割性能;其次為ResNet101-FPN,而ResNeXt50-FPN稍低于ResNeXt101-FPN,高于ResNet50-FPN。ResNeXt卷積主干網(wǎng)絡(luò)在ResNet基礎(chǔ)上引入了拆分-轉(zhuǎn)換-合并思想和分組卷積后,整體上提高了分割模型的性能。隨著模型主干網(wǎng)絡(luò)性能的提升,模型的復(fù)雜度和圖片平均檢測(cè)時(shí)間會(huì)有所增加,具有ResNet101-FPN與ResNeXt101-FPN卷積主干的Mask R-CNN算法對(duì)每幅圖像的檢測(cè)時(shí)間分別為61 ms與67 ms,可以滿足田間作業(yè)的實(shí)時(shí)性。優(yōu)先采用整體損失值最低的ResNeXt101作為卷積主干網(wǎng)絡(luò)。圖5,表1
表1 識(shí)別模型中不同卷積主干網(wǎng)絡(luò)的試驗(yàn)Table 1 Test results of different convolutional backbone networks in the recognition model
2.2.1 不同光照強(qiáng)度下玉米苗/玉米芯的檢測(cè)
研究表明,在不同光照條件下,ResNeXt101-FPN卷積主干網(wǎng)絡(luò)模型的玉米苗和玉米芯識(shí)別精度較高。與ResNeXt101-FPN相比,在陰天較弱光照條件下,玉米苗的識(shí)別精度高了6.7%,玉米芯的識(shí)別精度持平;在晴天較強(qiáng)光照條件下,玉米苗識(shí)別精度持平,玉米芯識(shí)別精度高了2.7%。玉米苗識(shí)別不成功的原因主要是圖片中玉米苗的冠層輪廓不完整,導(dǎo)致分割模型對(duì)不完整玉米苗的輪廓識(shí)別率較低;玉米芯受到部分遮擋、晴天天氣下的陰影與玉米芯顏色相近的情況都會(huì)導(dǎo)致玉米芯無(wú)法識(shí)別或誤識(shí)別的情況發(fā)生。
ResNeXt101-FPN作為卷積主干的模型分割精度比ResNet101-FPN要高。晴天較強(qiáng)光照下的分割精度略低,主要原因在于晴天天氣下玉米苗在其邊緣處產(chǎn)生的陰影會(huì)影響葉片的邊緣處輪廓分割,模型會(huì)將與葉片邊緣的部分陰影分割為葉片的一部分,造成過(guò)度分割。在不同光照強(qiáng)度下,原始分割模型的平均分割精度值為96.9%,分割模型平均分割精度值則為98.2%,比原始模型的平均分割精度均值提高了1.3%,Mask R-CNN模型對(duì)不同光照強(qiáng)度的圖像有著更好的分割效果。(a1-a4 代表原圖,b1-b4 代表原始的以 ResNet101-FPN 為卷積主干的模型檢測(cè)結(jié)果,c1-c4代表以 ResNeXt101-FPN 作為卷積主干的模型檢測(cè)結(jié)果。兩種模型檢測(cè)結(jié)果顯示陰天較弱光照下的b1、c1、b2、c2或者晴天較強(qiáng)光照下b3、c3、b4、c4的玉米苗圖像)。表2,表3,圖6
表2 不同光照強(qiáng)度下的目標(biāo)分割像素Table 2 Target segmentation pixel statistics table under different light intensity
表3 不同光照強(qiáng)度下的像素計(jì)算誤差對(duì)比Table 3 Comparison of pixel calculation errors under different light intensity
2.2.2 有伴生雜草情況下玉米苗/玉米芯的檢測(cè)
研究表明,對(duì)于陰天較弱光照或者晴天較強(qiáng)光照條件下有伴生雜草的玉米苗圖像,2種模型的檢測(cè)效果較好,采用的模型對(duì)玉米苗葉片和玉米芯的葉面積及邊界框位置有著更高的準(zhǔn)確度。(a1-a4 代表原圖,b1-b4 代表原始的以 ResNet101-FPN 為卷積主干的模型檢測(cè)結(jié)果,c1-c4 代表以 ResNeXt101-FPN 作為卷積主干的模型檢測(cè)結(jié)果。 a1-c1及a2-c2代表圖像中有伴生雜草但苗草不存在交叉情況的玉米苗檢測(cè)結(jié)果,a3-c3及a4-c4代表圖像中有伴生雜草且苗草存在交叉情況的玉米苗檢測(cè)結(jié)果)。圖7,圖8
當(dāng)有伴生雜草時(shí),2個(gè)模型的識(shí)別準(zhǔn)確率相比無(wú)伴生雜草分別下降1.45%和0.74%。在相同的光照條件下,當(dāng)伴生雜草與玉米苗存在有交叉重合情況時(shí),2個(gè)模型的識(shí)別精度均有下降。在陰天較弱光照條件下,2個(gè)模型在無(wú)交叉情況下的玉米苗和玉米芯檢測(cè)精度比有交叉情況平均要高1.9%和5.3%;在晴天較強(qiáng)光照條件下,無(wú)交叉情況下要比有交叉情況平均要高1.1%和0.4%。在伴生雜草與玉米苗存在交叉重合和不存在交叉重合情況下,陰天較弱光照和晴天較強(qiáng)光照下的ResNeXt101-FPN模型的平均識(shí)別準(zhǔn)確率比ResNet101-FPN模型高2.4%和3.7%。表2,表4
表4 不同光照強(qiáng)度下有伴生雜草的目標(biāo)識(shí)別成功率Table 4 Target recognition success rate with associated weeds under different light intensities
研究表明,與陰天較弱光照和苗草無(wú)交叉情況下對(duì)比,晴天較強(qiáng)光照與苗草有交叉情況下模型的分割精度均較低,且晴天苗草有交叉重合的情況下模型的分割精度最低。當(dāng)伴生雜草和玉米苗有交叉重合的情況時(shí),由于玉米苗與雜草邊緣的交界處存在高度相似性,使得模型對(duì)玉米苗的邊緣輪廓分割精度變差,模型容易把邊緣重合處的部分雜草識(shí)別為玉米苗輪廓的過(guò)度分割及無(wú)法識(shí)別邊緣重合處玉米苗的不完整分割。尤其在晴天的較強(qiáng)光照條件下,陽(yáng)光投射的陰影更會(huì)加大玉米苗邊緣輪廓的分割難度。表5
表5 不同光照強(qiáng)度下有伴生雜草的目標(biāo)分割像素Table 5 Pixel statistics table of target segmentation with associated weeds under different light intensities
在不同光照強(qiáng)度和有無(wú)苗草交叉重合情況下,原始分割模型的平均分割精度值為96.8%,以ResNeXt101-FPN卷積主干網(wǎng)絡(luò)模型平均分割精度值則為97.9%,分割模型比原始模型的平均分割精度均值提高了1.1%,Mask R-CNN分割模型對(duì)不同光照苗草交叉重合情況下的圖像有著更好的分割效果。
3.1對(duì)玉米苗冠層面積信息的提取關(guān)系到對(duì)靶施肥化肥使用量的大小,株芯的識(shí)別與定位則是能否精準(zhǔn)對(duì)靶的關(guān)鍵,通過(guò)分析前人利用機(jī)器視覺(jué)或深度學(xué)習(xí)算法提取玉米苗冠層和株芯的方法,得知目前研究對(duì)于農(nóng)田作物信息的獲取不夠全面,無(wú)法滿足田間實(shí)際環(huán)境精準(zhǔn)作業(yè)的要求。
3.2對(duì)比Zong Z[27]等基于機(jī)器視覺(jué)的玉米株芯定位方法來(lái)進(jìn)一步驗(yàn)證研究方法的有效性,在有伴生雜草與玉米苗有交叉重合的情況下,討論算法玉米芯識(shí)別精度為94.7%,高于文中基于灰度的最小交叉熵法算法的玉米株芯識(shí)別率88.37%。研究方法具有較高的識(shí)別速度和較高的魯棒性,而且討論使用的分割算法還能實(shí)時(shí)計(jì)算玉米苗的冠層面積,可針對(duì)單株玉米苗冠層葉片面積大小進(jìn)行變量施肥,基本滿足大田復(fù)雜光照及背景的實(shí)時(shí)檢測(cè)及對(duì)靶施肥需求。
3.3但該方法仍存在一些不足:(1)雖然對(duì)于陰天較弱光照及晴天較強(qiáng)光照下的目標(biāo)識(shí)別準(zhǔn)確率都比較高,但是對(duì)于晴天天氣下的陰影導(dǎo)致玉米苗部分邊緣區(qū)域分割不理想;(2)對(duì)于伴生雜草與玉米苗有交叉重合的情況,由于玉米苗邊緣與雜草存在一定程度的顏色相近與邊緣重合,模型準(zhǔn)確率也有一定下降,尤其是晴天天氣下且伴生雜草與玉米苗有交叉重合時(shí),模型更易把苗株邊緣重合的雜草部分識(shí)別為玉米苗。后期需要對(duì)模型進(jìn)行進(jìn)一步優(yōu)化改進(jìn)來(lái)解決上述遇到的問(wèn)題,需要未來(lái)進(jìn)一步探討。
通過(guò)Mask R-CNN模型特征提取網(wǎng)絡(luò)的改進(jìn),提取了田間實(shí)際情況下的玉米苗葉面積與株芯等關(guān)鍵信息。在強(qiáng)光照條件下的識(shí)別精度下降問(wèn)題得到基本解決,不同光照強(qiáng)度下無(wú)伴生雜草的平均識(shí)別精度高于95.5%,分割精度達(dá)98.1%;在有伴生雜草與玉米苗有交叉重合情況下,改進(jìn)后的分割算法比原始算法的分割精度均值有所提高,識(shí)別精度高于94.7%,分割精度達(dá)97.9%。