?

基于改進YOLOX-s的蘋果花生長狀態檢測方法及驗證分析*

2023-09-11 09:22高昂盧傳兵任龍龍李玲沈向宋月鵬
中國農機化學報 2023年8期
關鍵詞:蘋果花注意力損失

高昂,盧傳兵,任龍龍,李玲,沈向,宋月鵬

(1. 山東農業大學機械與電子工程學院,山東泰安,271018; 2. 山東省園藝機械與裝備重點實驗室,山東泰安,271018; 3. 山東省煙臺市農業技術推廣中心,山東煙臺,264001;4. 山東農業大學園藝科學與工程學院,山東泰安,271018)

0 引言

蘋果是我國主要的大宗水果,在全國廣泛種植,目前無論是種植面積還是產量都居世界首位。隨著現代化果園的建立,對蘋果產生過程機械化和智能化提出了新的要求,其中在果樹管理中,開花強度是決定疏花的關鍵因素[1],直接影響果實品質。因此迫切需要實現蘋果花生長狀態智能檢測,代替傳統人工識別,以增加檢測的客觀性和準確率,從而提高蘋果園智能化作業,提高經濟效益。

隨著機器視覺技術的迅猛發展[1],國內外學者運用機器學習和圖像處理技術在蘋果花檢測中做了大量研究,陳國防等[2]研究了基于數據增強深度學習的蘋果花檢測方法,采用YOLO V4作為識別模型。楊其晟等[3]研究了改進的YOLO V5蘋果花生長狀態檢測方法,并對網絡進行改進以增加檢測精度。Sun等[4]對蘋果花、桃花和梨花輪廓進行語義分割并確定當前花瓣狀態。

以上研究采用深度學習技術對蘋果花生長狀態進行研究,但對于實際應用領域輕量級識別模型適應嵌入式設備的研究較少,因此需要解決輕量級網絡識別蘋果花的問題?;诖?本文提出基于改進的YOLOX 蘋果花生長狀態檢測方法,在網絡中加入CBAM注意力機制模塊,采用EIOU作為模型的回歸函數,在后處理階段引入Focal Loss損失函數,在網絡模型參數較少的同時提高其識別精度,為實現蘋果花生長狀態智能檢測提供技術支持。

1 試驗與方法

1.1 圖像采集與預處理

本試驗圖像數據采集點為山東農業大學蘋果試驗田(東經117.122 96°,北緯36.200 713°),采集時間為2022年4月上旬,在白天的不同時間段采用榮耀20 s智能手機進行蘋果花圖像采集,如圖1所示,該試驗田蘋果品種為富士蘋果。同時為了方便后續的網絡模型訓練,對采集后的蘋果花圖像進行處理,首先統一縮放到608像素×608像素,并對圖像進行數據增廣以增加圖像的廣泛性防止過擬合,最終得到蘋果花數據集為868張。

圖1 采集的蘋果花圖像

采用labelImg圖像標注工具對圖像中的蘋果花進行標注[5],標注后會生成蘋果花的分類和坐標信息并以文檔的形式存儲,根據使用要求轉化成不同的格式。

1.2 YOLOX深度學習網絡

YOLOX是一種典型的單階段目標檢測網絡結構,相比雙階段目標檢測網絡結構,單階段目標檢測網絡結構檢測速度更快,檢測精度稍遜[6]。這為深度學習網絡的實際應用提供了可能,YOLOV3使用全卷積網絡提取圖像特征,在網絡中大量使用了殘差結構,解決了梯度消失和梯度爆炸的問題,同時YOLOV3采用了新的主干網絡DarkNet和新的優化函數等,獲得了更快的檢測速度和檢測精度。

YOLOX目標檢測網絡結構的出現進一步提升該系列的檢測精度和速度。同樣,如圖2所示,YOLOX目標檢測網絡也由四部分組成,分別為輸入、主干網絡、頸部和預測[7]。

圖2 YOLOX網絡結構示意圖

輸入:在輸入階段YOLOX目標檢測網絡采用了Mosaic和Mixup數據增強方法,兩種數據增強方法通過圖像隨機縮放、剪裁、自由拼接等操作有效提高數據的泛化能力。

主干網絡:主干網絡是整個檢測模型的核心,負責將輸入的圖像進行特征提取并輸出相應的特征圖。YOLOX網絡使用CSPDarknet53網絡,該網絡使用了Residual殘差網絡,并在最后一層使用全連接層,具有很強的特征提取能力。

頸部:頸部是FPN特征金字塔的構造,用于增強特征提取。FPN可以融合不同形狀的特征層,有助于提高模型的性能和小目標的檢測能力[8]。

預測:在預測階段YOLOX網絡使用解耦頭放棄了以往該系列使用的先驗框,同時使用SimOTA策略,可以將正樣本動態匹配到不同大小的對象。

1.3 YOLOX目標檢測網絡的改進

1.3.1 添加Convolutional Block Attention Module(CBAM)注意力機制模塊

CBAM模塊是一種有效且輕量級的注意力模塊[9],在眾多的分類網絡和目標檢測網絡中表現優異,在幾乎不影響網絡運行速度的同時提升了分類和檢測精度。CBAM模塊在給定中間特征圖的情況下沿著兩個獨立維度順序推導出注意力圖,然后將該圖與輸入特征圖相乘以進行自適應優化[10],所以CBAM模塊結合了空間注意力模塊和通道注意力模塊,首先將特征圖導入通道注意力模塊,獲得相應的注意力圖,輸入特征映射與注意力映射相乘,其輸出通過空間注意力模塊,在空間注意力模塊執行通道注意力優化后的特征映射與注意力映射相乘,最后輸出增加注意力的特征圖,表達式如式(1)和式(2)所示。

F′=Mc(F)×F

(1)

F″=Ms(F′)×F′

(2)

式中:F——輸入特征映射;

F′——通道注意力優化后的特征映射;

Mc(F)—— 通道注意力輸出;

Ms(F′)—— 空間注意的輸出;

F″——注意力模塊的特征輸出。

在本文中使用預訓練權重對模型訓練能夠加快模型訓練的速度,后期模型需要移植到嵌入式設備,因此對網絡結構輸出的最后兩層輸出加入注意力機制,如圖3所示。

圖3 YOLOX加入注意力機制示意圖

1.3.2 優化的損失函數

損失函數主要是評價網絡預測的準確性和指導權重更新[11]。適合的損失函數能夠使得網絡訓練收斂得更快,獲得的精度更高。YOLOX的損失函數主要由box_loss、obj_loss和cls_loss三部分組成,box_loss用來計算目標框與真實框的位置信息差,obj_loss用來判斷目標框中是否存在目標物體,cls_loss用于監督類別分類,YOLOX的損失函數如式(3)所示。

Loss=box_loss+obj_loss+cls_loss

(3)

在YOLOX損失函數中,采用GIOU_Loss計算目標框與真實框之間誤差的置信度損失,但是該函數具有一定的局限性,當目標框與真實框包含重合的時候,無法有效地檢測出重疊的目標[12],由于蘋果花是聚集性的小目標,這對于蘋果花的檢測是不利的。因此,采用本文采用EIOU_Loss[13]提高檢測精度,該函數在CIOU的基礎上分別計算寬高的差異值取代了縱橫比,使得目標框更接近真實框。

(4)

式中:EIOU_Loss——損失輸出;

IOU——重疊度;

b——預測框的中心點;

bgt——預測框的中心點;

c——預測框和真實框最小外接矩形對角線距離;

cw——覆蓋兩個框的最小外接矩形的寬度;

ch——覆蓋兩個框的最小外接矩形的長度;

w——預測框的寬度;

wgt——預測框的長度;

h——真實框的寬度;

hgt——真實框的長度;

ρ——兩個中心點的歐氏距離。

本文蘋果花數據集,少部分圖像中由單個蘋果花組成在檢測中容易精確地檢出,大部分圖像中擁有多個擁簇的蘋果花組成增加了其檢測的難度,所以該數據集存在難易樣本不平衡的問題。在YOLOX-s模型識別中應該給予復雜蘋果花更多的關注度以增加模型的預測能力。為了解決此問題,本文采用Focalloss代替YOLOX-s模型中分類損失函數,該函數計算公式如式(5)所示。

(5)

式中:Focalloss——分類損失輸出;

p——模型的概率預測;

α——平衡因子,用于平衡蘋果圖像正負樣本數量不均;

γ——縮放系數,用于對單個蘋果花圖像樣本損失進行縮放,使其更加關注擁簇蘋果花圖像樣本損失。

2 結果與討論

2.1 試驗環境

本試驗在模型訓練時候對硬件要求較高,特別對GPU的使用能夠加速模型的訓練,硬件試驗環境處理平臺為聯想筆記本電腦,型號為Y9000p,處理器為Intel Pentium i5-12700H,主頻為3.5 GHz,GPU為GeForce GTX 3060 6G。軟件試驗環境為Windows 10系統,計算機編程語言為Python 3.8,機器學習庫為Pytorch 1.10.0,并行計算架構為CUDA10.2。

2.2 評價性指標

在本文中,為了對訓練的模型進行性能分析和評價,采用精確度(Precision),召回率(Recall),平均精度(Average Precision,AP)作為評價性指標,精確度、召回率和平均精度的計算公式如式(6)~式(8)所示。

(6)

(7)

(8)

式中:P——精確度;

R——召回率;

AP——平均精度;

TP——真陽性,被正確預測為正樣本的數量;

TN——真陰性,負樣本被預測為負樣本的數量;

TP——假陽性,負樣本被預測為正樣本的數量;

FN——假陰性,正樣本被預測為負樣本的數量。

2.3 結果與討論

2.3.1 蘋果花識別模型訓練分析

通過對YOLOX-s增加注意力機制,對YOLOX-s的損失函數進行優化,模型識別蘋果花的精確度得到了提升。為了驗證本文模型訓練的有效性,對改進后的損失值和平均精確度進行可視化操作,繪制訓練過程的損失曲線圖和mAP變化圖。圖4(a)為模型訓練Loss損失圖,圖4(b)為模型訓練mAP圖,由圖4(a)可知,經過多輪次的模型訓練,損失函數曲線呈下降趨勢,在訓練后期模型的損失值都小于0.002,并且趨于平緩,由圖4(b)可知,在訓練初期模型的識別精度較低,在訓練后期mAP值逐漸提高并趨于穩定在0.9的附近證明模型訓練是有效的。

(a) 模型訓練Loss損失圖

2.3.2 不同模型驗證分析

為對本文模型的性能進行驗證,采用Faster RCNN[14]、YOLO V3、YOLO V5[15]、YOLOX先進目標檢測模型對數據集進行測試,在試驗條件相同的情況下,將模型參數調至最優,試驗結果如表1所示。

表1 不同模型試驗結果Tab. 1 Different model test results

由表1可知,本文模型在蘋果花生長狀態識別中各項指標超過85%,通過對YOLOX模型改進和優化,相比YOLO模型精確度提高了0.5%,召回率提高了6.19%,平均精度提高了4.28%。通過與其他模型的對比,在測試中Faster RCNN的精確度最低為76%,召回率為87.16%,平均精度為85.79%,對比發現經過單階目標YOLO系列模型的發展檢測精度上已經超越雙階段目標檢測,在對比YOLO V3、YOLO V5-s、YOLOX-s和本文模型,YOLOX-s模型在本文數據集的表現優于YOLO V3、YOLO V5-s,在平均精度指標中YOLOX-s相比YOLO V5-s提高1.42%。所以通過系列模型的對比充分證明改進后模型的優越性。

2.3.3 改進模型驗證分析

本文在檢測頭網絡結構輸出的最后兩層特征圖輸出中加入注意力機制,為了驗證加入注意力機制后模型的檢測性能,在不改變其它優化參數的前提下對是否加入注意力機制的YOLOX-s模型進行了比較,結果如表2所示。由表2可以看出,加入CBAM注意力模塊提高了模型的檢測性能,平均精度提升了1.66%。

表2 加入CBAM注意力模塊試驗結果Tab. 2 Experimental results of adding CBAM attention module

不同數據集適用的損失函數不同,本文對比了GIOU、CIOU、EIOU不同激活函數,不同置信度損失函數FocalLoss、VariFocalLoss對模型的影響,結果如表3所示。由表3可知,不同的損失函數表現力不同,其中表現最優為EIOU+FocalLoss模型,最終平均精度為94.4%,相比表現最低的CIOU+Vari模型平均精度提高4.78%,在精確度指標中表現最優的是YOLOX-s-CIOU-Focal為93.32%,在召回率指標中表現最優的是YOLOX-s-GIOU-Vari為91.25%,說明本文優化后的回歸損失函數和置信度損失函數是有效的。

表3 不同損失函數模型試驗結果Tab. 3 Model test results of different loss functions

2.3.4 可視化驗證分析

采用相同的測試圖片對改進前后的模型進行測試并進行可視化,如圖5所示。圖5(a)為YOLOX的檢測效果圖,圖5(b)為改后優化后的本文模型檢測效果圖。由測試圖看出兩者都沒有出現漏檢的情況,改進優化后的模型在識別精度上有所提高,標框位置更精確。在一張圖像中有多個蘋果花重疊的時候,改進后的模型識別效果更好,識別精度更高,重疊的蘋果花檢出的正確率也更高。

(a) YOLOX-s測試圖

3 結論

1) 本文基于蘋果園智能化疏花對蘋果花無損檢測的應用場景,研究了基于改進YOLO-s的蘋果花生長狀態檢測,使之能夠應用到邊緣設備對蘋果園的蘋果花進行檢測從而指導智能化疏花精準決策。

2) 通過對蘋果花圖像進行采集,劃分和擴充建立了復雜背景下蘋果花生長狀態數據集。并利用該數據集進行基于YOLOX-s識別網絡模型訓練,在網絡中加入CBAM注意力機制模塊能有效地提取蘋果花特征網絡,優化了模型的損失函數采用Focalloss作為YOLOX-s模型中分類損失函數,采用EIOU代替原模型的回歸函數,提高模型的分類精度和對擁簇蘋果花的檢測能力。改進后的模型相比未進行改進的模型平均精度提升4.28%,結果證明基于改進YOLOX-s模型的檢測精確度能夠滿足使用要求。

猜你喜歡
蘋果花注意力損失
一朵花的結構
讓注意力“飛”回來
胖胖損失了多少元
我的植物朋友 ——蘋果花
蘋果花 [外一首]
玉米抽穗前倒伏怎么辦?怎么減少損失?
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
一般自由碰撞的最大動能損失
損失
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合