国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于顏色矩的土豆、玉米、蘋果葉片病害異常檢測

2022-10-26 08:41:20張梓婷韓金玉張東輝李銘源鄧志平孫曉勇
浙江農業(yè)學報 2022年10期
關鍵詞:分塊準確率像素

張梓婷,韓金玉,張東輝,李 晗,李銘源,鄧志平,孫曉勇,*

(1.山東農業(yè)大學 信息科學與工程學院,山東 泰安 271000; 2.浙江省農業(yè)科學院 病毒學與生物技術研究所,浙江 杭州310021)

目前,我國共有667種外來入侵生物,這些外來入侵生物每年給我國造成的經濟損失高達數千億元。其中,以農作物為主要對象的外來入侵生物是引發(fā)未知葉片病害的重要途經之一。例如,番茄褐色皺果病毒(,ToBRFV)隨進口種子從發(fā)生國流入國內,會寄生于番茄和辣椒中,并引發(fā)嚴重的葉片病害問題。

目前,關于農作物病害表型組的研究有很多,主要是針對不同病害進行識別與分類,其中,采用深度學習方法的識別、分類準確率較高。但是,這些模型在構建時需要大量的病害數據。眾所周知,農作物病害的發(fā)病時間、地點特殊,采集時需耗費大量的人力物力。另外,如果遇到未知病害,很可能因缺乏相關數據,導致無法準確識別,從而錯過最佳預警時間。為此,本研究將異常檢測方法引入到農作物葉片病害識別中,以解決上述問題。

異常檢測只需要訓練正常數據集,大大減少了所需的訓練樣本的種類和數目。同時,不管是已知病害還是未知病害,異常檢測方法均可實現識別與預警,有助于提高防控效果的精準性。一般地,異常檢測任務是用一個僅包含正常樣本的訓練數據集={,,…,}訓練一個正常模型,然后將測試集中不符合正常模型的樣本判斷為異常?,F有的異常檢測方法可分為4類:基于統(tǒng)計的異常檢測方法,基于距離的異常檢測方法,基于聚類的異常檢測方法和基于密度的異常檢測方法。目前,異常檢測多用于網絡入侵行為、欺詐行為檢測、病癥判別、故障診斷等方面,在農作物葉片圖像異常檢測上,在本研究檢索范圍內,未見相關報道。

圖像分塊方法多用于圖像識別與檢測。2014年,Wu等將異物纖維圖像進行圖像分塊處理,用于預先判斷哪個圖像塊包含目標異物圖像,然后通過Ostu法(大津閾值法)分割圖像塊,最終將分割圖像塊連接,獲得完整清晰的異物纖維目標圖像。2016年,袁淵等采用分塊思想提取圖像塊的紋理特征并與顏色特征進行整合,利用支持向量機進行訓練建模,實現了安防視頻對樹葉遮擋的異常檢測。2020年,苗榮慧等在菠菜重疊葉片與雜草分類識別中,提出了基于圖像分塊和重構的方法,以提升雜草識別的準確率。2021年,王國屹等在針對機場跑道異物的無人機自主檢測與識別中,提出了基于背景差分的機場跑道異物分塊檢測與跟蹤算法。

本研究提出一種基于圖像塊對農作物葉片病害進行異常檢測的方法。首先,通過訓練正常數據集進行聚類與分塊操作;然后,通過提取每塊圖像RGB或HSV顏色空間下的顏色矩信息,構建異常比對模型;最后,利用測試集和構建模型進行效果檢驗。結果表明,本文所提出的方法僅需對正常數據集進行訓練,就可以精準識別病害葉片,在土豆數據集中的識別正確率可達89%以上,在玉米和蘋果數據集中的識別正確率可達95%以上。本研究所提出的方法也可用作分析農田環(huán)境下無人機采集并檢測葉片異常的算法。

1 材料與方法

1.1 試驗材料

試驗所使用的土豆、玉米和蘋果葉片數據集,均下載于Kaggle網站(https://www.kaggle.com/search?q=plant+disease+in%3Adatasets)。因為獲取的數據集來自不同文件夾,且由不同人員獲取,所以首先調用Hashlib模塊對這些數據集進行圖像去重操作。將去重后的土豆、玉米、蘋果數據集的分布情況整理于表1。

表1 數據集分布情況

試驗的硬件環(huán)境為:Intel Core CPU i5-6300 CPU@2.30 GHz,12 GB內存,Nvidia GeForce GTX 960M 圖形適配器。軟件環(huán)境為Windows 10 操作系統(tǒng),開發(fā)環(huán)境為Anaconda3,開發(fā)語言為Python 3.7,使用 pycharm進行調試。

將試驗樣本分為訓練集和測試集,其中,訓練集由正常葉片圖像組成,測試集由病害葉片圖像與正常葉片圖像組成。將正常葉片圖像按照8∶2的比例拆分為訓練集和測試集。將土豆、玉米、蘋果上訓練集和測試集樣本數量的分配結果整理于表2。其中,異常樣本的具體組成如下:在土豆上,早疫病和晚疫病樣本各10張;在玉米上,普通銹病、灰斑病、葉枯病樣本各50張;在蘋果上,黑腐病樣本70張,雪松銹病樣本55張,黑星病樣本86張。

表2 訓練集與測試集的樣本數量分布

1.2 數據集預處理

為了盡可能地提高試驗效率,有必要對數據集進行預處理,以提高分析準確率。為此,主要進行以下3種預處理——圖像去噪、圖像分割和圖像截取。

1.2.1 圖像去噪

由于相機拍攝出來的圖像存在一些噪點,所以需要首先對圖像進行去噪處理,從而更好地展現圖像特征。圖像噪點不僅影響RGB特征值的提取,而且還會影響圖像分割準確率。有效的圖像去噪可以降低誤差。

圖像去噪的具體步驟如下:(1)使用OpenCV讀入圖像數據;(2)使用5×5的中值濾波器濾除椒鹽噪聲;(3)將圖片數據類型轉換為灰度圖;(4)對圖像進行直方圖均衡化處理;(5)在直方圖均衡化后進行二值化處理;(6)對二值化圖像進行腐蝕,腐蝕掉葉片部分得到背景部分,然后再對背景進行膨脹;(7)將二分圖像與腐蝕后的背景圖相減,得到有效信息部分與部分噪聲;(8)對葉片部分進行膨脹,得到較清晰的圖像。

1.2.2 圖像分割

共引入2種圖像分割方法:一種是GrabCut算法,另一種是使用OpenCV進行顏色分割。針對不同的數據集采取最適合的圖像分割算法。

GrabCut算法是Rother等提出的。具體地,在OpenCV中,使用函數cv2.grabCut()實現以下過程:(1)在圖片中定義含有物體的矩形框,本研究手動設置rect=(9, 9, 240, 240),將矩形外的所有東西都確認為背景。(2)計算機會根據給定的rect參數做初始標記,標記出前景和背景像素。(3)使用高斯混合模型(Gaussians mixture model, GMM)[式(1)]對前景和背景建模。

(1)

式(1)中:是RGB三通道向量;π表示第個高斯模型的樣本數在總樣本中的占比;表示第個高斯模型的概率模型公式,和∑為模型中的2個參數,分別為均值和協(xié)方差矩陣。

(4)根據函數中的mask參數,GMM學習和創(chuàng)建新的像素分布,未知像素被標為可能的前景或可能的背景(根據其他硬標記像素的顏色統(tǒng)計和它們之間的關系確定)。(5)根據像素分布創(chuàng)建1個圖,圖中的節(jié)點是像素,另外還有2個節(jié)點——源節(jié)點和匯節(jié)點,將每個前景像素與源節(jié)點相連,將每個背景像素與匯節(jié)點相連。(6)與源節(jié)點和匯節(jié)點連接的像素的邊的權重由像素是前景或者背景的概率決定,像素之間的權重由邊的信息或者像素的相似度決定,如果像素顏色有很大差異,它們之間的邊的權重就比較低。(7)用最小割算法(minimum cut)分割圖像,即用最小成本函數把圖切成2個分開的源點和匯點,其中,成本函數是被切的邊的權重之和。切完以后,將所有連到源節(jié)點的像素稱為前景,將所有連到匯節(jié)點的稱為背景。(8)重復上述過程,直到分類覆蓋。

基于OpenCV的顏色分割步驟如下:(1)加載樣本圖像;(2)使用GUI滑塊獲取HSV最小最大值范圍;(3)顯示原始示例圖像;(4)模糊樣本圖像,并顯示在桌面上;(5)將模糊的圖像轉換為HSV顏色模型;(6)根據使用滑塊選擇的范圍內的值創(chuàng)建蒙版,然后顯示生成的蒙版;(7)使用“形態(tài)轉換”功能清理蒙版,然后顯示生成的蒙版;(8)將最后一個遮罩應用到原始圖像,使感興趣的顏色保持不變;(9)顯示結果圖像。

1.2.3 圖像截取

雖然圖像分割可以降低背景對檢測結果的影響,但仍存在誤差;而且,在進行模型比對時,葉片大小不一也會影響試驗結果。為此,本試驗在圖像分割后又進行了圖像截取操作,以減少背景,更多地展現葉片信息。

1.3 異常檢測算法

農作物葉片病害異常檢測算法如圖1所示。首先,分配訓練集與測試集,讀入圖像并進行預處理操作,具體包括圖像去噪與圖像分割;然后,提取圖像分塊后的RGB或者HSV顏色矩作為圖像特征輸入模型,并通過-means++聚類方法將訓練集分為類,每個類別對應一個模型,用于與測試集圖像特征進行比對;最終,判斷測試圖像異常與否。在該模型中,通過改變聚類數與分塊數來對比檢測準確率,從而實現優(yōu)化。

1.3.1 顏色矩特征提取

顏色矩最早是由Stricker等提出的,其數學基礎在于,圖像中任何的顏色分布均可以用它的矩來表示。由于顏色分布信息主要集中在低階矩中,因此僅采用顏色的一階矩(平均值,mean)、二階矩(方差,variance)和三階矩(斜度,skewness)就足以表達圖像的顏色特征量。圖像的顏色矩一共只需要9個分量(3個顏色分量,每個分量上3個低階矩),與其他的顏色特征相比非常簡潔。

(2)

(3)

(4)

式(2)~(4)中:表示顏色通道,表示圖片中的總像素數,,表示第個像素在第個顏色通道上的像素值,(一階矩)表示第個顏色通道上所有像素的均值,(二階矩)表示第個顏色通道上所有像素的標準差,(三階矩)表示第個顏色通道上所有像素的斜度的3次方根。

分別提取圖像的RGB與HSV兩種顏色通道作為顏色矩特征。

所選圖像為RGB圖像(也叫全彩圖),對應的RGB模型使用3個組件對顏色進行編碼:紅色(R)、綠色(G)和藍色(B)。所選圖片分辨率大小為256 pixel×256 pixel,圖片RGB通道在python(numpy)中的數據構成形狀為(256×256×3),3表示3個顏色通道。在RGB顏色空間下,圖像顏色矩特征向量可表示為

=[,,,,,,,,]。

(5)

HSV模型根據3個分量定義顏色,即色調(H)、飽和度(S)和值(V)。在均勻的空間中,測得的色差(歐幾里得距離)與人類對這種色差的感知成正比。在圖像識別領域,通常會將RGB空間轉換到HSV空間。以土豆葉片的原始圖像為例,轉換后,在HSV色彩空間下的圖像效果如圖2所示。

圖1 算法流程Fig.1 Algorithm flow

在HSV顏色空間下,圖像顏色矩特征向量可表示為

=[,,,,,,,,]。

(6)

1.3.2-means++聚類

-means++算法是NP-hard-means問題的一種近似算法,是一種避免標準-means算法出現不良聚類的方法。

為了提高模型判別的準確率,根據圖像顏色矩特征,在訓練集上使用-means++算法進行聚類,將特征相似的聚為一類。

聚為幾類,就對應幾個參考模型、幾個模型特征,在后續(xù)進行異常比對時,也就需要進行幾次判斷。由于模型考慮了正常圖片集所屬同一塊的所有特征,故具有更好的穩(wěn)健性。

1.3.3 圖像分塊

由上文對顏色矩特征提取的介紹可知,給定一張圖片,就可以提取出該張圖片1×9維的特征向量。本研究要處理的圖片有如下特點:部分圖像內容是固定的(比如背景均為黑色,不發(fā)生病害的部分均可視為正常),而部分內容不斷變化(如病斑或者病區(qū)位置)。為了體現圖像的局部特征,并使得以后能夠對圖像的局部進行靈活處理,特采用圖像分塊策略將圖像分塊,然后提取每個圖像塊的特征。

圖2 RGB(a)到HSV(b)顏色空間的轉換效果示例Fig.2 Example of conversion effect from RGB (a) to HSV (b) color space

利用滑動窗的方式對圖像進行切分,將256 pixel×256 pixel的圖像均分為4塊(每塊128 pixel×128 pixel)、16塊(每塊64 pixel×64 pixel)(圖3)、64塊(每塊32 pixel×32 pixel)(圖3)。

圖3 圖像分塊示意(4×4)Fig.3 Demonstration of image block (4×4)

1.3.4 圖像塊特征均值模型

正常圖片經過聚類后,將屬于同一類的所有正常圖片按照塊求取特征平均值,得到模型特征,聚類數對應模型數。對于某測試圖片,只要其被任意一個模型測試為正常,就判定該測試圖片為正常圖片;若其被所有模型判斷為異常圖片,則判定該測試圖片為異常圖片。

根據求得的均值模型判斷測試圖像異常與否時,需要將測試圖片的特征與正常圖片特征進行比對,計算特征均差:

(7)

式(7)中:為一張圖片的分塊數,為測試圖片第個塊的特征,,為第個模型中第個塊的特征。對于第個模型,給定閾值,若某測試圖片基于式(7)的特征均差小于該閾值,說明該測試圖片被第個模型判定為正常圖片,反之被判定為異常圖片。

1.4 評估指標

為了評估不同方法的性能,本研究引入最常用的正確率()和漏警率(MAR)來評價:正確率越高,說明模型的預測能力越好;漏警率越低,表示模型預測異常越準確。

(8)

(9)

式(8)、(9)中:表示異常樣本被檢測為異常,即真正例的數量;表示正常樣本被檢測為正常,即真負例的數量;表示正常樣本被檢測為異常,即假正例的數量;表示異常樣本被檢測為正常,即假負例的數量;表示MAR的值。

2 結果與分析

2.1 圖像處理結果

2.1.1 圖像分割結果

首先,對所有圖像數據集進行去噪。以土豆葉片為例,處理結果如圖4所示,可見圖片中的噪點經過去噪處理后已消除。

圖4 去噪效果示意圖Fig.4 Example of denoising effect

對去噪后的圖像進行圖像分割操作。結果發(fā)現,對不同葉片,應使用不同的圖像分割方法。也就是說,對于不同葉片,GrabCut和基于OpenCV的顏色分割法有不同的批量處理結果。對玉米灰斑病、葉枯病,和蘋果健康葉片、黑星病,建議使用基于OpenCV的顏色分割方法;對玉米健康葉片和普通銹病,無需分割;對其余葉片,建議使用GrabCut分割。針對不同樣本的分割結果示例如圖5所示。

圖5 圖像分割結果示例Fig.5 Demonstration of image segmentation results

2.1.2 圖像截取結果

調節(jié)合適的截取范圍,處理結果如圖6所示。由于玉米健康葉片幾乎不存在背景區(qū)域,因此不進行截取。

2.2 異常檢測試驗

為了保證數據的隨機性,分別選取5種互不相交的測試集進行試驗,并將結果進行平均后,確定在3類植物上使用何種顏色矩,最終得出最優(yōu)模型所對應的參數設置,如訓練閾值、聚類數與分塊數。

圖6 圖像截取結果示例Fig.6 Demonstration of image capture results

2.2.1 分割數據集試驗結果

試驗發(fā)現:對比最高準確率與最低漏警率發(fā)現,對于分割后的土豆數據集,使用RGB顏色矩作為圖像特征的效果優(yōu)于HSV顏色矩;對于分割后的玉米和蘋果數據集,使用HSV顏色矩作為圖像特征的效果要優(yōu)于RGB顏色矩。試驗對比結果如表3~5所示。

在試驗條件下,對于土豆葉片來說,當聚類數為2、不分塊時,模型的準確率最高(85.2%),漏警率最低(13.0%)(表3);對于玉米葉片來說,當聚類數為3、分塊數為4時,模型的準確率最高(92.3%)(表4);對于蘋果葉片來說,當聚類數為3、不分塊時,模型的準確率最高(76.2%)(表5)。其中玉米和蘋果當模型達到最高準確率時,漏警率沒達到最低。綜上可知,在土豆與玉米上,最高準確率都達到了85%以上,但仍有提升空間;在蘋果上,并未實現很好的效果。

表3 在土豆上分割數據集的測試正確率與漏警率

表4 在玉米上分割數據集的測試正確率與漏警率

表5 在蘋果上分割數據集的測試正確率與漏警率

2.2.2 截取數據集試驗結果

對分割后的數據集進行截取后再進行試驗(表6~8),在3種植物上的效果都得到了提升。其中:在土豆上的提升幅度不及其他2種植物,其最高準確率僅提升4百分點,漏警率降低約一半;而在玉米與蘋果上,其最高準確率均提升至95%以上,且漏警率降至0。

表6 在土豆上截取數據集的測試正確率與漏警率

表7 在玉米上截取數據集的測試正確率與漏警率

表8 在蘋果上截取數據集的測試正確率與漏警率

在土豆、玉米、蘋果上,效果最佳的模型所對應的聚類數均為2,因此其對應的閾值也有2個。具體地:在土豆上,其閾值分別為9.23、18.3;在玉米上,其閾值分別為70.22、54.67;在蘋果上,其閾值分別為21.46、10.01。

2.2.3

試驗發(fā)現,對圖片進行截取后的效果優(yōu)于分割后。在玉米上,對應的最優(yōu)模型為2聚類、4分塊;在蘋果上,對應的最優(yōu)模型為2聚類、64分塊。與玉米、蘋果相比,土豆上的訓練樣本數量較少,經截取后,其準確率仍有待提升。

每次遞減200個剪切后的玉米、蘋果訓練樣本數,保持測試集個數不變,使用最佳模型觀察準確率與漏警率的變化(圖7)。當正常數據集在1 000張左右時,檢測異常葉片的準確率可達92%以上,可以作為其他物種選取正常葉片數目的標準。

圖7 玉米(a)、蘋果(b)不同訓練樣本數下準確率與漏警率的變化Fig.7 Change of accuracy and missing alarm rate under different training sample quantities on maize (a) and apple (b)

2.2.4 與傳統(tǒng)機器學習模型的效果對比

引入與本算法相同的顏色矩特征,輸入8種傳統(tǒng)機器學習模型,開展準確率與漏警率對比(表9)。在土豆上,ABOD、KNN與CBLOF模型的算法準確率高于本文算法,但是這些算法在玉米與蘋果數據集上的準確率都低于本文算法。綜合來看,本文算法更優(yōu)。

表9 不同模型的效果對比

2.2.5 全部異常數據測試

為了驗證本文方法在異常數據檢測上的有效性,將表2的異常測試集更換為表1中對應作物的全部病害樣本再進行測試。結果發(fā)現,將2 000張土豆異常數據全部用作測試集后,準確率降到約80%,漏警率上升到約20%;將2 540張玉米異常數據全部用作測試集后,準確率仍約99.8%,漏警率仍為0;將1 526張?zhí)O果異常數據全部用作測試集后,準確率約為99%,漏警率仍為0。可以看出,除土豆外,對于玉米和蘋果來說,放入全部異常數據后,模型的效果無明顯下降,驗證了本文算法在異常數據檢測上的有效性。

3 結論與展望

本研究提出一種新的算法,實現了對于來自公共數據集的3種農作物葉片病害的異常檢測。該算法首先通過提取RGB或HSV顏色矩信息對正常數據集進行聚類(聚類數對應模型個數);然后進行圖像分塊,提取圖像或圖像塊的RGB或HSV顏色矩信息,構建異常檢測比對模型,計算測試集圖像或分塊后的顏色矩特征,并與構建模型進行比對;最后,通過設定的閾值判斷測試集異常與否。

本研究選取土豆、蘋果、玉米3種農作物作為試驗對象,并通過預處理操作,調節(jié)聚類數與分塊數進行對比,以提高準確率。結果表明,本文方法僅需基于正常數據集的訓練即可以精準識別病害葉片,且其在玉米和蘋果上的效果要優(yōu)于傳統(tǒng)機器學習方法,準確率高達95%以上,漏警率為0。

本研究所提出的方法適用于公開的葉片數據集,但并未涉及受到實際光照等復雜環(huán)境影響的農田葉片數據。下一步,可利用無人機采集農田葉片數據集進行處理與測試,使模型可以更好地應用于農田生產實踐。另外,可考慮使用一些傳統(tǒng)機器學習與深度學習方法與本文方法進行對比,以改進或選擇最適于分析農田環(huán)境下由無人機采集的葉片圖像的算法。

猜你喜歡
分塊準確率像素
趙運哲作品
藝術家(2023年8期)2023-11-02 02:05:28
像素前線之“幻影”2000
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
分塊矩陣在線性代數中的應用
“像素”仙人掌
高速公路車牌識別標識站準確率驗證法
反三角分塊矩陣Drazin逆新的表示
高像素不是全部
CHIP新電腦(2016年3期)2016-03-10 14:22:03
哈密市| 灵宝市| 盐源县| 越西县| 长治县| 南阳市| 福清市| 新沂市| 奉化市| 宝兴县| 通河县| 墨脱县| 武乡县| 阿拉善左旗| 容城县| 石城县| 大田县| 禹城市| 雅安市| 阳新县| 监利县| 绥化市| 公主岭市| 西丰县| 新昌县| 双城市| 馆陶县| 方山县| 拜城县| 闽侯县| 尼勒克县| 大悟县| 黄陵县| 松滋市| 惠东县| 安多县| 沂源县| 孝昌县| 南召县| 全椒县| 武胜县|