鄭旭康 李志忠 秦俊豪
摘要:植物病害的檢測與識(shí)別是一個(gè)日益發(fā)展的研究領(lǐng)域,隨著機(jī)器學(xué)習(xí)和深度學(xué)習(xí)概念的不斷介入,為農(nóng)業(yè)的發(fā)展提供了重要的技術(shù)支持。然而,目標(biāo)檢測技術(shù)存在著帶標(biāo)注數(shù)據(jù)獲取成本高,且需要大量的人工來對數(shù)據(jù)進(jìn)行標(biāo)注等問題,給技術(shù)的實(shí)際應(yīng)用造成了一定的阻礙。為解決在使用少量已標(biāo)注數(shù)據(jù)及大量未標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練模型從而提高準(zhǔn)確率的問題,提出一種YOLO目標(biāo)檢測結(jié)合self-training半監(jiān)督學(xué)習(xí)的方法,并且針對現(xiàn)有的 YOLO v3-Tiny目標(biāo)檢測網(wǎng)絡(luò)在半監(jiān)督學(xué)習(xí)基礎(chǔ)上準(zhǔn)確率相比于監(jiān)督學(xué)習(xí)較低的問題,對原有的YOLO v3-Tiny模型進(jìn)行了改進(jìn)。首先,使用空間金字塔池化結(jié)構(gòu)對主干網(wǎng)絡(luò)的多尺度特征進(jìn)行融合;其次,將YOLO v3-Tiny檢測頭部分的標(biāo)準(zhǔn)卷積層替換成GSConv;最后,運(yùn)用BiFPN結(jié)構(gòu)對中間部分的特征與檢測頭部分的多尺度特征進(jìn)行雙向融合。本研究提出的基于半監(jiān)督學(xué)習(xí)的改進(jìn)型YOLO v3-Tiny網(wǎng)絡(luò)可以快速準(zhǔn)確地檢測出梨葉上的病斑,在試驗(yàn)中,準(zhǔn)確度、召回率、平均精度分別達(dá)到97.07%、93.78%、97.51%,對于快速準(zhǔn)確地診斷出梨葉病斑的危害程度并且及時(shí)進(jìn)行防治具有十分重要的意義。
關(guān)鍵詞:深度學(xué)習(xí);半監(jiān)督學(xué)習(xí);目標(biāo)檢測;梨;無標(biāo)簽數(shù)據(jù);
中圖分類號:TP391.41? 文獻(xiàn)標(biāo)志碼:A
文章編號:1002-1302(2024)05-0192-09
目前,我國的水果產(chǎn)業(yè)發(fā)展非常迅速,其中梨是僅次于柑橘和蘋果的世界第三大水果產(chǎn)業(yè),而且種植面積以及產(chǎn)量均居于世界首位[1]。然而,近年來全球氣候不斷變化,由于我國南方地區(qū)雨季加長,降水量增大,導(dǎo)致梨主產(chǎn)區(qū)出現(xiàn)不同程度的早期梨樹病害現(xiàn)象,從而致使產(chǎn)量的下降。因此,提前做出預(yù)測和采取有效的防治措施來及時(shí)準(zhǔn)確地對梨葉發(fā)生病變程度進(jìn)行診斷,對梨的生產(chǎn)具有重要的現(xiàn)實(shí)意義。梨樹病害的前期癥狀大多由尺寸較小、顏色不均衡、紋理不夠明顯的類圓形斑點(diǎn)構(gòu)成,隨著后期病變程度的加重,病斑會(huì)越來越多,也越來越大,多個(gè)病斑通常還會(huì)融合形成顯著且形狀不規(guī)則的深色斑塊分布在整個(gè)葉片上。因此,防治的最好時(shí)機(jī)是病害前期。
近年來,目標(biāo)檢測在計(jì)算機(jī)視覺領(lǐng)域不斷發(fā)展,成為比較熱門的圖像識(shí)別方法。目標(biāo)檢測在自動(dòng)導(dǎo)航、人臉識(shí)別、行人檢測、農(nóng)業(yè)病害檢測等領(lǐng)域得到廣泛的應(yīng)用[2-4],例如,胡瓜頓綏螨自動(dòng)檢測、蘋果病害識(shí)別與麥冬葉片病害識(shí)別等[5-7]。然而,當(dāng)前的目標(biāo)檢測算法大多嚴(yán)重依賴已經(jīng)標(biāo)注好的數(shù)據(jù)來訓(xùn)練模型,并且這些數(shù)據(jù)必須具備多樣性和豐富的信息,以提供更高的準(zhǔn)確度,才能將訓(xùn)練好的模型部署進(jìn)行實(shí)際的預(yù)測。在實(shí)際的檢測任務(wù)中,存在著數(shù)據(jù)采集困難、數(shù)據(jù)通常是復(fù)雜多變的、無標(biāo)簽數(shù)據(jù)大量存在,需要大量的人工耗時(shí)數(shù)周甚至更長的時(shí)間來完成圖像中梨葉病害種類和位置等信息的標(biāo)注。這些問題都在很大程度上影響了檢測技術(shù)在農(nóng)作物病害檢測中的應(yīng)用。為解決這些無標(biāo)簽數(shù)據(jù)大量存在以及有標(biāo)簽數(shù)據(jù)集獲取成本較高的問題,同時(shí),要讓已有的模型快速地利用少量的無標(biāo)簽數(shù)據(jù)來應(yīng)對各種變化的梨葉病害圖像數(shù)據(jù),即使用少量已標(biāo)注數(shù)據(jù)對模型進(jìn)行訓(xùn)練,降低模型訓(xùn)練的成本,并能夠?qū)嫒~的各種病害進(jìn)行精準(zhǔn)檢測。因此,構(gòu)建出適用于梨葉病斑檢測數(shù)據(jù)集也是十分有意義的。而無論是有標(biāo)簽數(shù)據(jù)還是無標(biāo)簽數(shù)據(jù),都具有相似的特征分布,因此,使用半監(jiān)督學(xué)習(xí)(SSL)策略能夠充分利用大量無標(biāo)簽數(shù)據(jù)來提高模型的表征學(xué)習(xí)能力[8]。
目前,半監(jiān)督學(xué)習(xí)(SSL)的研究取得了顯著成果[8]。這些方法中有許多類似共享的基本技術(shù),比如深度學(xué)習(xí)中的熵最小化、偽標(biāo)簽或一致性正則化[9]。偽標(biāo)簽指的是使用從模型本身預(yù)測中產(chǎn)生的偽標(biāo)簽?zāi)繕?biāo)訓(xùn)練帶有未標(biāo)注數(shù)據(jù)的分類器[10]。一致性正則化的核心思想是對于模型的一個(gè)輸入,即使其受到了微小的干擾,模型對其的預(yù)測結(jié)果應(yīng)該是一致的[9],即將模型輸出的softmax概率分布作為軟偽標(biāo)簽[11],將經(jīng)過argmax或者one_hot得到的預(yù)測視為硬偽標(biāo)簽[12]。無論是通過軟偽標(biāo)簽[11]還是硬偽標(biāo)簽[12],生成多視圖的有效方法包括:不同強(qiáng)度的輸入數(shù)據(jù)增強(qiáng)[13]、網(wǎng)絡(luò)層內(nèi)的標(biāo)準(zhǔn)dropout[14]和隨機(jī)深度[15]。
目前主流目標(biāo)檢測框架主要為單階段檢測的YOLO系列算法[16]、兩階段檢測的Faster RCNN[17]和SSD[18]等系列算法。雖然這些算法在有監(jiān)督學(xué)習(xí)的技術(shù)上取得了很大的成功,但這些檢測器是用大量完全注釋的數(shù)據(jù)訓(xùn)練的,注釋成本很高。因此,人們提出了許多降低標(biāo)注成本的方法。比如引入半監(jiān)督檢測(SSOD)[19]和弱監(jiān)督檢測(WSOD)[20],以降低數(shù)據(jù)標(biāo)注的巨大成本。半監(jiān)督目標(biāo)檢測方法是一種學(xué)習(xí)少量標(biāo)記圖像和大量未標(biāo)記圖像的檢測器。Jeong等使用一致性約束利用未標(biāo)記數(shù)據(jù)進(jìn)行目標(biāo)檢測[19],而弱監(jiān)督檢測方法利用帶有弱標(biāo)注的大量數(shù)據(jù),比如圖像標(biāo)簽。此外,為了追求有監(jiān)督檢測的性能和保持較低的標(biāo)注成本,Bilen等通過結(jié)合區(qū)域分類和選擇,研究了弱半監(jiān)督檢測方法(WSSOD),該方法使用小的盒級標(biāo)記圖像和大量的弱標(biāo)記圖像訓(xùn)練檢測器[20]。
自訓(xùn)練在半監(jiān)督學(xué)習(xí)中被廣泛研究[21]。文獻(xiàn)[22]概述了不同的自訓(xùn)練方法。最近,深度神經(jīng)網(wǎng)絡(luò)重新激起了人們對自訓(xùn)練的興趣。固定特征的自訓(xùn)練和深度自訓(xùn)練之間的細(xì)小區(qū)別是深度自訓(xùn)練涉及到嵌入的學(xué)習(xí),在領(lǐng)域?qū)R方面比分類層適應(yīng)具有更大的靈活性。在此背景下,本研究探討了半監(jiān)督學(xué)習(xí)方法結(jié)合改進(jìn)后的YOLO v3-Tiny在梨葉病斑檢測中的實(shí)際應(yīng)用,提出了一種可稱為改進(jìn)型YOLO v3-Tiny結(jié)合半監(jiān)督學(xué)習(xí)檢測的算法,可以利用大約5%的已標(biāo)注數(shù)據(jù),與現(xiàn)有最新的檢測網(wǎng)絡(luò)相比,改進(jìn)后的模型精度最高。
1 方法
1.1 基于改進(jìn)YOLO v3-Tiny目標(biāo)檢測原理
YOLO v3-Tiny[23]是YOLO v3[24]網(wǎng)絡(luò)的輕量化版本,具有高精度、輕量且實(shí)時(shí)性高的特點(diǎn)。不同于常規(guī)的YOLO v3應(yīng)用中需要用很深的模型來檢測幾十個(gè)甚至幾百個(gè)目標(biāo),對于農(nóng)業(yè)上算力差的嵌入式設(shè)備而言,常規(guī)的YOLO v3檢測算法明顯滿足不了實(shí)時(shí)性檢測要求,然而輕量化的 YOLO v3-Tiny算法,檢測速度顯著提升,滿足設(shè)備的實(shí)時(shí)性。在梨葉病斑檢測任務(wù)當(dāng)中,除了要滿足實(shí)時(shí)性等技術(shù)指標(biāo)之外,也應(yīng)該充分地考慮技術(shù)在實(shí)際應(yīng)用場景中的情況,尤其是在半監(jiān)督學(xué)習(xí)下采用較少樣本對模型進(jìn)行訓(xùn)練來滿足高準(zhǔn)確率的要求。
由圖1可知,模型會(huì)將輸入的圖像劃分為N×N個(gè)大小相等的柵格,每個(gè)柵格負(fù)責(zé)檢測落在該格子中的病斑區(qū)域以及預(yù)測框和其置信度,若柵格包含檢測目標(biāo)的中心位置,則判定該柵格能識(shí)別該目標(biāo),置信度則表示該格子含有病斑區(qū)域的可能性以及坐標(biāo)預(yù)測的準(zhǔn)確性??梢酝ㄟ^以下公式計(jì)算檢測框的位置與大小以及置信度。
式中:(Bx,By )是預(yù)測邊界框的中心坐標(biāo);(Bw,Bh)為預(yù)測邊界框(Anchor)的寬和高;(cx,cy )表示柵格的邊距;(Pw,Ph)為預(yù)設(shè)邊界框的寬和高;(tx,ty )和(tw,th )分別為網(wǎng)絡(luò)預(yù)測的邊界框中心偏移量以及寬高縮放比;IOU為預(yù)測的邊界框和真實(shí)框之間的交并比,F(xiàn)表示預(yù)測邊界框的置信值。
1.2 改進(jìn)YOLO v3-Tiny網(wǎng)絡(luò)
完全去除YOLO v3中原有殘差模塊的 YOLO v3-Tiny不僅減少了大量多尺度特征融合,而且深層特征圖中缺少淺層的細(xì)節(jié)特征,在種植園環(huán)境下整個(gè)網(wǎng)絡(luò)在前向傳播過程中,被遮擋部分以及受背景干擾的目標(biāo)本身特征就較少,而YOLO v3-Tiny由于殘差結(jié)構(gòu)的缺失,深層的特征圖中對圖像某些細(xì)節(jié)信息表達(dá)能力減弱,導(dǎo)致目標(biāo)中某些細(xì)節(jié)特征在整個(gè)模型的深層網(wǎng)絡(luò)中消失,使得YOLO v3-Tiny在半監(jiān)督學(xué)習(xí)情況下很難達(dá)到監(jiān)督學(xué)習(xí)的效果[23]。因此,本研究對YOLO v3-Tiny進(jìn)行改進(jìn)和增強(qiáng),加強(qiáng)YOLO v3-Tiny目標(biāo)檢測模型的特征融合以及檢測能力[23],使得該模型不斷接近監(jiān)督學(xué)習(xí)情況下所能達(dá)到的效果。整體改進(jìn)后的YOLO v3-Tiny結(jié)構(gòu)如圖2所示, 本研究主要對檢測頭部分進(jìn)行了改進(jìn),在檢測頭和主干網(wǎng)絡(luò)之間加入空間金字塔池化模塊SPPCSPC,對主干網(wǎng)絡(luò)中的多尺度特征進(jìn)行融合,緊接著再連向檢測頭部分。然后使用BiFPN結(jié)構(gòu)替換原有的Concat操作,將主干網(wǎng)的第5個(gè)卷積塊以及檢測頭第3個(gè)GSConv經(jīng)上采樣后提取到的特征進(jìn)行通道數(shù)壓縮統(tǒng)一后送入 BiFPN模塊中進(jìn)行深淺層特征雙向融合,其目的是將主干網(wǎng)絡(luò)中中間部分的特征與檢測頭部分的多尺度特征進(jìn)行再次融合。最終,使用改進(jìn)后的模型在半監(jiān)督的基礎(chǔ)上與原有的YOLO v3-Tiny[23]以及YOLO v7-Tiny[25]、YOLO v5s[26]等輕量型的目標(biāo)檢測網(wǎng)絡(luò)進(jìn)行對比試驗(yàn),并且取得了不弱于這些網(wǎng)絡(luò)的性能。
1.2.1 SPPCSPC空間金字塔池化
雖然YOLO v3-Tiny中存在FPN特征融合結(jié)構(gòu)[23],但對于部分面積較小的梨葉而言,模型很難對其特征進(jìn)行充分的提取,從而導(dǎo)致漏檢與錯(cuò)檢等精度低的情況。因此,為提高檢測精度,在 YOLO v3-Tiny的主干網(wǎng)絡(luò)后面,即檢測頭前引入SPPCSPC空間金字塔池化結(jié)構(gòu)。該結(jié)構(gòu)如圖3所示,該結(jié)構(gòu)主要是通過最大池化層來獲取不同感受野,使得算法能夠適應(yīng)于不同尺度的特征圖。整體結(jié)構(gòu)首先將特征分為2個(gè)部分,一個(gè)部分進(jìn)行常規(guī)的卷積處理,另外一個(gè)部分進(jìn)行SPP結(jié)構(gòu)的處理,最后將這2個(gè)部分進(jìn)行Concat操作合并在一起,這樣便能夠減少將近一半的計(jì)算量,使得速度變快的同時(shí),精度有所提升。
1.2.2 BiFPN模型結(jié)構(gòu)
隨著網(wǎng)絡(luò)模型的層數(shù)不斷疊加,特征語義也由低維度轉(zhuǎn)向高維度,每添加1層網(wǎng)絡(luò)都會(huì)導(dǎo)致一定程度上的特征丟失,因此,需要從骨干網(wǎng)絡(luò)中間的各層提取出不同尺度的特征,進(jìn)行自上向下的特征融合。構(gòu)造出一種直接有效的特征金字塔結(jié)構(gòu)的特征融合方式對不同網(wǎng)絡(luò)層中的特征進(jìn)行融合,以此來保存和豐富特征語義信息[27]。本研究使用一種運(yùn)用雙向融合結(jié)構(gòu)的BiFPN[28]對深淺層特征進(jìn)行由上而下與由下而上的雙向融合,其結(jié)構(gòu)如圖4所示。
該模型通過構(gòu)造由頂向底以及由底向頂?shù)碾p向通道,對來自骨干特征提取層中不同尺度的特征信息進(jìn)行融合,再通過上、下采樣操作來統(tǒng)一特征圖的尺度,并在相同尺度的特征圖之間添加橫向連接,減少因?qū)訑?shù)過多而造成的特征信息丟失。
1.2.3 GSConv模型
對于農(nóng)業(yè)設(shè)備來說,一個(gè)巨大的模型很難滿足實(shí)時(shí)性檢測的要求。而且,使用大量可分離卷積層來構(gòu)造輕量級模型很難滿足精度要求。輕量化模型的設(shè)計(jì)主要是通過使用深度可分離卷積(DWConv)操作來減少參數(shù)量和降低計(jì)算復(fù)雜度,許多輕量化模型從神經(jīng)網(wǎng)絡(luò)搭建開始到結(jié)束只使用了DWConv這樣類似的思維來設(shè)計(jì)基本架構(gòu),效果雖然明顯,但是缺點(diǎn)也很明顯:輸入圖像的通道信息在運(yùn)算過程中是分離的,從而導(dǎo)致DWConv的特征提取和融合能力比標(biāo)準(zhǔn)卷積(Conv)低得多,且這種缺陷會(huì)直接在模型中放大,無論是用于分類還是檢測,通過通道混洗(Shuffle)的輸出通道生成的特征圖仍然是深度分離的。因此,本研究使用了一種新卷積GSConv[29]。由圖5可知,使用Shuffle的方式將來自Conv的特征信息滲透到DWConv所生成特征信息的每個(gè)部分,使得Conv所生成的特征信息完全融入到DWConv的輸出中。但如果將其在加目標(biāo)檢測模型的所有階段的話,會(huì)使得網(wǎng)絡(luò)層會(huì)加深,而阻礙數(shù)據(jù)流的流動(dòng),導(dǎo)致推理速度變慢。因此只在檢測頭部分使用該模型,使得模型在保持模型精度的前提下減輕模型的重量,在模型的準(zhǔn)確性和實(shí)時(shí)性之間實(shí)現(xiàn)了極好的權(quán)衡。
1.3 半監(jiān)督self-training訓(xùn)練策略
半監(jiān)督學(xué)習(xí)作為一種能夠同時(shí)利用大量的未標(biāo)注數(shù)據(jù)以及少量的已標(biāo)注數(shù)據(jù)來改善深度學(xué)習(xí)性能的方法,是基于監(jiān)督學(xué)習(xí)與無監(jiān)督學(xué)習(xí)之間的一種學(xué)習(xí)范式。self-training方法是半監(jiān)督學(xué)習(xí)中最常用的方法之一[22],在深度學(xué)習(xí)和模式識(shí)別等領(lǐng)域有著廣泛的應(yīng)用,本研究將該算法引入梨葉病斑檢測訓(xùn)練過程。該算法基本思想是先在少量已標(biāo)注的數(shù)據(jù)上訓(xùn)練得到一個(gè)基礎(chǔ)模型,然后使用該模型對未標(biāo)注數(shù)據(jù)進(jìn)行預(yù)測,根據(jù)某種算法將預(yù)測結(jié)果中準(zhǔn)確度較高的結(jié)果保留作為偽標(biāo)簽,再將偽標(biāo)簽數(shù)據(jù)和已標(biāo)注數(shù)據(jù)結(jié)合起來使用標(biāo)準(zhǔn)的監(jiān)督學(xué)習(xí)方法對模型進(jìn)行再訓(xùn)練,其流程如圖6所示。
通常,為保證模型能夠從已標(biāo)注數(shù)據(jù)中學(xué)到更多的特征信息,在最初的 N個(gè)迭代次數(shù)中,將ω(t)設(shè)置為0,隨后慢慢增加到M個(gè)迭代次數(shù)后保持不變。如下式:
為提高大量未標(biāo)注數(shù)據(jù)的利用率,從而提取出有效的圖像特征信息,可使用self-training策略[22]。首先使用訓(xùn)練好的模型在未標(biāo)注的數(shù)據(jù)上進(jìn)行檢測,選擇置信值比較高的偽標(biāo)注數(shù)據(jù)加入訓(xùn)練數(shù)據(jù)集中,直到無標(biāo)注的數(shù)據(jù)集中的數(shù)據(jù)不再變化為止,詳細(xì)流程可以參考以下算法。
輸入:L={xlabel,ylabel},U={xunlabel},L表示標(biāo)簽數(shù)據(jù),U表示未標(biāo)注數(shù)據(jù)。
步驟1:U>>L;
步驟2:進(jìn)入循環(huán):當(dāng)未標(biāo)注數(shù)據(jù)不包含在U中或者未標(biāo)注數(shù)據(jù)不再變化時(shí)作出以下行為;
步驟3:從(xlabel,ylabel)中選取數(shù)據(jù)訓(xùn)練模型;
步驟4:使用模型預(yù)測xunlabel,獲得偽標(biāo)簽數(shù)據(jù){(xunlabel,yunlabel)};
步驟5:篩選出置信樣本(xconf,yconf),(xconf,yconf)∈(xunlabel,yunlabel);
步驟6:合并最新數(shù)據(jù)(xlabel,ylabel)∪(xconf,yconf);
步驟7:結(jié)束循環(huán)。
以上的流程可以簡單理解為將初始的帶標(biāo)注數(shù)據(jù)集作為初始訓(xùn)練集L,根據(jù)訓(xùn)練集訓(xùn)練得到一個(gè)初始模型。利用模型對無標(biāo)簽數(shù)據(jù)集U中的樣本進(jìn)行檢測,選出置信度較高的偽標(biāo)注樣本(Xconf,Yconf),并將其加入到有標(biāo)簽數(shù)據(jù)集中,根據(jù)新得到的帶有偽標(biāo)注數(shù)據(jù)的訓(xùn)練集再次訓(xùn)練成新的模型,重復(fù)步驟2至步驟6直到所有無標(biāo)簽樣本都被標(biāo)記完成,最后得到最優(yōu)的模型??倱p失函數(shù)為有標(biāo)注損失和無標(biāo)注損失的加權(quán)和,公式如下:
式中:n表示標(biāo)記數(shù)據(jù)中的小批量數(shù)據(jù);n′表示未標(biāo)記數(shù)據(jù); f表示標(biāo)記數(shù)據(jù)中m個(gè)樣本的輸出單位;y表示其標(biāo)簽;f′表示未標(biāo)記的數(shù)據(jù);y′表示非標(biāo)記數(shù)據(jù)的偽標(biāo)簽;CE_Loss為交叉熵?fù)p失函數(shù)。
2 試驗(yàn)
2.1 圖像數(shù)據(jù)集預(yù)處理
本研究引入了一個(gè)用于診斷和檢測植物癥狀的現(xiàn)場數(shù)據(jù)集,稱為DiaMOS Plant[30]。這是一個(gè)試點(diǎn)數(shù)據(jù)集,包含梨樹整個(gè)生長季節(jié)(2—7月)不同光照條件下所拍攝的梨葉圖像的照片,該數(shù)據(jù)集適用于檢測任務(wù)執(zhí)行深度學(xué)習(xí)方法。該數(shù)據(jù)集已標(biāo)注和未標(biāo)注的數(shù)據(jù)劃分情況見表1、表2。本試驗(yàn)選取該數(shù)據(jù)集當(dāng)中季節(jié)性病斑的圖像來驗(yàn)證該算法的可行性以及使用蛞蝓損傷梨葉數(shù)據(jù)集驗(yàn)證該方法的泛化能力。本試驗(yàn)中圖像的分辨率統(tǒng)一設(shè)置為512×512,為增加圖像信息,使模型的初始訓(xùn)練能夠獲得更好的效果,在訓(xùn)練時(shí)都采用了隨機(jī)遮擋、裁剪、色彩扭曲、加噪、旋轉(zhuǎn)、圖像歸一化等圖像增強(qiáng)技術(shù)來擴(kuò)展未標(biāo)注的訓(xùn)練集(圖7) 。
2.2 實(shí)施細(xì)節(jié)
本試驗(yàn)的時(shí)間為2022年12月5日,在筆者所在實(shí)驗(yàn)室搭建的深度學(xué)習(xí)平臺(tái): 64位的Window 10操作系統(tǒng)下進(jìn)行,編程環(huán)境Python 3.7,CUDA11.0的GPU加速庫。采用深度學(xué)習(xí)框架Pytorch,顯卡NVIDIA GeForce RTX-1050Ti,顯存4 GB 。批量大小設(shè)置為4,學(xué)習(xí)速率為1×10-2,動(dòng)量設(shè)置為0.937,衰減權(quán)重為1×10-5的SGD優(yōu)化器,迭代次數(shù)設(shè)為400次,訓(xùn)練過程使用Warm up方法加快模型收斂速度。
2.3 評價(jià)指標(biāo)
本研究使用的是目標(biāo)檢測模型最常用的評價(jià)指標(biāo)對試驗(yàn)結(jié)果進(jìn)行評估,如準(zhǔn)確度(precision,P,%)和召回率(recall,R,%),為了度量準(zhǔn)確度和召回率在實(shí)際檢測過程中的表現(xiàn)能力,本研究使用IOU最常用的閾值為0.5的平均精度均值(mean average precision,mAP,%),計(jì)算公式如下:
其中,公式中的TP為檢測正確樣本的數(shù)量;FP 為檢測錯(cuò)誤樣本的數(shù)量;FN 為漏檢的目標(biāo)樣本數(shù)量;N為檢測樣本的類別總數(shù);P(x)為以召回率x為自變量,精確率P為因變量的函數(shù)。
3 結(jié)果與分析
3.1 試驗(yàn)結(jié)果
為驗(yàn)證本試驗(yàn)改進(jìn)后模型的檢測效果,在同等條件下進(jìn)行了模型對比試驗(yàn),以驗(yàn)證該方法的可行性。采用現(xiàn)有模型中較為先進(jìn)的目標(biāo)檢測模型網(wǎng)絡(luò)分別在有監(jiān)督學(xué)習(xí)和半監(jiān)督學(xué)習(xí)的基礎(chǔ)上進(jìn)行對比試驗(yàn),最后用測試集進(jìn)行檢測,并進(jìn)行結(jié)果可視化。由表3可知,在監(jiān)督學(xué)習(xí)的情況下,各項(xiàng)指標(biāo)的差距并不大,基本都能準(zhǔn)確地檢測出病斑。但在半監(jiān)督學(xué)習(xí)下即只用50(5%)張的帶標(biāo)注數(shù)據(jù)進(jìn)行模型訓(xùn)練時(shí),各項(xiàng)指標(biāo)都有顯著下降,因此,本研究對相比于其他模型結(jié)構(gòu)較為簡單的YOLO v3-Tiny進(jìn)行了改進(jìn),經(jīng)過改進(jìn)之后,模型的各項(xiàng)指標(biāo)在不斷接近監(jiān)督學(xué)習(xí)。
由圖8可知,當(dāng)?shù)螖?shù)達(dá)到400次時(shí),各個(gè)模型指標(biāo)的數(shù)值已經(jīng)達(dá)到了穩(wěn)定狀態(tài), 模型訓(xùn)練過程完成。指標(biāo)結(jié)果如表3所示,改進(jìn)的 YOLO v3-Tiny所帶來的效果很明顯,各項(xiàng)指標(biāo)都有顯著提升,比如平均精度提升了4.59百分點(diǎn),準(zhǔn)確度提升了超過10百分點(diǎn),召回率提升了6.72百分點(diǎn)。比起目前較新的YOLO v7-Tiny分別提升了0.98、6.12、2.85百分點(diǎn)。測試集中季節(jié)性病斑試驗(yàn)檢測結(jié)果見圖9,圖中檢測框左上方的單詞代表檢測病斑類別,以及左上方的數(shù)字表示置信度。由圖9可知,改進(jìn)后的模型無論是在較暗的環(huán)境還是有些葉面部分被遮擋的情況下都能較為精準(zhǔn)地檢測出病斑位置且置信度逼近監(jiān)督學(xué)習(xí)。
為進(jìn)一步驗(yàn)證該方法的可行性以及泛化能力,繼續(xù)使用表2的蛞蝓損傷數(shù)據(jù)集進(jìn)行試驗(yàn),結(jié)果如圖10、表4所示。隨著數(shù)據(jù)集數(shù)目的增大,以及已標(biāo)注數(shù)據(jù)的增多,各個(gè)模型都能達(dá)到極好的效果,且本研究的模型依然有著優(yōu)于其他模型的效果。其中準(zhǔn)確度、召回率、平均精度均值分別達(dá)到了97.46%、98.42%、99.20%,均超過YOLO v7-Tiny以及原來的YOLO v3-Tiny模型。由圖11可知,在僅使用100(5%)張帶標(biāo)注數(shù)據(jù)的情況下,各個(gè)模型基本都能精確檢測出蛞蝓損傷的葉片,且本研究的模型檢測出損傷葉片的置信度基本上都高于其他模型,從第4列的圖片來看,本研究模型未出現(xiàn)漏檢的情況,檢測能力明顯增強(qiáng)。顯然本試驗(yàn)進(jìn)一步證明了半監(jiān)督學(xué)習(xí)算法以及本研究改進(jìn)模型的可行性。
3.2 試驗(yàn)分析
消融試驗(yàn)通常用于研究網(wǎng)絡(luò)的特定子模塊或者策略及參數(shù)等對模型產(chǎn)生的作用,在神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)過程中具有重要的意義[31]。為驗(yàn)證在半監(jiān)督學(xué)習(xí)中模型的改進(jìn)效果,本研究設(shè)置了不同模塊的消融試驗(yàn),即嵌入不同模塊來改進(jìn)YOLO v3-Tiny 目標(biāo)檢測模型的策略進(jìn)行訓(xùn)練,以驗(yàn)證改進(jìn)的策略是否具有促進(jìn)作用。最終,試驗(yàn)結(jié)果見表5。首先,在原YOLO v3-Tiny主干網(wǎng)絡(luò)的基礎(chǔ)上引入SPPCSPC(空間金字塔池化結(jié)構(gòu)模塊),以此來促進(jìn)主干網(wǎng)絡(luò)之間的特征信息進(jìn)行更加充分的融合。
其次,將檢測頭部分的CBL模塊使用GSConv來替換,使得模型的準(zhǔn)確性和實(shí)時(shí)性之間實(shí)現(xiàn)了極好的權(quán)衡。最后還加入了BiFPN模塊來使得主干網(wǎng)絡(luò)的特征信息與檢測頭網(wǎng)絡(luò)的特征信息進(jìn)一步地融合。本研究繼續(xù)使用季節(jié)性病斑數(shù)據(jù)集進(jìn)行試驗(yàn),以每個(gè)目標(biāo)檢測模型的平均精度均值、準(zhǔn)確度以及召回率為主要指標(biāo),從表中不難發(fā)現(xiàn),在結(jié)合不同模塊之后各項(xiàng)指標(biāo)都有了顯著的提升。
4 結(jié)論
基于半監(jiān)督學(xué)習(xí)框架的梨葉病斑檢測算法在一定程度上解決了大量未標(biāo)注的梨葉數(shù)據(jù)無法利用、已標(biāo)注的梨葉數(shù)據(jù)不足等實(shí)際問題。同時(shí),針對半監(jiān)督學(xué)習(xí)下的模型準(zhǔn)確度比有監(jiān)督學(xué)習(xí)下低的問題,對YOLO v3-Tiny模型進(jìn)行了改進(jìn),試驗(yàn)結(jié)果的各項(xiàng)指標(biāo)都有了顯著提高,為基于圖像的植物病害檢測應(yīng)用提供了一種有效的解決方案。但依然存在著在惡劣環(huán)境下出現(xiàn)漏檢誤檢的情況,以及難以達(dá)到甚至超過監(jiān)督學(xué)習(xí)所能達(dá)到的準(zhǔn)確度以及農(nóng)業(yè)設(shè)備的部署等,這些問題也將成為下一階段的研究重點(diǎn)。
參考文獻(xiàn):
[1]Wu J,Wang Z W,Shi Z B,et al. The genome of the pear (Pyrus bretschneideri Rehd.)[J]. Genome Research,2013,23(2):396-408.
[2]Yang W L,F(xiàn)an S S,Xu S X,et al. Autonomous underwater vehicle navigation using sonar image matching based on convolutional neural network[J]. IFAC-Papers OnLine,2019,52(21):156-162.
[3]馬博宇,尉寅瑋. 基于AdaBoost算法的人臉識(shí)別系統(tǒng)的研究與實(shí)現(xiàn)[J]. 儀器儀表學(xué)報(bào),2016,37(增刊1):162-167.
[4]Zhang L L,Lin L,Liang X D,et al. Is faster R-CNN doing well for pedestrian detection?[C]//European Conference on Computer Vision.Cham:Springer,2016:443-457.
[5]李建興,劉振宇,馬 瑩,等. 基于YOLO v4的胡瓜鈍綏螨自動(dòng)檢測計(jì)數(shù)[J]. 江蘇農(nóng)業(yè)科學(xué),2022,50(14):199-207.
[6]Yan Q A,Yang B H,Wang W Y,et al. Apple leaf diseases recognition based on an improved convolutional neural network[J]. Sensors,2020,20(12):3535.
[7]Tao Y,Cuicu L. Recognition system for leaf diseases of ophiopogon japonicus based on PCA-SVM[J]. Plant Diseases and Pests,2020,11(2):9-13.
[8]Zeng L X,Irwin K. Introduction to semi-supervised learning[M]. Taylor and Francis:CRC Press,2013:1-250.
[9]Sajjadi M,Javanmardi M,Tasdizen T.Regularization with stochastic transformations and perturbations for deep semi-supervised learning[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems.December 5 - 10,2016,Barcelona,Spain.New York:ACM,2016:1171-1179.
[10]Zhang X,He B,Luo T J. Training query filtering for semi-supervised learning to rank with pseudo labels[J]. World Wide Web,2016,19(5):833-864.
[11]Laine S,Aila T. Temporal ensembling for semi-supervised learning[J]. CoRR,2016,abs/1610.02242.
[12]Sohn K,Berthelot D,Li C L,et al. FixMatch:simplifying semi-supervised learning with consistency and confidence[EB/OL]. 2020:arXiv:2001.07685.https://arxiv.org/abs/2001.07685.pdf.
[13]Zhang Y,Shi B M. Improving pooling method for regularization of convolutional networks based on the failure probability density[J]. Optik,2017,145:258-265.
[14]Srivastava N,Hinton G,Krizhevsky A,et al. Dropout:a simple way to prevent neural networks from overfitting[J]. The Journal of Machine Learning Research,2014,15(1):1929-1958.
[15]Huang G,Sun Y,Liu Z A,et al. Deep networks with stochastic depth[M]//Computer Vision – ECCV 2016.Cham:Springer International Publishing,2016:646-661.
[16]Redmon J,Divvala S,Girshick R,et al. You only look once:unified,real-time object detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).June 27-30,2016,Las Vegas,NV,USA.IEEE,2016:779-788.
[17]Ren S Q,He K M,Girshick R,et al. Faster R-CNN:towards? real- time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.
[18]Liu W,Anguelov D,Erhan D,et al. SSD:single shot MultiBox detector[EB/OL]. 2015:arXiv:1512.02325.https://arxiv.org/abs/1512.02325.pdf.
[19]Jeong J,Lee S,Kim J,et al. Consistency-based semi-supervised learning for object detection[C]. Proceedings of the 33rd International Conference on Neural Information Processing Systems,2019,965:10759-10768.
[20]Bilen H,Vedaldi A. Weakly supervised deep detection networks[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).June 27-30,2016,Las Vegas,NV,USA. IEEE,2016:2846-2854.
[21]Zhu Y,Zhang Z Y,Wu C R,et al. Improving semantic segmentation via efficient self-training[J]. arxix:2004.14960v2.
[22]Triguero I,García S,Herrera F. Self-labeled techniques for semi-supervised learning:taxonomy,software and empirical study[J]. Knowledge and Information Systems,2015,42(2):245-284.
[23]劉 軍,后士浩,張 凱,等. 基于增強(qiáng)Tiny YOLO v3算法的車輛實(shí)時(shí)檢測與跟蹤[J]. 農(nóng)業(yè)工程學(xué)報(bào),2019,35(8):118-125.
[24]Farhadi A,Redmon J. YOLO v3:an incremental improvement[C]//Computer vision and pattern recognition. Berlin/Heidelberg,Germany:Springer,2018,1804:1-6.
[25]Wang C Y,Bochkovskiy A,Liao H Y M. YOLO v7:trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]//2023 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).June 17-24,2023,Vancouver,BC,Canada.IEEE,2023:7464-7475.
[26]Yuan X,F(xiàn)ang S T,Li N,et al. Performance comparison of sea cucumber detection by the YOLO v5 and DETR approach[J]. JMSE,2023,11(11):2043.
[27]Zhang Y N,Kong J,Qi M A,et al. Object detection based on multiple information fusion net[J]. Applied Sciences,2020,10(1):418.
[28][ZK(#]Tan M X,Pang R M,Le Q V. EfficientDet:scalable and efficient object detection[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).June 13-19,2020,Seattle,WA,USA.IEEE,2020:10778-10787.
[29]Li H L,Li J,Wei H B,et al. Slim-neck by GSConv:a better design paradigm of detector architectures for autonomous vehicles[EB/OL]. 2022:arXiv:2206.02424.https://arxiv.org/abs/2206.02424.pdf.
[30]Fenu G,Malloci F M. DiaMOS plant:a dataset for diagnosis and monitoring plant disease[J]. Agronomy,2021,11(11):2107.
[31]Peng S D,Jiang W,Pi H J,et al. Deep snake for real-time instance segmentation[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).June 13-19,2020,Seattle,WA,USA.IEEE,2020:8530-8539.