李警波 李密生 唐博 張正陽



摘 要:為了實現黃瓜斑病的識別,綜合應用計算機數字處理技術與圖像識別技術進行黃瓜病斑識別研究。使用樹莓派3B硬件開發平臺,融合Python開發和圖像識別等先進技術,設計了黃瓜病斑識別系統,該系統具有功能強大、使用方便、識別精確等優勢。文中介紹了系統的整體框架,樹莓派的硬件設計,圖像識別的關鍵技術和流程,同時該系統在傳統測量葉片面積的基礎上,還增加了黃瓜病斑的面積計算,根據相應病害面積計算出黃瓜病害的等級。該黃瓜病斑識別系統具有一定理論參考價值和實用價值,能夠有效提高黃瓜種植栽培的工作效率與黃瓜產量。
關鍵詞:樹莓派3B;Python;處理技術;圖像識別;黃瓜病斑;葉面積;栽培
0 引 言
隨著計算機數字處理技術、信息技術的飛速發展,以及互聯網+時代的到來,通過樹莓派和Python的融合實現黃瓜病斑的識別系統已成為可能。近年來,國內外越來越多的研究人員對各種蔬菜的病斑進行了相關研究和實驗,并取得了較好效果,同時各種病斑也得到了很好的控制。但對于大棚作物,尤其是黃瓜病害的研究較少。
樹莓派為Python編程提供了一個成本低廉、穩定可靠的開發平臺,其允許樹莓派的開發者將項目擴展到令人難以置信的規模[1]。
黃瓜最早在農業大棚里廣泛種植,具有較高的營養價值,且生長成熟周期較短,由于其具有眾多優點,成為飯桌上的美味佳肴,也成為美容界的明星作物。針對黃瓜病害的識別很大程度上仍然停留在依靠人眼觀察階段,存在較大主觀性,識別結果不精確且速度較慢,無法滿足人們的需求。因此,將黃瓜病斑識別技術應用于農業領域以解決上述問題[2],開發出滿足精準農業要求的黃瓜斑病識別系統。
1 硬件組成
基于樹莓派和Python的黃瓜病斑識別系統主要包含供電模塊、存儲模塊、檢測模塊和處理模塊。
病斑識別系統中檢測模塊對被檢測對象的圖像進行采集,并且對采集到的圖片進行分割等預處理。處理模塊對預處理后的葉片圖像進行灰度化、去噪等深度處理,計算葉片的病斑面積,之后將病斑面積根據病斑的等級標準進行識別和提示。存儲模塊為樹莓派的底層系統、檢測到的圖片初始數據和處理識別后的數據提供存儲支持。供電模塊采用鋰電池設備,既能提供穩定電源,又為病斑識別系統使用方式的自由度提供了有力支持。鋰電池供電方式的應用使其不僅可以在實驗室使用,又可以直接走向一線場景進行采集和識別。
葉片掃描儀由樹莓派3B電路板、LCD顯示屏幕、攝像頭和電池供電系統組成,其中樹莓派為硬件和軟件的集成核心,負責連接各部分,提供相應的拍照和計算服務。
黃瓜病斑識別系統的核心在于樹莓派。樹莓派3B電路板是一款搭載Debian操作系統的微型主機,它將擴充存儲卡作為存儲器,主板含有一個百兆以太網接口和WiFi模塊以供信息流傳輸,同時還具有一個CSI2接口攝像頭,用于圖像采集及與40個GPIO引腳連接,電源線接入樹莓派BOARD引腳2(5 V接口),GND接入BOARD引腳14,拍照鍵接入BOARD引腳14(GPIO4),關機重啟按鍵接入BOARD引腳40(GPIO29)。通過USB電源線連接至樹莓派3B的MicroUSB供電接口,觸發電源開關為掃描儀供電。CPU處理器用于處理信息,GPU處理器使顯卡減少了對CPU的依賴,可進行部分原本屬于CPU的工作,如圖像處理。該電路板還含有1 GB內存用于存儲數據和圖片,主板外設有一個開關鍵用于對樹莓派的設備進行關機和開機操作,通過圖片捕獲鍵對黃瓜葉片進行拍攝,由電池對樹莓派的設備供電,借助LCD顯示屏顯示拍攝的黃瓜葉片。系統結構如圖1所示。
2 病斑識別
通過掃描儀的攝像頭采集數據,將采集的圖片進行預處理,之后進行病斑識別,并對黃瓜病斑識別圖像進行病斑等級分類。
2.1 圖像預處理
由于采集的圖片會受光照等因素影響,所以需采取平滑、濾波等方式對黃瓜病斑識別系統進行預處理操作,以增大病斑圖像和背景反差,去除噪聲,保障后續能夠準確、完整地分割病斑圖像[3]。
圖像分割即按照圖像中記錄內容的特點將圖像分割成不同區域,以便后期對其進行加工、分析、處理[4]。圖像分割對后期病害等級分類和準確計算至關重要。常見的圖像分割方法包括最大類間方差法(OTSU算法)、固定閾值法、迭代閾值法等,本文選用最大類間方差法(OTSU算法)對圖像進行分割處理。
作為一種簡單且效果理想,并具有較強適應能力的一種分割方法,OTSU算法在分割圖像的過程中非常有利,目前很多應用領域都已普及了該種算法用于圖像分割[5]。
OTSU算法于1979年首次被日本研究人員提出,其根據灰度特征將圖像分為兩部分,即目標和背景。目標和背景之間的差異越大,圖像兩個部分之間的差異越大,因此,選取類間方差最大時的閾值將目標和背景分離[6]。
式中:w0為背景比例,其均值為?0;w1為前景比例,其均值為?1;?為圖像均值;g為類間方差;圖像大小為M·N[7]。運用OTSU算法對黃瓜病斑進行分割的結果如圖2所示。
2.2 深度處理
2.2.1 灰度化
灰度圖像是一種特殊的彩色圖像[8]。經過分割后的黃瓜病斑圖像為彩色圖片,經過灰度化處理后對主要病害區域進行噪聲和紋路處理,其灰度值范圍為0~255。RGB模型中R,G,B分別為三維立體坐標的三個坐標軸,從坐標原點到每個坐標軸的區域為黑色逐漸變為白色的分布情況,而灰度圖像只需要灰度等級值R=G=B。RGB轉灰度化的方法主要包括加權平均法、平均法、最大值法等。
2.2.2 去噪
黃瓜圖像在采集和處理過程中會引入一些噪聲,使圖像變得模糊不清,增加實驗誤差,為避免這些影響,需要對圖像進行去噪處理。本文使用中值濾波法對圖像去噪,不僅方便快捷[9],還能較好地保留圖像的關鍵細節。
中值濾波是最常見的濾波手段,首先尋找圖像中的某一點值,然后計算該點周圍域中的各點中值并用其代替,從而消除圖像鄰域內的單一噪聲[10]。
目標范圍內像素的總個數為n,(x, y)為掩膜中心的灰度值,當n為奇數時,將(n+1)/2作為當前像素(x, y)的值;若n為偶數時,將中間2個像素值和的一半作為當前像素的值[11]。
2.3 面積計算
通過引入標準參考物,對采集的黃瓜葉片進行預處理和深度處理,得到黃瓜葉片與參照物間像素的對應關系,從而求出待測黃瓜葉片的面積,根據公式,便可以求出黃瓜葉片的實際面積。
2.4 病斑等級確定
病斑等級主要依據黃瓜葉片的病害面積與整個黃瓜葉片面積的比值來確定,共分為如下6個等級。
(1)0級:若病斑占整個葉片面積的百分比為0,則說明黃瓜葉片目前處于健康狀態;
(2)1級:若病斑占整個葉片面積百分比在0~5%之間,則說明目前黃瓜葉片處于發病初級期,應該做好防護工作;
(3)3級:若病斑占整個葉片面積百分比在5%~10%之間,則說明黃瓜葉片目前處于發病期,應該制定合理的方案,進行抑制;
(4)5級:若病斑占整個葉片面積百分比在10%~25%之間,則說明黃瓜葉片目前處于發病蔓延期;
(5)7級:若病斑占整個葉片面積百分比在25%~50%之間,則說明黃瓜葉片目前處于發病嚴重期;
(6)9級:若病斑占整個葉片面積百分比高于50%,則說明黃瓜葉片目前處于發病肆虐期。
根據對黃瓜病斑的等級判定結果,對黃瓜采取合理的防治措施。
3 結 語
基于樹莓派和Python的黃瓜病斑識別系統具有高擴展性,其在Linux的底層系統對圖像捕獲和圖像數據處理語言的支持極為豐富,為研發者提供了諸多便利。利用樹莓派結合Python語言完成黃瓜病斑的識別,通過對黃瓜病斑葉片的采集、預處理和病斑的等級判定,對有嚴重葉片的病斑及時做到防御和抑制工作,以保證黃瓜產量。該系統具有較好的經濟效益與社會效益。
參考文獻
[1]許禮捷,葛華,陳紅.基于樹莓派和Python的智能家居系統設計[J].沙洲職業工學院學報,2019,22(1):1-5.
[2]楊頌,張少偉,孫培壯,等.基于STM32和OV5640的無人機農情監測系統[J].物聯網技術,2018,8(7):22-25.
[3]關瑩.基于圖像處理的水稻葉部病害快速識別方法研究[D].哈爾濱:東北農業大學,2018.
[4]李長有.青椒果實識別系統的設計與實現[D].哈爾濱:哈爾濱工業大學,2017.
[5]孫佳佳.基于限制灰度范圍的OTSU算法的皮膚鏡圖像分割[D].南陽:南陽師范學院,2018.
[6]孔聰雅.基于分數階螢火蟲優化的OTSU圖像分割算法研究[D].銀川:寧夏大學,2019.
[7]孫宏佳.基于機器視覺的花生種子自動識別系統設計[D].哈爾濱:哈爾濱理工大學,2014.
[8]李向志.遙感圖像海上典型人造目標識別系統研究[D].大連:大連理工大學,2019.
[9]趙世達.基于機器視覺的草莓識別技術研究[D].武漢:武漢輕工大學,2018.
[10]李寧.手眼伺服作業機器人平臺系統的研究[D].秦皇島:河北科技師范學院,2017.