?

基于改進的YOLOv8脆柿缺陷檢測

2024-02-20 12:56王靖東張東升
農業與技術 2024年3期
關鍵詞:注意力卷積精度

王靖東張東升

(1.山東交通學院,山東 濟南 250357;2.山東省交通建設裝備與智能控制工程實驗室,山東 濟南 250357)

引言

脆柿的品質是影響其市場價值和消費者滿意度的關鍵因素。具有裂紋的脆柿品質較差易壞;具有霉點的脆柿可能會致癌;因此在分級中需要淘汰有此缺陷的果子。在脆柿的分級過程中,主要依靠的還是人工分揀,不僅耗時耗力,還受到人為主觀因素的干擾[1]。為解決此問題,本文以缺陷脆柿為研究對象,提出一種YOLOv8n-C2f_Faster-DLKA模型,在YOLOv8n模型的基礎上,將引入FasterNet中的FasterBlock模塊替換C2f模塊中的Bottleneck模塊,有效降低了模型參數計算量和模型深度,提高了檢測精度和運行速度;在主干網絡中加入了DLKA注意力機制[2],基于特征學習變形形成了自適應卷積核,這種自適應卷積可以提高模型的特征提取能力。在C2f_Faster模塊的基礎上,通過加入其他的注意力機制進行對比,通過與其他檢測模型對比驗證,證明了YOLOv8n-C2f_Faster-DLKA模型的優越性。

1 圖像數據采集和標注

本實驗中,為了得到較為強大的脆柿數據集,由于現有公開的數據集網站上并沒有缺陷脆柿的相關圖像且受到實際條件的影響,除自己采集到的圖像外,還通過其他方式收集了一些圖像通過數據增強,進一步擴充數據樣本。擴充后的數據按照7∶2∶1比例劃分訓練集、驗證集、測試集,分別為945幅、270幅、135幅[3]。用LabelMe進行數據注釋,以數據為基礎的模型效果的優劣很大程度上取決于所使用數據的質量,由于收集到的圖像過于復雜,導致改進的模型不能夠達到很高的指標。

2 模型改進

2.1 FasterNet

FasterNet[4]是2023年CVPR提出的新神經網絡,結合了PConv設計,形成了FasterNet系列。該網絡在各類設備上運行速度快,在分類、檢測和分割任務中表現出卓越性能,同時具備低延遲和高吞吐量。FasterNet的架構包括4個層級,每個層級前面有一個嵌入層或合并層,用于空間下采樣和通道擴展。每個階段都包括FasterBlock塊,其中PConv層和2個1×1卷積層組成倒置殘差塊,中間層擴展通道數,并包含Shorcut以重用輸入特征。FasterNet模塊中的PConv層只在部分輸入通道上應用常規卷積來進行空間特征提取,同時保持其他通道不變,這種方法既能更好地利用設備計算能力,又能在空間特征提取中發揮關鍵作用。

2.2 DLKA Attention

可變形大內核注意力[5](Deformable Large Kernel Attention)是2023年CVPR提出的一種新的注意力機制,用于處理醫學圖像分割。該模塊采用可變形卷積,調整采樣網格整數偏移,創建一個偏移場,并基于特征學習自適應卷積核,以增強檢測脆柿表面缺陷的效果。與傳統的注意力方法不同,其無需額外的歸一化函數,避免忽略高配信息降低注意力機制性能的可能性。

圖1 FasterNet網絡結構

x1=D﹣LKA﹣Attn(LN(xin))+xin

xout=MLP(LN(x1))+x1

MLP=Conv1(GeLU(Convd(Conv1(x))))

圖2 2D DLKA注意力機制網絡結構

2.3 YOLOv8n-C2f_Faster-DLKA檢測模型構建

原有的YOLOv8算法對脆柿缺陷數據集進行檢測時,存在精度不高,檢測速度過慢等問題,不便于在具體的分揀過程中應用。在YOLOv8n的原始模型中,C2f的Bottleneck模塊是一種殘差塊的變種,融合Bottleneck之前的和之后的feature map,由n個Bottleneck串行,每個Bottleneck都和最后一個Bottlenec再融合起來,這就達到了特征融合的目的。其設計旨在提高網絡的效率和表達能力,同時減少計算量。但原始模型中C2f模塊就比較多,且每個C2f擁有一個或者多個bottleneck模塊,每個bottleneck模塊都包含一個卷積,盡管這種設計使得C2f模塊能夠學習到豐富的特征表示,但同時也增加了模型的計算負載和復雜度。因此,本文通過引入FasterNet中的FasterBlock模塊替換C2f中的Bottleneck模塊,PConv卷積更加簡單,可以有效減少計算冗余和內存訪問[6]。通過與C2f模塊拼接形成一種新的特征提取模塊C2f_Faster[7],經實驗證明,C2f_Faster模塊提升了對脆柿缺陷的檢測速度和精度。

為了避免輕量化改進后的檢測精度再有所上升,引入DLKA注意力模塊,該模塊利用大型卷積核充分理解體積上下文。該機制在類似于自注意力的感受野范圍內操作,同時避免了計算開銷。此外,該注意力機制還利用可變形卷積靈活地扭曲采樣網格,使模型能夠適應多樣化的數據模式,經過后續驗證,確實對脆柿數據集的適用性比較好,性能比較優越。

圖3 YOLOv8n-C2f_Faster-DLKA網狀結構

3 實驗與分析

3.1 訓練環境和方法

本研究在相同配置的環境下進行了實驗,訓練配置及參數設置:處理器為英特爾酷睿i7-13620h,GPU為NVIDIA GeForce RTX 4060 Laptop GPU,顯存為16G,操作系統為Windows11,使用Python版本為3.11.5,CUDA版本為12.0,使用Pytorch框架進行訓練,torch版本為2.0.1,迭代次數Epoch設為150,批次大小設為16,圖像輸入尺寸為640像素×640像素。

3.2 消融實驗

為了展現改進的C2f-Faster、加入DLKA注意力機制對YOLOv8n模型算法的不同影響,在保證實驗條件和配置相同的情況下,需要進行消融實驗。實驗結果如表1所示。

表1 消融實驗結果

從表1可以看出,與YOLOv8n模型相比,加入了模塊C2f_Faster模型的mAP@.5和mAP@.5-.95分別提高了約5.3%和2.3%,準確率提升了約5.4%,但召回率下降了約2.7%,GFLOPs下降了1.8,這表示出C2f_Faster模塊不僅可以提升模型的檢測精度,還可在較大程度上減少模型的參數量,提高了運行效率,但降低了召回率。與YOLOv8n模型相比,加入了DLKA注意力機制模型的mAP@.5和mAP@.5-.95分別提高了約5.5%和0.8%,準確率提升了約0.3%,但召回率提升了約5.4%,GFLOPs上升了0.5,這表示DLKA注意力機制雖然可以提升模型的檢測精度,但不可避免的是會提高模型的參數量,從而降低運行效率。YOLOv8n-C2f_Faster-DLKA模型的mAP@.5和mAP@.5-.95分別提高了約7.8%和0.8%,準確率提升了約11.3%,但召回率上升了約0.6%,GFLOPs下降了0.2,這表明此模型不僅可以提高模型檢測精度和運行效率,還可以解決C2f_Faster模塊召回率低和DLKA注意力機制運行效率低的問題。

圖4 總損失和mAP@.5曲線

3.3 C2f_Faster加入不同注意力機制對比實驗

為了驗證D-LKA注意力機制的優越性,將EMA、MLCA、SimAM、CPCA、MPCA、SegNext、Triplet、LSKA等注意力加入到改進的YOLOv8n-C2f_Faster模型中,進行實驗對比,得到的實驗數據如表2所示。

表2 多種注意力機制對比結果

通過表2對比可知,這些注意力機制的mAP@.5和精度都沒有DLKA的高,在召回率上也只有EMA和SegNext比DLKA高。由此看出,DLKA注意力機制對該脆柿數據集的影響遠超其他注意力機制,雖然DLKA的GFLOPs會比這些注意力機制高,但其檢測效果是明顯高于其他的注意力機制,對檢測精度的提升有明顯效果。

3.4 不同檢測模型性能對比

為了證明YOLOv8n-C2f_Faster-DLKA算法較其他算法在脆柿缺陷檢測的優越性,與其他檢測模型對比,得到的實驗結果如表3所示。

表3 多種檢測模型對比結果

4 總結

針對脆柿缺陷檢測所需的輕量化網絡結構和實時檢測要求,提出了一種YOLOv8n-C2f_Faster-DLKA的檢測模型,通過在基礎模型YOLOv8n中通過引入FasterNet中的FasterBlock模塊替換C2F中的Bottleneck模塊和DLKA注意力機制降低了模型的參數量和計算量。針對YOLOv8n-C2f_Faster-DLKA模型的有效性驗證,在測試集上的mAP@.5和mAP@.5-.95分別為60.6%和26.6%,對比原始YOLOv8n模型分別提升7.8%和0.8%,有效提升了對脆柿缺陷的檢測速度和精度。

猜你喜歡
注意力卷積精度
讓注意力“飛”回來
基于3D-Winograd的快速卷積算法設計及FPGA實現
從濾波器理解卷積
基于DSPIC33F微處理器的采集精度的提高
基于傅里葉域卷積表示的目標跟蹤算法
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
GPS/GLONASS/BDS組合PPP精度分析
改進的Goldschmidt雙精度浮點除法器
一種基于卷積神經網絡的性別識別方法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合