程 曦,張友華,陳祎瓊,吳云志,樂 毅
(安徽農業大學 信息與計算機學院,安徽 合肥 230036)
深度學習在儲糧害蟲的特征提取與分類上的應用
程 曦,張友華,陳祎瓊,吳云志,樂 毅
(安徽農業大學 信息與計算機學院,安徽 合肥 230036)
為了實現對儲糧害蟲的有效防治,發展一種正確高效的害蟲識別方法是非常重要的。在計算機視覺與深度學習技術的協助下,通過深度卷積神經網絡建模進行害蟲圖像識別。在該方法下實現了儲糧害蟲特征的自動提取,并在基于圖像的7個類別的儲糧害蟲識別上取得了98.81%的識別正確率。因此,基于深度學習的儲糧害蟲特征提取與分類方法具有很高的實用價值,可以進一步推廣到實際的儲糧害蟲防治和糧倉管理中來。
儲糧害蟲;特征提取;圖像識別;卷積神經網絡;深度學習
儲糧害蟲一直是危害糧倉安全的嚴重問題之一,據統計每年因霉變和儲糧害蟲造成的損失占儲糧總量的0.2%~0.3%[1]。對儲糧害蟲進行快速有效的識別是儲糧害蟲防治工作的前提和基礎。相比低效的人工鑒別,借助計算機視覺對儲糧害蟲進行識別是一種高效且廉價的手段。基于支持向量機,BP神經網絡等機器學習方法的識別技術已被應用在了儲糧害蟲的識別上,其中方明等[2]使用BP神經網絡對4類糧倉害蟲基于5個特征實現分類,準確率達到了95%,胡玉霞等人[3]使用模擬退火算法對支持向量機分類器的參數實現優化,通過SAA-SVM分類器對9類儲糧害蟲實現分類,準確率為95.56%,張紅濤等[4]使用了蟻群算法篩選儲糧害蟲二值化圖像的17個形態學特征,并使用SVM實現分類。張建華等[5]通過使用遺傳算法自動選擇最優核函數參數,使支持向量機分類器的分類準確率進一步提升。李文勇等[6]使用有向無環圖多類支持向量機分類器對多姿態害蟲進行特征組的提取與識別。胡祝華等[7]構建了一種采用圖像預處理,形態學開重建和改進Hausdorff距離的模板匹配方法。廉飛宇等[8]使用元胞自動機對儲糧害蟲的圖像邊緣進行檢測,通過RBF神經網絡和支持向量機對儲糧害蟲實現識別。
而上述方法無一例外需要人工選擇特征,因而構建模型的性能往往依賴于特征選擇的優劣,因此使用一種自動特征提取的方法尤為重要。隨著深度學習技術的發展,卷積神經網絡因其在圖像識別上的優異表現引發了廣泛的關注,本研究借助深度卷積神經網絡對儲糧害蟲實現了有效的特征提取,并實現了快速有效的糧蟲分類。
卷積神經網絡起源于1959年Hubel等人對于動物的視覺皮層細胞的研究[9],之后Kunihiko Fukushima提出了神經認知機理論(Neocognitron)[10],構建了卷積神經網絡的雛形,隨后LeCun等[11-12]將卷積神經網絡不斷完善。近年來隨著計算機性能的飛速提升,神經網絡的深度不再局限于只能包含一個隱含層的淺層結構,深度學習技術蓬勃發展。Krizhevsky于2012年提出了一種名為Alexnet的深度卷積神經網絡模型[13],在圖像識別上取得了非常優秀的成果。近幾年來卷積神經網絡的深度不斷加深,出現了VGG Net[14],GoogLeNet[15]以及深度超過150層的深度殘差網絡[16]。此外卷積神經網絡還被發展到了目標檢測領域,不再局限于從事分類任務,諸如任少卿和Girshick R等人發展的FastR-CNN[17]以及后來的FasterR-CNN[18]算法。
深度卷積網絡已在各個領域得到了廣泛的應用,張晴晴等將深度卷積神經網絡應用在了連續語音識別上[19],Schroff F等構建了Facenet[20],將其應用在了人臉識別的領域,Kim Y等人則利用深度卷積神經網絡實現了句子分類[21],Zhong Z等使用Googlenet成功實現了手寫漢子的識別[22],而這項技術甚至還被Karpathy A等應用在了視頻的分類上[23]。
卷積神經網絡在結果主要包括輸入層、卷積層、池化層、全連接層以及輸出層。
在卷積層的運算過程中,一個指定大小的窗口在某層的特征圖上按照指定滑動步長滑動,并使與之連接的卷積核和該區域內的圖像矩陣做阿達馬積,其工作原理可以由下式表示:
(1)

卷積神經網絡的輸出層是由一個softmax分類器實現分類,輸出結果是一個n維的概率向量,在訓練時使用隨機梯度下降法對互熵損失實現優化。損失函數可以由下式表示:
(2)

實驗研究對象為扁谷盜、大谷盜、谷蠹、黑菌蟲、鋸谷盜、綠豆象、米象這七類在中國較為常見的儲糧害蟲。從互聯網收集以上7個類別的害蟲圖像,并經過篩選整理,整合成實驗所用的訓練集與測試集。
由于圖像采集于互聯網,各個類別儲糧害蟲的圖像尺寸大小不一,因此在預處理過程中需要統一圖像文件的長為227像素。
將所有訓練集與測試集的圖片整合并轉化為LMDB數據庫,提高訓練和測試時對對應圖片集的讀取速度和效率,同時可以減少空間占用。
對實驗圖像的去均值操作可以由下式表示:
(3)
在去均值過程中,將害蟲圖像RGB三個通道的矩陣減去均值μ,使得數據分布轉移到0點周圍,便于卷積神經網絡的訓練。
為了更好地理解卷積神經網絡的特征提取過程,分析不同的卷積核發揮的作用,將其部分層級進行可視化[24](P818-833)是具有重要意義的。一般的卷積神經網絡層級可視化的過程主要包括反池化,反激活和反卷積操作[24](P818-833),[25]。
圖1所示為研究對象之一的大谷盜,以其為例通過深度卷積神經網絡對其進行自動化的特征提取。第一個卷積層上的卷積核的可視化如圖2所示。

圖1 大谷盜圖

圖2 卷積核可視化圖像
第一個卷積層的可視化如圖3所示,在該卷積圖中可以較為明顯地看出卷積神經網絡學習到的特征,能夠辨識大谷盜的邊緣輪廓。相對的,背景噪聲在特征圖像中被削弱與忽略,因此卷積神經網絡成功地實現了對儲糧害蟲的特征提取。
第一個池化層的特征圖如圖4所示,從圖中可以看出卷積神經網絡對大谷盜測試圖像的特征提取主要集中在大谷盜主體圖像的邊緣部分。

圖3 卷積層1可視化圖像

圖4 池化層1可視化圖像
第二個卷積層的可視化圖像如圖5所示,從第二個卷積層的可視化圖像中可以看出受激活的以邊緣為主,進一步濾去了噪聲并強化了有效特征的學習。從第二個池化層的可視化圖像如圖6所示。隨著深度的進一步加深,特征圖變得較為抽象,難以直接理解,可讀性較低,因此本研究不再對更深層級做可視化。

圖5 卷積層2可視化圖像

圖6 池化層2可視化圖像
研究中使用了如表1所示的計算機設備進行深度卷積神經網絡的訓練與測試,通過開源的caffe作為深度學習框架,使用fine tuning方式訓練神經網絡,從不同全連接層深度與不同池化模型兩個方面進一步尋找最優的適用于改儲糧害蟲圖像集的深度卷積神經網絡模型。
一般情況下,隨著網絡深度的加深,深度卷積神經網絡對訓練集的擬合程度會越好,因此為了尋找一種性能較高的網絡結構,選取了不同深度的全連接層進行研究測試。研究中在Alexnet的基礎上重新構建出兩種包含不同深度全連接層的網絡模型,其基本結構如圖5和圖6所示。

表1 實驗設備
圖9為兩種不同深度全連接層的損失函數對比,其中點虛線線條表示兩層全連接層,實線線條表示三層深度的全連接層。
在測試集上對儲糧害蟲圖像檢測的正確率如圖10所示,其中點虛線表示擁有兩層全連接層的正確率,實線表示三層全連接層結構的測試正確率。

圖7 兩層FC層的模型結構

圖8 三層FC層的模型結構

圖9 不同深度全連接層下的損失函數

圖10 不同深度全連接層下的測試集正確率
兩層與三層全連接層的顯存占用量對照如表2所示。

表2 不同深度全連接層的硬件占用
觀察發現在三層全連接層的網絡下迭代約400次左右時,其在測試集上的正確率基本達到了穩定狀態,相比兩層全連接層收斂略早,但是相對的其正確率低于兩層全連接層的網絡模型。此外由于層數的繼續增加,參數數量也隨之增長,由此產生的結果時候對于GPU內的顯存占用率進一步提高。因此兩層全連接層的網絡結構要優于三層全連接層的網絡結構。
池化層是仿照生物的視覺系統,對特征圖像實現降維,減小神經網絡中的參數數量,除此之外池化還可以起到降噪的作用,一定程度上降低特征圖上對識別有干擾的噪聲信息。不同池化模型對卷積神經網絡的參數收斂速度和識別準確率具有一定的影響[26],因此在模型的訓練過程中需要選擇適當的池化模型。
Max pooling和Average pooling是深度學習中常用的兩種池化模型[27],其中前者是對所取kernel內的數據取出最大值來表征整個kernel,而后者則是對其取平均值。
池化層可以由下式表示。
(4)
圖11為兩種不同池化模型的深度卷積神經網絡的損失函數對比,其中點虛線線條表示Max pooling,實線線條表示Average pooling。

圖11 兩種池化模型下的損失函數
兩種不同池化模型的深度卷積神經網絡的測試正確率對比如圖12所示,其中點虛線線條表示Max pooling,實線表示Average pooling。

圖12 兩種池化模型下的測試集識別正確率

池化模型MaxpoolingAveragepooling顯存占用1000次迭代時間2581MB224s2520MB219s
實驗發現從硬件占用角度來說,averagepooling的顯存占用稍低且訓練速度略快,但二者并無顯著性差異,而采用max pooling模型下的神經網絡無論是在損失函數上還是在正確率上都明顯優于averagepooling,因此在對儲糧害蟲的圖像集的識別上,max pooling池化模型相對更具優勢。
結合上述實驗,得出了最優的組合為2層全連接層與maxpooling的組合,在對上述組合的測試中得到了平均正確率為98.81%,各組合正確率的對照如表4所示。

表4 實驗平均正確率
本研究將深度卷積神經網絡應用在了儲糧害蟲的特征提取與分類上,實現了害蟲特征自動化提取。此外本研究還進一步探討了全連接層深度以及不同池化模型對深度卷積神經網絡的識別性能的影響,最終對儲糧害蟲識別的正確率達到了98.81%,相較前人研究又有了進一步的提升。
此外,深度卷積神經網絡還需要進一步優化和發展,縮小參數規模,使其在保證識別精度的同時可以做到更小的內存空間占用和更快的訓練與識別速度。在實際應用中可以使用Tensorflow開源深度學習平臺,兼顧移動端的開發,使之能夠與糧倉物聯網系統相結合,實現實時的儲糧害蟲防控。
[1]宋洪遠,張恒春,李婕,等.中國糧食產后損失問題研究——以河南省小麥為例[J].華中農業大學學報(社會科學版),2015(4):1-6.
[2]方明,周龍.基于BP神經網絡的儲糧害蟲分類識別研究[J].武漢輕工大學學報,2009,28(4):70-73.
[3]胡玉霞,張紅濤.基于模擬退火算法-支持向量機的儲糧害蟲識別分類[J].農業機械學報,2008,39(9):108-111.
[4]張紅濤,毛罕平,邱道尹,等.儲糧害蟲圖像識別中的特征提取[J].農業工程學報,2009,25(2):12053-12054.
[5]張建華,朱春華.基于遺傳算法和支持向量機的儲糧害蟲圖像識別[J].安徽農業科學,2010,38(17):8833-8834.
[6]李文勇,李明,陳梅香,等.基于機器視覺的作物多姿態害蟲特征提取與分類方法[J].農業工程學報,2014,30(14):154-162.
[7]胡祝華,趙瑤池,白勇,等.基于圖像處理技術的儲糧害蟲快速識別[J].安徽農業科學,2014(30):10784-10787.
[8]廉飛宇,付麥霞,蘇庭奕.一種新的儲糧害蟲圖像邊緣檢測的元胞自動機法[J].糧食儲藏,2016(6):1-6.
[9]Hubel D H, Wiesel T N. Receptive Fields of Single Neurones in the Cat’s Striate Cortex[J]. The Journal of Physiology, 1959, 148(3): 574-591.
[10]Fukushima K. Neocognitron: A Self-organizing Neural Network Model for a Mechanism of Pattern Recognition Unaffected by Shift in Position[J]. Biological Cybernetics, 1980, 36(4):193-202.
[11]Lecun Y, Boser B, Denker J, et al. Backpropagation Applied to Handwritten Zip Code Recognition[J]. Neural Computation, 1989, 1(4):541-551.
[12]Y. LeCun, L. Bottou, Y. Bengio, et al. Gradient-based Learning Applied to Document Recognition. Proc. of IEEE, 1998, 86(11): 2278-2324.
[13]Krizhevsky A, Sutskever I, Hinton G E. ImageNet Classification with Deep Convolutional Neural Networks[J]. Advances in Neural Information Processing Systems, 2012, 25(2):2012.
[14]Simonyan K, Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition[J]. Computer Science, 2014:1-14.
[15]Szegedy C, Liu W, Jia Y, et al. Going Deeper with Convolutions[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015: 1-9.
[16]He K, Zhang X, Ren S, et al. Deep Residual Learning for Image Recognition[J]. Computer Science, 2015:1-12.
[17]Girshick R. Fast R-CNN[C]//Proceedings of the IEEE International Conference on Computer Vision. 2015: 1440-1448.
[18]Ren S, He K, Girshick R, et al. Faster R-CNN: Towards Real-time Object Detection with Region Proposal Networks[C]//Advances in Neural Information Processing Systems. 2015: 91-99.
[19]張晴晴,劉勇,潘接林,等.基于卷積神經網絡的連續語音識別[J].工程科學學報,2015,37(9):1212-1217.
[20]Schroff F, Kalenichenko D, Philbin J. Facenet: A Unified Embedding for Face Recognition and Clustering[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015: 815-823.
[21]Zhong Z, Jin L, Xie Z. High Performance Offline Handwritten Chinese Character Recognition Using GoogLeNet and Directional Feature Maps[J]. 2015:846-850.
[22]Kim Y. Convolutional Neural Networks for Sentence Classification[J]. arXiv preprint arXiv:1408.5882, 2014:1-6.
[23]Karpathy A, Toderici G, Shetty S, et al. Large-scale Video Classification with Convolutional Neural Networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2014: 1725-1732.
[24]Zeiler M D, Fergus R. Visualizing and Understanding Convolutional Networks[M]// Computer Vision - ECCV 2014. Springer International Publishing, 2014.
[25]Zeiler M D, Taylor G W, Fergus R. Adaptive Deconvolutional Networks for Mid and High level feature learning[C]// IEEE International Conference on Computer Vision, ICCV 2011, Barcelona, Spain, November. DBLP, 2011:2018-2025.
[26]劉萬軍,梁雪劍,曲海成.不同池化模型的卷積神經網絡學習性能研究[J].中國圖像圖形學報,2016,21(9):1178-1190.
[27]Boureau Y, Bach F, Lecun Y, et al. Learning Mid-level Features for Recognition[C]// Proc. International Conference on Computer Vision and Pattern Recognition. 2010:2559-2566.
ApplicationofDeepLearninginFeatureExtractionandClassificationonStored-grainPests
CHENG Xi, ZHANG Youhua, CHEN Yiqiong, WU Yunzhi, YUE Yi
(CollegeofInformationandComputer,AnhuiAgriculturalUniversity,Hefei230036,China)
Developing a correct and efficient stored-grain pest recognition method is very important when confronted with the problem of preventing and controlling the damage caused by stored-grain pests. With the help of computer vision and deep learning technology, we can use deep convolutional neural networks to process the images of stored-grain pests. The method could automatically extract the features of pests images and it also achieved an accuracy rate up to 98.81% on the image dataset of 7 different classes of pests. Therefore, the method of feature extraction and image recognition based on deep learning is very valuable in practical use and can be further extended to the practical stored-grain pests control and granary management.
stored-grain pests; feature extraction; image recognition; convolutional neural networks; deep learning
TP24
A
1009-9735(2017)05-0067-06
2017-04-17
安徽省自然科學基金項目“基于基因表達式編程的作物生長建模方法研究”(1508085MF110);茶樹生物學與資源利用國家重點實驗室開放基金(SKLTOF20150103)。
程曦(1996-),男,江蘇南京人,本科生,研究方向:深度學習與計算機視覺;通信作者:樂毅(1971-),男,安徽蕪湖人,講師,碩士,研究方向:人工智能、模式識別和生物信息學。