郭小清,范濤杰,舒 欣
基于改進Multi-Scale AlexNet的番茄葉部病害圖像識別
郭小清,范濤杰,舒 欣
(南京農(nóng)業(yè)大學(xué)信息科技學(xué)院,南京 210095)
番茄同種病害在不同發(fā)病階段表征差異明顯,不同病害又表現(xiàn)出一定的相似性,傳統(tǒng)模式識別方法不能體現(xiàn)病害病理表征的動態(tài)變化,實用性較差。針對該問題,基于卷積神經(jīng)網(wǎng)絡(luò)提出一種適用于移動平臺的多尺度識別模型,并基于此模型開發(fā)了面向農(nóng)業(yè)生產(chǎn)人員的番茄葉部病害圖像識別系統(tǒng)。該文詳細描述了AlexNet的結(jié)構(gòu),分析其不足,結(jié)合番茄病害葉片圖像特點,去除局部響應(yīng)歸一化層、修改全連接層、設(shè)置不同尺度卷積核提取特征,設(shè)計了基于AlexNet的多感受野識別模型,并基于Android實現(xiàn)了使用此模型的番茄葉部病害圖像識別系統(tǒng)。Multi-ScaleAlexNet模型運行所耗內(nèi)存為29.9MB,比原始AlexNet的內(nèi)存需求652MB降低了95.4%,該模型對番茄葉部病害及每種病害早中晚期的平均識別準確率達到92.7%,基于此模型的Andriod端識別系統(tǒng)在田間的識別率達到89.2%,能夠滿足生產(chǎn)實踐中移動平臺下的病害圖像識別需求。研究結(jié)果可為基于卷積神經(jīng)網(wǎng)絡(luò)的作物病害圖像識別提供參考,為作物病害的自動化識別和工程化應(yīng)用參考。
圖像處理;病害;圖像識別;算法;卷積神經(jīng)網(wǎng)絡(luò);番茄病害;多尺度
番茄葉部發(fā)生病害會嚴重影響產(chǎn)量與品質(zhì),且諸多病害都是從葉部開始發(fā)病,進而蔓延到整個植株[1],及時準確地識別出葉部病害類型是病害綜合防治的關(guān)鍵。近年來,基于圖像的模式識別技術(shù)在農(nóng)作物病害診斷領(lǐng)域取得廣泛應(yīng)用[2-4]。傳統(tǒng)針對作物病害識別的算法是通過提取、篩選顏色、紋理、形狀等特征來進行的,但同種病害在不同發(fā)病階段病癥差異明顯,多種病害可能表現(xiàn)出相似的病理表征,這些復(fù)雜的自然因素使傳統(tǒng)的模式識別方法在解決番茄病害識別問題時普適性較差。基于圖像的病害識別本質(zhì)上是圖像分類問題,深度卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域的應(yīng)用是新的研究熱點[5-12]。楊國國等[13]利用圖像的顯著性分析定位茶園害蟲的位置,通過縮減網(wǎng)絡(luò)層數(shù)、減少卷積核數(shù)目等改進AlexNet[14]模型,并結(jié)合Dropout等優(yōu)化方法提升了模型的準確性與效率,優(yōu)化后的模型對茶園23種害蟲平均識別準確率達到88.1%。孫俊等[15]通過使用Batch Normalization、Global Average Pooling[16]、縮小卷積核尺寸等方法改進AlexNet網(wǎng)絡(luò)模型,提升了準確率,減少了模型所需參數(shù),對簡單背景下14種作物的26種病害識別平均準確率達到99.56%,對田間的復(fù)雜背景識別率較低。王艷玲等[17]將遷移學(xué)習(xí)應(yīng)用于原始AlexNet網(wǎng)絡(luò)中,對10種類別番茄葉片的平均識別準確率達到95.62%。Aravind等[18]利用原始AlexNet、VGG16網(wǎng)絡(luò),結(jié)合遷移學(xué)習(xí)分別在識別7種分割后的番茄葉片上取得97.29%、97.49%的準確率。采用遷移學(xué)習(xí)雖然可以使模型快速收斂,達到較好地識別效果,但也受限于必須使用原始的網(wǎng)絡(luò)結(jié)構(gòu),原始AlexNet和VGG16模型結(jié)構(gòu)復(fù)雜,參數(shù)眾多,極大的限制了模型的實際應(yīng)用和部署。
相較于傳統(tǒng)的模式識別方法,基于深度卷積網(wǎng)絡(luò)(convolutional neural network, CNN)的病害識別方法摒棄了復(fù)雜的圖像預(yù)處理和特征提取操作,采用端到端的結(jié)構(gòu)簡化了識別流程。在ILSVRC競賽中涌現(xiàn)的AlexNet、VGG[19]、ResNet[20]、Incept-io-n[21-24]等不斷刷新通用目標(biāo)識別的準確率。也有學(xué)者根據(jù)移動設(shè)備和嵌入式設(shè)備的應(yīng)用需求,改進設(shè)計了輕量化的卷積模型,典型的代表有MobileNet[25]、Squ-eezeNet[26]等,但鮮少相關(guān)實踐應(yīng)用的報道。本文將依據(jù)最新的CNN理論研究成果與番茄葉部病害圖像本身的特點,研究并開發(fā)面向農(nóng)戶的番茄葉部典型病害識別系統(tǒng),以期為作物病害的自動化識別和工程化應(yīng)用提供參考。
本文的番茄葉部圖像數(shù)據(jù),一部分(5 127張)取自PlantVillage(http://www.plantvillage.org)數(shù)據(jù)庫,該數(shù)據(jù)庫收錄了大量的植物病害圖像。一部分(639張)拍攝于南京農(nóng)業(yè)大學(xué)牌樓基地,采用索尼DSC-WX350,分辨率4 896×3 672像素,自動白平衡、光學(xué)對焦,在戶外晴天對番茄葉部正面主體進行拍攝,從番茄種植到收獲完畢的整個生育期內(nèi)共采集到8種類別的番茄葉部圖像樣本(健康樣本和7種病害樣本),且每種病害圖像樣本包含不同的發(fā)病階段。
從獲取的番茄病害樣本可知,番茄病害的識別主要有以下2個難點:1)不同病害的表征具有一定的相似性; 2)同種病害不同的發(fā)育階段表征差異明顯。
獲取的各類病害樣本分布極不均勻,細菌性斑點病989張,斑枯病243張,黃曲病373張,早疫病586張,晚疫病953張,花葉病952張,輪斑病1 036張,健康樣本634張。在深度學(xué)習(xí)中,樣本分布不均勻會影響模型識別的準確率[27-28],故對數(shù)量較少的樣本數(shù)據(jù)進行增強處理。數(shù)據(jù)增強時要符合實際應(yīng)用條件,不能隨意擴增,例如顏色是不同病害的主要表征之一,在做圖像增強時不能改變原來圖像的顏色。為模擬自然拍攝條件下的復(fù)雜環(huán)境影響,在Tensorflow框架下結(jié)合opencv完成樣本圖像數(shù)據(jù)增強。主要采用如下數(shù)據(jù)增強手段:1)隨機裁剪(Random Crop):在較大圖像的不同區(qū)域隨機裁剪出局部圖像從而得到更多的數(shù)據(jù)。2)翻轉(zhuǎn)(Flip):沿著圖像的水平方向和垂直方向進行翻轉(zhuǎn),不會改變病斑部分與健康部分的相對位置,模擬自然條件下的拍攝角度的隨機性。3)旋轉(zhuǎn)(Rotation):以圖像中心為原點旋轉(zhuǎn)一定的角度獲取新的圖像。4)顏色抖動(Color Jittering):改變圖像的亮度、飽和度、對比度、色調(diào)等。由于色調(diào)是區(qū)分番茄不同病斑的重要指標(biāo),模擬自然環(huán)境下拍攝時的亮度差異,僅改變圖像的亮度。5)縮換變化(Zoom):按照一定比例放大或縮小圖像,有助于識別多種尺度下的目標(biāo)。6)添加噪聲(Add Noise):對圖像添加一定的噪聲可以得到新的圖像,本文對圖像添加椒鹽噪聲和高斯噪聲,模擬拍攝不同清晰條件的樣本。增強后的樣本數(shù)據(jù)集為:細菌性斑點病989張,斑枯病945張,黃曲病1 086張,早疫病1 129張,晚疫病953張,花葉病952張,輪斑病1 036張,健康1 259張。
本文所使用的試驗平臺為Ubuntu 16.04LTS,內(nèi)存為16GB,搭載Intel? Core? i7-6700hq,@ 2.4GHz x8 處理器,顯卡NVIDIA GeForce 960m(4G),采用深度學(xué)習(xí)框架Tensorflow1.4[19]和Keras2.1[21]。
AlxeNet發(fā)表于2012年,并以顯著優(yōu)勢獲得了年度ILSVRC競賽冠軍。AlexNet網(wǎng)絡(luò)要求輸入圖像的尺寸為(224×224×3),共計8層。第一層接受圖像輸入后,經(jīng)過卷積層、局部響應(yīng)歸一化層和最大池化層,輸出形狀為(27×27×96)的張量并向下傳遞;第二層的數(shù)據(jù)流向依次為卷積層、最大池化層和局部響應(yīng)歸一化層,輸出張量形狀為(13×13×256);第三層和第四層分別只包含一個卷積層,經(jīng)過2層的卷積操作后輸出形狀為(13×13×384);第五層的數(shù)據(jù)流向依次為卷積層和最大池化層,輸出形狀為(6×6×256);第六層和第七層為全連接層,每層各有神經(jīng)單元4 096個(6×6×256=4 096),文獻[29]中作者為減輕過擬合,在第六層和第七層設(shè)置了dropout,取值為0.5;第八層為輸出層。
AlexNet用到的諸多技巧為卷積神經(jīng)網(wǎng)絡(luò)的工業(yè)化應(yīng)用奠定了基礎(chǔ),但AlexNet整個網(wǎng)絡(luò)模型包含6億3000萬個連接,6 000萬個參數(shù)和近65萬個神經(jīng)元,過多的參數(shù)使模型在訓(xùn)練中極易出現(xiàn)過擬合現(xiàn)象。采用Tensorflow框架訓(xùn)練完畢后的模型文件652 MB,嚴重限制了AlexNet在移動平臺的應(yīng)用。
針對AlexNet模型的局限性、番茄病害識別的難點及移動平臺存儲空間和運算速度有限的應(yīng)用需求,在保證病害識別模型準確率的前提下,盡可能縮減模型大小、提升運行效率。
2.2.1 改進設(shè)計步驟
1)去除局部響應(yīng)歸一化層
局部響應(yīng)歸一化(local response normalization, LRN)來源于神經(jīng)生物學(xué)中的側(cè)抑制機制,即被激活的神經(jīng)元會抑制相鄰的神經(jīng)元,歸一化的目的是起到“抑制”作用。在卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展中,LRN逐漸被摒棄,經(jīng)典的卷積模型VGGNet、ResNet、GoogleNet等都去除了LRN結(jié)構(gòu)。VGGNet作者在其2014年的論文中指出:LRN沒有提升卷積網(wǎng)絡(luò)在ILSVRC數(shù)據(jù)集上的性能,卻增加了運算時間。基于上述原因Multi-Scale AlexNet模型去除了LRN結(jié)構(gòu)。
2)修改全連接層
全連接層通常置于卷積神經(jīng)網(wǎng)絡(luò)的后端,起到分類的作用。在用于圖像識別時,會使得特征權(quán)值過于密集,從而造成模型的過擬合,增加模型訓(xùn)練的難度。近年來的研究[20-24]表明,通過對網(wǎng)絡(luò)結(jié)構(gòu)的高效設(shè)計,可以通過簡化全連接層減少模型的參數(shù)。參考已有研究成果[13],對Multi-Scale AlexNet全連接層做了去除fc6、fc7,添加平均池化的結(jié)構(gòu)設(shè)計。
3)添加多種感受野尺寸
對輸入圖像用不同尺寸的卷積核進行卷積,可以同時提取多種局部特征,得到不同特征上的響應(yīng)。深度卷積神經(jīng)網(wǎng)絡(luò)中,底層卷積提取邊緣、顏色、紋理等簡單信息,高層卷積完成特征的抽象,卷積層越靠后,提取的信息越接近目標(biāo)對象[30]。
AlexNet模型中的第一層采用了11×11的大尺寸卷積核,通常認為在底層設(shè)置大尺寸卷積更趨向于響應(yīng)粗粒度特征 (如邊緣、輪廓特征)[15]。識別番茄葉部的不同病害時,需要考慮如下問題: 1)病害發(fā)病初期,病斑微小,捕捉細節(jié)紋理困難,造成模型的過擬合,增加模型訓(xùn)練難度。微小的顏色差異(細粒度特征)是區(qū)分不同病害的關(guān)鍵。圖1中分別代表發(fā)病早期的番茄細菌性斑點病、輪斑病、早疫病、晚疫病、斑枯病、花葉病、黃曲病和健康葉片,每幅圖像中圓圈部分代表葉片的發(fā)病部位,病斑微小,與健康葉片的差異不大,病斑的邊緣、輪廓等信息不明顯,肉眼難以區(qū)分。2)不同病害在發(fā)病的某個階段表現(xiàn)出相似的顏色、紋理、輪廓特征。圖2表示細菌性斑點病、早疫病、斑枯病3種病害發(fā)病圖中晚期。3種病害的病斑中心都呈現(xiàn)出棕色的斑點,斑點外圍變黃并向四周蔓延。3種病害在顏色、輪廓和紋理等方面表現(xiàn)出一定的相似性。3)同一種病害在不同發(fā)病階段,病癥差異明顯。圖3代表番茄花葉病的早、中、晚發(fā)病圖,和番茄早疫病的早、中、晚發(fā)病圖。隨著病情持續(xù),病斑輪廓、邊緣差異加大,葉片在輪廓、顏色、紋理等方面均表現(xiàn)出明顯的差異。已有的相關(guān)病害識別文獻[2-4,13,15,29,31]在識別多種病害時,鮮少考慮以上問題。
綜上所述,識別番茄葉部病害類別,既要考慮不同病害的細粒度特征,又要考慮不同病害的粗粒度特征,綜合提取多種特征是表征病害動態(tài)變化的關(guān)鍵。因此在Multi-Scale AlexNet模型第一層設(shè)置不同尺寸的卷積核,以改善網(wǎng)絡(luò)底層對不同粒度特征的響應(yīng)。
圖1 番茄典型病害早期發(fā)病葉部圖像
圖2 番茄細菌性斑點病、早疫病、斑枯病葉部圖像
圖3 番茄花葉病、早疫病在不同階段的發(fā)病圖
采用4種不同尺度 (1×1)、(3×3)、(5×5)和(7×7),個數(shù)分別為32、32、16和16的卷積核并行提取樣本圖像特征,然后合并為同一個張量繼續(xù)向下傳遞。這四種尺寸的卷積核在VGGNet、Inception系列、ResNet中被廣泛使用,充分驗證了其在圖像識別、目標(biāo)定位中的優(yōu)越性。因采用了多尺寸卷積結(jié)構(gòu)。
2.2.2 模型結(jié)構(gòu)與參數(shù)設(shè)置
Multi-Scale AlexNet共計6層,部分參數(shù)設(shè)置參考原AlexNet模型,整個網(wǎng)絡(luò)模型的詳細結(jié)構(gòu)和參數(shù)如圖4所示。
圖4 Multi-Scale AlexNet結(jié)構(gòu)與參數(shù)
移動平臺的性能約束,要求識別模型在保證精度的同時快速響應(yīng)用戶的操作,并盡可能壓縮模型運行的內(nèi)存需求,以便于提供良好的用戶體驗。因此采用移動端較敏感的3個指標(biāo)評價識別系統(tǒng)的性能。
2.3.1 平均識別準確率
平均識別準確率(average accuracy, AA)是檢驗?zāi)P托阅艿淖钪匾笜?biāo)。
2.3.2 前向傳播速率和反向傳播速率
模型的運行速率是影響模型應(yīng)用的重要指標(biāo)。前向傳播速率(forward propagation rate, FPR)指樣本數(shù)據(jù)從輸入網(wǎng)絡(luò)到輸出結(jié)果所用的時間,前向傳播速率越短,表示模型識別速度越快。反向傳播速率(backward propaga-ti-on rate, BPR)指網(wǎng)絡(luò)權(quán)重與偏置從輸出層到輸入層更新一輪所用的時間,反向傳播速率越短,表示模型更新迭代的速度越快,有利于模型的訓(xùn)練和更新。
2.3.3 內(nèi)存需求
內(nèi)存需求是影響模型在移動平臺應(yīng)用的重要指標(biāo)。移動平臺內(nèi)存空間有限,運行消耗的內(nèi)存過大會導(dǎo)致應(yīng)用啟動慢、后臺易殺死、系統(tǒng)更新耗費流量等問題,嚴重影響用戶的使用體驗。因此在保證精度的同時,盡可能壓縮模型大小,是模型在移動平臺應(yīng)用的關(guān)鍵。
對比試驗均采用AdamOptimizer優(yōu)化更新參數(shù),初始學(xué)習(xí)率設(shè)定為0.003,損失函數(shù)為交叉熵(cross-en-tropy),權(quán)值初始化方法采用Xavier,偏置全部初始化為0,分類層采用softmax函數(shù),每個模型更新迭代(epo-ch)1 200次,每個批次(BatchSize)32個樣本,訓(xùn)練過程中,每次迭代輸入之前會隨機打亂(shuffle)。以增強后的8 349張圖像為基準數(shù)據(jù)集,訓(xùn)練集、驗證集、測試集比例為7:2:1。
本文設(shè)計了5種試驗方案(表1所示)進行性能分析。
表1 試驗方案
2.4.1 改進后性能分析
1)局部響應(yīng)歸一化層對模型的影響
由表2可知,去除LRN層后,模型大小無變化,識別準確性僅下降0.6個百分點,但前向傳播速率和反向傳播速率顯著加快。因此后續(xù)對比試驗以方案2為基礎(chǔ)去除LRN層。
表2 各試驗方案性能對比
2)全連接層設(shè)計對模型的影響
去除LRN層后,分別將全連接層修改為全局平均池化和全局最大池化后的試驗對比。
由方案2、3、4可知,AlexNet模型的參數(shù)幾乎全部集中于全連接層,重新設(shè)計全連接層后,模型大小僅相當(dāng)于原來的4.3%,模型大小縮減為30.2 MB。方案5的內(nèi)存需求比原始AlexNet的內(nèi)存需求652 MB降低了95.4%。簡化全連接層不僅提升了準確性,也提升了模型的前向傳播速率和反向傳播速率,適于模型在移動平臺的應(yīng)用。由表2可知,添加全局平均池化后的模型準確率最高,故后續(xù)改進以方案3為基礎(chǔ)在全連接層采用全局平均池化。
3)多尺度感受野對模型的影響
引入多尺度感受野后的AlexNet模型在測試集上的準確率提升了3.2個百分點,表明引入多尺度感受野后模型提取的特征更能準確的表征不同病害。由于采用了多個較小尺寸的卷積核,模型參數(shù)減少,模型運行所需的內(nèi)存需求降低,但多個卷積操作稍微增加了模型的運行時間。
2.4.2 與其他識別模型對比
選取2類識別模型進行對照試驗。一類是基于傳統(tǒng)模式識別的方法[31],該方法在病害診斷領(lǐng)域應(yīng)用廣泛。另一類是基于深度學(xué)習(xí)的方法,近年來已在病害識別、分割等領(lǐng)域初步應(yīng)用。
1)與傳統(tǒng)模式識別方法的對比與分析
對照試驗的設(shè)計過程參考文獻[31],該文獻設(shè)計了一種基于顏色、紋理加SVM的病害識別方法。數(shù)據(jù)集包含7種病害樣本早、中、晚3個不同的發(fā)病階段,訓(xùn)練集、驗證集、測試集比例為7:2:1。由于傳統(tǒng)模式識別方法在特征提取、圖像分割部分不支持GPU加速,2種方法的對比試驗在相同的CPU上進行,識別時間表示識別單張圖像的平均用時,重復(fù)600輪。試驗結(jié)果(表3)表明:Multi-Sc-ale AlexNet對圖像的輸入要求低,能在更短的時間內(nèi)完成病害識別任務(wù),在保留背景且不進行病斑分割的條件下,其在識別早、中、晚3個不同發(fā)病階段的病害葉片時,均取得較高的識別準確率,且整體識別準確率達到92.7%。
表3 Multi-Scale AlexNet與傳統(tǒng)模式識別方法的試驗對比
傳統(tǒng)模式識別方法對圖像的輸入要求苛刻,在進行分類之前,圖像需要經(jīng)過去背景、病斑分割等復(fù)雜流程,這些預(yù)處理流程嚴重影響了模型的識別速度和識別精度,且提取有限的顏色、紋理、形狀特征不能準確地反映病害特征的動態(tài)變化。同種病害在不同的發(fā)病階段其顏色、紋理、形狀差異明顯,導(dǎo)致傳統(tǒng)模式識別方法在識別不同發(fā)病階段的病害時,準確性存在較大差異;而不同病害又具有一定的相似性,因此其整體識別準確率偏低。
2) 與其他卷積神經(jīng)神經(jīng)網(wǎng)絡(luò)的對比與分析
目前采用卷積神經(jīng)網(wǎng)絡(luò)進行病害識別的文獻較少,本文選取了3種具有代表性的卷積結(jié)構(gòu)進行對比試驗。第一種是基于MobileNet的識別方法,該方法谷歌于2017年發(fā)布,是一種小尺寸、高精度的卷積模型,能夠滿足移動平臺的圖像識別需求;第二種是基于彈性動量的卷積神經(jīng)網(wǎng)絡(luò)方法[29],該方法在LeNet-5[32]的基礎(chǔ)上改進得來,其在識別果體病害圖像方面取得了較好的效果;第3種是基于SequeezeNet的識別方法,該方法通過高效的卷積設(shè)計,在保證精度的同時極大的縮減了模型大小。對比試驗在相同的GPU上測試輸入單張圖像(Batch-Si-ze=1)的平均耗時,共測試600輪,對比后果見表4。
表4 Multi-Scale AlexNet與其他卷積網(wǎng)絡(luò)模型的試驗對比
試驗結(jié)果表明,LeNet-5準確性最差,原因在于LeNet-5要求圖像的輸入尺寸較低,病害圖像在壓縮后大量的有用信息被丟棄導(dǎo)致其準確率只有27.4%。MobileNet在未經(jīng)任何優(yōu)化的前提下,依然得到了91.9%的準確率,表明其所采用的深度可分卷積(Depthwise Convolutional)單元具有一定的泛化性。番茄病斑在中晚期開始擴大和蔓延,由于MobileNet和SequeezeNet大量采用1×1和3×3的小尺寸卷積核,因此其在識別發(fā)病中期和晚期的圖片時準確率均低于Multi-Scale AlexNet, 表明增加多種尺度感受野有利于識別不同發(fā)病階段的病害。由于MobileNet采用的深度可分離卷積單元和SequeezeNet采用的fire model結(jié)構(gòu),網(wǎng)絡(luò)內(nèi)部均涉及數(shù)量眾多的小尺寸卷積操作和頻繁的特征拼接,故耗時較長。Multi-Scale AlexNet相比與MobileNet和SequeezeNet,圖像輸入尺寸一致,識別時間更短,準確率最高,綜合三種評價指標(biāo),更適合在移動平臺識別不同發(fā)病階段的番茄病害。
以Multi-Scale AlexNet模型為基礎(chǔ),開發(fā)基于Android平臺的番茄葉部病害識別系統(tǒng)。系統(tǒng)的設(shè)計流程如圖5所示。Multi-Scale AlexNet要求輸入格式為彩色圖像,用戶采集任意尺寸上傳后,系統(tǒng)通過縮放將圖像尺寸統(tǒng)一為224×224×3。由于Multi-Scale AlexNet模型分類層采用的是softmax函數(shù),該函數(shù)會輸出各類別的概率分布,系統(tǒng)會把最大概率值所對應(yīng)的標(biāo)簽作為結(jié)果向用戶返回。由于在圖像輸入環(huán)節(jié)存在諸多不確定性,此處設(shè)定閾值為0.5,當(dāng)最大類別標(biāo)簽的概率值大于或等于0.5時,向用戶返回識別結(jié)果,概率值小于0.5時,請求用戶重新輸入一張圖片。出于交互友好性考慮,圖像的輸入提供現(xiàn)場拍攝和本地上傳2種方式,識別結(jié)果除了向用戶直接展示,也可以將識別結(jié)果以截圖的形式保存于本地,方便用戶查看,系統(tǒng)運行界面如圖6所示。
圖5 番茄病害識別系統(tǒng)流程設(shè)計
圖6 基于Android的病害識別系統(tǒng)界面
系統(tǒng)完成后用自采集樣本(87張,取自測試集)進行工程化測試,測試結(jié)果如表5所示。
表5 Android平臺番茄葉部病害識別系統(tǒng)應(yīng)用測試
識別系統(tǒng)能夠在普通安卓平臺完成5幀/s左右的識別速度,由于自采集樣本較開源數(shù)據(jù)集背景復(fù)雜,因此測試結(jié)果準確率偏低。后續(xù)將加入基于深度學(xué)習(xí)的快速定位、分割等算法,排除背景干擾,提升實踐性能。
本文在分析AlexNet結(jié)構(gòu)和詳細參數(shù)的基礎(chǔ)上指出其存在的不足,結(jié)合8種番茄葉部圖像樣本的識別難點及移動端對病害圖像識別模型的運行要求,設(shè)計了Multi-Scale AlexNet模型,并基于此模型實現(xiàn)Android端的識別系統(tǒng)。去除局部響應(yīng)歸一化層LRN、簡化全連接層的設(shè)計能夠加快識別模型的運行速率,縮減模型所需參數(shù);引入多尺度感受野提取特征能更準確地表征不同病害,也有利于提升不同發(fā)病階段病害的識別準確率。與傳統(tǒng)模式識別方法及其他卷積神經(jīng)網(wǎng)絡(luò)模型的對比試驗顯示,該模型能較好地平衡識別準確率和運行所耗的內(nèi)存需求,運行效率高,模型的平均識別準確率達到92.7%?;谠撃P蛯崿F(xiàn)的番茄病害識別系統(tǒng),能夠在普通安卓平臺完成5幀/s的識別速度,并在自采集樣本上達到89.2%的識別準確性,初步滿足移動平臺番茄病害識別的生產(chǎn)需求。
[1] 蘇春國. 番茄常見病蟲害綜合防治建議[J]. 農(nóng)民致富之友, 2017(23): 155.
[2] 劉濤,仲曉春,孫成明,等. 基于計算機視覺的水稻葉部病害識別研究[J]. 中國農(nóng)業(yè)科學(xué),2014,47(4): 664-674.Liu Tao, Zhong Xiaochun, Sun Chengming, et al. Recognition of rice leaf diseases based on computer visi-on[J]. Scientia Agricultura Sinica, 2014, 47(4): 664-674. (in Chinese with English abstract)
[3] 王美麗,牛曉靜,張宏鳴,等. 小麥葉部常見病害特征提取及識別技術(shù)研究[J]. 計算機工程與應(yīng)用,2014,50(7):154-157.Wang Meili, Niu Xiaojing, Zhang Hongming, et al. Research on feature extraction and recognition of common diseases of wheat leaf[J]. Computer Engineering and Applications, 2014, 50(7): 154-157. (in Chinese with English abstract)
[4] 王獻鋒,張善文,王震,等. 基于葉片圖像和環(huán)境信息的黃瓜病害識別方法[J]. 農(nóng)業(yè)工程學(xué)報嗎,2014,30(14):148-153.Wang Xianfeng, Zhang Shanwen, Wang Zhen, et al. Recognition of cucumber diseases based on leaf image and environmental information[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2014, 30(14): 148-153. (in Chinese with English abstract)
[5] Yi D, Lei Z, Li S Z. Age Estimation by multi-scale convolutional network[C]// Asian Conference on Computer Vision. Springer, Cham, 2014: 144-158.
[6] Yang H F, Lin B Y, Chang K Y, et al. Automatic age estimation from face images via deep ranking[C]// Proc. British Machine Vision Conference. 2015.
[7] Rothe R, Timofte R, Gool L V. DEX: Deep EXpectation of apparent age from a single image[C]// IEEE International Confe-rence on Computer Vision Workshop. IEEE, 2016: 252-257.
[8] Girshick R. Fast R-CNN[C]// IEEE International Conference on Computer Vision. IEEE, 2015:1440-1448.
[9] Ren S, Girshick R, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Trans Pattern Anal Mach Intell, 2015, 39(6):1137-1149.
[10] Redmon J, Divvala S, Girshick R, et al. You only look once: unified, real-time object detection[C]// Computer Vision and Pattern Recognition. IEEE, 2016:779-788.
[11] Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[C]// European Conference on Computer Vision. Springer, 2016:21-37.
[12] Redmon J, Farhadi A. YOLO9000: Better, Faster, Stronger[C] // Conference on Computer Vision and Pattern Recognition.IEEE, 2017:6517-6525.
[13] 楊國國,鮑一丹,劉子毅. 基于圖像顯著性分析與卷積神經(jīng)網(wǎng)絡(luò)的茶園害蟲定位與識別[J]. 農(nóng)業(yè)工程學(xué)報,2017,33(6):156-162.Yang Guoguo, Bao Yidan, Liu Ziyi. Localization and recognition of pests in tea plantation based on image saliency analysis and convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(6): 156-162. (in Chinese with English abstract)
[14] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[C]// International Conference on Neural Information Processing Systems. Curran Associates Inc. 2012: 1097-1105.
[15] 孫俊,譚文軍,毛罕平,等. 基于改進卷積神經(jīng)網(wǎng)絡(luò)的多種植物葉片病害識別[J]. 農(nóng)業(yè)工程學(xué)報,2017,33(19):209-215.Sun Jun, Tan Wenjun, Mao Hanping, et al. Recognition of multiple plant leaf diseases based on improved convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(19): 209-215. (in Chinese with English abstract)
[16] Lin M, Chen Q, Yan S. Network In Network[C]//International Conference on Learning Representations. 2014:1-10.
[17] 王艷玲,張宏立,劉慶飛,等. 基于遷移學(xué)習(xí)的番茄葉片病害圖像分類[J]. 中國農(nóng)業(yè)大學(xué)學(xué)報,2019,24(6):124-130. Wang Yanling, Zhang Hongli, Liu Qingfei, et al. Image classification of tomato leaf diseases based on transfer learning[J]. Journal of China Agricultural University, 2019, 24(6): 124-130. (in Chinese with English abstract)
[18] Aravind K R, Raja P, Aniirudh R. Tomato crop disease classification using pre-trained deep learning algorithm[J]. Procedia Computer Science, 2018, 133: 1040-1047.
[19] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition[EB/OL]. [2014-12-19]. https://arxiv. org/abs/1409. 1556.
[20] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]// IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770-778.
[21] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]// IEEE Conference on Computer Vision and Pattern Recognition, 2014:1-9.
[22] Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]// International Conference on Machine Learning. 2015: 448-456.
[23] Szegedy C, Vanhoucke V, Ioffe S, et al. Rethinking the inception architecture for computer vision[C]// Computer Vision and Pattern Recognition. IEEE, 2016:2818-2826.
[24] Szegedy C, Ioffe S, Vanhoucke V, et al. Inception-v4, Inception-ResNet and the impact of residual connections on learning[C]// Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence, 2016:4278-4284.
[25] Howard A G, Zhu M, Chen B, et al. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications[EB/OL]. [2017-01-17]. https://arxiv. org/abs/1704. 04861.
[26] Iandola F N, Han S, Moskewicz M W, et al. SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size[EB/OL]. [2016-11-4]. https://arxiv. org/abs/1602. 07360.
[27] Bruzzone L, Serpico S B. Classification of imbalanced remote-sensing data by neural networks[J]. Pattern Recognition Letters, 1997, 18(11): 1323-1328.
[28] Pulgar F J, Rivera A J, Charte F, et al. On the impact of imbalanced data in convolutional neural networks performance[C]// International Conference on Hybrid Artificial Intelligence Systems. Springer, Cham, 2017: 220-232.
[29] 譚文學(xué),趙春江,吳華瑞,等. 基于彈性動量深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的果體病理圖像識別[J]. 農(nóng)業(yè)機械學(xué)報,2015,46(1):20-25.Tan Wenxue, Zhao Chunjiang, Wu Huarui, et al. A deep learning network for recognizing fruit pathologic images based on flexible momentum[J]. Transactions of the Chinese Society for Agricultural Machinery, 2015, 46(1): 20-25. (in Chinese with English abstract)
[30] 李松,魏中浩,張冰塵,等. 深度卷積神經(jīng)網(wǎng)絡(luò)在遷移學(xué)習(xí)模式下的SAR目標(biāo)識別[J]. 中國科學(xué)院大學(xué)學(xué)報, 2018,35(1):75-83.Li Song, Wei Zhonghao, Zhang Bingchen, et al. Target recognition using the transfer learning-based deep convolutional neural networks for SAR images[J]. Journal of University of Chinese Academy of Sciences, 2018, 35(1): 75-83. (in Chinese with English abstract)
[31] 秦豐,劉東霞,孫炳達,等. 基于圖像處理技術(shù)的四種苜蓿葉部病害的識別[J]. 中國農(nóng)業(yè)大學(xué)學(xué)報,2016,21(10):65-75. Qin Feng, Liu Dongxia, Sun Bingda, et al. Recognition of four different alfalfa leaf diseases based on image processing technology[J]. Journal of China Agricultural University, 2016, 21(10): 65-75. (in Chinese with English abstract)
[32] Lecun Y, Boser B, Denker J S, et al. Backpropagation applied to handwritten zip code recognition[J]. Neural Computation, 2014, 1(4): 541-551.
Tomato leaf diseases recognition based on improved Multi-Scale AlexNet
Guo Xiaoqing, Fan Taojie, Shu Xin
(,,210095,)
The symptoms of the same tomato disease in different stages are obviously different, and different diseases show some similarities. Traditional pattern recognition methods can not reflect the dynamic changes of the pathological characterization, and the practicability is poor. To solve this problem, this paper proposed a Multi-Scale AlexNet recognition model for mobile platform based on convolutional neural network (CNN), and implemented a tomato leaf disease image recognition system for agricultural workers based on Android. Many parameters and large memory utilization of traditional AlexNet model are unfit for mobile platform, this paper adjusted the network structure of the traditional model by removing the local response normalization(LRN) layer, modifying the full connection layer, setting up different convolution kernel extraction features, designed a multi- scale recognition model based on the AlexNet. The model consists of 6 layers. It can optimize the training time and memory utilization and achieve high precision. After removing the LRN layer, there was a 30% decrease in running time. Extending the single convolution kernel into multi-scale (1′1,3′3,5′5,7′7) convolution kernel then fused at the first layer, removing full connection layer 6 and 7, and taking the place of global average pooling layer, then the model size was only 30.2 M. The forward propagation rate (FRP) and backward propagation rate (BPR) were reduced, and the global average pooling is better than the global maximum pooling on recognition accuracy. So the Multi-Scale AlexNet model used global average pooling in the 5th layer. In image preprocessing phase, in order to avoiding over fitting of the trained model caused by the unbalanced distribution of sample numbers, we had zoomed, flipped, color jittering, add noise and rotated the original pictures of dataset randomly to get the augmented dataset, and used 70% of the pictures as the train dataset and the rest as the validation dataset(20%) and test dataset(10%). These pictures were quantized to 224′224 dpi for Multi-Scale AlexNet training, and the original dataset and augmented dataset were used to train models. In order to validate the performance of the proposed model, comparative tests were done between Multi-Scale AlexNet and traditional pattern recognition method. It repeated 600 tests. The results showed that the CNN model achieved 92.7%, the high average recognition accuracy of each disease and each disease in the early, middle and late stages. Compared with the other CNN Net model(MobileNet, SequeezeNet, LeNet-5), the Multi-Scale AlexNet achieved the highest recognition accuracy, and reached 95.8% on the late stage disease dataset, but the SequeezeNet model used less memory. The MobileNet and SequeezeNet model reached lower recognition accuracy on the middle and late stages dataset, that because their convolution size was small. The recognition system was implemented on Android platform, and then test was done on field dataset. The results showed that the average recognition accuracy was 89.2%, its less value was due to thecomplex background of image. Then the system can meet the requirements of disease image recognition on mobile platform in production practice. The research results provide a method for disease image recognition based on convolution neural network, and provide a reference for automatic identification of crop diseases and engineering applications.
image processing; disease; image recognition; algorithms; convolutional neural network; tomato diseases; multi-scale
10.11975/j.issn.1002-6819.2019.13.018
S511
A
1002-6819(2019)-13-0162-08
2018-09-24
2019-02-18
中央高?;緲I(yè)務(wù)費項目(KYZ201547);國家自然科學(xué)基金項目(61602248);江蘇省自然科學(xué)青年基金項目(BK20160741)
郭小清,山西繁峙人,博士,講師,主要從事基于視覺的作物病害診斷、機器學(xué)習(xí)方面研究。Email:gxqing@njau.deu.cn
郭小清,范濤杰,舒 欣. 基于改進Multi-Scale AlexNet的番茄葉部病害圖像識別[J]. 農(nóng)業(yè)工程學(xué)報,2019,35(13):162-169. doi:10.11975/j.issn.1002-6819.2019.13.018 http://www.tcsae.org
Guo Xiaoqing, Fan Taojie, Shu Xin. Tomato leaf diseases recognition based on improved Multi-Scale AlexNet[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(13): 162-169. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2019.13.018 http://www.tcsae.org