時(shí)間:2023-05-17 10:16:15
導(dǎo)語(yǔ):在遷移學(xué)習(xí)常見蔬菜害蟲的檢測(cè)分析的撰寫旅程中,學(xué)習(xí)并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了一篇優(yōu)秀范文,愿這些內(nèi)容能夠啟發(fā)您的創(chuàng)作靈感,引領(lǐng)您探索更多的創(chuàng)作可能。
關(guān)鍵詞:目標(biāo)檢測(cè);遷移學(xué)習(xí);神經(jīng)網(wǎng)絡(luò);智慧農(nóng)業(yè);十字花科害蟲;豆科害蟲
引言:中國(guó)蔬菜種植面積、總產(chǎn)量、人均蔬菜消費(fèi)量及出口量均居世界第一,是蔬菜生產(chǎn)、消費(fèi)與出口大國(guó)[1].其中,十字花科和豆科蔬菜是日常生活中常見的蔬菜.害蟲是影響十字花科和豆科蔬菜生產(chǎn)的主要因素之一.十字花科和豆科蔬菜的害蟲主要包括菜青蟲、小菜蛾、黃曲條跳甲、白菜蝸牛、二十八星瓢蟲、豆野螟等[2].隨著人工智能、自動(dòng)控制等理論的飛速發(fā)展,智慧農(nóng)業(yè)逐漸成為農(nóng)業(yè)發(fā)展的方向[3].在智慧農(nóng)業(yè)領(lǐng)域,自動(dòng)識(shí)別害蟲是急需解決的一個(gè)難題.針對(duì)十字花科和豆科蔬菜的主要害蟲,以自然場(chǎng)景下拍攝的6種害蟲圖片為基礎(chǔ),構(gòu)建十字花科和豆科蔬菜害蟲(CruciferousandLeguminousVegetablePests,CLVP)數(shù)據(jù)集.在該數(shù)據(jù)集上,以FasterR-CNN[4]和RetinaNte[5]作為骨干網(wǎng)絡(luò),構(gòu)建蔬菜害蟲目標(biāo)檢測(cè)系統(tǒng).基于遷移學(xué)習(xí)理論,訓(xùn)練3個(gè)目標(biāo)檢測(cè)網(wǎng)絡(luò)模型,即FR-R101、FR-X101和Re-R101.在該數(shù)據(jù)集上,Re-R101模型獲得相對(duì)更好的害蟲檢測(cè)結(jié)果.此外,通過(guò)分析實(shí)驗(yàn)數(shù)據(jù),討論害蟲檢測(cè)失敗的原因,指出提升害蟲目標(biāo)檢測(cè)準(zhǔn)確率的研究方向.
1相關(guān)工作和貢獻(xiàn)
在使用計(jì)算機(jī)視覺技術(shù)分析病蟲害方面,已經(jīng)有一系列的研究[6-10].下面將主要從3個(gè)方面介紹相關(guān)工作,即害蟲目標(biāo)檢測(cè)系統(tǒng)、目標(biāo)檢測(cè)算法和遷移學(xué)習(xí).針對(duì)不同種類的害蟲,之前的研究提出一系列智能檢測(cè)系統(tǒng).針對(duì)蔬菜食葉害蟲,文獻(xiàn)[7]分析被害蟲啃食過(guò)的菜葉圖片,提取相應(yīng)的形狀特征,構(gòu)建BP神經(jīng)網(wǎng)絡(luò)模型,實(shí)現(xiàn)識(shí)別甘藍(lán)菜的兩類害蟲.針對(duì)蔬菜鱗翅目害蟲,文獻(xiàn)[8]使用卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)自動(dòng)識(shí)別和檢測(cè)害蟲.針對(duì)田間常見病蟲害,文獻(xiàn)[9]構(gòu)建病蟲害智能化識(shí)別系統(tǒng).針對(duì)農(nóng)作物病蟲害,文獻(xiàn)[10]提出基于空間金字塔池化的深度卷積神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)自動(dòng)識(shí)別農(nóng)作物害蟲.目標(biāo)檢測(cè)算法主要分為2大類.第1類是Two-Stage算法,主要以R-CNN系列算法為代表,比如:R-CNN[11]、FastR-CNN[12]和Faster-RCNN[4]等.這類算法主要分為2個(gè)步驟,即生成候選區(qū)域,在上一步生成的候選區(qū)域上分類和回歸.在R-CNN算法的基礎(chǔ)上,FastR-CNN使用深度卷積神經(jīng)網(wǎng)絡(luò)提取目標(biāo)特征.與使用SPPnet[13]的R-CNN相比,FastR-CNN的訓(xùn)練和測(cè)試速度更快,精度更高.在FastR-CNN算法的基礎(chǔ)上,文獻(xiàn)[4]提出FasterR-CNN算法.第2類是One-Stage算法,主要以RetinaNte[5]、YOLO[14]和SSD[15]為代表.這類算法使用一個(gè)端到端的網(wǎng)絡(luò)模型直接預(yù)測(cè)物體的位置和類別.遷移學(xué)習(xí)[16]具有廣泛的應(yīng)用場(chǎng)景[17].將遷移學(xué)習(xí)理論應(yīng)用于棉花葉部病蟲害識(shí)別,文獻(xiàn)[18]使用改進(jìn)的AlexNte網(wǎng)絡(luò)模型在PlantVllaige數(shù)據(jù)集上預(yù)訓(xùn)練,將該預(yù)訓(xùn)練模型遷移到棉花病蟲害數(shù)據(jù)集.將遷移學(xué)習(xí)應(yīng)用于無(wú)人機(jī)獲取耕地信息,文獻(xiàn)[19]提出一種耕地信息獲取方法,提升獲取耕地信息的精度.結(jié)合遷移學(xué)習(xí)和軟件缺陷預(yù)測(cè),文獻(xiàn)[20]提出一種基于加權(quán)貝葉斯模型的遷移學(xué)習(xí)算法,提高了跨項(xiàng)目缺陷預(yù)測(cè)性能.基于參數(shù)遷移策略,文獻(xiàn)[21]采用微調(diào)再訓(xùn)練源模型的方法,實(shí)現(xiàn)識(shí)別水產(chǎn)動(dòng)物.在修改源模型全連接層的基礎(chǔ)上,該方法進(jìn)一步調(diào)整高層卷積模塊的權(quán)重,從而提升模型的性能.本文的主要貢獻(xiàn)如下.首先,針對(duì)十字花科和豆科蔬菜害蟲,建立CLVP數(shù)據(jù)集.其次,基于遷移學(xué)習(xí)理論,以FasterR-CNN[4]和RetinaNte[5]為骨干網(wǎng)絡(luò),構(gòu)建蔬菜害蟲目標(biāo)檢測(cè)系統(tǒng).此外,使用TOOD[22]算法進(jìn)一步驗(yàn)證CLVP是一個(gè)具有挑戰(zhàn)性的數(shù)據(jù)集.最后,分析實(shí)驗(yàn)數(shù)據(jù),推斷檢測(cè)失敗的原因,指出提升害蟲目標(biāo)檢測(cè)準(zhǔn)確率的研究方向.
2CLVP數(shù)據(jù)集
針對(duì)十字花科蔬菜和豆科蔬菜的主要害蟲,本文收集793張害蟲圖片.在標(biāo)注這些圖片后,構(gòu)建V1版本的CLVP數(shù)據(jù)集.CLVP數(shù)據(jù)集.表1各類害蟲樣本數(shù)量和標(biāo)注數(shù)量害蟲名稱圖片數(shù)量標(biāo)記數(shù)量菜青蟲7989小菜蛾79162黃曲條跳甲352433白菜蝸牛122172二十八星瓢蟲87104豆野螟7474在CLVP-V1數(shù)據(jù)集中,包含6種蔬菜害蟲,分別是菜青蟲(Cabbageworm)、小菜蛾(Diamondbackmoth)、黃曲條跳甲(Phyl-lotretastriolata)、白菜蝸牛(Cabbagesnail)、二十八星瓢蟲(Lady-bug)和豆野螟(Marucatestulalisgeyer).在菜地,用手機(jī)從不同角度拍攝這些害蟲圖片.菜青蟲、小菜蛾、黃曲條跳甲、白菜蝸牛、二十八星瓢蟲和豆野螟的圖片數(shù)量分別為79、79、352、122、87和74.在收集害蟲圖片后,對(duì)圖片進(jìn)行以下操作.首先,對(duì)不同類別的害蟲設(shè)置對(duì)應(yīng)的編號(hào);然后,使用開源圖片標(biāo)注工具LabelImg標(biāo)注每一張圖片中害蟲的類別和位置.這六類害蟲的標(biāo)注數(shù)量分別是89、162、433、172、104和74.在CLVP-V1中,害蟲的樣本數(shù)量和標(biāo)注數(shù)量如表1所示在CLVP數(shù)據(jù)集中,圖片是在自然環(huán)境下拍攝的,包含各種現(xiàn)實(shí)環(huán)境因素,例如:菜地背景、光照變化、害蟲姿態(tài)變化等.部分樣例圖片如圖1所示.與之前構(gòu)建的害蟲數(shù)據(jù)集不同,在CLVP數(shù)據(jù)中收集了許多害蟲幼蟲的圖片,例如菜青蟲幼蟲、小菜蛾幼蟲等.在文獻(xiàn)[7]和文獻(xiàn)[9]中,數(shù)據(jù)集的檢測(cè)對(duì)象主要是害蟲的成蟲形態(tài).文獻(xiàn)[1-2]提出某些害蟲的幼蟲對(duì)相關(guān)蔬菜有更嚴(yán)重的危害.幼蟲體積較小導(dǎo)致在圖片中所占像素較少;此外,幼蟲顏色與拍攝背景相似.這使得CLVP數(shù)據(jù)集更具有挑戰(zhàn),對(duì)害蟲目標(biāo)檢測(cè)算法提出更高的要求.
3害蟲目標(biāo)檢測(cè)系統(tǒng)
使用FasterR-CNN[4]和RetinaNte[5]作為蔬菜害蟲目標(biāo)檢測(cè)系統(tǒng)的骨干網(wǎng)絡(luò)模型,基于遷移學(xué)習(xí)理論實(shí)現(xiàn)害蟲目標(biāo)檢測(cè)系統(tǒng).該系統(tǒng)的框架如圖2所示.
3.1目標(biāo)檢測(cè)骨干網(wǎng)絡(luò)
FasterR-CNN主要包含4個(gè)子模塊.第1個(gè)子模塊是特征提取網(wǎng)絡(luò).使用卷積神經(jīng)網(wǎng)絡(luò)提取圖片特征,得到相應(yīng)的特征圖.該特征圖被共享用于RPN網(wǎng)絡(luò)和目標(biāo)分類.第2個(gè)子模塊是區(qū)域生成網(wǎng)絡(luò)(RegionProposalNetwork,RPN).使用固定尺寸的滑動(dòng)窗口在卷積特征圖上滑動(dòng),得到對(duì)應(yīng)維數(shù)的向量.將這個(gè)向量輸入全連接層后,得到判定目標(biāo)為前景或背景的得分以及相應(yīng)的邊界框回歸參數(shù).第3個(gè)子模塊是感興趣區(qū)域池化.該模塊接收特征圖和經(jīng)過(guò)RPN生成的候選區(qū)域,提取固定尺寸的特征向量.第4個(gè)子模塊是目標(biāo)分類和邊界框回歸.RetinaNte包含4個(gè)子網(wǎng)絡(luò),即ResNte[23]、特征金字塔網(wǎng)絡(luò)(FeaturePyramidNetwork,FPN)[24]、類別子網(wǎng)絡(luò)和錨框子網(wǎng)絡(luò).類別子網(wǎng)絡(luò)實(shí)現(xiàn)分類錨框,錨框子網(wǎng)絡(luò)使錨框回歸到檢測(cè)目標(biāo)的真實(shí)位置.為了解決訓(xùn)練過(guò)程中的類別不平衡問(wèn)題,提出FocalLoss損失函數(shù).定義二分類的交叉熵?fù)p失函數(shù)如下:pt=p,ify=11-p,otherwise(1)其中,p∈0,1是模型對(duì)y=1的估計(jì)概率.通過(guò)平衡因子αt,定義FocalLoss如下:FL(pt)=-αt(1-pt)γlog(pt)(2)其中,γ≥0為可調(diào)節(jié)參數(shù),(1-pt)γ是調(diào)節(jié)因子.
3.2基于遷移學(xué)習(xí)的害蟲檢測(cè)
遷移學(xué)習(xí)能夠把在源領(lǐng)域?qū)W習(xí)的知識(shí)應(yīng)用到另一個(gè)新的目標(biāo)領(lǐng)域,使得在目標(biāo)領(lǐng)域也取得較好的泛化能力,在現(xiàn)實(shí)生活中有諸多應(yīng)用場(chǎng)景.以FasterR-CNN和RetinaNte作為蔬菜害蟲目標(biāo)檢測(cè)系統(tǒng)的骨干網(wǎng)絡(luò),分別構(gòu)建3個(gè)目標(biāo)檢測(cè)網(wǎng)絡(luò)模型,即FR-R101、FR-X101和Re-R101.具體而言,FR-R101模型以FasterR-CNN為骨干網(wǎng)絡(luò),使用FPN提升目標(biāo)檢測(cè)系統(tǒng)的準(zhǔn)確率,使用101層的ResNte作為計(jì)算特征圖的子網(wǎng)絡(luò);FR-X101模型使用101層的ResNeXt[25]作為計(jì)算特征圖的子網(wǎng)絡(luò),其他與FR-R101模型類似;Re-R101模型以RetinaNte作為骨干網(wǎng)絡(luò),使用101層的ResNte作為計(jì)算特征圖的子網(wǎng)絡(luò).如圖2所示,在COCO數(shù)據(jù)集[26]上訓(xùn)練網(wǎng)絡(luò)模型,得到模型參數(shù)M.基于遷移學(xué)習(xí)理論,在CLVP數(shù)據(jù)集上訓(xùn)練、驗(yàn)證和測(cè)試的主要過(guò)程如下.首先,除分類層之外,用M初始化網(wǎng)絡(luò)參數(shù).由于模型M已經(jīng)具有提取低層特征的能力,使用M初始化網(wǎng)絡(luò)參數(shù)能加快訓(xùn)練網(wǎng)絡(luò)模型的收斂速度.為了避免過(guò)擬合,使用在線數(shù)據(jù)增強(qiáng)策略來(lái)增加圖像樣本的多樣性.在CLVP數(shù)據(jù)集的訓(xùn)練集上,使用SGD[27]算法優(yōu)化網(wǎng)絡(luò)模型N.其次,以20次訓(xùn)練迭代為周期,在驗(yàn)證集上循環(huán)驗(yàn)證模型N的預(yù)測(cè)能力.最后,保存在CLVP訓(xùn)練集上訓(xùn)練好的模型,并用該模型預(yù)測(cè)在測(cè)試集上的蔬菜害蟲檢測(cè)結(jié)果.在使用SGD[27]算法優(yōu)化網(wǎng)絡(luò)模型時(shí),學(xué)習(xí)率是一個(gè)重要的超參數(shù).算法1用偽代碼的形式描述網(wǎng)絡(luò)模型的訓(xùn)練過(guò)程,并詳細(xì)地說(shuō)明學(xué)習(xí)率的變化策略.為避免梯度爆炸和過(guò)擬合,在網(wǎng)絡(luò)訓(xùn)練的3個(gè)階段,即訓(xùn)練熱身階段、基準(zhǔn)學(xué)習(xí)率階段和學(xué)習(xí)率衰減階段,使用不同策略設(shè)置學(xué)習(xí)率.在新的數(shù)據(jù)集上,使用預(yù)訓(xùn)練模型訓(xùn)練時(shí),如果設(shè)置較大的基準(zhǔn)學(xué)習(xí)率,會(huì)導(dǎo)致模型不穩(wěn)定,降低模型的收斂性.針對(duì)該問(wèn)題,使用訓(xùn)練熱身策略,緩慢地把學(xué)習(xí)率從一個(gè)較小的值增加至基準(zhǔn)學(xué)習(xí)率.在訓(xùn)練熱身階段結(jié)束之后,使用基準(zhǔn)學(xué)習(xí)率訓(xùn)練網(wǎng)絡(luò)模型.為了避免過(guò)擬合,當(dāng)?shù)螖?shù)大于學(xué)習(xí)率衰減閾值時(shí),進(jìn)入學(xué)習(xí)率衰減階段.使用上述學(xué)習(xí)率調(diào)整策略,增加模型的穩(wěn)定性,提升模型的泛化能力.
4實(shí)驗(yàn)和討論
4.1實(shí)驗(yàn)規(guī)則
從CLVP-V1數(shù)據(jù)集中選擇80%的樣本作為訓(xùn)練集,剩下10%的樣本作為驗(yàn)證集,其他約10%作為測(cè)試集.為了方便其他學(xué)者在CLVP-V1數(shù)據(jù)集上評(píng)估算法,將公開CLVP-V1數(shù)據(jù)集,提供訓(xùn)練、驗(yàn)證和測(cè)試的列表.與COCO[26]數(shù)據(jù)集使用的評(píng)價(jià)指標(biāo)一樣,分別根據(jù)10個(gè)IoU值(從0.5到0.95,間隔0.05)計(jì)算均值平均精度(meanAveragePrecision,mAP).CLVP數(shù)據(jù)集使用這10個(gè)mAP的平均值作為評(píng)估指標(biāo).
4.2實(shí)驗(yàn)設(shè)置
為了驗(yàn)證遷移學(xué)習(xí)的效果,在CLVP數(shù)據(jù)集上,對(duì)比3個(gè)目標(biāo)檢測(cè)網(wǎng)絡(luò)模型,即FR-R101、FR-X101和Re-R101.在英偉達(dá)TeslaV100GPU上訓(xùn)練、驗(yàn)證和測(cè)試模型.為了公平地比較,設(shè)置上述3個(gè)網(wǎng)絡(luò)模型的參數(shù)相同.使用第4.3節(jié)中介紹的方法,確定最大訓(xùn)練迭代次數(shù)maxi.設(shè)置批量大小為4,訓(xùn)練熱身迭代次數(shù)wi為100,訓(xùn)練熱身初始因子wf為0.001,基準(zhǔn)學(xué)習(xí)率base為0.001,學(xué)習(xí)率衰減閾值di為1000,學(xué)習(xí)率衰減因子df為0.1.為了去除多余和得分較低的檢測(cè)框,在驗(yàn)證和測(cè)試階段設(shè)置非極大值抑制閾值和得分閾值均為0.5.
4.3評(píng)估最大迭代次數(shù)
為獲得合適的最大迭代次數(shù),在訓(xùn)練網(wǎng)絡(luò)時(shí),保存訓(xùn)練過(guò)程的Loss值和驗(yàn)證集的mAP值.使用上述數(shù)據(jù)繪制FR-R101、FR-X101和Re-R101的訓(xùn)練損失與驗(yàn)證集mAP的示意圖,分別如圖3、圖4和圖5所示.從圖3可以發(fā)現(xiàn),在CLVP-V1訓(xùn)練集上,大概迭代500次時(shí),訓(xùn)練Loss值降到0.2;迭代訓(xùn)練大概3500次左右時(shí),在驗(yàn)證集上獲得相對(duì)較好的實(shí)驗(yàn)結(jié)果.觀察圖4可以發(fā)現(xiàn),在訓(xùn)練集上,FR-X101網(wǎng)絡(luò)訓(xùn)練將近500次時(shí),訓(xùn)練Loss值降到0.2;迭代訓(xùn)練大概3200次左右時(shí),在驗(yàn)證集上獲得相對(duì)較高的mAP值.從圖5可以發(fā)現(xiàn),迭代訓(xùn)練600次左右時(shí),訓(xùn)練Loss值降到0.2;迭代訓(xùn)練大概3300次左右時(shí),在驗(yàn)證集上獲得相對(duì)較好的結(jié)果.綜合上述對(duì)比分析,對(duì)這3個(gè)網(wǎng)絡(luò)模型,設(shè)置最大訓(xùn)練迭代次數(shù)分別為3515、3189和
4.4實(shí)驗(yàn)結(jié)果
根據(jù)以上實(shí)驗(yàn)配置,在CLVP-V1數(shù)據(jù)集上,分別評(píng)估上述3個(gè)目標(biāo)檢測(cè)網(wǎng)絡(luò)模型和TOOD[22]算法,評(píng)估結(jié)果如表2所示.分析表2中的數(shù)據(jù),可以得出以下推斷.