張善文,王 振,王祖良
(西京學(xué)院信息工程學(xué)院,西安 710123)
作物病害葉片圖像分割是病害檢測(cè)和病害類型識(shí)別方法中的一個(gè)重要步驟,其分割效果直接影響到后續(xù)的檢測(cè)和識(shí)別結(jié)果。由于作物病害葉片圖像的形狀和顏色復(fù)雜、多樣、無(wú)規(guī)律且多變,使得病害葉片圖像分割方法研究一直是一項(xiàng)重要且具有挑戰(zhàn)性的研究方向[1-3],涌現(xiàn)出很多基于圖像處理和模式識(shí)別的多種農(nóng)作物病害葉片圖像分割方法[4-6]。傳統(tǒng)的方法是采用單一閾值,對(duì)在簡(jiǎn)單背景下的病害葉片圖像進(jìn)行分割,取得了較高的分割效果,但由于大田病害葉片圖像的背景比較復(fù)雜,而且葉片圖像顏色成分豐富,包含大量噪聲和一些不確定像素,不能采用單一的閾值對(duì)圖像進(jìn)行分割[7-8]。為了提高水稻葉病圖像的分割效果,Liu[9]采用最優(yōu)迭代閾值法、OTSU 法和模糊 C-均值聚類算法對(duì)不同情況下采集的水稻葉病圖像進(jìn)行自適應(yīng)分割。對(duì)比分析表明,3 種方法均能有效地從病害葉片圖像中分割出病斑,而模糊 C-均值聚類算法的效果最好,但迭代次數(shù)過(guò)多,花費(fèi)的時(shí)間最多;OTSU 法的效果較差,最優(yōu)迭代閾值法效果最差。Barbedo 等[10]針對(duì)多種環(huán)境條件下的作物病害葉片圖像分割問(wèn)題,對(duì)病變的定界、光照、葉脈干擾、葉片強(qiáng)度等問(wèn)題進(jìn)行了深入的探討。Ma 等[11]提出了一種利用綜合顏色特征(Comprehensive Color Feature,CCF)進(jìn)行蔬菜病害葉斑分割的方法,實(shí)現(xiàn)對(duì)病害葉片的病斑和雜波背景的強(qiáng)識(shí)別。Wang 等[12]提出了一種基于 K-均值聚類的作物病害圖像自適應(yīng)分割方法。該方法能夠自適應(yīng)地學(xué)習(xí)初始聚類中心,以歐氏距離的平方為相似距離對(duì)兩個(gè)聚類進(jìn)行迭代顏色聚類,最后兩個(gè)聚類之間的距離為聚類準(zhǔn)則函數(shù)對(duì)聚類結(jié)果進(jìn)行校正。Swathi 等[13]提出了一種基于人工神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)的水稻病害識(shí)別方法。該方法首先進(jìn)行圖像采集,將RGB 圖像轉(zhuǎn)換為HSI圖像,利用形態(tài)學(xué)處理去除噪聲,然后提取病斑圖像的均值、標(biāo)準(zhǔn)差等特征,最后利用神經(jīng)網(wǎng)絡(luò)方法和支持向量機(jī)進(jìn)行病害分類。Zhang 等[14]提出了一種帶有主動(dòng)梯度和局部信息的病害葉片圖像自動(dòng)分割模型。該模型對(duì)光照不均勻、病斑模糊、病害葉片粘連、陰影、背景復(fù)雜、病害葉片邊緣不清晰、交錯(cuò)等7 種棉花病害葉片圖像具有較高的分割精度和較短的運(yùn)行時(shí)間。該模型不僅可以對(duì)自然條件下的棉花葉片進(jìn)行圖像分割,還可以為棉花病害的準(zhǔn)確識(shí)別和診斷提供技術(shù)支持。Shieh 等[15]提出了一種基于三維直方圖重構(gòu) Otsu 算法的黃瓜炭疽病害葉片圖像分割方法,其特點(diǎn)是通過(guò)高斯擬合迭代得到最優(yōu)閾值。
在真實(shí)農(nóng)田條件下采集的病害葉片圖像不可避免地存在光照不均勻和背景復(fù)雜等問(wèn)題,而且作物病害葉片圖像采集不可避免地受到復(fù)雜背景、天氣變化、拍攝角度等諸多因素的影響,特別是病害葉片及其相應(yīng)的病變往往是復(fù)雜的、不規(guī)則的和隨時(shí)間變化的,因此以上方法基于人工設(shè)計(jì)的特征提取和閾值求解的病害葉片圖像分割方法的分割精度和泛化能力不能滿足大田作物病害檢測(cè)和識(shí)別需要。如何在自然環(huán)境中有效地對(duì)農(nóng)作物葉片進(jìn)行圖像分割是亟待解決的問(wèn)題。
目前,深度學(xué)習(xí)在領(lǐng)域圖像和自然圖像分割方面取得了重大進(jìn)展。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNNs)是一種比較強(qiáng)大的深度神經(jīng)網(wǎng)絡(luò),在作物病害圖像分割、檢測(cè)和識(shí)別中取得了成功應(yīng)用,取得了顯著效果[16]。Shervin 等[17]討論了至 2019 年出現(xiàn)的 100 多種基于深度學(xué)習(xí)的分割方法,包括數(shù)據(jù)預(yù)處理、網(wǎng)絡(luò)架構(gòu)的選擇、損失功能、培訓(xùn)策略以及其關(guān)鍵貢獻(xiàn),并討論了基于深度學(xué)習(xí)的圖像分割模型的幾個(gè)挑戰(zhàn)和未來(lái)可能的方向。針對(duì)大田作物病害葉片圖像分割容易受到不同光照和復(fù)雜背景影響的問(wèn)題,劉永波等[18]提出了一種在自然環(huán)境條件下基于深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNNs)的玉米病害識(shí)別方法。Muhammad 等[19]提出了一種基于相關(guān)系數(shù)和DCNNs 的水果病害自動(dòng)分割識(shí)別系統(tǒng)。在DCNNs 中,利用兩個(gè)預(yù)先訓(xùn)練的VGG16 和AlexNet 模型對(duì)選定的病害進(jìn)行特征學(xué)習(xí)和病害類型識(shí)別。Lin 等[20]提出了一種基于CNNs 的語(yǔ)義分割模型,對(duì)黃瓜葉片圖像進(jìn)行像素級(jí)別的炭疽病分割,并在 20 個(gè)測(cè)試樣本上取得了平均像素分割精度為96.08%。SegNet 是一種解決圖像語(yǔ)義分割問(wèn)題的 CNNs模型[21]。全卷積網(wǎng)絡(luò)(Fully Convolutional Networks,F(xiàn)CNs)將原始 CNNs 中包含的全連接層替換為卷積層,克服了CNNs 在圖像分割中的缺點(diǎn)。SegNet 與FCNs 的思路比較相似,區(qū)別在于上采樣和下采樣的技術(shù)不同,SegNet 通過(guò)最大池化索引可以優(yōu)化邊界輪廓,減少網(wǎng)絡(luò)模型參數(shù)數(shù)量,并完成端到端的模型訓(xùn)練。U-Net 是另一種CNNs 模型,其網(wǎng)絡(luò)結(jié)構(gòu)與SegNet 相似,主要包括收縮網(wǎng)絡(luò)和擴(kuò)展網(wǎng)絡(luò)2 個(gè)部分組成[22]。U-Net 采用收縮和擴(kuò)展的結(jié)構(gòu),通過(guò)跳躍連接提取多尺度信息,并在卷積層捕獲粗糙和細(xì)膩圖像特征信息。與U-Net 相比,SegNet 不能有效地捕獲多尺度信息,而U-Net 的學(xué)習(xí)參數(shù)很多,所以訓(xùn)練相對(duì)較慢。
本研究針對(duì)病害葉片圖像分割問(wèn)題,結(jié)合SegNet 和U-Net 的優(yōu)點(diǎn),提出一種新的多尺度融合卷積神經(jīng)網(wǎng)絡(luò)(Multi-Scale Fusion Convolutional Neural Networks,MSF-CNNs),并應(yīng)用于黃瓜病害葉片分割,通過(guò)大量病害葉片圖像分割試驗(yàn)進(jìn)行驗(yàn)證。該方法為進(jìn)一步的黃瓜病害檢測(cè)和識(shí)別方法研究提供了參考。
本研究以復(fù)雜背景下的黃瓜病害葉片圖像作為研究對(duì)象進(jìn)行分割試驗(yàn),并對(duì)不同算法的分割結(jié)果進(jìn)行分析比較。圖像采集地點(diǎn)位于陜西省寶雞市農(nóng)業(yè)科學(xué)院大田作物試驗(yàn)基地(33°35N,106°18E)。采集時(shí)間為 2018年6—12 月,采集設(shè)備為HIKVSION 攝像機(jī),最大分辨率 1 960×1 080 像素,USB 4.0 接口,傳輸速率為 38 幀/s。采集時(shí)相機(jī)位于地面100 cm,使用環(huán)繞方式采集視頻圖像,平均氣溫為21 ℃。為了測(cè)試算法的魯棒性,采集時(shí)的環(huán)境包括陰天、晴天和降雨等不同的天氣狀態(tài)。采集的圖像包括常見(jiàn)的黃瓜靶斑病、黃瓜褐斑病、黃瓜黑腐病和黃瓜炭疽病等,所采集的圖像共包括 760 幅。初始采集到的圖像分辨率1 960×1 080 像素,為了提高模型的訓(xùn)練效率,利用Photoshop 將圖像統(tǒng)一壓縮為256×256 像素。構(gòu)建的作物病害葉片圖像數(shù)據(jù)集均為真實(shí)的大田環(huán)境中采集,圖像中包括葉片、雜草和土壤等多類背景干擾信息,部分圖像如圖1 所示。
圖1 不同環(huán)境下黃瓜病害葉片圖像Fig.1 Cucumber disease leaf images in different environments
從采集的760 幅病害葉片圖像種選取680 幅圖像進(jìn)行標(biāo)注,在標(biāo)注后的圖像中選取450 幅作為訓(xùn)練集圖像,120幅病害葉片圖像作為驗(yàn)證集,其余的110 幅未標(biāo)注圖像作為測(cè)試集。在模型訓(xùn)練的過(guò)程中,訓(xùn)練集用于模型的權(quán)重參數(shù)的學(xué)習(xí);通過(guò)驗(yàn)證集優(yōu)化網(wǎng)絡(luò)模型結(jié)構(gòu),同時(shí)減少模型的復(fù)雜度;測(cè)試集圖像對(duì)所提出的方法進(jìn)行驗(yàn)證。
多尺度融合卷積神經(jīng)網(wǎng)絡(luò)(Multi-Scale Fusion Convolutional Neural Networks,MSF-CNNs)是針對(duì)現(xiàn)有的復(fù)雜病害葉片圖像分割任務(wù)提出的。MSF-CNNs 模型結(jié)構(gòu)與 U-Net 和 SegNet 網(wǎng)絡(luò)模型相似,主要包括編碼網(wǎng)絡(luò)(encoder networks)和解碼網(wǎng)絡(luò)(decoder networks)2 個(gè)部分,但是為了提取輸入圖像的多尺度信息,在編碼網(wǎng)絡(luò)中引入了多級(jí)并聯(lián)結(jié)構(gòu),解碼網(wǎng)絡(luò)中則引入了多尺度連接的形式。具體的編碼網(wǎng)絡(luò)中使用多列并行的卷積神經(jīng)網(wǎng)絡(luò)形式,能夠提取作物病害葉片圖像的多尺度特征。解碼網(wǎng)絡(luò)中通過(guò)引入九點(diǎn)雙三次插值算法作為反卷積的插值方式,恢復(fù)圖像的尺寸和分辨率。在整體網(wǎng)絡(luò)模型的結(jié)構(gòu)中,使用跳躍連接來(lái)傳遞不同卷積層中所提取的特征信息,同時(shí)引入批歸一化(Batch Normalization,BN)操作來(lái)緩解模型的梯度彌散現(xiàn)象。MSF-CNNs 模型的結(jié)構(gòu)如圖2 所示。
MSF-CNNs 模型的每組子卷積神經(jīng)網(wǎng)絡(luò)共包括12 個(gè)卷積層(Conv)、1 個(gè)反卷積層(Deconv)、4 個(gè)最大池化層(max-pooling)以及2 個(gè)多尺度連接層(multi-scale connection)。除了最大池化層4 以外,其他最大池化層的池化區(qū)域大小都定義為2×2 且步長(zhǎng)(stride,S)為2;為了能將Conv4 和Conv5 輸出的特征圖進(jìn)行多尺度連接,設(shè)定 MP_4 的池化區(qū)域大小為 3×3 及步長(zhǎng)為 1;Deconv表示反卷積層,其參數(shù)形式和卷積層相似,MSF-CNNs中使用一個(gè)反卷積層將Conv4 和Conv5 進(jìn)行多尺度連接后的特征圖上采樣到輸入圖像分辨率的1/4,因此能夠進(jìn)一步將Deconv 輸出的特征圖和Conv3 輸出的特征圖進(jìn)行多尺度連接;圖 2 中的多尺度級(jí)聯(lián)操作通過(guò)多尺度級(jí)聯(lián)操作能夠?qū)⒉煌矸e層輸出的相同分辨率特征圖在通道上連接起來(lái),其目的是能夠?qū)⒌蛯哟翁卣鲌D和高層次特征圖進(jìn)行共享,進(jìn)而減少參數(shù)的數(shù)量和訓(xùn)練數(shù)據(jù),并加快訓(xùn)練速度。在整體的分割流程中把 3 組卷積神經(jīng)網(wǎng)絡(luò)在Conv7 上輸出的特征圖連接起來(lái),并且經(jīng)Conv8 將連接之后的特征圖送入 SoftMax 進(jìn)行像素點(diǎn)分類,完成對(duì)輸入作物病害葉片圖像的病斑區(qū)域分割問(wèn)題。MSF-CNNs模型包括 3 個(gè)并聯(lián)的子卷積神經(jīng)網(wǎng)絡(luò),每組子網(wǎng)絡(luò)模型除了在卷積核尺寸和數(shù)量不同外其他的結(jié)構(gòu)都相同,MSF-CNNs 模型的參數(shù)如表1 所示。
圖2 多尺度融合卷積神經(jīng)網(wǎng)絡(luò)(MSF-CNNs)模型結(jié)構(gòu)Fig.2 Structure of the Multi-Scale Fusion Convolutional Neural Networks (MSF-CNNs)
表1 多尺度融合卷積神經(jīng)網(wǎng)絡(luò)模型參數(shù)Table 1 Parameters of Multi-Scale Fusion Convolutional Neural Networks
MSF-CNNs 模型的關(guān)鍵技術(shù)包括雙三次插值算法、多尺度卷積單元和批歸一化算法,下面分別對(duì)其進(jìn)行介紹。
1)雙三次插值算法。常用的語(yǔ)義分割模型例如FCNs、SegNet 和U-Net 等網(wǎng)絡(luò)模型都使用原始的雙線性插值算法作為反卷積層,用于恢復(fù)輸入圖像的尺寸和分辨率。盡管雙線性插值算法較為簡(jiǎn)單,但無(wú)法完整的恢復(fù)圖像的細(xì)節(jié)特征,因此在MSF-CNNs 中引入了九點(diǎn)雙線性插值算法作為反卷積層,從而恢復(fù)輸入圖像的底層信息和高層信息。在使用雙三次插值的過(guò)程中,分別對(duì)垂直方向和水平方向進(jìn)行的卷積操作進(jìn)行多次一維插值來(lái)實(shí)現(xiàn)二維的雙三次插值算法。二維的九點(diǎn)雙線性插值算法實(shí)現(xiàn)步驟如下,首先定義輸入圖像為F,圖像尺寸定義為M×N;然后對(duì)經(jīng)過(guò)卷積層運(yùn)算得到的特征圖在垂直方向和水平方向進(jìn)行插值運(yùn)算;最后定義插值后的圖像為G,經(jīng)過(guò)插值后的圖像尺寸為S×T。則圖G 中任意一個(gè)像素(x,y)的值g(x,y)可以利用該像素的 16 個(gè)鄰近像素點(diǎn)的加權(quán)疊加如式(1)所示
式中aij為加權(quán)系數(shù),u(x)為雙三次插值函數(shù)如式(2)所示
式中g(shù)(x,y) 為插值后的圖像在(x,y)處的像素值。
2)多尺度卷積層結(jié)構(gòu)。由于作物病害葉片的病斑區(qū)域尺寸不一致,因此在MSF-CNNs 中引入多尺度卷積核結(jié)構(gòu),該結(jié)構(gòu)是通過(guò)在網(wǎng)絡(luò)卷積層中使用多個(gè)尺度不同的卷積核對(duì)輸入圖像進(jìn)行多尺度特征提取,然后通過(guò)特征融合層對(duì)多尺度特征圖進(jìn)行空間融合。多尺度卷積層包括尺度不同的卷積核與特征平面組成多尺度特征信息,當(dāng)?shù)蛯犹卣鲌D的信息輸入到高層時(shí),在高層中分別使用不同尺寸的卷積核對(duì)低層特征圖進(jìn)行卷積操作,同時(shí)為了確保多尺度卷積核的輸入與輸出之間的空間特征信息不變,特征圖則依據(jù)卷積核尺寸的大小進(jìn)行邊緣填補(bǔ)。多尺度卷積核結(jié)構(gòu)如圖3所示,包含了 4 種不同尺寸的卷積核,其尺寸大小分別為9×9、7×7、5×5 和 3×3 的卷積核。
圖3 多尺度卷積核結(jié)構(gòu)Fig.3 Multi-scale convolutional kernel structure
3)批歸一化(Batch Normalization,BN)。BN 是Google 于2015 年提出的用于深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練的技巧,它不僅可以加快模型的收斂速度,而且在一定程度上緩解了訓(xùn)練過(guò)程中的過(guò)擬合問(wèn)題,從而使得訓(xùn)練深層網(wǎng)絡(luò)模型更加容易和穩(wěn)定。BN 算法主要包括以下3 個(gè)步驟:
步驟1:計(jì)算統(tǒng)計(jì)值。計(jì)算樣本數(shù)據(jù)集歸一化所需的均值和方差。假設(shè)輸入為x∈Rm×d,其中m表示當(dāng)前批次的大小,即當(dāng)前批次的訓(xùn)練樣本數(shù),d表示輸入特征圖的尺寸,則方差均值如式(4)所示
式中xk為第k批次的樣本,為第k批次的第i個(gè)樣本,Var(xk)表示方差,E(xk)表示統(tǒng)計(jì)均值。
步驟2:歸一化操作。把輸入向量中的每個(gè)元素當(dāng)成獨(dú)立隨機(jī)變量單獨(dú)進(jìn)行歸一化,即向量中的各個(gè)元素都單獨(dú)獨(dú)立,則歸一化計(jì)算如式(5)所示
步驟3:線性變換。單一的對(duì)數(shù)據(jù)進(jìn)行歸一化會(huì)改變?cè)緮?shù)據(jù)的特征或者分布,為了解決該問(wèn)題BN 操作加入了參數(shù)γ和偏置β用于擬合數(shù)據(jù)的原始分布特性,則批歸一化計(jì)算如式(6)所示
式中γ(k)和β(k)分別表示第k批次的可學(xué)習(xí)參數(shù),初始化為γ= 1、β= 0。
4)遷移學(xué)習(xí)。在CNNs 的特征提取過(guò)程中,淺卷積層能夠提取底層特征,例如輸入圖像的顏色,邊緣和形狀;隨著網(wǎng)絡(luò)層數(shù)的增加,網(wǎng)絡(luò)模型可以提取高級(jí)功能,例如圖像層次結(jié)構(gòu)和紋理。從低級(jí)特征到高級(jí)特征,CNNs 具有從固定的特征過(guò)渡到圖像的不變特征提取,而傳統(tǒng)的遷移學(xué)習(xí)策略沒(méi)有進(jìn)一步探討特征等級(jí)與樣本數(shù)據(jù)大小和特征相似性之間的關(guān)系。為了提高 MSF-CNNs的訓(xùn)練效率,采用一種漸進(jìn)式微調(diào)的遷移學(xué)習(xí)策略用于網(wǎng)絡(luò)模型訓(xùn)練,其結(jié)構(gòu)如圖4 所示。
如圖4 所示,基于漸進(jìn)式微調(diào)的遷移學(xué)習(xí)訓(xùn)練步驟為:
步驟1:首先對(duì)僅參與的卷積層結(jié)構(gòu)進(jìn)行參數(shù)隨機(jī)初始化。
步驟2:在網(wǎng)絡(luò)模型非線性特征分類器的基礎(chǔ)上,將不同的卷積層中權(quán)值參數(shù)進(jìn)行逐層釋放,直到整個(gè)網(wǎng)絡(luò)模型被訓(xùn)練為止。
步驟3:對(duì)各層進(jìn)行微調(diào)后,定量分析損失值的變化率,然后確定微調(diào)的卷積層參數(shù)。
在使用漸進(jìn)微調(diào)的遷移學(xué)習(xí)方法對(duì)模型進(jìn)行訓(xùn)練時(shí)其定量分析損失值是通過(guò)損失函數(shù)來(lái)分析的其具體操作為首先將原始模型在 ImageNet 數(shù)據(jù)集中進(jìn)行參數(shù)預(yù)訓(xùn)練,然后使用二分類的SoftMax 函數(shù)替換1 000 分類的SoftMax 層,計(jì)算如式(7)所示
式中c表示模型最后一層神經(jīng)元個(gè)數(shù),一般為數(shù)據(jù)的分類數(shù),iη表示第i個(gè)神經(jīng)元的線性輸出,經(jīng)過(guò)Sigmoid 激活函數(shù)后輸出預(yù)測(cè)值si。
訓(xùn)練過(guò)程中選取二分類交叉熵作為損失函數(shù),計(jì)算如式(8)所示
圖4 基于漸進(jìn)式微調(diào)的遷移學(xué)習(xí)訓(xùn)練流程Fig.4 Transfer learning training process based on incremental fine-tuning
5)全新學(xué)習(xí)。全新學(xué)習(xí)是指對(duì)網(wǎng)絡(luò)模型的所有權(quán)重參數(shù)進(jìn)行重新訓(xùn)練,隨機(jī)初始化網(wǎng)絡(luò)權(quán)重參數(shù),使用概率分布對(duì)參數(shù)賦予初值,在訓(xùn)練的過(guò)程中通過(guò)反向傳播算法對(duì)權(quán)重參數(shù)進(jìn)行優(yōu)化。盡管能夠有效減少模型的訓(xùn)練時(shí)間,提高學(xué)習(xí)能力,但沒(méi)有進(jìn)一步探討特征等級(jí)與樣本數(shù)據(jù)大小和特征相似性之間的關(guān)系。全新學(xué)習(xí)能夠克服遷移學(xué)習(xí)的不足。
為了驗(yàn)證MSF-CNNs 的有效性,將MSF-CNNs 應(yīng)用于黃瓜病害葉片圖像分割,并與其他模型進(jìn)行比較。網(wǎng)絡(luò)模型訓(xùn)練與測(cè)試的軟件環(huán)境為Ubuntu 16.04 LTS 64 位操作系統(tǒng),使用python 作為編程語(yǔ)言,Tensorflow 作為深度學(xué)習(xí)開(kāi)源框架。試驗(yàn)硬件環(huán)境為 Intel E5-2665C2 @3.20GHz CPU,64GB 內(nèi)存;Nvidia 1070Ti,8GB 顯存。使用CUDA Toolkit 9.0和 CUDNN V8.0作為網(wǎng)絡(luò)模型訓(xùn)練加速工具包;python 版本為3.5,Tensorflow 版本為1.9.0。在網(wǎng)絡(luò)模型的訓(xùn)練過(guò)程中首先將訓(xùn)練集和測(cè)試集圖像分為多個(gè)批次(batch),綜合考慮計(jì)算機(jī)的硬件環(huán)境,本研究在試驗(yàn)過(guò)程中將批次大小設(shè)置為 64,將所有訓(xùn)練集圖像在網(wǎng)絡(luò)模型中完成遍歷設(shè)置為一次迭代(epoch)。設(shè)置網(wǎng)絡(luò)模型初始學(xué)習(xí)率為0.01,正則化系數(shù)設(shè)置為0.001,隨著epoch 次數(shù)的增加,學(xué)習(xí)率遵循指數(shù)衰減的原則依次減小為原來(lái)的 0.05倍。使用貝葉斯函數(shù)對(duì)網(wǎng)絡(luò)模型權(quán)重參數(shù)進(jìn)行初始化,隨機(jī)生成均值為0,方差為1,遵循正態(tài)分布的權(quán)重參數(shù)。
作物葉部病害數(shù)據(jù)集中對(duì)全新學(xué)習(xí)(new learning)、遷移學(xué)習(xí)(transfer learning)和漸進(jìn)微調(diào)的遷移學(xué)習(xí)(Progressive Fine-Tuning Transfer Learning,PFTL)3 種訓(xùn)練方式進(jìn)行訓(xùn)練效果對(duì)比(圖5)。在訓(xùn)練誤差都為0.000 1時(shí),3 種訓(xùn)練方式的訓(xùn)練時(shí)間分別為8.4、6.5 和5.4 h。
由圖 5 可見(jiàn),在全新學(xué)習(xí)的訓(xùn)練模式下,模型經(jīng)過(guò)500 次迭代時(shí)的分割準(zhǔn)確率僅為 0.67,當(dāng)?shù)螖?shù)達(dá)到1 000 時(shí),分割準(zhǔn)確率達(dá)到0.73,但模型已具有收斂的趨勢(shì),當(dāng)完成迭代訓(xùn)練后,模型準(zhǔn)確率僅為 0.92,表明模型的訓(xùn)練效果較差。在使用遷移學(xué)習(xí)對(duì)模型進(jìn)行訓(xùn)練時(shí),模型經(jīng)過(guò) 500 次迭代時(shí)準(zhǔn)確率達(dá)到 0.71,具有初步分割病害葉片的能力。在前 500 次的迭代訓(xùn)練過(guò)程中,模型迅速收斂,當(dāng)?shù)螖?shù)達(dá)到 500 次時(shí),模型分割準(zhǔn)確率已與全新學(xué)習(xí)的訓(xùn)練模式下的完成 1 000 次迭代的準(zhǔn)確率相同,表明遷移學(xué)習(xí)能夠節(jié)省模型訓(xùn)練時(shí)間。在使用漸進(jìn)微調(diào)的遷移學(xué)習(xí)方法對(duì)模型訓(xùn)練的過(guò)程中,模型經(jīng)過(guò) 500 次迭代時(shí)準(zhǔn)確率達(dá)到 0.75,當(dāng)訓(xùn)練迭代次數(shù)達(dá)到1 000 次時(shí),模型的分割準(zhǔn)確率達(dá)到0.88,表明使用漸進(jìn)微調(diào)的遷移學(xué)習(xí)方式對(duì)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,能夠有效提高模型的訓(xùn)練速度和識(shí)別準(zhǔn)確率。
圖5 3 種模型訓(xùn)練方法結(jié)果比較Fig.5 Comparison of results of three model training methods
在作物病害葉片圖像分割過(guò)程中,首先手動(dòng)標(biāo)記每個(gè)待訓(xùn)練的原始病害葉片圖像,其中將圖像中的目標(biāo)區(qū)域標(biāo)記為前景,其余的部分標(biāo)記為背景。然后通過(guò)編碼結(jié)構(gòu)的卷積層提取標(biāo)注后的圖像特征,使用池化層對(duì)卷積層提取的特征圖進(jìn)行下采樣,最后通過(guò)激活層來(lái)增強(qiáng)模型的特征表達(dá)能力。解碼結(jié)構(gòu)包括上采樣層、卷積層和反卷積層,其中上采樣用于恢復(fù)由池化引起的特征信息損失,反卷積用于恢復(fù)輸入圖像的尺寸和特征分辨率。在經(jīng)過(guò)編碼結(jié)構(gòu)和解碼結(jié)構(gòu)后,使用SoftMax 對(duì)圖像像素進(jìn)行分類,并輸出分割結(jié)果。MSF-CNNs 模型訓(xùn)練過(guò)程、可視化結(jié)果如圖6 所示。
圖6 多尺度融合卷積神經(jīng)網(wǎng)絡(luò)(MSF-CNNs)訓(xùn)練過(guò)程和可視化Fig.6 Training process and visualization of the Multi-Scale Fusion Convolutional Neural Networks (MSF-CNNs)
在網(wǎng)絡(luò)訓(xùn)練的過(guò)程中選擇不同的超參數(shù)對(duì)網(wǎng)絡(luò)模型的訓(xùn)練速度和識(shí)別精度均有不同程度的影響,首先在研究的過(guò)程中分析固定學(xué)習(xí)率和指數(shù)衰減學(xué)習(xí)率對(duì)網(wǎng)絡(luò)模型性能的影響(圖7)。
由圖7 可知,設(shè)置學(xué)習(xí)率取固定值0.01 時(shí),模型的訓(xùn)練速度加快,當(dāng)?shù)螖?shù)達(dá)到 800 次時(shí),損失函數(shù)曲線仍在下降,但損失函數(shù)曲線起伏較大,表明模型的訓(xùn)練過(guò)程不穩(wěn)定,當(dāng)?shù)瓿珊?,模型的識(shí)別準(zhǔn)確率為0.91。在使用以指數(shù)衰減(index decay)為原則調(diào)整學(xué)習(xí)率時(shí),損失函數(shù)曲線下降速度較快,而且?guī)缀鯖](méi)有震蕩現(xiàn)象發(fā)生,表明模型的訓(xùn)練過(guò)程較為穩(wěn)定,當(dāng)完成1 000 次的迭代訓(xùn)練時(shí),模型的分割達(dá)到 0.986。因此在 MSF-CNNs模型的訓(xùn)練過(guò)程中使用指數(shù)衰減的形式調(diào)整學(xué)習(xí)率。
為驗(yàn)證所提出模型的魯棒性,分別使用不同分割算法在多種復(fù)雜背景下的作物病害葉片圖像上進(jìn)行分割試驗(yàn),其中復(fù)雜背景主要包括待分割圖像中存在土壤背景、葉片遮擋、多個(gè)葉片、葉片殘缺、病害粘連、光照條件復(fù)雜等情況。針對(duì)每種復(fù)雜背景選取20 幅圖像共120 幅圖像進(jìn)行魯棒性對(duì)比試驗(yàn)。圖8 為圖1 的分割結(jié)果。由圖 8 可以看出,在多種復(fù)雜背景下的分割結(jié)果中,MSF-CNNs 模型幾乎不受環(huán)境的影響,能夠有效的分割出作物葉片的病斑區(qū)域。所以,MSF-CNNs 通過(guò)所構(gòu)建的編解碼結(jié)構(gòu)有效的提取了輸入圖像的多尺度特征,不僅能夠準(zhǔn)確的分割病斑區(qū)域的輪廓區(qū)域,而且對(duì)病斑的細(xì)節(jié)區(qū)域也能完成準(zhǔn)確分割。
圖7 超參數(shù)對(duì)模型性能的影響Fig.7 Influence of super-parameters on model performance
為了驗(yàn)證 MSF-CNNs 模型對(duì)于病害葉片圖像分割的性能,將其在真實(shí)采集的作物病害葉片圖像數(shù)據(jù)庫(kù)種進(jìn)行分割試驗(yàn),并將其與現(xiàn)有的分割方法 FCNs、SegNet、U-Net、DenseNet 進(jìn)行比較[21-22]。在對(duì)試驗(yàn)結(jié)果進(jìn)行分析的過(guò)程中,為了量化模型的性能分別使用像素分類精度(Pixel-classification Accuracy,PA)、平均精度(Mean Accuracy,MA)、平均交并比(Mean Intersection Over Union,MIoU)和頻率加權(quán)交并比(Frequency Weighted Intersection Over Union,F(xiàn)WIoU)作為綜合評(píng)價(jià)指標(biāo),分割結(jié)果如表 2 所示。
圖8 不同環(huán)境下作物病害葉片分割結(jié)果Fig.8 Cucumber disease leaf segmentation results in different environments
表2 不同分割方法的分割評(píng)價(jià)指標(biāo)Table 2 Segmentation results of the different segmentation methods
由表2 可知,MSF-CNNs 方法的 PA、MA、MIoU和FWIoU 值最高,分別為92.38%、93.12%、91.36%和89.76%,MSF-CNNs 的 MA 比 FCNs、SegNet、U-Net、DenseNet 分別提高了13.00%、10.74%、10.40%、10.08%和6.40%。FCNs 使用反卷積過(guò)程恢復(fù)圖像分辨率優(yōu)化分割結(jié)果,但該方法的下采樣操作弱化了模型的特征提取能力,導(dǎo)致其對(duì)小面積病斑區(qū)域的分割能力較差,因此其分割性能指標(biāo)較差。SegNet 是基于空洞卷積的分割模型,空洞卷積能夠擴(kuò)大原始卷積核的局部感受野,但有些病斑區(qū)域在整體葉片中所占比例較小,所以這2 種分割方法在性能評(píng)價(jià)指標(biāo)上均落后于MSF-CNNs。根據(jù)以上結(jié)果能夠判斷MSF-CNNs 具有較好的分割效果,對(duì)病斑區(qū)域的分割結(jié)果最接近于真實(shí)值,能夠滿足自然狀態(tài)下對(duì)病害葉片圖像分割的高精度要求。但是由于作物葉片圖像的病斑區(qū)域邊界較為復(fù)雜且所占面積較小,同時(shí)部分病斑區(qū)域與正常區(qū)域的相似度較高,導(dǎo)致正常區(qū)域邊界與病斑區(qū)域邊界難以區(qū)分,所以從表 2 中看出MSF-CNNs 的分割性能評(píng)價(jià)指標(biāo)值仍然較低。
黃瓜病害葉片中的病斑區(qū)域分割是病害檢測(cè)與類型識(shí)別的關(guān)鍵步驟,分割效果將直接影響病害檢測(cè)和識(shí)別的精度。針對(duì)傳統(tǒng)方法對(duì)于黃瓜病害葉片圖像分割精度低的問(wèn)題,提出一種多尺度融合卷積神經(jīng)網(wǎng)絡(luò)(Multi-Scale Fusion Convolutional Neural Networks,MSF-CNNs)用于黃瓜病害葉片分割。MSF-CNNs 由編碼網(wǎng)絡(luò)(Encoder Networks,ENs)和解碼網(wǎng)絡(luò)(Decoder Networks,DNs)2 部分組成,其中ENs 為一個(gè)多尺度卷積神經(jīng)網(wǎng)絡(luò)組成,用于提取病害葉片圖像的多尺度信息;DNs 基于九點(diǎn)雙線性插值算法,用于恢復(fù)輸入圖像的尺寸和分辨率。在模型訓(xùn)練的過(guò)程中,使用一種漸進(jìn)微調(diào)的遷移學(xué)習(xí)方法加快網(wǎng)絡(luò)模型的訓(xùn)練速度和分割精度。在復(fù)雜背景下的作物病害葉片圖像數(shù)據(jù)庫(kù)上進(jìn)行分割試驗(yàn),并與現(xiàn)有的全卷積網(wǎng)絡(luò)(Fully Convolutional Networks,F(xiàn)CNs)、SegNet、U-Net、DenseNet 深度學(xué)習(xí)模型進(jìn)行比較。結(jié)果表明,該方法能夠滿足復(fù)雜環(huán)境下的黃瓜病害葉片圖像分割需求,像素分類精度為92.38%,平均分割準(zhǔn)確率為93.12%,平均交并比為91.36%,頻率加權(quán)交并比為89.76%。其中,平均分割準(zhǔn)確率比FCNs、SegNet、U-Net 和 DenseNet 分別提高了 13.00%、10.74%、10.40%、10.08%和 6.40%。使用漸進(jìn)學(xué)習(xí)訓(xùn)練方式后,訓(xùn)練時(shí)間縮短了0.9 h。本方法為進(jìn)一步的黃瓜病害識(shí)別方法研究提供了參考。