藍 宇,王 健,黃中舟,朱彥博,陳 品,曹璐婷
(廣州軟件學院 網絡技術系,廣東 廣州 510990)
準確、快速地識別植物病蟲害的種類是防治植物病蟲害的第一步。長期以來,我國植物病蟲害的監測和鑒定主要依靠專家診斷和來自農民的種植經驗。由于中國龐大的植物種植面積和病蟲害的復雜情況,以及相關領域的專業人員相對較少,可能出現不能及時應對農業病蟲害問題,甚至造成問題報告的延遲和錯誤。而采用深度學習算法訓練推算出的圖像識別方法,通過微信小程序的方式加以呈現,便于對植物病蟲害進行監測和分類。同時該系統具有精度高、實時性好等優點。近年來,隨著我國農業現代化的不斷發展,越來越多的現代化技術和設備被運用到生產中。此外,人工智能的快速發展,特別是其在圖像模式識別領域的優異表現,使以深度學習為代表的技術逐漸成為農業現代化領域的研究重點。
小程序載體的出現,以及其“即用即走”的便利性,這剛好符合我們團隊的設計理念——只需要將用戶最想要的結果提供給他們。同樣,人工智能+小程序的有機結合也是我們團隊的探尋方向之一。是我們整體“智慧農業”解決方法的重要一環,目前小程序數據也可以與我們設計好的智能灌溉系統進行聯通,正式打通“最后一公里”。
基于大量數據的深度學習,小程序集合了九大蔬果類的病蟲害識別算法模型。可以通過拍照或者圖片上傳的方式,將圖片數據上傳至服務器后,經由部署在服務器的算法模型計算得出結果。最后再將結果通過小程序的方式呈現給用戶,以提醒用戶檢測到的病蟲害是哪種,幫助用戶進行抉擇。目前可以實現的蔬果類有玉米、土豆、柑橘、蘋果、櫻桃、番茄、葡萄、草莓、桃子,識別準確率可達到98%左右。當然,算法模型仍處于更新迭代階段,將會不斷優化算法,整合上線的新蔬果。
除了能夠識別病蟲害之外,考慮到用戶可能會在生活當中發現很多足以讓人駐足的花卉。但會苦惱于不知道這些花卉是什么,那么“愛綠小助手”小程序將會滿足你的好奇心。同樣,算法模型當中有著大量訓練完成的花卉數據集,數據集不僅有來自國內某植物研究所的公開數據集,也有國外可供學習使用的數據集。基于以上條件,是足以識別出大部分“美麗卻不知名”的植物。使用過程依然是可以通過拍照或者上傳圖片的方式,將圖片上傳至服務器,識別工作就交給算法模型即可。
它不僅可以將以上所有的識別數據記錄保存至本地(遵循數據隱私保護條約),也是我們團隊朝著“互聯網+”農業新形態發展方向的有機組成部分。您所看到的小程序是作者所設計的智慧農業方案中的一個重要節點,此外其他節點(例如智能灌溉系統等)都將打通數據流合作,與小程序形成互通有無的格局。
(1)本小程序主要的功能為對花卉種類以及植物病蟲害的識別,一方面可以讓用戶在戶外有需要認識到未知花卉的情況下提供有效幫助,另一方面,也希望能夠促進用戶有更好的種植經驗。
(2)本小程序在設計中采用注重用戶體驗的原則,在界面、元素、交互設計等方面都有所體現,具有對應的用戶操作簡易性、交互友好性。
(3)本小程序的操作邏輯以及數據流走向以用戶體驗為原則出發,主要由用戶主動拍照或者上傳植物圖片,小程序將圖片數據上傳至作者部署的服務器(數據上傳過程遵循隱私保護條約),再由服務器內部署完成的算法模型自動識別圖像,最后再由模型將結果返回至小程序端提供給用戶查看。具體如圖1所示。

圖1 “愛綠小助手”小程序功能結構
小程序的logo則是為了體現本小程序“愛綠”的內涵——對植物方面的深入了解,并希望通過對植物的了解延伸到對環境保護意識的提升。這個logo采用了綠色為主要基調,底部是較為荒蕪的地面,通過渲染一層代表生機的淡綠色可以不斷感化身邊的荒漠,并逐漸展現出生機盎然的景色。也是團隊成員為生態環境與社會環境都能夠煥發生機的愿景。如圖2所示。

圖2 “愛綠小助手”logo
小程序中出現的植物元素由本團隊成員自行設計,采用統一的粗體邊框與帶色彩的圖形元素相結合,通過對相應植物特點的采納,設計出對應的植物元素圖標,在使用本小程序的植物病蟲害識別模塊中,使用戶可以直觀地通過圖形元素了解到按鈕對應的植物模塊,增加用戶使用友好程度與產品界面的美觀程度。如圖3所示。

圖3 “愛綠小助手”圖標
2.4.1 常規界面
小程序首頁:點擊右上角(…)按鈕,彈出小程序常規操作框:可對本小程序進行相應分享、收藏、添加、設置、重新進入等操作。
點擊底部菜單欄各個按鈕可以進入對應的界面,依次為“:識別病蟲害”界面“、花卉百科”界面和“我的”界面。
“識別病蟲害”界面可以通過點擊等操作進行對病蟲害的識別。
“花卉百科”界面可以通過點擊等操作進行花卉等植物的識別。
“我的”界面可以進行各項常規操作。
具體界面如圖4所示。

圖4 常規界面設計
2.4.2 識別病蟲害界面設計
在該界面可以通過各種操作對病蟲害做出識別指令。
通過點擊對應植物種類,可以做出其特定的病蟲害識別,此處以玉米病蟲害分析為例。如圖5所示。

圖5 以識別玉米病蟲害分析為例
點擊玉米病蟲害分析按鈕后,彈出對話框,可以選擇“通過手機相冊照片”上傳或“通過手機相機拍攝”上傳,點擊后依次跳轉到對應界面。如圖6所示。

圖6 選擇圖像來源
在圖片上傳完成后等待識別過程,識別成功后跳轉到識別結果界面。結果為識別出可能出現的植物及其病蟲害概率。如圖7所示。

圖7 返回結果值
2.4.3 識別花卉界面設計
在該界面可以通過各種操作對花卉做出識別等一系列指令。
可以通過點擊對應植物百科跳轉到對應植物介紹,此處以“蘭花”為例,在對應界面可以通過向左滑動(ios系統)或向左向右滑動(安卓系統)返回到“花卉識別”界面。如圖8所示。

圖8 花卉百科
可以通過點擊右下方綠色“識別花卉”按鈕進行花卉等植物的識別。如圖9所示。

圖9 選擇圖像來源
點擊該按鈕后自動彈出框,可以選擇“通過手機相冊照片”上傳或“通過手機相機拍攝”上傳,點擊后依次跳轉到對應界面。
在圖片上傳完成后等待識別過程,識別成功后跳轉到識別結果界面,識別結果為識別出可能出現的植物及其概率。如圖10所示。

圖10 返回結果值
整個系統以識別病蟲害功能作為基礎進行設計,且為了方便用戶辨識不同的植物病蟲害,因此設計了一個基于小程序的識別程序。用戶對系統進行操作后,需要對應用有一個操作請求的服務器來處理,同時在操作過程中需要訪問已經存在數據庫的數據集,方便日后的信息維護與整合。
“愛綠助手+”微信小程序主要由四個部分組成:移動端功能模塊、服務器端功能模塊、識別病蟲害模塊、識別花卉模塊。如圖11所示。

圖11 整體架構圖
VGGNet于2014年提出,并在ImageNet1000類圖像定位中獲得第一、第二名,目前仍常用來提取圖像特征。
在網絡深度方面,大卷積可以捕捉到原始紋理細節的特征變化,因為原始圖像的大尺寸可能會產生冗余。此時,Alexnet網絡使用11×11的大卷積核,步長為4像素。由于后期的更深層次可能會在較大的局部范圍內失去特征相關性,Alexnet網絡轉而使用更多的3×3小卷積核來捕捉細節變化。VGGnet使用所有3×3卷積核。
與Alexnet使用3×3大小的池核相比,VGGnet網絡都使用2×2大小的池核,這樣VGGnet可以獲得更詳細的原始圖像信息。另外,采用最大池化方法,更容易捕捉圖像和梯度的變化,使圖像局部特征信息變化更大,可以更好地描述紋理信息等細節。
其中,VGG-16是卷積神經網絡中分類性能優良的網絡之一。VGG-16卷積神經網絡模型結構參數圖如圖12所示。

圖12 VGG-16卷積神經網絡結構參數圖
網絡結構有13個卷積層和3個全連接層。在網絡開始時,輸入一幅224×224的RGB圖像,并淡化了21。然后對圖像卷積一個3×3的卷積核,步長為1像素,空間填充為1像素。池化層執行最大池化,設置窗口大小為2×2,步長為2像素。網絡最終由三個全連接層組成,前兩個全連接層有4096個通道,第三個全連接層包含1000個通道,實現1000種圖像分類。
最大化利用現有的數據資源庫,建立起一個高效并且準確的農業領域專家知識庫以及識別機制,使之具有應時性。
針對現有的訓練數據集進行擴充和整理,盡可能引入不同來源、效果、方面的數據集,使之訓練數據得以增強。或嘗試更多的增強方法,如引入對抗學習因素、擴展圖像訓練維度等等。
優化深度學習算法模型,實現其高效性的特點。嘗試不同的網絡架構,尋找最優的訓練參數,如學習率、迭代次數、批量大小等。