劉小紅
(湖南信息學院軟件工程系,長沙 410151)
農(nóng)作物由于易遭受病害的侵擾,其產(chǎn)品質(zhì)量和產(chǎn)量受到很大的影響,為控制病害的擴散、減少經(jīng)濟損失和提高產(chǎn)品質(zhì)量,及時準確地識別病害具有重要意義[1]。隨著物聯(lián)網(wǎng)、人工智能等信息技術(shù)的快速發(fā)展,基于AI 圖像處理技術(shù)因具有操作簡便、處理快、成本低等優(yōu)點,已逐漸成為農(nóng)作物病害圖像處理的主流技術(shù)。
深度學習技術(shù)使用學習程序從原始數(shù)據(jù)中自動學習特征,具有突破人工局限的特點。近幾年來,作為深度學習核心的各種卷積神經(jīng)網(wǎng)絡被陸續(xù)提出,并逐漸引入到植物病害檢測與識別中[2]。利用卷積神經(jīng)網(wǎng)絡(CNN)的深度學習技術(shù)對病害識別進行了大量探索研究,如孟亮[3]采用一種輕量級CNN 農(nóng)作物病害圖像識別模型對辣椒、番茄和馬鈴薯的病害圖像進行識別,模型在訓練集上的總識別準確率為99.33%;賈鶴鳴等[4]在卷積神經(jīng)網(wǎng)絡中引入深度可分離卷積(DSC)和全局平均池化(GAP)方法,對植物葉片進行病害識別,病害識別精度達99.42%;廖經(jīng)緯等[5]在使用Ostu 算法與基于Sobel 算子將植物葉片的前景與背景有效分離后采用卷積神經(jīng)網(wǎng)絡對植物病害進行識別,識別率達到98.44%。雖然基于卷積神經(jīng)網(wǎng)絡(CNN)的深度學習技術(shù)在農(nóng)作物病害識別方面已取得一定研究成果,但由于受提取算法、環(huán)境條件和樣本數(shù)量等因素的限制,識別效果很難滿足應用需求。
本研究以黃瓜四種病害(白粉病、斑點病、炭疽病、霜霉病)圖像作為研究對象,從病害識別需求出發(fā),采用AI 圖像處理技術(shù)結(jié)合卷積神經(jīng)網(wǎng)絡模型對病害圖像進行病害識別,并應用在PC 端的病害識別系統(tǒng)上,為農(nóng)作物病害識別的精準性提供支持。
利用高分辨率的相機采集黃瓜四種病斑(白粉病、斑點病、炭疽病、霜霉?。﹫D像作為樣本,病斑圖像各100 張(總共400 張)作為樣本數(shù),要求圖像清晰,病斑區(qū)域和綠色區(qū)域的光照保持一致性,黃瓜病斑圖像樣本如圖1所示。
圖1 黃瓜病斑圖像樣本
2.1.1 圖像預處理過程
對病害圖像先進行適當裁剪,去除多余部分,保留清晰的病斑區(qū)域;接著將原圖RGB 空間轉(zhuǎn)成灰度化的目標圖;最后利用最大類間方差法(即OTSU 算法)將灰化圖像進行分割,實現(xiàn)病斑區(qū)域的提取。將裁剪后的原圖轉(zhuǎn)換為灰度圖像,采用轉(zhuǎn)換公式:Gray=0.299*R+0.587*G+0.114*B,其中R,G,B 分別為原圖的紅綠藍分量,轉(zhuǎn)換后得到灰度圖,保留清晰的病斑特征,方便后期的病斑分割[6]。OTSU 算法是將灰度化圖像歸一化處理后,利用閾值將圖像分成背景和前景兩部分,循環(huán)計算背景和前景之間的類內(nèi)方差,求取類內(nèi)方差為極大值時對應的閾值即為最佳分割閾值[6]。
2.1.2 OTSU閾值分割過程
(1)計算灰度化病害圖像的歸一化直方圖,得到圖像灰度級1~M,總像素數(shù)為N,則第i級灰度出現(xiàn)的概率為:Pi=
(2)計算圖像灰度均值:μ=·Pi
(3)計算直方圖的零階w[K]和一階矩陣u[K]:w0=w[k]=,μ[k]=·Pi,對一級
矩作以下處理:w1=1-w[k];μ0=μ[k]/w[k];μ1=[μ-μ[k] ]/[1-w[k]]
(4)利用公式σ2[k]=w0(μ-μ0)2+w1(μ-μ1)2找到最大的類間方差,對應此方差最大的灰度值即為要找的閾值,k從1~M變化。
(5)利用計算得到的閾值進行圖像分割。圖像預處理后的效果如圖2所示。
圖2 圖像預處理效果圖
病害圖像在識別前先進行圖像預處理,特別是利用OTSU 算法將病害圖像的綠色區(qū)域分割后只保留病斑區(qū)域,大大降低圖像大小,利于后期的深度學習訓練。本文根據(jù)黃瓜病害圖像的特點,采用基于CNN 深度學習網(wǎng)絡結(jié)構(gòu)-LeNet,構(gòu)建具有多層的CNN 網(wǎng)絡識別模型,實現(xiàn)對黃瓜病害準確、快速識別。
2.2.1 模型結(jié)構(gòu)
本文對LeNet網(wǎng)絡模型加以改進,包含有輸入層、卷積層、池化層、全連接層和輸出層[7]。病害識別模型網(wǎng)絡如圖3所示。
圖3 CNN黃瓜病害識別模型網(wǎng)絡結(jié)構(gòu)圖
另外,在前兩層卷積中,加入歸一化層,為防止圖像在網(wǎng)絡訓練時數(shù)據(jù)參數(shù)的不穩(wěn)定及提高模型特征提取性能,將輸入的圖像數(shù)據(jù)歸一化到[-1,1]之間,并加快模型收斂速度進行處理,以提高模型的魯棒性和泛化能力。
2.2.2 模型訓練
模型訓練過程具體如下:首先,建立數(shù)據(jù)集。采集相關(guān)黃瓜病害圖像,進行圖像處理后,錄入對應數(shù)據(jù)庫并作為模型訓練數(shù)據(jù);其次,參照模型網(wǎng)絡結(jié)構(gòu),設(shè)定網(wǎng)絡模型參數(shù),對訓練數(shù)據(jù)進行訓練。具體參數(shù)設(shè)定如表1所示。
表1 模型結(jié)構(gòu)參數(shù)設(shè)置
對照相同條件下的訓練效果,選擇最優(yōu)輸出效果的模型并保存,執(zhí)行器接收傳入的程序。在反復迭代的訓練過程中,不斷優(yōu)化網(wǎng)絡模型中算法、函數(shù)等參數(shù),得到最小收斂值作為最終輸出[8]。
2.2.3 模型測試
對訓練后的模型進行測試,同樣需要對圖像進行預處理操作,再選擇對應的模型進行識別[1]。識別過程中對訓練圖片進行增強處理,加權(quán)求均值即為預測值。
病害識別系統(tǒng)采用B/S 架構(gòu)模式及SSM 框架技術(shù),結(jié)合MySQL 數(shù)據(jù)庫,運用Java 語言開發(fā)實現(xiàn)。①系統(tǒng)架構(gòu)包括應用支持模型層、數(shù)據(jù)層、使用層。應用支持層主要提供AI 深度學習模型及AI 算法庫、中間件、服務件等;數(shù)據(jù)層主要用于存儲病害圖像數(shù)據(jù)、病害知識庫、病害特征數(shù)據(jù)、病害防治數(shù)據(jù)等;使用層主要包括病害診斷、病害查詢及防治措施等服務。②功能結(jié)構(gòu)主要包括病害診斷、查詢、系統(tǒng)管理等,其中病害診斷包括圖像上傳、圖像預處理、AI 模型圖像識別,功能結(jié)構(gòu)如圖4 所示。③業(yè)務流程設(shè)計具體為:用戶登錄系統(tǒng)后進入主界面,選擇采集的病害圖像,調(diào)用圖像預處理的各項操作后,接著選擇算法模型對圖像進行識別,最后返回識別結(jié)果;還可直接查詢病害信息、發(fā)病規(guī)律、防治措施等。
圖4 黃瓜病害識別系統(tǒng)功能圖
本研究的網(wǎng)絡結(jié)構(gòu)中算法設(shè)置使用Adam 算法和SGD 算法。SGD 算法在訓練過程中保持學習率不變。而Adam 算法通過計算梯度的一階矩估計和二階矩估計來設(shè)計不同參數(shù)的獨立自適應學習率[8]。在保持網(wǎng)絡結(jié)構(gòu)層數(shù)不變及正則項系數(shù)和初始化學習率均為0.001 等相同條件下,對兩種算法進行實驗,實驗數(shù)據(jù)顯示:當?shù)螖?shù)在1500 次時,設(shè)置Adam 算法后病害識別率為40.34%;設(shè)置SGD 算法后病害識別率為40.26%;當?shù)螖?shù)在4500 次時,設(shè)置Adam算法后病害識別率為90.84%;設(shè)置SGD算法后病害識別率為81.67%。結(jié)果表明,隨著迭代次數(shù)的增加,使用Adam 算法模型的準確率比SGD算法更高。
為驗證基于AI 的CNN 網(wǎng)絡模型的可行性,將其與傳統(tǒng)的CNN 模型進行對比實驗,分別對黃瓜四種病害(白粉病、斑點病、炭疽病、霜霉病)圖像進行識別。選擇識別率、識別時間、損失率三個指標對模型性能進行評估[8]。實驗數(shù)據(jù)如下:傳統(tǒng)CNN 模型的平均識別率為45.68%,平均識別時間為7.8s,損失率為30.32%;基于AI 圖像處理的CNN 網(wǎng)絡模型平均識別率為95.66%,平均識別時間為5.7s,損失率為16.99%。結(jié)果表明,基于AI的CNN 網(wǎng)絡模型的黃瓜病害識別率最高,識別時間最短,識別效果最好。
本文在基于AI 圖像處理技術(shù)的CNN 網(wǎng)絡模型基礎(chǔ)上,構(gòu)建病害識別模型并應用到開發(fā)的病害識別系統(tǒng)上,對黃瓜的四種病害圖像進行識別。實驗數(shù)據(jù)表明,模型結(jié)構(gòu)中采用Adam 算法和SGD 算法,在相同條件下前者對病害圖像的識別率更高些。采用基于AI 的CNN 網(wǎng)絡模型與傳統(tǒng)的CNN 模型相比,前者對病害圖像識別具有更好的識別性能。本文只研究和分析了四種常見的黃瓜病害,具有局限性,后續(xù)為了進一步推廣模型,將收集更多的病害圖像,調(diào)整和優(yōu)化模型。