羅志聰 李鵬博 宋飛宇 孫奇燕 丁昊凡
(1.福建農(nóng)林大學(xué)機(jī)電工程學(xué)院,福州 350002;2.福建省農(nóng)業(yè)信息感知技術(shù)重點(diǎn)實驗室,福州 350002;3.福建農(nóng)林大學(xué)計算機(jī)與信息學(xué)院,福州 350002)
隨著農(nóng)業(yè)智能化和農(nóng)業(yè)數(shù)字革命的快速發(fā)展,利用計算機(jī)視覺進(jìn)行果實識別和產(chǎn)量預(yù)估等精細(xì)化管理成為發(fā)展智慧農(nóng)業(yè)的研究熱點(diǎn)[1-2]。百香果是福建富民產(chǎn)業(yè)的“福果”,百香果產(chǎn)業(yè)不僅有高效的經(jīng)濟(jì)效益,還有助于推動福建農(nóng)業(yè)的供給側(cè)結(jié)構(gòu)改革[3]。目前,百香果的收獲仍局限于人工采摘,具有成本高、作業(yè)效率低、勞動強(qiáng)度大和風(fēng)險高等缺點(diǎn)[4]。為了機(jī)械化采摘,實現(xiàn)百香果目標(biāo)精準(zhǔn)檢測與定位尤為重要。
針對復(fù)雜環(huán)境下的百香果果實識別與定位,傳統(tǒng)的方法效果不佳,而深度學(xué)習(xí)網(wǎng)絡(luò)[5-7]可以自動提取特征,將簡單的特征融合為更復(fù)雜的特征,通過復(fù)雜特征解決識別定位問題,在目標(biāo)檢測方面精度和效率都得到了大幅提升。TU等[8]通過改進(jìn)RCNN提出多尺度快速的區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(MS-FRCNN)對葉片嚴(yán)重遮擋的百香果進(jìn)行檢測和計數(shù)。該方法識別能力較強(qiáng),但網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜、訓(xùn)練速度過慢。唐熔釵等[9]通過在YOLO v3模型中加入密集網(wǎng)絡(luò)DenseNet來提高模型對自然環(huán)境下百香果的檢測精度,但加深網(wǎng)絡(luò)結(jié)構(gòu)使得計算損耗增加。WU等[10]在YOLO v3網(wǎng)絡(luò)基礎(chǔ)上增強(qiáng)特征融合網(wǎng)絡(luò)和減少多尺度網(wǎng)絡(luò)檢測自然環(huán)境中的百香果,但對百香果的識別和定位具有局限性。TU等[11]提出的基于RGB-D檢測器與深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)合的模型,在檢測百香果成熟度方面具有較高的檢測精度,但該網(wǎng)絡(luò)只存在理論研究,并沒有部署到嵌入式設(shè)備。雖然深度學(xué)習(xí)網(wǎng)絡(luò)的優(yōu)化和改進(jìn)在百香果的檢測和定位方面取得優(yōu)異效果,但同時巨大參數(shù)量會導(dǎo)致硬件存儲成本和計算成本過高[12],限制了在精準(zhǔn)農(nóng)業(yè)化管理中應(yīng)用和推廣。尋找一種精度高、體積小的深度學(xué)習(xí)算法應(yīng)用于嵌入式設(shè)備尤為重要。
目前學(xué)者在深度學(xué)習(xí)網(wǎng)絡(luò)輕量化方面做了多種嘗試,如設(shè)計輕量化網(wǎng)絡(luò)[13]、網(wǎng)絡(luò)剪枝[14]、知識蒸餾[15]、模型壓縮[16]等。輕量化卷積神經(jīng)網(wǎng)絡(luò)通過減少計算量和參數(shù)量設(shè)計出更加高效的特征提取網(wǎng)絡(luò)結(jié)構(gòu),在減少參數(shù)的同時幾乎不影響網(wǎng)絡(luò)模型性能。如MobileNet[17]、ShuffleNet[18]、GhostNet[19]。
由于YOLO v5模型較大,在嵌入式平臺部署后實時檢測百香果的性能低。本文基于改進(jìn)YOLO v5模型,以復(fù)雜環(huán)境下綠色百香果為研究對象,在確保檢測精度較高的情況下,使得模型輕量化且可部署于嵌入式平臺,節(jié)約邊緣計算設(shè)備資源從而達(dá)到實時檢測要求。
本文圖像采集地點(diǎn)為福建省漳州市詔安縣福果農(nóng)業(yè)綜合開發(fā)有限公司的黃金百香果基地,采集時間為2021年6月底至8月初。選用尼康數(shù)碼相機(jī)設(shè)備拍攝,拍攝時相機(jī)距離百香果為80~100 cm,圖像尺寸為1 920像素×1 080像素。分別采集了百香果順光和逆光時獨(dú)立果實、多個果實、葉片遮擋和果實重疊下共1 000幅圖像,復(fù)雜環(huán)境下的百香果圖像如圖1所示。
圖1 復(fù)雜環(huán)境下百香果圖像
為了降低因訓(xùn)練樣本多樣性不足而產(chǎn)生的模型過擬合現(xiàn)象,采用對原始圖像進(jìn)行旋轉(zhuǎn)、鏡像、加入高斯噪聲和改變對比度等處理擴(kuò)充數(shù)據(jù)集,增廣的百香果圖像如圖2所示。為了與原圖有所區(qū)別,高斯噪聲平均值和標(biāo)準(zhǔn)方差分別設(shè)置為3和40。對比度調(diào)節(jié)是將原圖像R、G、B3通道的強(qiáng)度值[0.4,1]映射到新圖像[0,1]中。最終獲得2 000幅復(fù)雜環(huán)境下百香果圖像作為數(shù)據(jù)集并保存為.jpg格式。使用人工標(biāo)注工具LableImg對百香果目標(biāo)進(jìn)行標(biāo)注,獲取準(zhǔn)確的百香果位置數(shù)據(jù)。為了減少復(fù)雜背景像素對檢測結(jié)果的影響,標(biāo)注時將百香果的最小外接矩形框作為真實框(Ground truth),最終得到VOC格式的xml文件。文件中包含百香果名稱、尺寸和位置。對以上標(biāo)注好的數(shù)據(jù)集劃分訓(xùn)練集和測試集,并按照比例8∶2進(jìn)行隨機(jī)分配。訓(xùn)練集和測試集分別為1 600幅和400幅。
圖2 百香果增廣數(shù)據(jù)集
YOLO系列算法[20-21]是目前應(yīng)用最為廣泛的一階段目標(biāo)算法之一,相比SSD算法,YOLO算法提取物體特征更充分,檢測精度高、速度快。相比Fast-RCNN[22]網(wǎng)絡(luò),YOLO v5把檢測問題作為回歸問題處理,可以直接從圖像中得到邊界框坐標(biāo)和所屬類別的概率,實現(xiàn)端到端的檢測性能優(yōu)化。YOLO v5網(wǎng)絡(luò)結(jié)構(gòu)可以分為4部分:輸入端(Input)、主干網(wǎng)絡(luò)(Backbone)、頸網(wǎng)絡(luò)(Neck)、檢測網(wǎng)絡(luò)(Detect)。主要結(jié)構(gòu)如圖3所示。
圖3 YOLO v5網(wǎng)絡(luò)結(jié)構(gòu)圖
輸入端由Mosaic數(shù)增強(qiáng)方式將百香果圖像進(jìn)行隨機(jī)縮放、裁剪、排布后輸入網(wǎng)絡(luò)。主干網(wǎng)絡(luò)主要實現(xiàn)百香果的特征提取,由Focus模塊、C3模塊、標(biāo)準(zhǔn)卷積(CBS)模塊、SPP模塊組成。Focus模塊對輸入的百香果圖像進(jìn)行切片操作,通過擴(kuò)張通道數(shù)來提取百香果目標(biāo)特征。C3模塊在CSP結(jié)構(gòu)上改進(jìn)得到,由于網(wǎng)絡(luò)優(yōu)化中梯度信息重復(fù),使計算量過高,去掉了殘差輸出后的批量歸一化層和激活函數(shù)層,減少了運(yùn)算量,如圖4所示。CBS模塊包括二維卷積、批量標(biāo)準(zhǔn)化和激活函數(shù)(SiLU)。SPP模塊通過不同核尺寸提取百香果特征之后疊加進(jìn)行特征融合。頸網(wǎng)絡(luò)主要實現(xiàn)百香果的特征融合,以路徑聚合網(wǎng)絡(luò)(PANet)為主,分為FPN結(jié)構(gòu)和PAN結(jié)構(gòu)。FPN結(jié)構(gòu)從上往下提取特征層信息,提升了目標(biāo)檢測效果。PAN結(jié)構(gòu)從下往上提取特征層信息,得到豐富的位置信息。最后將提取的特征層進(jìn)行融合,使得PANet網(wǎng)絡(luò)攜帶更強(qiáng)的語義特征,增強(qiáng)了定位能力。
圖4 C3網(wǎng)絡(luò)結(jié)構(gòu)
檢測網(wǎng)絡(luò)以目標(biāo)對象的概率類別、置信度得分、包圍框位置作為結(jié)果輸出。YOLO v5主要計算3類損失函數(shù):邊框損失(Bounding box loss)、類間損失(Class loss)和目標(biāo)損失(Object loss)。其中類間損失采用Focal loss損失函數(shù)[23]。
2.2.1模型輕量化
本研究在特征提取網(wǎng)絡(luò)層選取MobileNetV3[24]輕量化模型替換YOLO v5主干網(wǎng)絡(luò),MobileNetV3結(jié)合了深度可分離卷積、線性瓶頸和倒置殘差結(jié)構(gòu),為了學(xué)習(xí)使用全局信息選擇性地強(qiáng)調(diào)具有信息性的特征,抑制不明顯特征而引入了SE結(jié)構(gòu)。MobileNetV3特征提取網(wǎng)絡(luò)采用一個3×3的標(biāo)準(zhǔn)卷積和多個倒置殘差結(jié)構(gòu),不僅能夠減少網(wǎng)絡(luò)參數(shù)還能提取百香果的豐富特征信息。文中主干網(wǎng)絡(luò)選取的MobileNetV3結(jié)構(gòu)如表1所示。
表1 主干網(wǎng)絡(luò)中MobileNetV3結(jié)構(gòu)
在主干網(wǎng)絡(luò)中由于使用MobileNetV3深度可分離卷積替代了YOLO v5傳統(tǒng)卷積,在有效提取百香果特征的同時減少了參數(shù)量與計算量。假設(shè)Dk表示卷積核尺寸,M表示輸入特征圖通道數(shù),N表示卷積核個數(shù),DW和DH表示輸出特征圖的長和寬。深度可分離卷積參數(shù)量PD計算式為
(1)
深度可分離卷積計算量QD計算式為
(2)
傳統(tǒng)卷積參數(shù)量PN計算式為
(3)
傳統(tǒng)卷積計算量QN計算式為
(4)
深度可分離卷積和傳統(tǒng)卷積參數(shù)量比RP、計算量比RQ計算式為
(5)
(6)
2.2.2有效通道注意力機(jī)制
深度學(xué)習(xí)中注意力機(jī)制用來強(qiáng)調(diào)百香果目標(biāo)處理對象的重要信息,以選擇出比當(dāng)前任務(wù)目標(biāo)更關(guān)鍵的信息。MobileNetV3在頸部采用SENet輕量化結(jié)構(gòu),SENet對每個通道獨(dú)立使用全局平均池化操作,使其生成的特征層具有全局感受野;使用2個非線性的全連接層,使得網(wǎng)絡(luò)提取豐富的特征信息。雖然在全連接層捕捉非線性通道交互采用降維方式控制模型復(fù)雜性,但是降維會使得通道注意力產(chǎn)生效率低和不必要的依賴關(guān)系,也會使所有通道產(chǎn)生消極影響。
本文采用ECANet(Efficient channel attention net)[25]替換SENet構(gòu)建MvECA模塊,如圖5所示。
圖5 MvECA結(jié)構(gòu)
該模塊避免了降維引起的檢測效果不理想,同時采用交互覆蓋率K的快速一維卷積有效地捕獲了跨通道交互信息,更好地捕捉百香果圖像重要特征,既提升模型效果又降低模型復(fù)雜度,該模塊引入很少的附加參數(shù),并且在局部有適當(dāng)?shù)目缤ǖ澜换?,更有效的學(xué)習(xí)通道注意力,帶來了顯著的性能增益。其中交互覆蓋率K與通道維數(shù)C之間的關(guān)系為
(7)
(8)
yi——當(dāng)前目標(biāo)的聚合特征
而所有通道共享相同的學(xué)習(xí)參數(shù)可以讓模型性能進(jìn)一步提升。共享后通道注意力計算式為
(9)
最后,通過k個參數(shù)的一維卷積快速實現(xiàn)有效獲取局部跨通道的交互信息。
2.2.3逐點(diǎn)卷積網(wǎng)絡(luò)
通過輕量化網(wǎng)絡(luò)MvECA將主干網(wǎng)絡(luò)替換后,在與特征融合網(wǎng)絡(luò)堆疊時通道出現(xiàn)不匹配的情況。針對這一情況,再次對主干網(wǎng)絡(luò)進(jìn)行修改。在主干網(wǎng)絡(luò)的第4層和第10層增加逐點(diǎn)卷積網(wǎng)絡(luò)(Poinrwise conv net),方便特征提取和特征融合網(wǎng)絡(luò)在維度上更好連接,同時也會提高網(wǎng)絡(luò)對百香果檢測的平均精度,與標(biāo)準(zhǔn)卷積不同的是逐點(diǎn)卷積采用1×1的卷積核對上一層的特征層進(jìn)行單點(diǎn)上的特征提取。該設(shè)計首先采用二維卷積提取百香果特征,接著歸一化處理特征使其保留原始的表達(dá)能力,最后輸入到非線性激活函數(shù)中。非線性激活函數(shù)使用h_swish函數(shù)
(10)
其中ReLU6函數(shù)在16位浮點(diǎn)數(shù)或者8位整型低精度時有較優(yōu)的數(shù)值分辨率,易于量化部署,有利于在嵌入式移動平臺中使用。
綜上,最終改進(jìn)后MbECA-v5結(jié)構(gòu)如圖6所示。
圖6 MbECA-v5結(jié)構(gòu)圖
2.2.4跨域與域內(nèi)多輪訓(xùn)練遷移學(xué)習(xí)策略
對于網(wǎng)絡(luò)模型參數(shù)的大量減少引起檢測精度下降問題,本文采用了跨域與域內(nèi)多輪訓(xùn)練相結(jié)合的學(xué)習(xí)策略進(jìn)行知識遷移。即利用跨域與域內(nèi)相結(jié)合的遷移方式在原來訓(xùn)練70輪的基礎(chǔ)上再訓(xùn)練70輪。雖然擴(kuò)大復(fù)雜情況下百香果訓(xùn)練數(shù)據(jù)集會更容易學(xué)習(xí)到百香果特征,提高檢測精度,但是由于受百香果成熟的季節(jié)性限制,大規(guī)模的數(shù)據(jù)集實地獲取較為困難,時間成本高。通常情況下,域內(nèi)和跨域多輪訓(xùn)練遷移方式也可以提高檢測精度,而對于識別對象為復(fù)雜環(huán)境下的百香果,遷移前后的源域和目標(biāo)域相似度有差異,精度提升有限。因此在源域與目標(biāo)域之間添加僅含百香果特征的過渡域,以減少源域和目標(biāo)域之間的差異,大幅提高模型的檢測精度。
本文使用VOC2007數(shù)據(jù)集作為源域,原擴(kuò)充的數(shù)據(jù)集為目標(biāo)域,記作數(shù)據(jù)集2。由于通用百香果數(shù)據(jù)集少,因此將擴(kuò)充的百香果數(shù)據(jù)集中500幅圖像隨機(jī)挑選為過渡域,記為數(shù)據(jù)集1。根據(jù)OTOVI等[26]提出預(yù)訓(xùn)練模型在不相關(guān)的學(xué)習(xí)任務(wù)上比隨機(jī)初始化模型效果要好的觀點(diǎn),將VOC2007數(shù)據(jù)集訓(xùn)練模型的結(jié)果作為數(shù)據(jù)集2的預(yù)訓(xùn)練模型,使用VOC2007數(shù)據(jù)集網(wǎng)絡(luò)模型特征參數(shù)學(xué)習(xí)復(fù)雜環(huán)境下百香果的特征,該策略稱為跨域遷移學(xué)習(xí);將數(shù)據(jù)集1訓(xùn)練模型結(jié)果作為數(shù)據(jù)集2的預(yù)訓(xùn)練模型,用部分百香果特征參數(shù)調(diào)整復(fù)雜環(huán)境的百香果特征參數(shù),該策略稱為域內(nèi)遷移學(xué)習(xí)。將VOC2007數(shù)據(jù)集和數(shù)據(jù)集1共同訓(xùn)練模型結(jié)果作為數(shù)據(jù)集2的預(yù)訓(xùn)練模型,進(jìn)一步學(xué)習(xí)復(fù)雜環(huán)境下的百香果特征,提升遷移學(xué)習(xí)的效果。該策略稱為跨域與域內(nèi)結(jié)合學(xué)習(xí)。
模型訓(xùn)練平臺硬件配置為AMD Ryzen 7 5800H CPU @ 3.70 GHz,GeForce GTX 3060 Laptop GPU,16 GB運(yùn)行內(nèi)存,軟件環(huán)境為64位Windows 10系統(tǒng),采用Pytorch 1.7深度學(xué)習(xí)框架和Python 3.7語言,配合CUDA 11.0進(jìn)行訓(xùn)練。
模型驗證和遷移部署設(shè)備采用英偉達(dá)公司Jetson Nano,GPU為128core Maxwell,CPU為四核ARM,A57@1.43 GHz,內(nèi)存為4 GB、64位LPDDR4。相應(yīng)配置系統(tǒng)為ARM版Ubuntu 18.04操作系統(tǒng),模型運(yùn)行環(huán)境的配置為Jetpack 4.5、Python 3.6、Pytorch 1.8、Torchvision 0.9、Cuda 10.2、Cudnn 8.0。Jetson Nano測試圖如圖7所示。
圖7 Jetson Nano 測試圖
模型評價指標(biāo)為精確率P、召回率R、平均精度均值(mAP)和浮點(diǎn)數(shù)計算量。精確率P表示預(yù)測的正確樣本占所有樣本的比例,召回率R表示預(yù)測的正確樣本占實際正樣本的比例,平均精度均值便于從宏觀角度評價不同卷積神經(jīng)網(wǎng)絡(luò)模型對圖像識別性能。浮點(diǎn)數(shù)計算量用于衡量模型計算復(fù)雜度。
嵌入式設(shè)備實時檢測性能對在百香果園的應(yīng)用非常關(guān)鍵,檢測速度也就成為了目標(biāo)檢測算法的一個重要評價指標(biāo),用于評價模型部署在嵌入式平臺的性能。對于速度這一指標(biāo)本文使用實時幀率FPS表征。
試驗采用Adam優(yōu)化算法進(jìn)行優(yōu)化,圖像尺寸調(diào)整為640像素×640像素,學(xué)習(xí)率(Learnning rate)為0.001,初始動量(Momentum)設(shè)置為0.937,初始權(quán)重衰減系數(shù)0.1,批尺寸(Batch size)設(shè)為8,訓(xùn)練輪數(shù)(Epoch)為70。測試時設(shè)置交并比(IOU)為0.5,置信度為0.6。使用算法在數(shù)據(jù)集上進(jìn)行訓(xùn)練,訓(xùn)練結(jié)束后保存精度最高的和最后一次的模型參數(shù)。
訓(xùn)練過程的參數(shù)指標(biāo)如圖8所示。隨著訓(xùn)練輪數(shù)增加,精確率和召回率均不斷上升,訓(xùn)練前15輪精確率和召回率曲線上升速度最快,當(dāng)訓(xùn)練達(dá)到70輪時,精確率和召回率曲線趨近于平緩,最終分別達(dá)到94.2%和83.6%。mAP曲線也隨著訓(xùn)練次數(shù)的增加逐漸上升,最終復(fù)雜環(huán)境下百香果檢測平均精度均值達(dá)到92.5%,上述訓(xùn)練曲線趨勢說明改進(jìn)后的模型具有有效性和高識別性。
圖8 訓(xùn)練模型參數(shù)指標(biāo)變化趨勢
消融試驗結(jié)果如表2所示。從表2可以看出,利用輕量化網(wǎng)絡(luò)替換主干網(wǎng)絡(luò)減少了參數(shù)量,使用注意力模塊關(guān)注百香果整體,同時減小了網(wǎng)絡(luò)模型。添加設(shè)計的逐點(diǎn)卷積擬合通道和提升精度,使用遷移學(xué)習(xí)策略調(diào)整初始化網(wǎng)絡(luò)模型,大幅提升了模型的精確率、召回率和平均精度均值。
表2 消融試驗結(jié)果
由表2可知,在YOLO v5s網(wǎng)絡(luò)中將原來主干網(wǎng)絡(luò)替換為輕量化網(wǎng)絡(luò)后精確率、召回率和平均精度均值都有所下降,造成上述原因是改進(jìn)的模型參數(shù)量和卷積層數(shù)減少,不利于復(fù)雜環(huán)境下百香果的特征提取,導(dǎo)致網(wǎng)絡(luò)提取特征能力下降。為了彌補(bǔ)替換主干網(wǎng)絡(luò)所帶來的精度大幅下降,在網(wǎng)絡(luò)中添加注意力機(jī)制和逐點(diǎn)卷積,可以看出,對召回率和平均精度均值都有明顯提升。最后利用跨域與域內(nèi)多訓(xùn)練相結(jié)合的遷移學(xué)習(xí)策略對模型初始化參數(shù)調(diào)整,減少前后源域與目標(biāo)域的差異性,提升遷移訓(xùn)練效果。與基線網(wǎng)絡(luò)相比,經(jīng)過上述改進(jìn)后的模型平均精度均值提高0.2個百分點(diǎn),模型占用存儲空間(模型體積)僅為6.41 MB,減少為基線網(wǎng)絡(luò)的55.5%。
在網(wǎng)絡(luò)輕量化模型的基礎(chǔ)上施加不同的注意力機(jī)制,展現(xiàn)不同注意力機(jī)制對模型檢測能力的影響,如表3所示。
表3 不同注意力機(jī)制試驗結(jié)果
從表3可以看出,相比SE、CBAM[27]和CA[28]注意力模塊,施加ECA模塊的MobileNetV3模型檢測精度最為理想,原MobileNetV3模型使用SE注意力模塊,檢測平均精度均值為78.2%。較SE注意力模塊,施加CBAM模塊檢測精度上升2.2個百分點(diǎn),模型體積減少0.65 MB;施加CA模塊檢測精度提高2.7個百分點(diǎn),體積減少0.37 MB。在不同的交互覆蓋率下施加ECA模塊檢測精度均有大幅提高,體積減少0.59 MB。說明在輕量化網(wǎng)絡(luò)中施加不同注意力機(jī)制會減少模型的體積,適合的注意力模塊會使得特征提取能力增強(qiáng)和檢測精度提高,需要根據(jù)不同的檢測目標(biāo)加以選擇。與此同時,對比不同交互覆蓋率對ECA注意力模塊的影響,在交互覆蓋率為3時平均精度均值最高,為81.7%;說明上述組合方式能更為準(zhǔn)確地檢測到復(fù)雜環(huán)境下百香果果實目標(biāo)。
本文所引入的輕量化ECA模塊,使用捕獲跨通道交互的學(xué)習(xí)方式學(xué)習(xí)有效的百香果通道特征,提高了模型對于復(fù)雜環(huán)境下百香果目標(biāo)的敏感程度,進(jìn)而改善百香果檢測任務(wù)中果實重疊和密集時對檢測精度帶來的負(fù)面影響。
不同的遷移學(xué)習(xí)方式對模型的檢測精度有明顯的影響,結(jié)果如表4所示。
表4 不同遷移學(xué)習(xí)方式檢測能力對比
從表4可以看出,跨域與域內(nèi)多輪訓(xùn)練的遷移學(xué)習(xí)方式使模型精度達(dá)到最佳,為88.3%,結(jié)合圖8可以看出訓(xùn)練輪次到達(dá)70輪時,平均精度均值曲線趨于穩(wěn)定,但還具有上升的趨勢,因此采取多輪訓(xùn)練方式可使平均精度均值達(dá)到相對較高水平。相比于跨域遷移、域內(nèi)遷移和跨域與域內(nèi)相結(jié)合遷移方式的平均精度均值分別提高5.4、5.0、0.9個百分點(diǎn)。由于跨域與域內(nèi)相結(jié)合的方式在掌握通用特征后學(xué)習(xí)部分百香果特征,進(jìn)而學(xué)習(xí)復(fù)雜環(huán)境下的百香果特征。相比于跨域遷移,利用部分百香果數(shù)據(jù)集作為過渡域可以減少源域和目標(biāo)域相似度不同所引起的負(fù)面影響;而相比于域內(nèi)遷移,僅含少量的百香果特征模型作為網(wǎng)絡(luò)初始化無法完成復(fù)雜環(huán)境下百香果檢測任務(wù),通過通用數(shù)據(jù)集和少量百香果數(shù)據(jù)集融合的特征對網(wǎng)絡(luò)進(jìn)行初始化,彌補(bǔ)不完全的百香果特征所造成信息的損失,而跨域與域內(nèi)多輪訓(xùn)練學(xué)習(xí)方式不僅具有跨域與域內(nèi)相結(jié)合方式的優(yōu)點(diǎn),同時還可以將訓(xùn)練達(dá)到飽和,獲得最佳的模型檢測精度和最強(qiáng)的泛化能力。
將改進(jìn)模型與SSD、Faster RCNN、YOLO v5s、ShuffleNet-v5和GhostNet-v5模型在Jetson Nano上進(jìn)行測試對比,試驗結(jié)果如表5所示。
表5 不同模型綜合對比結(jié)果
ShuffleNet-v5和GhostNet-v5模型是將YOLO v5s模型結(jié)構(gòu)的主干網(wǎng)絡(luò)分別替換為ShuffleNet和GhostNet網(wǎng)絡(luò)。從表5可知,本文模型的平均精度均值為88.3%,相比于YOLO v5s提高0.2個百分點(diǎn)。相比于SSD、Faster RCNN、ShuffleNet-v5、GhostNet-v5目標(biāo)檢測網(wǎng)絡(luò),提高4.8、1.7、7.2、6.8個 百分點(diǎn)。在6種模型中MbECA-v5的平均精度均值最高,說明預(yù)測為正確百香果能力強(qiáng),減少百香果采摘過程中誤檢率。本文模型體積僅為 6.41 MB,約為SSD、Faster RCNN、YOLO v5s的 1/14、1/81、1/2;從計算機(jī)和嵌入式平臺實時檢測速度考慮,改進(jìn)后的模型MbECA-v5比其他6類模型速度均快。在計算機(jī)實時檢測速度為124.7 f/s,嵌入式平臺實時檢測速度為10.92 f/s,約為SSD、Faster RCNN、YOLO v5s的14、39、1.7倍;計算量相較于SSD及Faster RCNN減少89.2%和97.6%,相較于YOLO v5s及ShuffleNet-v5減少59.5%和4.8%,相較于GhostNet-v5增加1.5%。綜上所述,改進(jìn)后的輕量化網(wǎng)絡(luò)MbECA-v5具有良好的測試性能,在邊緣設(shè)備上部署具有更好的實時性。
為了驗證不同模型在復(fù)雜環(huán)境下百香果的檢測效果,選逆光、重疊和密集百香果圖像進(jìn)行測試。選取置信度閾值為0.6,IOU閾值為0.5。圖9為YOLO v5s和MbECA-v5 2種模型在Jetson Nano上檢測結(jié)果。其中藍(lán)色矩形框為預(yù)測結(jié)果,紅色矩形框為漏檢目標(biāo),黃色圓形框為誤檢目標(biāo)。從圖9可知,在逆光時,2類模型預(yù)測結(jié)果均正確,無漏檢和誤檢現(xiàn)象產(chǎn)生。在重疊時,2種模型均存在漏檢現(xiàn)象,MbECA-v5模型預(yù)測僅漏檢1個百香果目標(biāo),YOLO v5s模型漏檢2個百香果目標(biāo)且產(chǎn)生誤檢現(xiàn)象。在密集時,MbECA-v5檢測效果優(yōu)異,而YOLO v5s均有漏檢和誤檢情況產(chǎn)生。綜上,從識別的效果得出改進(jìn)模型提高了在干擾環(huán)境下的檢測能力,具有較好的魯棒性和泛化能力。
圖9 兩種模型檢測效果對比
(1)提出一種基于嵌入式設(shè)備的輕量化模型MbECA-v5,以YOLO v5s為基礎(chǔ)模型,將原來的主干網(wǎng)絡(luò)替換為MobileNetV3網(wǎng)絡(luò),在MobileNetV3網(wǎng)絡(luò)中引入ECA注意力機(jī)制提取百香果全局信息,引入了逐點(diǎn)卷積進(jìn)行通道調(diào)節(jié)。利用跨域與域內(nèi)多訓(xùn)練相結(jié)合的遷移學(xué)習(xí)策略提高網(wǎng)絡(luò)檢測的精度。通過消融試驗分析驗證改進(jìn)算法的有效性。
(2)復(fù)雜環(huán)境下百香果果實檢測結(jié)果表明,MbECA-v5模型對百香果果實識別精確率為95.3%,召回率為88.1%,平均精度均值為88.3%,與YOLO v5s相比,平均精度均值提高0.2個百分點(diǎn)。計算機(jī)和嵌入式實時檢測的平均幀率分別為124.7 f/s和10.92 f/s,檢測速度相比原模型分別提高22.1 f/s和4.53 f/s。在檢測效果上,改進(jìn)的模型比YOLO v5效果更好。說明改進(jìn)的算法綜合性能最佳,具有較好的魯棒性和泛化能力。
(3)改進(jìn)的算法與常用的目標(biāo)檢測網(wǎng)絡(luò)和輕量化網(wǎng)絡(luò)進(jìn)行對比,本文模型的平均精度均值比SSD與Faster RCNN模型分別提高4.8、1.7個百分點(diǎn)。相比于ShuffleNet-v5與GhostNet-v5模型分別提高7.2、6.8個百分點(diǎn)。模型體積約為SSD與Faster RCNN模型的1/14和1/81。在嵌入式設(shè)備的檢測速度約為SSD與Faster RCNN模型的14倍和39倍,約為ShuffleNet-v5與GhostNet-v5模型的1.12倍和1.11倍。綜上,MbECA-v5模型減少嵌入式設(shè)備上的運(yùn)行內(nèi)存,可以兼顧精度和實時性,滿足快速、準(zhǔn)確地對田間百香果圖像檢測的要求,可為百香果采摘機(jī)器人視覺識別系統(tǒng)提供技術(shù)和理論支持。