胡玲艷 周婷 劉艷 許巍 蓋榮麗 李曉梅 裴悅琨 汪祖民













摘要: 為了實現番茄病害的精準識別,本研究提出一種輕量級網絡自適應特征提取方法。該方法首先對圖片進行正形處理,然后基于SqueezeNet模型構建輕量級網絡模型GKFENet。GKFENet模型包含全局特征提取和關鍵特征提取2個模塊,其中全局特征提取模塊逐層提取番茄病害葉片的全局特征,關鍵特征提取模塊通過學習評估出特征圖各通道的重要程度,計算出權重值,最后將該值加權到原特征圖上,從而實現病害關鍵特征的自適應提取。結果顯示,正形機制有助于神經網絡學習特征,本研究構建的GKFENet模型的平均識別準確率為97.90%,模型大小僅為2.64 MB,且在強噪聲環境下,其識別準確率仍能保持在78.00%以上。GKFENet模型在訓練過程中相對穩定,對8種番茄病害的識別準確率均超過96.00%。相比Bayes、KNN、LeNet、SqueezeNet、MobileNet模型,本研究構建的GKFENet模型的識別精度高,穩定性強且占用內存小,對于移動端未來的應用具有較高的實際價值。
關鍵詞: 輕量級網絡; 正形機制; 特征提取; 番茄; 病害識別
中圖分類號:? TP391;S641.2? ?文獻標識碼: A?? 文章編號: 1000-4440(2022)03-0696-10
Tomato disease recognition based on lightweight network auto-adaptive feature extraction
HU Ling-yan, ZHOU Ting, LIU Yan, XU Wei , GAI Rong-li, LI Xiao-mei, PEI Yue-kun, WANG Zu-min
(School of Information Engineering, Dalian University, Dalian 116622, China)
Abstract: To realize accurate recognition of tomato diseases, a lightweight network auto-adaptive feature extraction method was proposed. This method firstly performed a correction processing on the image. Then, based on the SqueezeNet model, a lightweight network model named global and key feature extraction network (GKFENet) was built. The GKFENet model included global feature extraction and key feature extraction modules. The global feature extraction module extracted the global features of tomato diseased leaves layer by layer. The key feature extraction module evaluated the importance of each channel in the feature images through learning, and calculated the weight value. Finally, the value was weighted on the original feature images to realize the adaptive extraction of the key features of the diseases. The results showed that the correction mechanism helped the neural network to learn features, the average identification accuracy of GKFENet model constructed in this research was 97.90%, and the model size was only 2.64 MB. In an environment with strong noise, the recognition accuracy of the model was still above 78.00%. GKFENet model was relatively stable during the training process, and the recognition accuracies of eight types of tomato diseases were all over 96.00%. Compared with Bayes, k-nearest neighbor (KNN), LeNet, SqueezeNet and MobileNet models, the GKFENet model constructed in this research has higher recognition accuracy, stronger stability and less memory. It has strong practical value in future mobile applications.
Key words: light weight network; correction mechanism; feature extraction; tomato; disease recognition
番茄富含維生素和礦物質,兼具特殊藥理作用,被人們廣為食用,已經被世界糧農組織列為第六大蔬菜 [1-2] 。種植過程中的病蟲害嚴重制約著番茄的產量和收益,一旦對疾病判斷有誤或者診斷不及時,將給農戶帶來巨大的經濟損失。因此,快速、精準地識別番茄病害類型,及時進行干預,有助于農戶番茄種植的提質增效。
隨著計算機技術和人工智能的快速發展,利用這些信息技術對植物病害類別進行診斷、識別,逐漸成為一種新趨勢。目前,國內外針對番茄病害識別方面的研究取得了較大進展,基于傳統的機器學習算法,通過手工提取特征和分類器進行分類 [3-4] ,可以初步滿足病害識別的要求,但復雜的特征提取工程極大地影響了工作效率,且人工提取的特征是主觀的、有限的、粗糙的。深度學習浪潮的興起,為上述問題提供了解決辦法。其中,卷積神經網絡具備強大的“自學”能力,能夠在最大程度上獲取所有與輸入、輸出相關聯的信息,避免了繁重的特征提取工作,備受研究者們青睞。Jiang等 [5] 和Rangarajan等 [6] 采用不同的深度卷積神經網絡識別番茄病害,每個模型的預測精度均在97%以上。王艷玲等 [7] 和Jia等 [8] 將遷移學習與神經網絡模型相結合,通過“固定低層,微調高層”的訓練策略,建立的模型能快速、準確識別10種番茄病害。Wu等 [9] 利用DCGN網絡模型增強數據,并分別采用AlexNet、GoogLeNet、VGG16、ResNet網絡模型對番茄葉片病害進行識別。上述研究均采用經典的深層網絡模型,隨著研究的推進,這些模型的層數逐漸增多。增加網絡模型深度可以有效提升準確率,但同時需要耗費巨大的存儲空間和運算時間。在識別番茄葉片圖像的過程中,神經網絡模型會提取整個圖片的信息,然而真正需要提取的有用特征僅存在于目標對象所在的局部區域。因此,人們從增加網絡模型深度轉而開始研究如何實現對病害關鍵特征的提取。胡志偉等 [10] 、李曉振等 [11] 以及Meeradevi等 [12] 提出將注意力機制與多種深層網絡模塊相結合的方法,利用注意力機制有效抽取番茄病害不同層次的特征信息,加強關鍵特征的表達,同時抑制無關特征的表達,最終構建的模型均有較高的準確率。這種方法通過對目標特征的精準提取,實現計算資源的合理分配,進而提升模型的識別性能,但網絡模型巨型化的問題仍未得到有效解決,因此這些模型難以應用到移動端。
隨著物聯網技術在各行各業的廣泛應用、移動設備的日趨普及,人們開始研究可以應用在移動端的病害識別算法。方晨晨等 [13] 和郭小清等 [14] 在深層網絡架構的基礎上,采用多尺度卷積核、深度可分離卷積等操作對傳統網絡模型進行改進,縮小了模型大小,實現了準確率和存儲空間的平衡,其中改進的AlexNet模型識別田間番茄病害的準確率達到89.2%。Elhassouny等 [15] 基于現有的輕量級網絡模型MobileNet構建一種應用程序,識別10種常見的番茄葉部病害。Agarwal等 [16] 搭建了1個8層的簡化卷積神經網絡(CNN)模型,在Plant Village數據庫上的測試效果均優于K最近鄰算法和深層網絡模型VGG16。上述算法在簡化模型大小方面取得了一定進展,同時保持著較高的準確率,但神經網絡模型在縮小模型以及提高準確率方面仍有很大的提升空間。此外,大多數的研究結果來源于理想的圖片和環境,未考慮模型在復雜環境下的性能,其魯棒性難以保證,也有部分研究在實際環境下對模型進行檢測,但準確率較低。因此,要想在實際生產中使用,上述研究還存在一定距離。
綜上所述,在近期識別番茄病害的研究工作中,人們考慮了準確率、模型大小以及魯棒性等特性,但沒有實現這些性能的綜合平衡。本研究擬采用正形機制對病害圖片進行處理,結合Fire模塊的優點和注意力機制 [17] 的特性構建輕量級網絡模型GKFENet,識別常見的番茄病害類別,以期實現準確率、模型大小、識別速度以及魯棒性的綜合平衡,可以更好地在實際環境中指導農業生產。
1 材料與方法
1.1 數據集
本研究模型采用的數據集來自大型公開數據庫Plant Village [18] ,該數據庫共收集了18 160 張感染病害的番茄葉片圖片。綜合考慮番茄種植過程中病害的發病率以及研究適用性等因素,從Plant Village數據庫中選取感染早疫病、晚疫病、葉霉病、花葉病、斑枯病、細菌性斑點病、葉螨病的葉片與健康葉片共8種番茄葉片作為本次研究的數據集。下面對這8種番茄葉片的紋理特征圖像以及病害特征進行描述 [19-20] 。
早疫病:感病初期葉片出現水漬狀暗褐色病斑,呈離散狀分布,擴大后近圓形,有同心輪紋,邊緣多具淺綠色或黃色暈環。嚴重時,多個病斑連成不規則形大斑,導致葉片枯萎,當環境潮濕時,病斑處還會長出黑霉。
健康:番茄葉片顏色質地均勻,為深綠色或者淺綠色,無大小病斑,無殘缺,無孔洞,無扭曲,無枯萎,無生理性卷葉,無子葉上舉等異常癥狀。
晚疫病:葉片發病初期出現暗綠色水漬狀不規則病斑,病健交界處不明顯,擴大后變為褐色,干燥時呈綠褐色,后變暗褐色直至枯萎。濕度大時葉片背面出現白色霉層,多從植株下部葉尖或葉緣開始發病,然后逐漸向上部葉片蔓延。
葉霉病:葉片染病后出現橢圓形或不規則淡黃色病斑,葉片背面長出灰褐色至黑褐色的絨狀霉層,條件適宜時,染病葉片正面也長出霉層,一般中、下部葉片先發病,然后逐漸向上部葉片蔓延,病害嚴重時病斑連片,葉片逐漸卷曲、干枯。
花葉病:葉片染病后會出現黃綠相間或濃綠與淡綠相間斑駁,亦或是顏色深淺分布不均勻的綠色病斑,葉片外形變得細長且小,葉片增厚,且略有皺縮扭曲。
斑枯病:染病后,葉片正面、背面均出現圓形或近圓形的病斑,呈現大量凸起的小黑點,病斑周圍區域泛黃,葉片邊緣的發病部位會發生微卷曲,嚴重時形成大的枯斑,病部組織壞死穿孔,導致葉片干枯脫落。
細菌性斑點病:染病后,葉片出現大量褐色病斑,呈聚集狀態,病斑周圍的過渡區呈現黃褐色,發病后期病斑枯萎,形成孔洞。
葉螨病:葉螨即紅蜘蛛,受損害的葉片部位會由于水分缺失而變為白色,葉片表面呈現大量白色病斑,葉片卷曲。
1.2 圖片的正形處理
Plant Village數據庫中每張番茄圖像只有一張葉片,每張葉片只患一種疾病,圖像背景簡單,但葉片在圖像中的位置不固定,且葉片的朝向是任意的。為了使葉片朝向統一,本研究提出了正形機制,該機制旨在將所有葉片的方向統一為葉尖朝上,葉柄朝下,使得葉片盡可能處于圖片的正中位置,保證葉片與圖片中線的偏離角度范圍為-5°~ 5°。通過正形機制對圖像進行處理,有利于卷積神經網絡提取到更多、更細致的病害特征,進而提高神經網絡模型的學習效率,增強穩定性。其工作流程如圖1所示,具體步驟為:第一,獲取病害圖片;第二,對圖片進行灰度化處理;第三,利用高斯濾波降低圖片噪聲;第四,利用多級邊緣檢測算法-Canny邊緣檢測算子 [21] 提取葉片的邊緣特征;第五,繪制最小外接多邊形,獲得圖片旋轉角度( θ );第六,利用旋轉角度( θ )對圖片進行仿射校正。
本研究選取11 250 張圖像,篩除朝向正確的圖片,剩下需要進行正形機制處理的圖像共有7 568 張,圖2為部分葉片經過正形處理后的結果。此外,數據集中各類圖像數量分布的不均衡,往往會對模型訓練產生極大影響,甚至產生過擬合的現象。為了緩解圖片數量不均衡的問題,以8種番茄葉片樣本的平均值為基準,采用隨機復制的方式對數據量較少的早疫病、葉霉病和花葉病進行數據擴充 [22] ,最終得到的圖像樣本共13 118 張,數據集具體信息如表1所示。
1.3 病害識別模型設計
1.3.1 模型的構建 本研究構建的輕量級網絡模型GKFENet的結構如圖3顯示,該模型包括全局特征提取子網絡GFE-Net和關鍵特征提取子模塊KFE-Block 2個部分,GFE-Net通過一系列卷積池化操作,對輸入圖片的顏色、紋理和形狀等全局特征進行提取,獲取圖片的整體屬性,輸出多個特征圖。KFE-Block將這些包含全局特征的特征圖進行池化壓縮,得到通道維度的信息描述符,捕獲該通道描述符之間的非線性相互作用關系,根據關鍵程度為每個特征通道分配權重,最后將該權重作用在輸入的特征圖上,從而提升關鍵特征的表達并抑制不相關特征,實現對關鍵特征的精準提取。
1.3.2 組成模塊
1.3.2.1 全局特征提取子網絡GFE-Net 原SqueezeNet [23] 網絡模型中包含8個Fire模塊,網絡層數和參數量均較多,運算時間長。綜合考慮8種番茄病害圖片數量的適合度,同時避免過擬合,將SqueezeNet中的Fire3、Fire6、Fire8和Fire9這4個模塊刪除,利用剩余的模塊構建GFE-Net子網絡。GFE-Net子網絡由4個Fire模塊、2個卷積層、3個池化層、1個全局平均池化層、1個Dropout層和1個Softmax層組成,表2為構建的GFE-Net子網絡的具體參數,其中Fire模塊重新排序命名。每個Fire模塊包括Squeeze層和Expand層,每層僅由1× 1或3× 3大小的卷積核組成,與傳統的卷積層相比,該方法將網絡模型的參數量減少了90%,其結構如圖4顯示。2個卷積層分別處在GFE-Net子網絡的前端和后端,能夠有效提取到圖像基本特征和高層語義信息。3個最大池化層能夠提取出低分辨率、強語義信息的特征圖。用全局平均池化層代替全連接層,可以有效減少網絡模型的計算復雜度和參數量,從而提高模型訓練速度。Dropout層的引入能夠有效防止過擬合。利用Softmax函數計算出每個類別的概率,輸出預測結果。
1.3.2.2 關鍵特征提取子模塊KFE-Block 本研究引入關鍵特征提取子模塊,實現與全局網絡模塊的有效結合,同時能夠對特征的重要程度進行評估,獲取權重值,強化病害關鍵特征的表達。結合注意力機制的KFE-Block包括1個全局平均池化層、2個全連接層、2個激活函數和1個矩陣乘法操作,該模塊提取關鍵特征的過程如下:
步驟1:獲取通道描述符。從GFE-Net子網絡卷積層輸出的特征圖維度為[ H , W , C ], H、W、C 表示特征圖的長、寬、通道數,將其輸入到KFE-Block中,首先經過全局平均池化層,對大小為 H ×? W 的特征圖上的所有值進行求和取平均值,每個通道的輸出值用 gc 表示,運算公式如下:
gc= 1 H×W ?Hi=1 ?Wj=1? uc(i,j) (1)
其中, H、W、C 表示特征圖的長、寬、通道數; i 、 j 表示特征圖上像素的位置索引; uc(i,j) 表示特征圖上的值; gc 為每個通道的輸出值。 C 個通道的總輸出值為 G ,則 G =[ g1 , g2 ,…, gc ]。
步驟2:降維,獲取通道間非線性關系。將前面獲得的總輸出值 G 先經過全連接層1,該層通過縮放因子 r 將通道數從 C 降低到 C/r ,減少計算量。然后再利用激活函數ReLU獲取通道之間的非線性關系。運算公式如下:
R =max(WT1× G ,0)(2)
其中,W1表示全連接層1的權重參數矩陣,維度為( C / r )× C ;T表示轉置; G 為特征圖經過全局平均池化的結果,維度為[1,1, C ]; R 為輸出值,維度為[1,1, C/r ]; C 為通道數; r 為縮放因子。
步驟3:升維,獲取關鍵值。將上一步獲得的輸出 R 經過全連接層2,此操作將通道數恢復到原始數量。然后通過Sigmoid函數進一步捕獲通道間的非線性關系后進行評估,輸出各通道的關鍵度值,其值記為 K_V ,運算公式如下:
K_V =11+exp(-WT2× R )(3)
其中,W2表示全連接層2的權重參數矩陣,維度為 C ×( C / r );T表示轉置; R 為步驟2的輸出值; K_V? 表示關鍵度值,為包含 C 個數值的標量,且[ k_v1 , k_v2 ,..., k_vc ]的數值大小代表對應通道關鍵程度的高低。
步驟4:關鍵特征提取。將獲取的關鍵值逐通道加權到先前的特征圖上,即將每個特征圖[ H , W ,1],[ H , W ,2],...,[ H , W , C ]分別與[ k_v1 , k_v2 ,..., k_vc? ]相乘,運算公式如下:
xc = k_vc×uc (4)
其中, uc 為特征圖上的值; k_vc 為 C 通道對應的關鍵度值; xc 為每個通道的輸出值。 X 為 C 個通道輸出的總特征圖,與輸入維度一致,但此時特征圖上的值都已被重新標定,即關鍵特征的特征值變得更大,無關的特征變得更小甚至被抑制,從而實現關鍵特征的提取。圖5為KFE-Block子模塊的結構。
1.4 模型訓練
1.4.1 試驗參數設置 本研究在服務器上的試驗配置環境如下:計算機操作系統Window10,搭載處理器Intel Xeon E5-2620,內存64 G,顯卡NVIDIA GTX 1080Ti,顯存11 G。采用Tensorflow2.0深度學習框架,將Python3.6作為編程語言。
將預處理后的數據集隨機劃分為訓練集、驗證集和測試集,這3部分的圖像數量比例為8∶ 1∶ 1,最終形成10 500 張訓練集圖像,1 300 張驗證集圖像,1 318 張測試集圖像。用隨機劃分后的樣本數據集對不同分類模型進行訓練,得到各模型的性能評估結果。
在番茄葉片病害識別模型的訓練過程中,輸入圖像大小設定為256× 256,選用優化速度較快的自適應矩陣估計算法(Adam)優化網絡模型,其初始學習率設置為0.000 5 ,并采用多分類對數函數作為損失函數。每組試驗反復進行10次,每次迭代100次,試驗中訓練集和驗證集的批次大小均設置為64,測試集的批次大小為128,關鍵特征提取子模塊中的縮放因子 r 設置為8。同時,為了防止過擬合,設置正則化系數為0.000 5 。
試驗選用的評價指標有3個,分別為準確率、模型大小和識別速度。準確率定義為被正確分類的病害圖像數量與總病害圖像數量之比。模型大小與參數量有關,在訓練過程中使用Summary函數記錄網絡模型的參數量。識別速度為進行單張圖片測試時所需的時間。
1.4.2 試驗方案設計 為了更全面地驗證正形機制的作用以及GKFENet模型的性能,選取Bayes、KNN、LeNet、MobileNet、SqueezeNet模型作為對比模型。其中,MobileNet模型直接從Keras官方應用網站(Keras Applications)下載,其他分類模型均在本研究搭建的試驗環境中進行代碼編寫。試驗方案設計如下:
步驟1:準備2個數據集,將包含任意朝向葉片的原始數據集標志為Data1,經過正形機制處理后的數據集標志為Data2,比較4種神經網絡模型(LeNet、MobileNet、SqueezeNet、GKFENet)在2種數據集上的準確率和魯棒性,驗證正形機制操作處理后的數據集對模型性能的影響。
步驟2:確定模型中所包含的Fire模塊數量,并對比模型加入關鍵特征提取模塊前后各性能指標的變化情況,驗證該模塊加入的必要性。
步驟3:將GKFENet模型與其他模型進行對比,從準確率、模型大小、識別速度、魯棒性以及穩定性等多個維度進行試驗,驗證所提出模型的綜合性能。
2 結果與分析
2.1 正形機制對不同模型識別性能的影響
圖6展示了不同分類模型在2種數據集上得到的試驗結果,可以看出,與Data1數據集相比,LeNet、MobileNet、SqueezeNet、GKFENet模型在Data2數據集上表現出更優的性能,且各模型的準確率均提升了1%左右。這可能是因為卷積神經網絡具備學習能力,在訓練的過程中可以根據損失函數不斷更新參數,而朝向統一的圖片能夠進一步加深網絡模型的“理解和記憶”,有助于模型快速、細致地學習到目標特征,得到更優的一組權重參數,從而使模型獲得更高的準確率。
為了進一步探究正形機制對模型魯棒性的影響,分別在Data1、Data2數據集上添加同等的高斯噪聲。圖7顯示,在2個數據集中添加高斯噪聲后,各個模型的準確率均出現不同程度的下降,每個模型在Data1數據集上的準確率下降幅度均高于在Data2數據集上的下降幅度。不難分析出,由于數據集經過正形機制處理,幾乎所有葉片都位于圖片的中心位置,而病害特征也會局限在這個區域內,因此根據這些同向的葉片,神經網絡模型將提取到更多相關的、重疊的特征,可以在一定程度上緩解噪聲環境的干擾。綜上可以得出,對數據進行正形機制處理,有助于提高模型的準確率和魯棒性。因此,后續研究均采用Data2數據集進行試驗。
2.2 GKFENet模型的綜合性能
2.2.1 Fire模塊個數對模型的影響 結合本研究所采用數據集中的圖片數量,為了防止過擬合,相應刪減了原SqueezeNet網絡模型中的Fire模塊。為了確定最佳的Fire模塊數量,分別將含有2個、4個和6個Fire模塊所對應的GKFENet模型在Data2數據集上進行試驗。表3顯示,3種模型識別單張圖片所用的時間差距極其微小,說明三者檢測速度相當。當模型中的Fire模塊個數為2時,此時占用內存最少,準確率也最低。與Fire模塊個數為2時的模型相比,Fire模塊個數為4時,模型大小僅增加0.40 MB,同時準確率增加2個百分點以上。與Fire模塊個數為4時的模型相比,Fire模塊個數為6時,模型準確率幾乎沒有增大,但模型大小卻增加了0.48 MB。通過上述結果不難分析出,Fire模塊個數過多不僅沒有明顯提升準確率,還可能增加存儲負擔;若數量過少,雖占用內存較少,但不利于對特征進行完全、細致的提取,從而使得準確率較低。因此,為了保證設計的模型在準確率、占用內存方面均具備較好的表現,最終在模型中保留4個Fire模塊,此時GKFENet模型的綜合性能更佳。
2.2.2 關鍵特征提取模塊對模型的影響 為了驗證關鍵特征提取模塊對網絡模型性能的影響,在Data2數據集上對GKFENet模型和去掉KFE-Block模塊的GKFENet模型進行訓練,將后者命名為模型Ⅰ。結果(表4)表明,與GKFENet模型相比,模型Ⅰ準確率略高,模型略小,識別速度略快,但二者均處于同一數量級,差別甚微,因此都能滿足小型化、快速、精準識別的要求。然而,當在Data2的測試集中添加不同級別的高斯噪聲時,模型Ⅰ的準確率驟降,且下降的幅度分別高達21.76個百分點、32.68個百分點,幾乎很難精準地識別病害,而GKFENet模型的準確率降低幅度均不超過20.00%,仍能保持78.00%以上的識別準確率。這是因為模型中包含的關鍵特征提取模塊能夠抓住主要的、關鍵的特征,忽略其他不重要的特征或者干擾源,從而具有較好的魯棒性。在評估模型性能時,準確率、模型大小固然重要,但魯棒性同樣必不可少,否則模型僅僅是在實驗室中的識別效果好,一旦應用到復雜的實際農業環境中,性能將大打折扣,無法滿足現實需求。因此,從準確率、模型大小和魯棒性3個維度綜合考慮,在本研究提出的GKFENet模型中加入KFE-Block模塊是很有必要的。
2.2.3 模型的準確率和模型大小 本研究基于數據集Data2,比較3種分類模型對番茄8種病害圖像識別的準確率、模型大小和識別單張圖片所用時間。表5顯示,GKFENet模型的準確率為97.90%,遠遠高于傳統分類算法模型Bayes和KNN;與經典神經網絡模型LeNet相比,雖然單張圖片識別耗時略久,但在準確率和模型大小2個方面表現較好。GKFENet模型與2種常見的輕量級網絡模型MobileNet、SqueezeNet相比,單張圖片識別耗時相當,但GKFENet模型僅占2.64 MB,內存需求更小,且準確率更高,識別性能更好。在番茄識別的實際應用中,準確率和模型大小是更為重要的性能指標,因此,綜合考慮模型的性能和可移植性,GKFENet網絡模型具有一定的應用優勢。
2.2.4 模型的穩定性和魯棒性 本研究分析了LeNet、MobileNet、SqueezeNet、GKFENet這4種神經網絡模型在100輪迭代過程中的準確率、損失函數變化情況,其中LeNet模型只迭代了50輪,因為50輪以后出現驗證集準確率上升,而損失值不降反增的現象,模型發生過擬合。圖8顯示,MobileNet模型和SqueezeNet模型在訓練初期,均能快速達到較高的準確率,但在迭代過程中發生明顯抖動,且抖動持續時間較長,模型穩定性較低。LeNet模型雖然上升比較平穩,但準確率明顯低于其他3種模型。對于GKFENet模型,雖然初始迭代時準確率上升相對緩慢,也有幾次抖動,但隨著迭代次數的增加,模型準確率呈平穩上升趨勢,在整個后期訓練中只有微小的浮動,且最終的準確率高于其他3種模型,損失值最小,因此GKFENet模型具有較好的穩定性。
圖9顯示,隨著高斯噪聲等級的增加,各個模型的準確率都有所降低,除GKFENet模型外,LeNet模型、MobileNet模型、SqueezeNet模型的準確率均出現大幅驟降,當噪聲等級增加到0.01時,這3個模型的準確率均低于61.00%,此時這些模型無法正常完成病害識別任務。而對于GKFENet模型,在同樣的強噪聲干擾下,準確率仍能達到78.61%,可以準確識別出番茄病害數據集約3/4的圖片。說明,GKFENet模型在噪聲干擾的環境中,仍然具備良好的識別性能,準確率雖有降低但在可接受范圍內,具有較好的魯棒性。
分析GKFENet模型在數據集Data2測試集上的混淆矩陣,圖10橫向數據表示標簽值,縱向數據表示預測值,對角線上的深色區域內數據表示預測正確的個數。0~ 7分別表示番茄早疫病、健康、晚疫病、葉霉病、花葉病、斑枯病、細菌性斑點病、葉螨病,對應的預測準確率分別為96.58%、99.34%、99.45%、98.65%、99.34%、99.44%、98.98%、99.38%。本研究構建模型對早疫病的識別能力稍弱,對其他7類病害的識別準確率均在98.00%以上。這是因為早疫病圖片本身數量少,并且圖片中展現的病害嚴重程度不同,不利于網絡學習,所以準確率略低。
3 結 論
為了滿足精準農業的發展需求 [24-26] ,本研究基于番茄病害的現有研究成果,提出一種自適應特征提取的番茄病害識別方法。根據2種數據集以及GKFENet、Bayes、KNN、LeNet、SqueezeNet、MobileNet這6個模型設計對比試驗,分析試驗結果,得出以下結論:
第一,經過正形處理后,4種網絡模型的準確率提高1%左右,且魯棒性增強,說明正形機制與神經網絡的學習能力相配合,能起到正向增強作用。
第二,GKFENet將全局特征提取和關鍵特征提取2個模塊有效結合,在獲取基礎語義信息的基礎上進一步篩選出重要的特征,并弱化不相關的特征。這種自適應提取病害特征的方式能夠更精準地提取到關鍵特征,實現了對8種番茄葉片病害的精確識別,與現有的一些識別方法相比,該方法具有明顯優勢。
在前期工作的基礎上,結合精準農業的發展藍圖以及現有的技術背景,本研究構建的模型在計算復雜度和參數量方面還可進一步優化、提升,使其能夠在移動端上快速精準地識別出病害類別,從而實現病害的早期評估和預警,減少作物損失。
參考文獻:
[1] TM P, PRANATHI A, SAIASHRITHA K, et al. Tomato leaf disease detection using convolutional neural networks: 2018 International conference on contemporary computing (IC3) [C]. Piscataway: IEEE Press, 2018.
[2] MIM T, SHEIKH M H, SHAMPA R A, et al. Leaves diseases detection of tomato using image processing: 2019 International conference on system modeling and advancement in research trends (SMART) [C]. Piscataway: IEEE Press, 2019.
[3] MOKHTAR U, ALI M A S, HASSANIEN A E, et al. Identifying two of tomatoes leaf viruses using support vector machine[M]. New Delhi: Springer Press, 2015:771-782.
[4] 柴 洋,王向東. 基于圖像處理的溫室大棚中番茄的病害識別[J]. 自動化技術與應用, 2013, 32(9): 83-89.
[5] JIANG D, LI F, YANG Y, et al. A tomato leaf diseases classification method based on deep learning: 2020 Chinese control and decision conference (CCDC) [C].? Piscataway: IEEE Press, 2020.
[6] RANGARAJAN A K, PURUSHOTHAMAN R, RAMESH A. Tomato crop disease classification using pre-trained deep learning algorithm[J]. Procedia Computer Science, 2018, 133: 1040-1047.
[7] 王艷玲,張宏立,劉慶飛,等. 基于遷移學習的番茄葉片病害圖像分類[J]. 中國農業大學學報, 2019, 24(6): 124-130.
[8] JIA S, JIA P, HU S, et al. Automatic detection of tomato diseases and pests based on leaf images: 2017 Chinese automation congress (CAC) [C].? Piscataway: IEEE Press, 2017.
[9] WU Q, CHEN Y, MENG J. DCGAN based data augmentation for tomato leaf disease identification[J]. IEEE Access, 2020,8: 98716-98728.
[10] 胡志偉,楊 華,黃濟民,等. 基于注意力殘差機制的細粒度番茄病害識別[J]. 華南農業大學學報, 2019, 40(6): 124-132.
[11] 李曉振,徐 巖,吳作宏,等. 基于注意力神經網絡的番茄葉部病害識別系統[J]. 江蘇農業學報, 2020, 36(3): 561-568.
[12] MEERADEVI A K, RANJANA V, MUNDADA M R, et al. Design and development of efficient techniques for leaf disease detection using deep convolutional neural networks: 2020 IEEE international conference on distributed computing vlsi electrical circuits and robotics (DISCOVER) [C].? Piscataway: IEEE Press, 2020.
[13] 方晨晨,石繁槐. 基于改進深度殘差網絡的番茄病害圖像識別[J]. 計算機應用, 2020, 40(增刊1): 203-208.
[14] 郭小清,范濤杰,舒 欣. 基于改進Multi-Scale AlexNet的番茄葉部病害圖像識別[J]. 農業工程學報, 2019, 35(13): 162-169.
[15] ELHASSOUNY A, SMARANDACHE F. Smart mobile application to recognize tomato leaf diseases using convolutional neural networks: 2019 International conference of computer science and renewable energies (ICCSRE) [C]. Piscataway: IEEE Press, 2019.
[16] AGARWAL M, GUPTA S K, BISWAS K K. Development of efficient CNN model for tomato crop disease identification [J]. Sustainable Computing: Informatics and Systems, 2020, 28(1):100407.
[17] HU J, SHEN L, SUN G, et al. Squeeze-and-excitation networks: IEEE conference on computer vision and pattern recognition[C]. Piscataway: IEEE Press, 2017.
[18] HUGHES D P, SALATHE M. An open access repository of images on plant health to enable the development of mobile disease diagnostics[EB/OL]. (2016-04-04)[2021-09-20]. https://arxiv.53yu.com/ftp/arxiv/papers/1511/1511.08060.
[19] 劉子記,杜公福,牛 玉,等. 番茄主要病害的發生與防治技術[J]. 長江蔬菜, 2019(19): 59-62.
[20] 劉鵬鵬. 基于深度學習的番茄葉面型病蟲害識別研究[D]. 南昌:南昌大學, 2020.
[21] CANNY J. A computational approach to edge detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1986, 8(6): 679-698.
[22] 宋余慶,謝 熹,劉 哲,等. 基于多層EESP深度學習模型的農作物病蟲害識別方法[J]. 農業機械學報, 2020, 51(8): 196-202.
[23] IANDOLA F N, HAN S, MOSKEWICZ M W, et al. SqueezeNet:Alexnet-level accuracy with 50× fewer parameters and <0.5 MB model size[EB/OL]. (2016-11-04)[2021-09-20].https://arxiv.org/abs/1602.07360v4.
[24] 宋永嘉,劉 賓,魏暄云,等. 大數據時代無線傳感技術在精準農業中的應用進展[J].江蘇農業科學,2021,49(8):31-37.
[25] 李仁路,萬書勤,康躍虎,等. 基于微灌工程設計成果數據的農田電子地圖構建方法[J].排灌機械工程學報,2020,38(9):939-944.
[26] 林 娜,陳 宏,趙 健,等. 輕小型無人機遙感在精準農業中的應用及展望[J].江蘇農業科學,2020,48(20):43-48.
(責任編輯:王 妮)
收稿日期:2021-09-20
基金項目:國家自然科學基金青年基金項目(61601076);大連市科技創新基金項目(2020JJ26SN058)
作者簡介:胡玲艷(1978-),女,河北滄州人,博士,副教授,主要從事智慧農業、作物動態生長監測研究。(E-mail)hulingyan@dlu.edu.cn
通訊作者:汪祖民,(E-mail)wangzumin@dlu.edu.cn