王興旺,鄭漢垣,王素青
(1. 上海農林職業(yè)技術學院,上海 201699;2. 上海大學 計算機工程與科學學院,上海 200444;3. 上海馬陸葡萄研究所,上海 201818)
馬陸葡萄產于上海嘉定區(qū)馬陸鎮(zhèn),于1981年開始種植,“馬陸”品牌已經通過了上海市優(yōu)質農產品認證并獲得優(yōu)質葡萄評比“金獎”,深受消費者的喜愛[1-3]。2022 年,馬陸葡萄銷售價格約80 元/kg,個別品種可達160 元/kg,在上海的種植面積約330 hm2,其特色品種巨峰、玫瑰香等在全國種植面積可達40萬hm2。馬陸葡萄果粉厚,果肉軟,汁多味甜,是地理標志登記保護農產品。長期以來,馬陸葡萄深受病蟲害問題的困擾,常見病蟲害多達60 余種,病蟲害的發(fā)生和防控不及時造成了馬陸葡萄產量和品質的下降[4-7]。由于馬陸葡萄病蟲害圖像背景復雜,存在邊界模糊和凹陷問題,常用的病蟲害識別模型無法對馬陸葡萄病蟲害進行準確識別,需要病蟲害專家到現(xiàn)場進行人工判斷,這一現(xiàn)狀降低了病蟲害防控工作效率,束縛了馬陸葡萄產業(yè)的發(fā)展[8-10]。
科研人員在病蟲害識別模型和識別方法層面開展了大量的研究工作。王春山等[11]在ResNet 的基礎上進行創(chuàng)新,建立一種Multi-scale ResNet 病害識別模型并應用于蔬菜葉部病害識別,Multi-scale ResNet 識別模型較好地提升了識別準確率;楊森等[12]通過對馬鈴薯病害識別進行深入研究,建立了一種將深度學習與復合字典相結合的識別方法,該方法可以有效地降低識別誤差。常用的病蟲害識別模型對馬陸葡萄病蟲害識別誤差較大,識別準確率不夠理想[13-15]。鑒于此,從動態(tài)系數(shù)函數(shù)、損失函數(shù)、監(jiān)督機制等幾個方面進行研究,建立了一種基于Core-Softmax 聯(lián)合監(jiān)督機制的精確分割測地線活動輪廓模型(CSJMM-AS-GAC),以提高病蟲害識別效率。
病蟲害圖像主要通過以下途徑獲取:①上海馬陸葡萄種植基地人工獲取。研究人員于2019 年3月至2021 年3 月在上海馬陸葡萄種植基地利用高清數(shù)碼相機[佳能(Canon)Power Shot G7 X Mark ⅡG7X2]等設備對馬陸葡萄病蟲害圖像進行拍攝。②上海大學數(shù)字農業(yè)課題研究團隊與上海農林職業(yè)技術學院病蟲害專家多年的果樹病蟲害圖像數(shù)據(jù)積累。③上海馬陸葡萄研究所病蟲害防控工作中獲取的馬陸葡萄病蟲害圖像數(shù)據(jù)。④在Plant Village 官方網站獲取的果樹病蟲害圖像數(shù)據(jù)。病蟲害圖像數(shù)據(jù)以馬陸葡萄病蟲害圖像為主,同時為了增強研究的可擴展性以及滿足模型的訓練需求,還包含了梨、蘋果、草莓、柑橘、杧果、石榴等多種作物的病蟲害圖像。對馬陸葡萄隨機抽取的病蟲害圖像數(shù)據(jù)樣本如圖1和圖2所示。
圖1 馬陸葡萄蟲害圖像數(shù)據(jù)樣本Fig.1 Image data sample of Malu grape pests
圖2 馬陸葡萄病害圖像數(shù)據(jù)樣本Fig.2 Image data sample of Malu grape diseases
馬陸葡萄病蟲害圖像數(shù)據(jù)主要包括葡萄白粉病、葡萄大褐斑病、葡萄白腐病、葡萄炭疽病等36種病害和葡萄癭蚊、煙薊馬、旋目夜蛾、小造橋夜蛾等32 種蟲害。為了防止由于病蟲害樣本數(shù)據(jù)量不足引起的模型過擬合現(xiàn)象,研究人員對病蟲害圖像進行了擴充操作,主要包括圖像縮放、改變光線對比度、圖像平移、圖像翻轉等,共獲取病蟲害圖像95 642 張。其中訓練數(shù)據(jù)占總數(shù)據(jù)量的60%,用于模型訓練;驗證數(shù)據(jù)占總數(shù)據(jù)量的20%,用于對模型進行修正;測試數(shù)據(jù)占總數(shù)據(jù)量的20%,用于對模型的泛化能力進行評估。由于病蟲害圖像的分辨率不同,格式不統(tǒng)一,為了方便模型訓練時圖像分類輸入,研究人員使用Java 程序設計語言自行編寫程序將病蟲害圖像統(tǒng)一轉換為224 像素×224 像素格式。
測地線活動輪廓模型(GAC)是病蟲害圖像識別的經典模型,該模型的泛函表示如下:
公式(1)中,L(C)表示馬陸葡萄病蟲害圖像閉合輪廓線長度,g表示邊緣停止函數(shù),?I表示馬陸葡萄病蟲害圖像梯度,C(s)表示馬陸葡萄病蟲害圖像閉合曲線,s表示馬陸葡萄病蟲害圖像閉合曲線弧長參數(shù)。
邊緣停止函數(shù)定義為:
公式(2)中,?Gσ*I表示馬陸葡萄病蟲害圖像平滑處理結果,p表示常數(shù),Gσ表示高斯核,其標準差為σ,*表示卷積,I表示馬陸葡萄病蟲害圖像。
利用GAC 模型進行分割時,邊緣停止函數(shù)可以指導輪廓曲線向馬陸葡萄病蟲害圖像目標邊界靠近,并最終停止在馬陸葡萄病蟲害圖像目標邊界上,GAC 可以對馬陸葡萄病蟲害圖像進行分割與識別,從而采用相應措施對馬陸葡萄病蟲害進行防控,該模型對于提升馬陸葡萄的產量和品質有一定的幫助作用。
馬陸葡萄病蟲害圖像復雜,圖像分割邊界模糊且存在凹陷現(xiàn)象,容易受到噪聲污染,GAC 對馬陸葡萄病蟲害圖像分割結果有誤差、識別不夠準確,沒有達到馬陸葡萄病蟲害防控和生產要求。為了解決馬陸葡萄病蟲害識別不準確問題,對GAC 模型進行改進,引入動態(tài)系數(shù)函數(shù)將馬陸葡萄病蟲害圖像邊界區(qū)域與非邊界區(qū)域進行精確劃分從而準確分割病蟲害圖像模糊和凹陷邊界,實現(xiàn)對馬陸葡萄病蟲害的準確識別,提出并建立了精確分割測地線活動輪廓模型(AS-GAC)。
定義動態(tài)系數(shù)函數(shù)λ(I)為:
公式(11)中,C表示馬陸葡萄病蟲害圖像的分割曲線,s表示馬陸葡萄病蟲害圖像弧的長度,Ω 表示馬陸葡萄病蟲害圖像定義區(qū)域。引入動態(tài)系數(shù)函數(shù)λ(I)后,曲線可以實現(xiàn)對待分割識別的馬陸葡萄病蟲圖像包圍,動態(tài)調整收縮或者擴張曲線,直到準確鎖定待分割識別的病蟲圖像,實現(xiàn)準確識別。
1.3.1 Core 損失函數(shù) 對于復雜背景下的馬陸葡萄病蟲害識別,圖像識別過程中無法收集到所有可能出現(xiàn)的數(shù)據(jù),針對數(shù)據(jù)量不充足問題,提出Core損失函數(shù),如公式(13)所示:
通過CSJMM,AS-GAC 的魯棒性得到加強,從而得到了CSJMM-AS-GAC。CSJMM 如公式(15)所示:
1.3.4 CSJMM-AS-GAC 實 現(xiàn) 步 驟 CSJMM-ASGAC 的實現(xiàn)步驟如圖3 所示。CSJMM-AS-GAC 首先讀取馬陸葡萄病蟲害圖像I,然后利用高斯平滑函數(shù)對馬陸葡萄病蟲害圖像進行平滑處理,接下來計算新邊緣停止函數(shù)gnew并構造能量函數(shù)EAS-GAC,模型完成求解梯度下降流函數(shù)后對水平集曲線進行演化,得到馬陸葡萄病蟲害圖像分割識別結果,判斷水平集曲線與馬陸葡萄病蟲害圖像是否重合,如果重合,則完成馬陸葡萄病蟲害圖像分割識別,將結果輸出,否則重新計算新邊緣停止函數(shù)gnew。
圖3 CSJMM-AS-GAC實現(xiàn)步驟流程Fig.3 Flow chart of CSJMM-AS-GAC implementation steps
考慮到病蟲害識別精度和識別成功率將直接影響病蟲害的防控效率,因此,對馬陸葡萄病蟲害識別模型的性能評價采用Kappa 系數(shù)法、召回率(Recall rate)等,Kappa 系數(shù)用來評價馬陸葡萄病蟲害圖像的識別精度,召回率用來評價馬陸葡萄病蟲害圖像識別成功率,如公式(23)、(24)、(25)所示:
公式中,Aˉ表示正確分類的樣本數(shù)量之和除以總樣本數(shù),rn表示第n類樣本個數(shù),fn表示第n類預測樣本個數(shù),Q表示樣本總數(shù),Vn表示識別成功的病蟲害圖像集合,Wn表示識別失敗的病蟲害圖像集合。
試驗軟硬件環(huán)境為,服務器:Red Hat Enterprise Linux 8.5 正式版構建的云服務器平臺;RAM:256 G,CPU:雙核Intel Core i7-9800X;硬盤:6×4T固態(tài)硬盤;顯卡:6×微星(MSI)GeForce GTX 1050 Ti。
將CSJMM-AS-GAC 與卷積神經網絡(CNN)、深度殘差網絡(ResNet)、支持向量機(SVM)、測地線活動輪廓模型(GAC)等4種模型在訓練集初始準確率、驗證集準確率、測試集準確率、Kappa系數(shù)、召回率5 個方面進行了比較,結果如表1 所示。CSJMMAS-GAC 訓練集初始準確率為65.46%,驗證集準確率為95.67%,測試集準確率為93.95%,相對于GAC分別提升了10.44%、9.35%、3.06%,在5 種模型中達到最優(yōu),表明對于GAC 引入動態(tài)系數(shù)函數(shù)的改進和建立Core-Softmax 聯(lián)合監(jiān)督機制的效果是顯著的;CSJMM-AS-GAC 的Kappa 系數(shù)最大,達到0.913 8,該模型對病蟲害識別精度是最佳的;CSJMM-ASGAC 的召回率為89.21%,病蟲害識別成功率最高。綜上,CSJMM-AS-GAC 可以更高效、更準確地完成馬陸葡萄病蟲害識別工作。
表1 5種模型的病蟲害識別性能比較Tab.1 Comparison of pest identification performance of five models
將5 種模型從Top1 準確率(正確標記的樣本數(shù)是最佳概率的樣本數(shù)除以總樣本數(shù))、Top5 準確率(正確標記的樣本數(shù)包含在前5 名最高分類概率個數(shù)除以總樣本數(shù))、F1分數(shù)(精度和召回率的調和平均值)、迭代次數(shù)、FPS(每秒識別病蟲害圖像張數(shù))進行數(shù)據(jù)統(tǒng)計,結果如表2 所示。CSJMM-AS-GAC的Top1、Top5 準確率分別達到79.68%、95.32%,在5種模型中均達到最大值,該模型能夠更好地提取不同類型的病蟲害特征,具有最佳的病蟲害分類識別效果;CSJMM-AS-GAC 的F1分數(shù)達到91.28,領先于其他4 種模型,該模型的綜合表現(xiàn)達到最優(yōu);CSJMM-AS-GAC 的FPS 達到67 張/s,相對于CNN、ResNet、SVM 的識別速度分別提升了45.65%、76.32%、36.73%,比GAC 的識別速度略有下降;CSJMM-AS-GAC 在迭代300 次后達到收斂狀態(tài),其他模型還沒有完全收斂,說明CSJMM-AS-GAC 的訓練速度快,魯棒性強。
表2 5種模型的病蟲害分類識別結果比較Tab.2 Comparison of pest classification and recognition results of five models
利 用CNN、ResNet、SVM、GAC、CSJMM-ASGAC 5種模型對葡萄霜霉病、葡萄大褐斑病、葡萄炭疽病3 種病害和葡萄癭蚊、旋目夜蛾、小造橋夜蛾3種蟲害進行圖像識別,結果如表3 所示。CNN、ResNet、SVM、GAC、CSJMM-AS-GAC 5 種模型對葡萄霜霉病、葡萄大褐斑病、葡萄炭疽病、葡萄癭蚊、旋目夜蛾、小造橋夜蛾的平均識別準確率分別是71.54%、69.93%、73.83%、85.45%、94.06%,CSJMMAS-GAC 的病蟲害平均識別準確率相對于CNN、ResNet、SVM、GAC 4 種模型分別提高了31.48%、34.51%、27.40%、10.08%,提升效果較為明顯,說明對于GAC 模型的改進和損失函數(shù)的創(chuàng)新效果是顯著的。
表3 不同模型識別準確率比較Tab.3 Comparison of recognition accuracy of different models %
從測試數(shù)據(jù)集中隨機抽取12 種蟲害圖像和12種病害圖像進行5種模型的識別試驗,結果如圖4和圖5 所示。其中,矩形清晰圖像表示正確識別的圖像(如圖4 中CNN 的樣本2 圖像),柔化邊緣橢圓圖像表示識別錯誤圖像(如圖4 中CNN 樣本1 圖像)。在24 個隨機樣本病蟲害識別試驗中,CNN 識別錯誤圖像為7 張,ResNet 識別錯誤圖像為8 張,SVM 識別錯誤圖像為6 張,GAC 識別錯誤圖像為4張,CSJMM-AS-GAC 識別錯誤圖像為2 張,綜合圖4 和圖5 的試驗結果,ResNet 的識別錯誤率最高,CSJMM-AS-GAC 的識別錯誤率最低,說明CSJMMAS-GAC 對于隨機病蟲害圖像識別正確率高,該模型的病蟲害識別魯棒性和泛化能力較強。
圖4 馬陸葡萄蟲害隨機樣本識別結果Fig.4 Identification results of random samples of Malu grape pests
圖5 馬陸葡萄病害隨機樣本識別結果Fig.5 Identification results of random samples of Malu grape diseases
2021 年3—9 月,在上海馬陸葡萄種植基地將模型應用于葡萄實際生產中,在種植基地劃分出面積大小相同的5 個大棚,每個大棚應用不同的病蟲害識別模型進行管理,根據(jù)病蟲害識別模型的識別結果采取相應的防控措施,如噴灑相應藥劑等。蟲害和病害的防控效果分別如表4和表5所示。
從表4 可以看出,CNN、ResNet、SVM、GAC、CSJMM-AS-GAC 5 種病蟲害識別模型對蟲害的識別準確率分別為71.48%、68.65%、72.56%、83.62%、94.54%,根據(jù)不同的識別結果采取相應的防控措施,如模型識別出葡萄二星葉蟬,則噴灑殺滅菊酯或菊酯乳油等藥劑進行防控。不同防控措施的蟲口減退率也不同,CNN、ResNet、SVM、GAC、CSJMMAS-GAC 所對應的蟲口減退率分別為76.52%、64.63%、78.24%、88.35%、95.61%,不同的病蟲害識別模型對于蟲口的減退都有一定的效果,CSJMMAS-GAC的蟲口減退效果最好。
表4 馬陸葡萄蟲害防控效果Tab.4 Control effect of Malu grape pests %
從表5 可以看出,CNN、ResNet、SVM、GAC、CSJMM-AS-GAC 對應的病葉率分別為5.36%、8.96%、4.36%、4.98%、3.36%,可見由于CSJMM-ASGAC 的病害識別準確率高,防控措施得當,發(fā)生的病葉率也最低。將病葉等級劃分為6 級,用W 表示病斑面積除以葉片面積的百分比,W=0 表示0 級,W≤10%表示1 級,10%<W≤30%表示2 級,30%<W≤50%表示3 級,50%<W≤70%表示4 級,W>70%表示5 級。ResNet 的病情指數(shù)[∑(病葉各等級葉數(shù)×等級數(shù)值)/(葉子總數(shù)×6)×100]為16.35,是5個模型中的最大值,說明馬陸葡萄病害相對嚴重,CSJMMAS-GAC 的病情指數(shù)為5.86,病害最輕微,與該模型的病蟲害識別率高有直接關系。CSJMM-AS-GAC的防控效果達到87.35%,對馬陸葡萄的病害防控幫助作用最大,效果最好。
表5 馬陸葡萄病害防控效果Tab.5 Control effect of Malu grape diseases
CNN[16-20]、ResNet[21-23]、SVM[24-27]、GAC[28-30]是目前常見的病蟲害識別模型。這些病蟲害識別模型對于普通的病蟲害圖像識別具有較好的實用性,但對于復雜背景下具模糊和凹陷邊界的馬陸葡萄病蟲害圖像識別不夠準確。本試驗為了解決馬陸葡萄病蟲害圖像精確分割問題,對GAC 進行改進,通過引入動態(tài)系數(shù)函數(shù)將馬陸葡萄病蟲害圖像邊界區(qū)域與非邊界區(qū)域進行精確劃分,從而實現(xiàn)精確分割馬陸葡萄病蟲害圖像模糊和凹陷邊界,提出并建立了AS-GAC。為了解決馬陸葡萄復雜背景下訓練樣本不足問題,提出了Core 損失函數(shù),建立了Core-Softmax 聯(lián)合監(jiān)督機制,從而建立了CSJMM-ASGAC。
在馬陸葡萄種植基地對CSJMM-AS-GAC 進行了系列試驗和生產應用。馬陸葡萄發(fā)生的病蟲害主要包括葡萄霜霉病、葡萄大褐斑病、葡萄炭疽病、葡萄癭蚊、旋目夜蛾、小造橋夜蛾等,CSJMM-ASGAC 對這些病蟲害的識別準確率分別為96.87%、91.78%、95.28%、93.21%、91.58%、95.65%,平均識別準確率達到94.06%,在5 種病蟲害識別模型中達到最優(yōu)。經過模型性能測試,CSJMM-AS-GAC 的Top1 準確率、Top5 準確率、F1分數(shù)、FPS、Kappa 系數(shù)、召回率等指標在所有模型中表現(xiàn)穩(wěn)定且效果好。在馬陸葡萄生產應用中,CSJMM-AS-GAC 的蟲害識別準確率、蟲口減退率分別達到94.54%和95.61%,說明該模型對馬陸葡萄蟲害識別準確且蟲害減退效果最佳。CSJMM-AS-GAC 的病葉率、病情指數(shù)、防控效果分別達到3.36%、5.86、87.35%,領先于其他模型,說明該模型對馬陸葡萄病害防控效果最突出。下一步的研究重點是不斷對病蟲害識別模型進行優(yōu)化處理,提升病蟲害識別準確率,加強病蟲害防控,服務農業(yè)生產。