鄧國(guó)強(qiáng),王君嬋,楊 俊,劉 濤,李冬雙,孫成明
(1. 江蘇省作物遺傳生理重點(diǎn)實(shí)驗(yàn)室/江蘇省作物栽培生理重點(diǎn)實(shí)驗(yàn)室,揚(yáng)州大學(xué)農(nóng)學(xué)院,江蘇揚(yáng)州 225009;2. 江蘇省糧食作物現(xiàn)代產(chǎn)業(yè)技術(shù)協(xié)同創(chuàng)新中心,揚(yáng)州大學(xué),江蘇揚(yáng)州 225009;3. 江蘇里下河地區(qū)農(nóng)業(yè)科學(xué)研究所/農(nóng)業(yè)部長(zhǎng)江中下游小麥生物學(xué)與遺傳育種重點(diǎn)實(shí)驗(yàn)室,江蘇揚(yáng)州 225007)
赤霉病是小麥最常見的病害之一。它是由禾谷鐮刀菌等病菌引起一種病害,對(duì)小麥的產(chǎn)量影響較大,可導(dǎo)致小麥減產(chǎn)10%~80%[1]??焖?、有效地監(jiān)測(cè)與識(shí)別小麥赤霉病的發(fā)生可對(duì)該病害有效防控提供信息支撐。
赤霉病監(jiān)測(cè)與識(shí)別的最常用方法是人工觀測(cè)。該方法操作簡(jiǎn)便,但在實(shí)踐過程中工作強(qiáng)度大,且數(shù)據(jù)易受觀測(cè)者主觀經(jīng)驗(yàn)的影響而不夠準(zhǔn)確。隨著高光譜及圖像分析技術(shù)的發(fā)展,基于現(xiàn)代信息技術(shù)的小麥赤霉病識(shí)別方法得到越來越多的關(guān)注、應(yīng)用。劉爽提出基于k均值聚類法(k-means)結(jié)合kappa系數(shù)進(jìn)行多次循環(huán)的方法來提取最優(yōu)赤霉病訓(xùn)練樣本,在PCA和SPA兩個(gè)特征空間內(nèi)結(jié)合光譜角匹配、k均值聚類法、最近鄰域法、線性判別分析和支持向量機(jī)(SVM)五種分類算法構(gòu)建多種小麥赤霉病識(shí)別模型,其中用SVM算法在SPA特征空間中構(gòu)建的分類模型的分類性能最優(yōu),訓(xùn)練集和測(cè)試集的精度分別達(dá)到91.1%和88.8%[2]。鮑文霞等[3]通過多路卷積神經(jīng)網(wǎng)絡(luò),利用深度語義分割網(wǎng)絡(luò)對(duì)小麥圖像進(jìn)行分割并提取麥穗圖像顏色特征,采用聯(lián)合損失函數(shù)改善網(wǎng)絡(luò)的性能,最終可對(duì)單株小麥赤霉病穗識(shí)別準(zhǔn)確率達(dá)到100%。國(guó)外學(xué)者在赤霉病識(shí)別方面也取得了一些進(jìn)展。Ropelewska等[4]設(shè)計(jì)了一個(gè)高光譜成像系統(tǒng)來獲取小麥籽粒圖像,并在選定的波長(zhǎng)下提取紋理特征,建立了籽粒分類模型,精度在94%以上。Whetton等[5-6]利用高光譜成像儀獲取小麥穗部光譜數(shù)據(jù),并通過偏最小二乘回歸分析建立模型來評(píng)估感染赤霉病的情況,效果較好。Bauriegel等[7]基于主成分分析法,選擇500~1 000 nm之間的4個(gè)波長(zhǎng)范圍,并成功地利用這些波長(zhǎng)來區(qū)分發(fā)病麥穗和健康 麥穗。
前述研究雖然效果不錯(cuò),但實(shí)際生產(chǎn)中,早期赤霉病發(fā)生群體數(shù)量較少,難以滿足研究的樣本的需求,因此,很多學(xué)者開始探索新的分析方法。在圖像分割方面,前人在CNN的基礎(chǔ)上,創(chuàng)造性地提出了一種全卷積神經(jīng)網(wǎng)絡(luò)(fully convolutional network,FCN)。其利用卷積層替換CNN中的全連接層以獲得圖像中每個(gè)像素的分類結(jié)果,最終實(shí)現(xiàn)圖像分割[8]。Ronneberger等[9]隨后提出了一種新的FCN網(wǎng)絡(luò)即U-net。該網(wǎng)絡(luò)具有對(duì)稱的U型結(jié)構(gòu),通過對(duì)圖像特征的編碼與解碼,并融合網(wǎng)絡(luò)高低層語義特征,可以實(shí)現(xiàn)較好的分割效果。與傳統(tǒng)的深度學(xué)習(xí)網(wǎng)絡(luò)相比,U-net 能夠在較少樣本量的情況下完成模型訓(xùn)練并實(shí)現(xiàn)圖像分割,且訓(xùn)練效率和提取精度均較高[10-13]。但目前U-net模型在作物上應(yīng)用還不多見。Wei等[14]面對(duì)研究區(qū)作物種植模式復(fù)雜的局面,采用改進(jìn)的全卷積網(wǎng)絡(luò)U-net實(shí)現(xiàn)對(duì)不同作物類型識(shí)別,在U-net模型中引入批處理歸一化(BN)算法,解決了作物數(shù)量多、樣本數(shù)不平衡的問題,極大地提高了網(wǎng)絡(luò)訓(xùn)練的效率。陳 進(jìn)等[15]采用改進(jìn)的U-net 網(wǎng)絡(luò)模型并加入Batch Normalization 層,對(duì)水稻圖像中的籽粒部分進(jìn)行分割,并通過綜合評(píng)價(jià)指標(biāo)對(duì)結(jié)果進(jìn)行驗(yàn)證,對(duì)水稻籽粒分割的精度達(dá)到99%。
基于FCN卷積網(wǎng)絡(luò)的典型應(yīng)用是在分類識(shí)別任務(wù)中,小麥發(fā)生赤霉病后穗子的識(shí)別就是一種典型的分類問題。因此本研究基于U-net網(wǎng)絡(luò)模型訓(xùn)練小麥赤霉病圖像,獲取小麥赤霉病發(fā)病麥穗的分割圖像并對(duì)發(fā)病麥穗進(jìn)行監(jiān)測(cè)與識(shí)別,以期為小麥赤霉病穗識(shí)別提供一種新的方法。
試驗(yàn)于2017-2018年和2018-2019年在江蘇省里下河地區(qū)農(nóng)業(yè)科學(xué)研究所揚(yáng)州試驗(yàn)基地(32°42′N,119°53′E)進(jìn)行。11月上旬播種,順序排列,每個(gè)品種均種植2行,行長(zhǎng)2 m,行距25 cm,每行60株。所使用的小麥品種分為抗病、常規(guī)和易感3種類型。
于小麥揚(yáng)花期在穗中部小穗的第一朵小花內(nèi),用微量進(jìn)樣注射10 μL赤霉病分生孢子懸浮液 (1×105個(gè)·L-1),每個(gè)品種接種20個(gè)單穗,然后用透明塑料袋將整個(gè)麥穗套住,采用人工彌霧保濕,并掛上紙牌標(biāo)明接種日期,保濕72 h后去掉塑料袋。并在接種后21 d人工記載每份材料的發(fā)病小穗數(shù)。接種前后麥穗變化如圖1所示。
接種前 Before inoculation 接種后 After inoculation圖1 小麥發(fā)生赤霉病前后麥穗顏色變化Fig.1 Changes of wheat ear color before and after the occurrence of Fusarium head blight
本研究通過數(shù)碼相機(jī)獲取小麥赤霉病的圖像信息。所用數(shù)碼相機(jī)為SONY @6300,有效像素2 420萬,顯示屏為3英寸92萬像素液晶屏,傳感器APS-C畫幅(23.5*15.6mm)ExmorCMOSsensor,4K高清攝像,配有存儲(chǔ)卡SD/SDHC/SDXCmicroSD/microSDHC/microSDXC卡,續(xù)航能力強(qiáng)。
于接種后7 d開始,每隔6 d獲取一次圖像,至小麥赤霉病發(fā)病后期停止拍照。拍攝時(shí)采取相機(jī)垂直地面,距地面1 m高處獲取小麥赤霉病圖像信息,對(duì)獲取的圖像進(jìn)行篩選,共選取小麥赤霉病發(fā)病前期和發(fā)病中期RGB圖像各20幅。
1.4.1 圖像處理軟件
獲取的RGB圖像采用Matlab2018b、Labelbox等軟件進(jìn)行處理,圖像中麥穗分為發(fā)病麥穗和健康麥穗兩類。深度學(xué)習(xí)圖像處理所使用的配置為NVIDIA Tesla K80 GPU 1x,15 GB Ram,100 GB SSD;使用的軟件包括Deep Learning VM (Debian) on Google Cloud Platform,Tensorflow 2.1.0,Numpy,Matplotlib。
1.4.2 深度學(xué)習(xí)數(shù)據(jù)集構(gòu)建
采用軟件Labelbox對(duì)20幅圖像進(jìn)行人工標(biāo)注,圖像大小為6 000×4 000。由于田間麥穗形態(tài)比較復(fù)雜,本研究利用Harris角點(diǎn)檢測(cè)算法對(duì)顏色特征或紋理特征處理后的二值圖像進(jìn)行角點(diǎn)檢測(cè),進(jìn)而將麥穗從圖像背景中分離出來[16]。
在上述基礎(chǔ)上構(gòu)建深度學(xué)習(xí)數(shù)據(jù)集。由于硬件(GPU)的限制,需要對(duì)圖像進(jìn)行分割。訓(xùn)練集由其中的18張分割而成,測(cè)試集由另外2張分割而成??紤]運(yùn)行時(shí)間的限制,訓(xùn)練集中選擇 700×700 為一個(gè)單位,每100 取一次樣,共生成31 482幅700×700×3 的圖像和其對(duì)應(yīng)的標(biāo)注。對(duì)于測(cè)試集則每200 取一次樣,共獲得918幅圖像和對(duì)應(yīng)的標(biāo)注(圖2)。為了消除標(biāo)記過程中人為因素(邊緣不明確)產(chǎn)生的誤差,網(wǎng)絡(luò)設(shè)計(jì)為 400×400×3的input和 output,通過壓縮的方式把700×700的圖像壓縮到了400×400,并在訓(xùn)練集上使用數(shù)據(jù)增強(qiáng)技術(shù)(rotate,width/height shift,zoom)。最后把標(biāo)記好的圖像提取轉(zhuǎn)化為png格式灰度圖,數(shù)據(jù)集保存為json 文件。
圖2 發(fā)病麥穗標(biāo)記分割結(jié)果Fig.2 Segmentation results of pathogenic wheat ears marker
U-net模型在物體識(shí)別上非常流行,有很多圖像識(shí)別的研究都采用U-net來進(jìn)行物體識(shí)別分割[10-12,21-24]。U-net網(wǎng)絡(luò)由一個(gè)收縮路徑(左邊)和一個(gè)擴(kuò)張路徑(右邊)組成(圖3)。其中,收縮路徑遵循典型的卷積網(wǎng)絡(luò)結(jié)構(gòu),其由兩個(gè)重復(fù)的3×3卷積核(無填充卷積,unpadded convolution)組成,且均使用修正線性單元(rectified linear unit,ReLU)激活函數(shù)和一個(gè)用于下采樣(downsample)的步長(zhǎng)為2的2×2最大池化操作。在每一個(gè)下采樣的步驟中,特征通道數(shù)量都加倍。在擴(kuò)張路徑中,每一步都包含對(duì)特征圖進(jìn)行上采樣(upsample);然后用2×2的卷積核進(jìn)行卷積運(yùn)算(上卷積,up-convolution),用于減少一半的特征通道數(shù)量;接著級(jí)聯(lián)收縮路徑中相應(yīng)的裁剪后的特征圖;再用兩個(gè)3×3的卷積核進(jìn)行卷積運(yùn)算,且均使用ReLU激活函數(shù)。通過對(duì)特征圖進(jìn)行裁剪,解決在每次卷積操作中,邊界像素存在缺失的問題。在最后一層,利用1×1的卷積核進(jìn)行卷積運(yùn)算,將每個(gè)64維的特征向量映射網(wǎng)絡(luò)的輸出層。
圖3 U-net網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 U-net network structure
U-net模型的上采樣部分還有大量的特征通道,允許網(wǎng)絡(luò)將上下文信息傳播到更高分辨率的層,因此擴(kuò)張路徑與收縮路徑或多或少是對(duì)稱的,并產(chǎn)生一個(gè)U形結(jié)構(gòu)。網(wǎng)絡(luò)沒有任何完全連接的層,只使用每個(gè)卷積的有效部分,也就是分割圖只包含像素,對(duì)于這些像素,輸入圖像中有完整的上下文。由于麥穗比較復(fù)雜,在使用Keras方法進(jìn)行圖像語義分割需要對(duì)U-net網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)。本研究在原有的網(wǎng)絡(luò)基礎(chǔ)上,在下采樣中的卷積層(convolution layer)下面共加入5層Dropout。第一層輸入的卷積層圖像大小為400×400×3,依次卷積,在下采樣第十層卷積層時(shí),輸出的圖像大小為25×25×3。同時(shí),在下采樣部分每個(gè)反卷積層下方加入了1層連接層(concatente),共4層連接層,最后的輸出層使用卷積層來實(shí)現(xiàn)。第一層反卷積層的圖像大小為25×25×3,最后一層卷積層輸出時(shí)大小為400×400×3。
圖4 基于改進(jìn)后的U-net 網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.4 Network structure based on improved U-net
由于卷積神經(jīng)網(wǎng)絡(luò)中含有許多量綱參與運(yùn)算,在樣本較少的情況下,容易導(dǎo)致過擬合情況出現(xiàn),而加入Dropout能夠很好地解決該問題。在圖像訓(xùn)練的過程中,根據(jù)一定的概率隨機(jī)選中一部分神經(jīng)元,使其僅保留計(jì)算出的權(quán)重,在下次迭代的時(shí)候進(jìn)行更新。這樣在分配權(quán)重時(shí),不會(huì)給上一層某節(jié)點(diǎn)分配過度,可以有意識(shí)地讓網(wǎng)絡(luò)去學(xué)習(xí)一些普遍的共性,從而提高模型的泛化能力,防止網(wǎng)絡(luò)過度擬合。
模型訓(xùn)練過程中采用二元交叉熵(binary crossentropy)作為損失函數(shù)來計(jì)算每一個(gè)像素之間的交叉熵,采用平均準(zhǔn)確率(mean pixel accuracy,MPA)作為訓(xùn)練過程中的精度評(píng)價(jià)指標(biāo)。為了減少分割過程中需要分割部分因?yàn)檎急刃‘a(chǎn)生高精度(accuracy)的現(xiàn)象出現(xiàn),本研究使用平均交并比MIoU(mean intersection over union)對(duì)模型進(jìn)行評(píng)估。交并比IoU是一個(gè)簡(jiǎn)單的測(cè)量標(biāo)準(zhǔn),可用于監(jiān)測(cè)任意大小的圖像對(duì)象,其值越高,模型表現(xiàn)得就越好。
(1)
(2)
式(1)中,TP(true positive)為真陽性,指圖像中標(biāo)注為麥穗像素,預(yù)測(cè)結(jié)果也為麥穗像素的總個(gè)數(shù);TN (true negative)為真陰性,指圖像中標(biāo)注為背景像素,預(yù)測(cè)結(jié)果也為背景像素的總個(gè)數(shù);FP(false positive)為假陰性,指圖像中標(biāo)注為背景像素,預(yù)測(cè)結(jié)果為麥穗像素的總個(gè)數(shù);FN(false negative)為假陰性,指圖像中標(biāo)注為麥穗像素,預(yù)測(cè)結(jié)果為背景像素的總個(gè)數(shù)。
(3)
式(3)中Loss為損失函數(shù),gi為像素點(diǎn)i的真實(shí)類別,pi為網(wǎng)絡(luò)對(duì)像素點(diǎn)i的預(yù)測(cè)結(jié)果。
(4)
(5)
式(4)、(5)中,PA(pixel accuracy)表示標(biāo)記正確的麥穗像素占總像素的比例。MPA(mean pixel accuracy)表示計(jì)算每個(gè)類內(nèi)被正確分類像素?cái)?shù)的比例,之后求所有類的平均。k+1表示包括背景在內(nèi)的語義類別總數(shù),本實(shí)驗(yàn)值有兩類,一類為發(fā)病麥穗,另一類為背景。pii表示真正的數(shù)量,而pij表示假正的數(shù)量,pji表示假負(fù)的 數(shù)量。
深度卷積神經(jīng)網(wǎng)絡(luò)有很多種訓(xùn)練算法,本研究采用收斂速度比較快的Adam算法。選擇Adam optimizer函數(shù)作為參數(shù)優(yōu)化器,設(shè)定初始學(xué)習(xí)率Ir=0.001,訓(xùn)練迭代的最大次數(shù)epoch=100,每次迭代訓(xùn)練1 000步,val 20步。當(dāng)驗(yàn)證集損失不再繼續(xù)降低時(shí),對(duì)學(xué)習(xí)率進(jìn)行衰減,衰減因子factor=0.1,衰減后的學(xué)習(xí)率為初始學(xué)習(xí)率與衰減因子的乘積。設(shè)置驗(yàn)證集損失不繼續(xù)降低的容忍度為22個(gè)epoch,采用提前終止模型訓(xùn)練的策略(early stopping)結(jié)束模型訓(xùn)練。理論上模型的batch size越大越好,由于使用的tesla k80 GPU顯存的限制,綜合考慮,8是一個(gè)合理的數(shù)字[19]。選取發(fā)病麥穗數(shù)量不同的圖像,在上述算法下進(jìn)行圖像訓(xùn)練,訓(xùn)練過程中保存結(jié)果的損失率和精度并利用之前保存的模型對(duì) 400 × 400 像素測(cè)試數(shù)據(jù)進(jìn)行預(yù)測(cè),然后與原始圖像疊加后輸出訓(xùn)練效果圖(圖5)。與原圖像比,最終輸出圖效果較好,可以滿足小麥赤霉病穗識(shí)別和監(jiān)測(cè)的需要。
圖5 U-net 模型訓(xùn)練效果Fig.5 Training effect of U-net model
基于改進(jìn)的U-net 模型,利用測(cè)試集918幅圖像對(duì)模型識(shí)別病穗的能力進(jìn)行了驗(yàn)證。利用該模型以IoU大于0.5為標(biāo)準(zhǔn)確定監(jiān)測(cè)目標(biāo)。對(duì)所有目標(biāo)的IoU進(jìn)行平均得到其MIoU為 0.799。該模型的訓(xùn)練損失率Loss= 0.075 9,說明模型對(duì)圖像的像素區(qū)分度較高(圖6)。模型的平均精度為 0.969 4,說明模型的識(shí)別監(jiān)測(cè)效果好,精度高 (圖7)。
圖6 U-net模型損失函數(shù)Fig.6 Loss function of U-net model
圖7 U-net 模型精度Fig.7 Accuracy of U-net model
在小麥赤霉病驗(yàn)證集圖像中隨機(jī)選擇一幅圖像進(jìn)行人工標(biāo)記,標(biāo)記結(jié)果與基于改進(jìn)的U-net模型的識(shí)別效果進(jìn)行比較。由圖8可知,模型識(shí)別結(jié)果與人工標(biāo)記結(jié)果一致性很好,具較高的監(jiān)測(cè)精度。雖然模型還存在一些不足(圖8b,其中黃色圓圈標(biāo)注的為誤檢,藍(lán)色圓圈標(biāo)注的為漏檢),如將本來是正常的穗子監(jiān)測(cè)為病穗(誤檢),或者將本來是發(fā)病的穗監(jiān)測(cè)為正常(漏檢),但其誤檢率已經(jīng)較低。
圖8 人工標(biāo)注和U-net模型監(jiān)測(cè)結(jié)果對(duì)比(a:人工標(biāo)注,b:U-net模型監(jiān)測(cè))Fig.8 Comparison of monitoring results between manual annotation and U-net model(a:manual annotation,b:detection of U-net model)
本研究基于 U-net改進(jìn)模型對(duì)小麥赤霉病圖像進(jìn)行分割并識(shí)別。U-net模型不同于其他的分割模型,沒有全連接層和預(yù)訓(xùn)練的分類模型,使得模型簡(jiǎn)化,收斂速度快[17]。在模型改進(jìn)后,可以在復(fù)雜的背景下對(duì)目標(biāo)進(jìn)行分割,從而提高識(shí)別的精度。鮑文霞等[3]利用深度語義分割網(wǎng)絡(luò)對(duì)小麥圖像進(jìn)行分割并提取麥穗圖像顏色特征,實(shí)現(xiàn)了單株小麥赤霉病穗識(shí)別達(dá)到100%,但在群體赤霉病穗識(shí)別上還不夠精確;丁串龍等[18]利用粒子群優(yōu)化支持向量機(jī)算法(PSOSVM)構(gòu)建了小麥赤霉病分類模型,對(duì)赤霉病的識(shí)別精度為92%;Zhang等[19]利用光譜植被指數(shù)(SVI)構(gòu)建了小麥赤霉病的識(shí)別模型,總體識(shí)別準(zhǔn)確率為89.8%。與前述研究相比,本研究在小麥群體圖像識(shí)別上有較大的優(yōu)勢(shì),平均識(shí)別精度達(dá)到 96.9%。
由于本研究中未對(duì)小麥赤霉病發(fā)病麥穗和健康麥穗進(jìn)行分類,只是單一的監(jiān)測(cè)分割出發(fā)病麥穗,而訓(xùn)練分割的圖像中,有很多圖像未包含發(fā)病麥穗,因此通過平均交并比MIoU來對(duì)模型的表現(xiàn)進(jìn)行評(píng)估。與其他同類模型相比,U-net模型的MIoU較大,可以看出U-net模型效果較好[4,7]。另外,U-net模型在圖像處理過程中采用批歸一化(batch normalization,BN),BN的優(yōu)點(diǎn)在于提升訓(xùn)練速度和加快神經(jīng)網(wǎng)絡(luò)收斂過程,其初始化要求不高,且使調(diào)參過程變得簡(jiǎn)單許多。此外,小麥生長(zhǎng)通常呈不規(guī)則分布狀態(tài),兩個(gè)或三個(gè)麥穗粘連在一起的現(xiàn)象時(shí)有發(fā)生,在后期的實(shí)驗(yàn)探索中,是一個(gè)需要突破的研究點(diǎn)。
除了模型的精度,訓(xùn)練過程中圖像的處理時(shí)間也是要考慮的問題。U-net訓(xùn)練速度很快,在硬件資源有限的情況下,可以使用U-net模型嘗試更多的處理。但由于U-net模型的網(wǎng)絡(luò)較簡(jiǎn)單,訓(xùn)練過程中容易出現(xiàn)網(wǎng)絡(luò)過擬合。因此研究需要采用大量的和不同類型的訓(xùn)練樣本對(duì)U-net 神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,雖然利用數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行數(shù)據(jù)集擴(kuò)充可以部分解決這個(gè)問題,但由于受到實(shí)驗(yàn)區(qū)域以及品種類型的限制,采集的赤霉病圖像數(shù)量還是有限,也導(dǎo)致在模型訓(xùn)練和驗(yàn)證過程中出現(xiàn)漏檢、誤檢的問題。如果能消除或降低漏檢、誤檢等問題,模型的性能將大大提升[17]。
研究選擇了近來比較流行的深度學(xué)習(xí)網(wǎng)絡(luò)U-net來對(duì)人工標(biāo)記好的發(fā)病麥穗圖像進(jìn)行訓(xùn)練。通過該網(wǎng)絡(luò)訓(xùn)練測(cè)試與驗(yàn)證,建立了基于U-net網(wǎng)絡(luò)模型的小麥赤霉病識(shí)別與監(jiān)測(cè)模型。經(jīng)過驗(yàn)證分析,該模型平均精度為0.969 4,損失函數(shù)Loss=0.075 9,平均交并比MIoU=0.799,說明模型可以很好地監(jiān)測(cè)小麥圖像中的發(fā)病麥穗,并在發(fā)病麥穗的分割上具有很好的效果。因此,基于改進(jìn)的U-net模型能夠?qū)υ摰貐^(qū)的小麥赤霉病進(jìn)行識(shí)別與監(jiān)測(cè)。