孫艷霞,陳燕飛,金小俊,于佳琳,陳 勇 *
(1. 南京林業(yè)大學機械電子工程學院,江蘇 南京 210037;2. 南京交通職業(yè)技術學院軌道交通學院,江蘇 南京 211188;3. 南京林業(yè)大學林學院,江蘇 南京 210037)
【研究意義】青菜幼苗與雜草的精準識別是實現(xiàn)青菜智能化作業(yè),促進高質(zhì)量蔬菜生產(chǎn)的關鍵[1]。目前,青菜田的雜草防除仍然依賴人工除草。人工除草效率低下,且人力成本的提高不僅推高了青菜的種植成本,同時也限制了蔬菜產(chǎn)業(yè)的發(fā)展[2]。智能化的機械除草是青菜雜草控制的首選方式[3?4],而雜草的精準識別是其實現(xiàn)過程中的關鍵一環(huán)[5?6]?!厩叭搜芯窟M展】近年來,研究人員相繼開展了雜草識別研究[7?9]。徐濤等[10]提出了一種基于三維點云的蔬菜大棚雜草識別方法,利用高度特征區(qū)分蔬菜作物和雜草,識別率可達86.48%。Osorio 等[11]分別基于機器學習的支持向量機(SVM)技術和基于深度學習的YOLO-v3、Mask R-CNN 卷積神經(jīng)網(wǎng)絡模型對生菜田中的伴生雜草進行識別,試驗結(jié)果表明,人工智能技術優(yōu)于傳統(tǒng)圖像處理技術,可有效識別雜草。雜草識別方法通常利用雜草本身的特征,包括顏色特征[12]、形態(tài)特征[13]、紋理特征[14]和多光譜特征[15]等。雜草種類繁多,特征各異,難以提取具有普適作用的特征,且人工設計的特征存在著精準度差、魯棒性不足等缺陷[5,16?18]。隨著人工智能技術的發(fā)展,機器學習、深度學習等技術逐漸應用于雜草識別研究,并取得了諸多進展[19?22]?!颈狙芯壳腥朦c】文獻檢索顯示,青菜幼苗識別國內(nèi)外尚無相關研究,本文將基于人工智能技術對青菜幼苗識別展開初步探索。在菜田中,青菜之外的植物都可以認為是雜草或者被視作雜草。因此,識別出青菜幼苗后,剩余的綠色目標即可標記為雜草。這一方式不僅簡化了雜草識別的復雜性,同時提高了雜草識別的泛化能力。對于不同種類、形態(tài)、生長狀況的雜草都能基于識別青菜,進而通過顏色特征進行雜草的識別和分割?!緮M解決的關鍵問題】本文擬提出并驗證適用于當前青菜無行距和株距種植方式的青菜幼苗與雜草識別方法,以期解決雜草識別這一制約精確除草的瓶頸問題,同時為青菜及其他相似蔬菜的精準作業(yè)提供技術參考。
以青菜幼苗及其伴生雜草為試驗對象。青菜幼苗圖像于2020 年7 月和9 月分2 批采集自南京市棲霞區(qū)八卦洲的某青菜種植園內(nèi),圖像原始分辨率為4032 × 3024 像素,共采集圖像樣本850 幅。為保證神經(jīng)網(wǎng)絡模型訓練樣本的多樣性,圖像采集了不同播種時間的青菜田,以及晴天、陰天等不同光線狀態(tài)下的樣本實體。為降低圖像處理時間,提高算法田間應用的實時性,對于采集的樣本圖像,使用開源圖像處理軟件ImageJ(https://imagej.nih.gov/ij/)批量調(diào)整尺寸至1400 × 1050 像素,并使用LabelImg 軟件進行圖像標注,標注信息為青菜幼苗的矩形邊框,標注完成后生成與圖像對應的XML 標簽文件,作為神經(jīng)網(wǎng)絡模型的數(shù)據(jù)集樣本。
為探究不同神經(jīng)網(wǎng)絡模型對青菜幼苗識別的效果,選取不同目標檢測模型進行評價分析。試驗神經(jīng)網(wǎng)絡平臺為MMDetection 框架。MMDetection是一款基于PyTorch 的開源工具箱,其支持了眾多主流的神經(jīng)網(wǎng)絡模型算法。神經(jīng)網(wǎng)絡模型訓練和運行的硬件系統(tǒng)為臺式計算機,搭載Inter(R) core(TM) i9-9900K CPU @3.60 GHZ 處理器,圖形處理單元為NVIDIA GeForce RTX 2080Ti,運行內(nèi)存為64 GB,操作系統(tǒng)為Ubuntu 20.04。
將采集到的青菜幼苗圖像分為訓練集、驗證集和測試集。訓練集圖像用于神經(jīng)網(wǎng)絡模型的訓練,并基于驗證集評價數(shù)據(jù)獲取最優(yōu)訓練模型。同時,對比不同置信度閾值下的精度、召回率和F1值,選擇最佳置信度閾值應用于測試集。根據(jù)測試集評價數(shù)據(jù),對比分析CNN 模型和Transformer 模型的檢測效果。將所得最優(yōu)神經(jīng)網(wǎng)絡模型用于青菜幼苗的識別。識別出青菜幼苗后,邊框之外的綠色目標即視為雜草,進而利用顏色特征進行雜草分割,并通過面積濾波濾除分割噪點。
1.3.1 基于人工智能的青菜幼苗識別
1.3.1.1 檢測模型當前目標檢測算法主要基于卷積神經(jīng)網(wǎng)絡(CNN),其中最具代表性的為YOLO 系列模型。YOLO 模型利用多尺度檢測和殘差網(wǎng)絡實現(xiàn)目標檢測,同時通過將目標檢測轉(zhuǎn)化為端到端的回歸問題,極大地提高了檢測性能。YOLO 模型兼具高準確率和實時目標檢測能力[23]。得益于強大的注意力機制,基于Transformer的神經(jīng)網(wǎng)絡模型廣泛應用于自然語言處理(NLP)任務,成為了NLP 領域的主流算法。近年來,研究者將Transformer 應用至計算機視覺領域,結(jié)果表明其在目標檢測任務中展現(xiàn)了優(yōu)異的性能,亦逐漸成為當下的研究熱點。
為探究主流CNN 模型以及新興Transformer 模型在青菜幼苗識別中的效果,并為相似植物檢測領域神經(jīng)網(wǎng)絡模型的選取方式提供參考,本研究分別選取基于CNN 的最新一代YOLO 系列模型YOLOX 和基于Transformer 機制的Deformable DETR 模型開展試驗。在田間應用中,算法的實時性至關重要。本研究將從檢測準確率和檢測性能兩方面對CNN 模型和Transformer 模型進行綜合對比,并根據(jù)評價結(jié)果選取最佳模型進行青菜幼苗識別試驗。表1 為模型的超參設置。
表1 模型超參設置Table 1 Hyperparameters of models
1.3.1.2 評價指標采用精度(precision)、召回率(recall)、F1值以及平均精度(average precision)作為模型的評價指標。其中,精度表示模型正確檢測出的青菜幼苗數(shù)量與預測為青菜幼苗數(shù)量的比值。召回率則表示樣本中所有青菜幼苗目標被正確預測的比例。精度和召回率的計算公式為:
式中tp為被模型預測為正的正樣本數(shù)量、fp為被模型預測為正的負樣本數(shù)量、fn為被模型預測為負的正樣本數(shù)量。
F1值是基于精度和召回率的綜合評價指標,其定義為精度與召回率的調(diào)和平均數(shù):
平均精度表示模型對某一類別目標的檢測效果,由于本研究只有青菜幼苗一個類別,因而平均精度越高,表明模型總體檢測效果越佳。平均精度的計算方式為取精度和召回率曲線(PR-Curve)的積分:
1.3.2 基于顏色特征的雜草識別雜草與青菜幼苗同為綠色,單純利用顏色特征很難進行區(qū)分。但另一方面,雜草與土壤背景的顏色存在較大差異,通過綠色特征可以從土壤中識別出雜草。本研究首先利用人工智能識別出青菜幼苗,并在識別雜草時去除青菜幼苗邊框之內(nèi)的像素。如此,圖像中剩下的綠色像素值即可認為是雜草像素,利用顏色特征將其從土壤背景中分割出來。本研究采用雜草識別中廣泛應用的超綠因子[24]對雜草進行分割。雜草為綠色,因而對于RGB 顏色空間下的雜草像素,其G分量值必然大于R分量值和B分量值。根據(jù)此規(guī)律,可對超綠因子進行條件改進,以進一步提高分割性能。改進后的超綠因子如下所示:
式中,R、G、B分別為對應RGB 值,r、g、b分別為歸一化之后的RGB 值,采用歸一化之后的像素值可以在一定程度降低光照強度對圖像分割的影響[25]。r、g、b的計算公式為:
青菜幼苗識別樣本數(shù)據(jù)集共有850 張圖像,其中訓練集為650 張圖像、驗證集和測試集各包含100 張圖像。訓練集、驗證集和測試集樣本相互獨立無交叉。數(shù)據(jù)集標注青菜幼苗目標10578 個,其中訓練集、驗證集和測試集分別包含7911 個、1320 個以及1347 個青菜幼苗。模型在檢測過程中根據(jù)置信度判定當前預測目標是否為正樣本,因而置信度閾值的選取關乎模型的精度和召回率等評價數(shù)據(jù)。不同置信度閾值(0.9、0.8、0.7、0.6、0.5、0.4、0.3、0.2和0.1)對應的精度、召回率及F1值數(shù)據(jù)如表2 所示。本研究將在驗證集中,根據(jù)不同置信度閾值的評價數(shù)據(jù),選擇最佳閾值用于對比分析測試集下模型的青菜幼苗識別效果。
由表2 可知,當置信度閾值為0.9 時,YOLOX模型的精度值最高,達到1.0,但對應的召回率只有0.04。該閾值下,雖然YOLOX 模型預測的青菜幼苗目標全部正確,但遺漏了96%的青菜幼苗目標。相反,當置信度閾值為0.1 和0.2 時,YOLOX 模型的召回率同樣達到了最高值1.0,精度值為0.877,顯示其有12.3%的誤檢。通過觀察F1值可知,YOLOX模型和Deformable DETR 模型的最佳置信度閾值為0.6 和0.4,該置信度下精度值和召回率取得了最佳平衡。分別對應F1值為0.961 和0.959。
表2 不同置信度閾值驗證集評價數(shù)據(jù)Table 2 Evaluation matrixes of varied confidence scores on val data set
將最佳置信度閾值應用于測試集,得到表3 所示的模型評價數(shù)據(jù)。觀察表3 可知,YOLOX 模型和Deformable DETR 的召回率相同,都高達0.97。召回率是青菜幼苗識別和雜草識別的重要指標,召回率過低會導致青菜幼苗被遺漏進而被誤識別為雜草。本研究所選模型表現(xiàn)出了優(yōu)異的青菜幼苗召回能力。精度方面,YOLOX 模型比Deformable DETR 模型略高1.5%。由此,YOLOX 模型擁有最高的F1值(0.956)。對于平均精度,YOLOX 模型和Deformable DETR 模型都高于97%,表明其對于青菜幼苗都有較好的識別率。根據(jù)F1值和平均精度,YOLOX 模型識別青菜幼苗的效果更佳。此結(jié)果也表明,卷積神經(jīng)網(wǎng)絡的模型在植物類別檢測中仍然比Transformer 模型略勝一籌,但差距并不明顯,相信隨著Transformer模型研究的進一步深入,未來表現(xiàn)可期。
表3 同樣列出了YOLOX 模型和Deformable DETR模型的檢測速度。該速度值取測試集中100 張圖像的平均值。觀察可知,YOLOX 模型和Deformable DETR 模型檢測性能差距明顯,前者的速度是后者的4 倍。此結(jié)果與YOLOX 模型兼顧精度和性能的特征相符。綜合識別率和模型檢測性能,基于卷積神經(jīng)網(wǎng)絡的YOLOX 模型為青菜幼苗識別的最優(yōu)模型。
表3 測試集最優(yōu)置信度閾值的評價數(shù)據(jù)Table 3 Evaluation matrix of highest confidence score on test data set
圖1 所示為評價最優(yōu)模型YOLOX 的青菜幼苗識別效果圖。為驗證模型在不同場景下的識別魯棒性,分別選取圖1-a 包含禾本科雜草的圖像、圖1-b包含闊葉草的圖像以及圖1-c 不同生長大小的青菜幼苗圖像,從效果圖可看出,YOLOX 模型在不同類型雜草背景和不同青菜幼苗生長大小下,均能正確識別青菜幼苗目標,展示了其良好的識別效果。
圖1 不同場景下的原圖及YOLOX 模型青菜幼苗檢測效果Fig. 1 Images of bok choy seedlings under original conditions and YOLOX model
青菜種植通常沒有明顯行距與株距,隨機分布于田間,青菜幼苗可能會相互重疊。在該場景下,模型會將兩顆或多顆青菜幼苗識別成一顆。此漏檢情況雖然會降低識別的召回率,但不會對田間實際應用產(chǎn)生實質(zhì)影響。在精確除草作業(yè)下,重疊青菜幼苗所在的整體區(qū)域是被成功識別并標記邊框的,并不影響邊框之外的綠色目標被判定為雜草。當然,后續(xù)可通過增加重疊青菜幼苗的訓練樣本,以改善此漏檢情況。
識別并標記青菜幼苗所屬綠色像素后,剩余的綠色目標都是雜草或者被看做雜草。圖2 所示為改進后的超綠因子的雜草分割效果圖(去除青菜幼苗邊框內(nèi)綠色像素)。從圖中可以看出,雜草被正確識別并展現(xiàn)出極佳的分割效果,但分割后的二值圖中仍然存在一些噪點像素。
圖2 雜草分割效果Fig. 2 Image showing seedlings/weeds separation
圖3 所示為面積濾波之后的分割效果圖。觀察可見,圖中的噪點像素被完全濾除,雜草目標的形態(tài)完整且保有清晰的輪廓。圖中同樣用藍色矩形框標記出青菜幼苗的位置,根據(jù)此效果圖的青菜幼苗和雜草識別信息,可用于田間青菜幼苗的精準除草工作。該試驗結(jié)果表明本研究所提出的青菜幼苗和雜草識別方法具有高度的可行性以及極佳的應用前景。
圖3 面積濾波及最終雜草識別效果Fig. 3 Area filter and weed-recognized image
青菜生長周期較短,播種后18~25 d 即可收獲[26]。除草工作通常在青菜幼苗期進行。本研究不直接識別雜草,而是通過識別青菜幼苗進而間接識別雜草。因此,雜草種類、形態(tài)和大小的差異并不會實質(zhì)影響雜草識別的效果。
本研究提出了一種基于人工智能的青菜幼苗與雜草識別方法。首先通過神經(jīng)網(wǎng)絡模型識別青菜幼苗。青菜幼苗目標之外的綠色像素則視為雜草,并利用顏色特征對雜草進行分割。研究所得結(jié)論如下:
1) 主流的CNN 模型YOLOX 和新興的Transformer模型Deformable DETR 都能有效識別青菜幼苗。其中YOLOX 模型為本次青菜幼苗識別試驗的最優(yōu)模型,其平均精度和識別速度分別為98.1%和44.8 fps。
2) 識別并標記青菜幼苗目標后,圖像中剩余的綠色目標都是雜草或者被看做雜草。此方式不僅簡化了雜草識別的復雜性,同時提高了雜草識別的泛化能力。試驗表明,該方法能夠有效識別雜草,適用于當前青菜無行距和株距的種植方式。