彭懷鋒 許鎖鵬


摘要:病蟲害對穩定糧食產量、增加油料自給率等方面造成了嚴重威脅,需要引起廣泛關注和高度重視。早期病蟲害精準識別是預警和防控的關鍵,長期以來,對大多數傳統農作物的蟲害識別主要依賴于人工檢測。文章為提升農作物病蟲害檢測的準確性與效率,設計了一種基于YOLOv5的農林害蟲檢測系統。該系統采用深度學習實現農林蟲害檢測,具有可視化界面,方便使用者操作,并可對農林中檢測出的蟲害給出提示和警報。
關鍵詞:YOLOv5;蟲害檢測;模型;預警
中圖分類號:TP29? 文獻標志碼:A
0 引言
傳統的害蟲檢測識別主要是通過田間調查法和物理誘捕法。田間調查法主要是依靠人工走訪判斷,由相關的專業人員到蟲害現場進行害蟲取樣,并對其進行分析,從而得出水稻的蟲害類別及其危害情況。物理誘捕法則是通過提前在農林中布防相關的誘捕器,使用這些誘捕器收集的害蟲樣本,進行分析。這2種方法的使用都需要大量的人力和物力,且方法的準確率低、主觀性強,難以滿足當前農作物健康生長的需要。
農作物產量和質量的穩定受到蟲害問題的嚴重威脅。確保有效防治蟲害的首要任務是對蟲害的高效、準確識別與定位[1],因此,開展半自動或全自動大規模病蟲害精準識別研究與應用尤為重要。隨著人工智能技術的不斷進步,深度學習在蟲害檢測與定位領域的應用日益受到學者們的關注。深度學習技術通過提取圖像特征,結合可視化方法,實現了對目標對象的精準識別與定位[2]。目前,以 Faster-RCNN[3]為代表的Two-Stage目標檢測方法和以YOLO系列為代表的 One-Stage目標檢測方法,在目標檢測識別領域均得到了廣泛應用,為提高農林蟲害識別的準確性和效率提供了有力支持。為了提高農作物病蟲害檢測的精確度和效率,本文深入探討了基于YOLOv5技術的農林害蟲檢測系統。該系統配備了直觀的用戶界面,旨在簡化操作流程,使得使用者能夠便捷地運用,從而輔助農戶采取相應措施。
1 系統整體設計
軟件系統的整體設計方案如下:首先,對設計過程中涉及的關鍵技術進行剖析;其次,針對目標用戶群體的具體需求,詳盡分析各項功能要求;最后,確定軟件設計的整體邏輯與思路。
1.1 技術分析
該檢測系統以Python語言為核心進行構建,并采用PyTorch框架進行模型的訓練。PyTorch框架憑借靈活性、穩定性和高效性,顯著提升了系統的開發效率和性能穩定性。在模型選擇方面,本文采用YOLOv5模型。YOLOv5模型檢測精度高,所占存儲空間小,僅占用27 MB的存儲空間[4]。作為一款One-Stage類模型,YOLOv5的運行速度迅捷,并支持在GPU上運行,從而大幅縮減了訓練時間。為了方便用戶操作,該系統采用了PyQt5模塊設計圖像用戶界面。PyQt5是一組由Python編寫的模塊,作為一個跨平臺工具集,能夠在多種主流操作系統上運行[5]。
1.2 功能需求
該系統主要用于農林,其用戶為管理人員和普通用戶,因此,該系統需要有以下功能:實現對視頻進行檢測和實時監測;對發現的蟲害做出提示;對視頻的分析和檢測速度應該盡可能快,減少延遲;系統界面應該簡潔直觀,方便使用者操作[6]。
1.3 視頻檢測設計
首先,啟動軟件運行程序。該程序將調用設備的攝像頭功能,以獲取實時的視頻流數據。其次,程序將對獲取的視頻流進行判斷,確認是否存在有效的視頻輸入[7]。若視頻流正常,程序將進一步對視頻流中的每一幀圖像進行讀取和識別處理。在此過程中,若識別到任何蟲害跡象,系統將立即發出報警提示,同時繼續捕獲并處理后續的實時視頻流數據。然而,若系統無法檢測到有效的視頻流,則將自動退出檢測程序。視頻流檢測流程如圖1所示。
2 模型的訓練
2.1 數據獲取
在數據獲取階段,數據集是從Roboflow[8]上的universe中收集的,總共有4200張圖片。其中,類別標號1~12為longicorn(天牛);13~24為grasshopper(蝗蟲);25~36為bee(蜜蜂);37~48為fly(蒼蠅);49~60為mantis(螳螂)。
2.2 數據集格式轉化和分類
鑒于在Roboflow上收集的數據集未經標注,而YOLOv5的訓練要求每張圖片有對應YOLO(TXT格式)的標簽文件,因此,需進行手動打標簽。筆者利用Roboflow平臺的內置標注功能,在此平臺完成了標注。此外,在模型訓練之前,需將數據集劃分為測試集、訓練集和驗證集3類。在本次數據集中,分配了790張圖片作為測試集,3100張圖片作為訓練集以及310張圖片作為驗證集。
2.3 獲得預訓練權重并訓練模型
為了優化模型訓練的效率,首先加載預訓練的權值,并啟動網絡訓練。YOLOv5框架提供了多種不同尺寸規格的預訓練權重,這些權重經過精心設計和訓練,滿足了用戶多樣化的需求。用戶可以根據自身需求,選擇最合適的預訓練權重版本。
一般而言,預訓練模型的權值文件體積越大,其在后續訓練過程中的精度通常會越高。然而,這也意味著訓練過程可能會消耗更多的計算資源,導致訓練時長相應延長。在本訓練數據集的實踐中,本文選用了yolov5s.pt作為預訓練權重文件。
2.4 模型評估
精確率(Precision)和召回率(Recall)是衡量模型性能的指標,取值范圍為0~1[8]。當這2個指標的值越接近0時,表示模型的質量越差;而越接近1時,則表示模型的質量越高。然而,這2個指標僅從單一角度評價模型性能,因此,在進一步評估模型時,通常會采用均值平均精度(mAP)這一指標。通常,精確率和召回率之間存在負相關關系,當mAP值趨近于0.8時,可以認為該模型的性能相對較好。
3 系統的實現與測試
3.1 系統開發環境測試
經過嚴格篩選和測試,本系統的開發采用了GeForce GTX 3060這一高性能PC級GPU,同時輔以64位Windows11操作系統,確保系統的穩定性和兼容性達到最佳狀態。深度學習庫選用PyTorch作為計算框架,使用anaconda創建虛擬環境;圖形化界面設計采用PyQt5框架實現;系統的開發環境則使用PyCharm集成開發環境進行代碼編輯與調試。
3.2 系統功能實現
通過選擇視頻文件檢測選項,并將待檢測視頻上傳至系統,用戶可在軟件界面上直接查看檢測結果。如圖2所示,檢測結果將標注出每個檢測到的害蟲,并同時展示其置信度。此外,系統將在檢測到蟲害時發出報警,以便用戶及時采取應對措施。
4 結語
農林蟲害檢測是農林治理和解決農林蟲害的基礎,如何快速準確地檢測并識別蟲害是難點之一。采用深度學習技術進行蟲害檢測已經成為害蟲檢測領域的發展趨勢。為了推動深度學習方法在水稻蟲害檢測領域的應用,本文設計了一種基于YOLOv5技術的農林害蟲檢測系統。該系統的實現有效地提高了蟲害預警的效率,降低了農林監管的人工成本。后續,筆者還將繼續研究以下內容:(1)鑒于未來需求的持續演變,該系統將持續進行功能與性能的優化與拓展,旨在提升功能的完備性,以滿足多樣化的使用場景需求。(2)在檢測視頻時,從出現蟲害至系統彈出報警信息,系統會有一定的延時,因此,系統實時性還需要繼續提高。
參考文獻
[1]李嬌,葛艷,劉玉鵬.基于改進YOLOv5的昏暗小目標交通標志識別[J].計算機系統應用,2023(5):172-179.
[2]陳輝東,丁小燕,劉艷霞.基于深度學習的目標檢測算法綜述[J].北京聯合大學學報,2021(3):39-46.
[3]李映松,楊愛英,劉軒,等.基于Transformer改進的Faster-Rcnn倉儲箱體檢測算法[J].自動化與儀器儀表,2022(8):1-6.
[4]李青云,李燕,盧崢松,等.輕量化超參數卷積神經網絡的安全帽檢測算法[J].現代計算機,2022(11):60-66.
[5]劉佳梁.基于Qt5開發的面向工業設備的狀態監視及控制軟件[J].電腦知識與技術,2023(20):70-72.
[6]徐炳文.基于C#的遠程智能視頻監控系統的設計與實現[J].網絡安全技術與應用,2023(10):49-52.
[7]雷明.機器學習:原理,算法與應用[M].北京:清華大學出版社,2019.
[8]COOK J A,RAMADAS V.When to consult precision-recall curves[J].The Stata Journal,2020(1):131-148.
(編輯 王雪芬)
Design of agricultural and forestry pest detection system based on YOLOv5
PENG? Huaifeng, XU? Suopeng
(School of Intelligent Equipment Engineering, Wuxi Taihu University, Wuxi 214064, China)
Abstract:? Diseases and insect pests pose a serious threat to stable grain production and increase the self-sufficiency rate of oil, which needs to be widely concerned and highly valued. Early accurate identification of pests and diseases is the key to early warning and control, for a long time, the pest identification of most traditional crops mainly relies on manual detection. In order to improve the accuracy and efficiency of crop pest detection, a YOLOv5 based agricultural and forestry pest detection system was studied in this paper. The system use deep learning for pest detection in agriculture and forestry, has a visual interface, which is convenient for users to operate, and at the same time gives tips and alerts for detected pests in agriculture and forestry.
Key words: YOLOv5; pest detection; model; warning