文章編號: 1006-9798(2024)03-0031-08; DOI: 10.13306/j.1006-9798.2024.03.005
摘要: 針對原始YOLOv8n算法在復(fù)雜環(huán)境中識別自動導(dǎo)引運輸車(Automated Guided Vehicle, AGV)準確率低的問題,引入CBAM注意力機制,建立CBAMYOLOv8n網(wǎng)絡(luò)模型,提高了模型提取關(guān)鍵特征的能力。建立數(shù)學(xué)模型矯正采集圖像定位誤差,提高AGV在圖像坐標系中的定位精度。仿真結(jié)果表明,相對于原始YOLOv8n模型,CBAMYOLOv8n網(wǎng)絡(luò)模型在AGV空載和負載的情況下,識別準確率分別提高1.4%和2.0%,綜合識別率提高1.7%。圖像誤差矯正后,圖像坐標在u軸和v軸方向的最大誤差為1.3像素和4.3像素,平均誤差為0.74像素和2.1像素。驗證了AGV在圖像坐標系中可以減小定位誤差,提高定位精度。
關(guān)鍵詞: YOLOv8; 自動導(dǎo)引運輸車; 注意力機制; 誤差矯正
中圖分類號: TP242.2文獻標識碼: A
在工業(yè)生產(chǎn)、倉庫管理和物流配送等領(lǐng)域,自動導(dǎo)引運輸車(Automated Guided Vehicle, AGV)取代人工運輸是提升生產(chǎn)效率、降低人工成本以及提高安全性的有效策略[1]。在AGV導(dǎo)航技術(shù)領(lǐng)域,傳統(tǒng)的導(dǎo)航方法如激光導(dǎo)航和磁帶導(dǎo)航存在較低的魯棒性和維護難度較高等缺陷[2]。視覺導(dǎo)航技術(shù)因較高的靈活性和較低的成本效益,逐漸成為主流的AGV導(dǎo)航[3]。如采用視覺SLAM技術(shù),通過整合特征點檢測與光流估計技術(shù),實現(xiàn)對AGV的精確位姿估計[4]。劉明興提出了一種針對形狀不變的AGV全局視覺定位算法,即利用卡爾曼濾波技術(shù)對基于YOLOv3目標檢測模型的AGV定位過程進行優(yōu)化,以提升定位精度和魯棒性[5]。在工廠管理系統(tǒng)中,需要實時準確地監(jiān)控AGV的位置坐標,以獲取其精確的位置信息。目前,傳統(tǒng)基于圖像處理的目標檢測方法包括圖像分割[6]、特征提取[7]以及顏色分割[8]等技術(shù)。然而,在復(fù)雜環(huán)境中,這些方法容易受到目標遮擋、噪點和光照變化等因素的干擾,導(dǎo)致識別準確性下降、魯棒性不足以及處理過程耗時較長,難以滿足工程應(yīng)用需求。隨著基于深度學(xué)習(xí)的目標檢測方法在工業(yè)領(lǐng)域中的廣泛應(yīng)用,圖像目標檢測與深度學(xué)習(xí)的結(jié)合有效地解決了傳統(tǒng)目標檢測方法存在的一系列問題。常用的方法有雙階段檢測(twostage detector)和單階段檢測(onestage detector)兩種類型的卷積神經(jīng)網(wǎng)絡(luò)模型[9]。雙階段檢測中最具有代表性的是RCNN[10-11]系列算法,在網(wǎng)絡(luò)訓(xùn)練中,減少了繁瑣的人工特征選擇,同時根據(jù)實際應(yīng)用場景對模型持續(xù)優(yōu)化,提高其識別精度。但模型規(guī)模龐大,檢測時間長,難以滿足實時檢測需求。相較之下,單階段檢測具有更快的檢測速度和更高的可擴展性,更適用于實際場景中的應(yīng)用。單階段檢測模型中最具有代表性的是YOLO[12]系列目標檢測算法。在YOLOv3的基礎(chǔ)上改進的YOLOv4[13]算法將路徑增強網(wǎng)絡(luò)PANet與算法結(jié)合,實現(xiàn)更精確特征融合和目標檢測。在YOLOv7的基礎(chǔ)上提出的YOLOv8算法,相比之前的版本,處理速度與準確度都得到了極大的提升[14-15]。通過調(diào)整YOLOv8控制網(wǎng)絡(luò)的深度和寬度,設(shè)置了YOLOv8n、YOLOv8s、YOLOv8m、YOLOv8l、YOLOv8x 5種模型來滿足不同場景的需求,YOLOv8n具有模型規(guī)模小、計算快、識別準確度高、響應(yīng)速度快等優(yōu)點,可以作為訓(xùn)練模型。但是,在有遮擋光照條件不足等環(huán)境下,YOLOv8模型的識別準確率會降低。為了提高在復(fù)雜環(huán)境下AGV的識別準確率和定位精度,本文在YOLOv8n的基礎(chǔ)上引入CBAM注意力機制,在自制的AGV數(shù)據(jù)集上,優(yōu)化目標檢測定位精度,分別基于原始YOLOv8n 和改進后的YOLOv8n 算法進行實驗,與原始的YOLOv8n算法相比,CBAMYOLOv8n算法準確率有所提升,定位誤差降低。
1目標檢測算法
1.1YOLOv8目標檢測算法
YOLO算法的核心是將圖像劃分為多個網(wǎng)格,對每個網(wǎng)格預(yù)測邊界框和物體類別,并利用非極大值抑制方法消除重疊的邊界框。YOLOv8網(wǎng)絡(luò)模型由主干特征提取模塊(Backbone)、特征加強模塊(Neck)和檢測模塊(Detect)3個關(guān)鍵組成部分構(gòu)成圖1,主干部分采用C2f模塊以增強梯度流,降低了計算復(fù)雜度,提高了計算速度和特征融合能力。特征加強模塊采用PANet(Path Aggregation Network)結(jié)構(gòu),通過上采樣和通道融合等技術(shù)將PANet的3個輸出分支整合并傳遞至檢測模塊。檢測模塊采用解耦頭結(jié)構(gòu)進行目標檢測,實現(xiàn)了回歸分支和預(yù)測分支的分離,有效提升了模型的訓(xùn)練收斂速度。YOLOv8采用了無錨框(Anchor Free)方法,將目標檢測轉(zhuǎn)換為關(guān)鍵點檢測,無需預(yù)先聚類訓(xùn)練數(shù)據(jù)集以確定長寬比和錨框數(shù)量等參數(shù),從而增強了模型的泛化能力和網(wǎng)絡(luò)框架的簡潔性。
1.2YOLOv8算法改進
對于車間物流AGV所處的復(fù)雜環(huán)境,經(jīng)常出現(xiàn)AGV被遮擋導(dǎo)致YOLOv8n網(wǎng)絡(luò)模型檢測AGV時精度低、漏檢率高等問題,本文在原始YOLOv8n算法中引入注意力機制,提高模型對重要信息的關(guān)注度,增強模型性能和泛化能力。深度學(xué)習(xí)中的注意力機制(Attention Mechanism)可以使得神經(jīng)網(wǎng)絡(luò)具備關(guān)注局部信息,提取關(guān)鍵特征的能力,根據(jù)輸入信息動態(tài)分配權(quán)重[16]。注意力機制抽象為
Attention=fgx,x(1)
式中,g(x)表示對輸入特征進行處理并產(chǎn)生注意力的過程,f(g(x),x)表示結(jié)合注意力對輸入特征進行處理的過程。
常見的注意力機制有通道域、空間域和混合域注意力3種。混合域注意力機制結(jié)合了通道域和空間域注意力的優(yōu)勢,形成一種更全面的特征注意力方法,代表模型有瓶頸注意力模型(Bottleneck Attention Module,BAM)和卷積注意力模型(Convolutional Block Attention Module,CBAM),以更強的靈活性、更好的魯棒性和適應(yīng)性而備受青睞[17]。在復(fù)雜場景下,BAM無法充分捕獲通道和空間上的關(guān)鍵信息,且通道和空間注意力之間的交互有限,限制了其表達能力。CBAM包括通道注意力模塊(Channel Attention Module,CAM)和空間注意力模塊(Spatial Attention Module,SAM),輸入的特征圖先在CAM中學(xué)習(xí)通道注意力權(quán)重,后輸入到SAM中學(xué)習(xí)空間注意力權(quán)重,最終獲得輸出加權(quán)特征圖,流程如圖2。因此,本文將CBAM注意力模塊引入原始的YOLOv8n算法。
CAM學(xué)習(xí)通道處理流程如圖3所示,特征圖輸入至池化層,得到兩個特征通道向量;多層感知機(MultiLayer Perceptron,MLP)學(xué)習(xí)通道維度特征并對結(jié)果求和;Sigmoid函數(shù)將權(quán)重逐通道加權(quán)到原始輸入特征圖,得到最終的通道注意力特征圖。
通道注意力計算公式為
McF=σMLPAvgPoolF+MLPMaxPoolF=σW1W0Fcavg+W1W0Fcmax(2)
式中,σ為sigmoid函數(shù),AvgPool為平均池化操作,MaxPool為最大池化操作,F(xiàn)cavg和Fcmax為平均池化和最大值池化特征,W0和W1為MLP權(quán)重,且W0∈RCr×C,W1∈RC×Cr。
SAM流程如圖4,以CAM的輸出特征圖作為SAM的輸入特征送入輸入池化層中,拼接輸出結(jié)果,以7×7卷積核將其卷積降維成一個通道,使用Sigmoid函數(shù)生成空間權(quán)重系數(shù),與輸入的特征圖相乘,完成空間域上的特征提取,得到最終的特征圖。
空間注意力子模塊計算公式
MsF=σf7×7AvgPoolF;MaxPoolF=σf7×7Fsavg;Fsmax(3)
其中,f7×7是卷積核尺寸為7×7卷積運算。
1.3評價指標
在目標檢測任務(wù)中,常用的評價指標有Pascal VOC和COCO評價指標,實驗中采用更加嚴格、全面的COCO評價指標。
1)混淆矩陣?;煜仃囀莕×n的矩陣,展示分類模型的預(yù)測結(jié)果和實際結(jié)果之間的對應(yīng)關(guān)系,見表1,矩陣的行代表真實值,列代表預(yù)測值,TP、FN、FP、TN分別代表正類預(yù)測為正類、正類預(yù)測為負類、負類預(yù)測為正類、負類預(yù)測為負類。
2)PR曲線。PR曲線(PrecisionRecall Curve)是用來描述模型綜合性能的一種指標,通過設(shè)置不同的置信度閾值,計算不同閾值下的P值和R值,然后以橫軸為Recall,縱軸為Precision繪制而成。精確度P(Precision)表示預(yù)測為正類且正確的數(shù)量(TP)在預(yù)測為正類(TP+FP)中的占比
P=TPTP+FP(4)
召回率R(recall)表示預(yù)測為正類且正確的數(shù)量(TP)在正類(TP+FN)中的占比
R=TPTP+FN(5)
3)平均精度。單類別的平均精度(Average Precision,AP)用來衡量單類別的模型的準確度
AP=∫10p(r)dx(6)
其中,p(r)為關(guān)于PR曲線的方程。
mAP表示所有類別的平均精度的均值
mAP=1k∑ki=1APi(7)
其中,k為類別數(shù)量。
2數(shù)據(jù)集與模型訓(xùn)練
2.1數(shù)據(jù)集采集與標注
為了訓(xùn)練目標檢測模型,實現(xiàn)對物流AGV識別定位,需要采集圖像數(shù)據(jù)建立數(shù)據(jù)集。為了模擬車間復(fù)雜的工作環(huán)境,保證物流AGV定位的準確性和魯棒性,建立數(shù)據(jù)集需要考慮多種情況。
1)無遮擋情況。AGV在空曠的區(qū)域,沒有被任何障礙物或者人員遮擋。
2)有遮擋情況。AGV被貨物、人員或者機床等遮擋,攝像頭僅能獲取AGV的部分特征信息。
3)空載情況。AGV未搭載任何物品,無貨物覆蓋AGV。
4)負載情況。AGV正在運載物料,攝像頭無法獲取AGV全部特征信息。
5)光照情況。模擬車間白天和夜晚的光照情況,分別在光照良好和光照惡劣的環(huán)境下采集數(shù)據(jù)集。
以上述5種情況為基準,組合不同的工作環(huán)境,調(diào)整AGV位置和角度,共獲取1 500張有效圖像。為了保證數(shù)據(jù)集的多樣性和全面性,使用圖像處理工具包(Python Image Library,PIL)對圖片旋轉(zhuǎn)、反轉(zhuǎn)、顏色抖動和添加高斯噪點,擴充數(shù)據(jù)集,提高模型的泛化能力,最終獲得數(shù)據(jù)集8 000張。
模型訓(xùn)練前采用LabelImg軟件對數(shù)據(jù)集圖像進行標注,設(shè)定標注格式為PascalVOC,數(shù)據(jù)集標注示意圖如圖5。
2.2模型訓(xùn)練
1)實驗環(huán)境。實驗用計算機在滿足硬件條件的基礎(chǔ)上,搭配合適版本的軟件,采用實驗環(huán)境參數(shù)為:實驗上位機操作系統(tǒng)使用Window10專業(yè)版、GPU型號為NVIDIA GeForce RTX 3070、CUDA版本為11.8、cuDNN版本為8.9.3、Pytorch版本為2.1.1+cu11.8。
2)模型訓(xùn)練。模型訓(xùn)練的結(jié)果直接影響AGV定位識別的準確性,將數(shù)據(jù)增強后的數(shù)據(jù)集作為模型訓(xùn)練數(shù)據(jù)集,按照4∶1的比例隨機分配訓(xùn)練集和驗證集,最終設(shè)置訓(xùn)練集6 400張圖片,驗證集1 600張圖片。模型訓(xùn)練300次,圖片分辨率為640×640,每次網(wǎng)絡(luò)獲取圖片數(shù)量為16,工作線程數(shù)為2。
實驗分別基于原始YOLOv8n算法和CBAMYOLOv8n算法訓(xùn)練AGV識別定位模型。數(shù)據(jù)集檢測類型分為空載Empty_AGV和負載Load_AGV兩種情況,數(shù)據(jù)集訓(xùn)練模型結(jié)果中所涉及評價指標見表2。
YOLOv8n和CBAMYOLOv8n均迭代訓(xùn)練300次,YOLOv8n模型訓(xùn)練結(jié)果如圖6,CBAMYOLOv8n模型訓(xùn)練結(jié)果如圖7。由圖6和圖7可以看出,CBAMYOLOv8n模型在各項準確性評價指標上的訓(xùn)練結(jié)果收斂性明顯優(yōu)于YOLOv8n模型。因此,初步推斷在添加CBAM注意力機制后,模型的目標檢測準確性得到了顯著提升。
3目標檢測定位精度優(yōu)化
由于全局視覺攝像頭以非垂直的方式進行安裝,在對AGV進行目標檢測時,會產(chǎn)生定位誤差;AGV具有一定的高度,環(huán)境圖像經(jīng)過逆透視變換880c90f6f9754525a1d1e10f0478a9e9處理后,AGV在圖像中被拉伸變形,也會產(chǎn)生定位誤差,圖像坐標系中誤差模型圖如圖8。Ouv為圖像坐標系,M為相機在圖像坐標系中的坐標點,E為逆透視變換后目標檢測算法實際坐標點,F(xiàn)為圖像坐標矯正后的正確坐標點。
根據(jù)逆透視變換特性,AGV與攝像頭距離越遠,逆透視變換后,AGV因為高度形變產(chǎn)生的誤差則越大,兩者距離與誤差之間存在線性關(guān)系
εu=kudu+cuεv=kvdv+cv(8)
其中,εu和εv表示在圖像坐標系中u軸和v軸所產(chǎn)生的誤差,k、c為待定系數(shù),du和dv為采集AGV中心點到攝像頭坐標在圖像坐標系下u軸和v軸上的距離,正負符號表示方向。
根據(jù)實際坐標點(uf,vf)和相機坐標點(um,vm),由式(8)求出正確坐標(ue,ve),表達式為
ue=(1-ku)uf+kuum+cuve=(1-kv)vf+kvvm+cv(9)
4物流AGV識別與定位實驗
4.1識別準確度對比實驗
為了驗證改進后YOLOv8n對AGV識別定位算法的準確性、魯棒性,用同一數(shù)據(jù)集分別驗證采用YOLOv5、YOLOv8n和CBAMYOLOv8n對AGV識別定位算法進行實驗驗證。以實驗拍攝1 000張圖片作為測試集,其中空載AGV圖片為460張,負載AGV圖片為540張。不同模型對同一測試集的驗證結(jié)果見表3。
部分識別檢測結(jié)果圖片如圖9。實驗結(jié)果表明,相較于原始YOLOv8,CBAMYOLOv8,CBAMYOLOv8n模型的空載AGV識別準確率提高了1.4%,負載AGV識別準確率提高了2.0%,綜合識別率提高了1.7%,定位識別準確率明顯提高。因此,選擇CBAMYOLOv8n模型作為AGV導(dǎo)航系統(tǒng)中識別定位算法。
4.2定位誤差矯正實驗
由于逆透視變換和攝像頭投影關(guān)系的影響,AGV在圖像中實際定位點和正確定位點存在誤差。為了獲取到實際定位點和正確定位點的誤差關(guān)系,本文在行駛路徑上任取8個點,擬合兩者之間的關(guān)系式。攝像頭在圖像坐標系中位置為(220,540),采集的實際坐標點和測量的正確坐標點見表4。du和誤差散點如圖10a;dv和誤差散點如圖10b,擬合出散點的線性方程。
由圖10可獲得圖像坐標系中AGV與攝像頭距離和定位誤差之間的線性方程
εu=-0.030 19du-0.2360 1εv=0.030 91dv-1.713 1(10)
為了驗證擬合結(jié)果的有效性,在圖像中選5個點進行測試,表5記錄了正確圖像定位點坐標、目標檢測獲得的實際定位點坐標及誤差優(yōu)化后定位坐標。
實際圖像坐標在u軸方向和v軸方向產(chǎn)生的誤差如圖11a;誤差優(yōu)化后定位坐標在u軸方向和v軸方向產(chǎn)生的誤差如圖11b。
實驗數(shù)據(jù)表明,使用目標檢測算法獲取到的AGV定位坐標在u和v方向的最大誤差為3.5像素和17像素,平均誤差為2.6像素和8.6像素。經(jīng)過圖像定位誤差矯正后,定位坐標在u和v方向的最大誤差值為1.3像素和4.3像素,平均誤差值為0.74像素和2.1像素??梢钥闯?,在圖像坐標系Ouv中,AGV距離攝像頭投影點距離越遠,產(chǎn)生誤差越大,距離越近則誤差越小。對于誤差較小的坐標點,誤差矯正之后誤差可能會增大,比如3號點,在u方向坐標與相機u方向坐標相等,誤差僅為1像素,誤差矯正之后誤差為1.3像素,原因是求解誤差的函數(shù)為近似擬合,線性方程的斜率和截距值均存在波動,所以求解的優(yōu)化誤差值ε也存在一定的波動,但波動范圍較小,對結(jié)果影響不大。因此,實驗證明了本文針對圖像坐標系中定位誤差矯正的有效性,提高了定位點精度。
5結(jié)束語
通過引入CBAM注意力機制對YOLOv8n算法進行改進,本文提出了一種基于YOLOv8n的AGV識別算法,CBAMYOLOv8n網(wǎng)絡(luò)模型。以AGV是否負載、AGV是否被遮擋和環(huán)境光照優(yōu)劣為條件采集數(shù)據(jù)集對CBAMYOLOv8n網(wǎng)絡(luò)模型進行實驗驗證。驗證結(jié)果表明,CBAMYOLOv8n網(wǎng)絡(luò)模型在AGV空載和負載的情況下,識別準確率均有提高,具有更優(yōu)的預(yù)測效果。通過目標檢測定位精度優(yōu)化,減小了AGV在坐標系中的定位誤差,提高了定位精度。后續(xù)的工作考慮引入調(diào)度算法,對多臺AGV同時識別定位,提高生產(chǎn)效率和運營靈活性。
參考文獻:
[1]陳顯寶, 金隼, 羅磊, 等. 基于視覺定位的AGV定位精度提高方法[J]. 機械設(shè)計與研究, 2021, 37(1): 36-40.
[2]閻欣怡. 基于激光雷達的AGV導(dǎo)航系統(tǒng)設(shè)計與實現(xiàn)[D]. 天津: 河北工業(yè)大學(xué), 2022.
[3]徐曉倩. 基于視覺導(dǎo)引的AGV路徑跟蹤及避障策略研究[D]. 長春: 吉林大學(xué), 2021.
[4]韓玉虎. AGV導(dǎo)航系統(tǒng)中視覺SLAM定位與建圖方法的設(shè)計與實現(xiàn)[D]. 沈陽: 中國科學(xué)院大學(xué)(中國科學(xué)院沈陽計 算技術(shù)研究所), 2022.
[5]劉明興. 基于全局視覺的車間AGV識別及定位研究[D]. 青島: 青島大學(xué), 2021.
[6]SUN S, JIANG M, HE D J, et al. Recognition of green apples in an orchard environment by combining the GrabCut model and Ncut algorithm[J]. Biosystems Engineering, 2019, 187(C): 201-213.
[7]LU J, LEE W S, GAN H, et al. Immature citrus fruit detection based on local binary pattern feature and hierarchical contour analysis[J]. Biosystems Engineering, 2018, 171: 78-90.
[8]HAYASHI S, YAMAMOTO S, SAITO S, et al. Field operation of a movable strawberryharvesting robot using a travel platform[J]. Japan Agricultural Research Quarterly, 2014,48(3): 307-316.
[9]ALQAMAHS, YUNSOO C, JIA J, et al. A deep convolutional neural network model for improving WRF simulations[J]. IEEE Transactions on Neural Networks and Learning Systems, 2021, 34(2): 750-760.
[10]代恒軍. 基于改進的Faster RCNN圖像目標檢測方法研究[J]. 信息技術(shù)與信息化, 2023, (08): 91-94.
[11]QUAN L Z, FENG H, Lü Y, et al. Maize seedling detection under different growth stages and complex field environments based on an improved Faster RCNNI[J]. Biosystems Engineering, 2019, 184: 1-23.
[12]姚文清, 李盛, 王元陽. 基于深度學(xué)習(xí)的目標檢測算法綜述[J]. 科技資訊, 2023, 21(16): 185-188.
[13]YU H L, CHEN W L. Motion target detection and recognition based on YOLOv4 algorithm[C]∥3rd International Conference on Artificial Intelligence and Computer Science (AICS) . Beijing: AICS, 2021, 012053.
[14]TALAAT F M, ZAINELDIN H. An improved fire detection approach based on YOLOv8 for smart cities[J]. Neural Computing and Applications, 2023, 35(28): 20939-20954.
[15]CARVALHO R, MORGADO C A, GONALVES J, et al. Computeraided visual Inspection of glasscoated tableware ceramics for multiclass defect detection[J]. Applied Sciences,2023,13(21): 11708.
[16]王潤正. 基于注意力機制的惡意代碼同源性研究[D]. 北京: 中國人民公安大學(xué), 2022.
[17]LI Z Y, LI B, NI H J, et al. An effective surface defect classification method based on RepVGG with CBAM attention mechanism (RepVGGCBAM) for aluminum profiles[J]. Metals, 2022, 12(11): 1809.
Research on Accurate Recognition and Positioning of Logistics AGV Based on Improved YOLOv8
YANG Zhenwei, WANG Jun, FU Chaoxing
(College of Mechanical and Electrical Engineering, Qingdao University, Qingdao 266071, China)
Abstract:
Aiming at the low accuracy of the original YOLOv8n0f2b60f8fb9845678348d5f5e4d185570f54d329e9cf7bcc3521c1f29f4b565f algorithm in the identification of Automated Guided Vehicle (AGV) in complex environment,the CBAM attention mechanism was incorporated to establish the CBAMYOLOV8N network model. The model network enhanced the model′s capacity to extract key features. A mathematical model was developed to rectify the positioning accuracy of AGV in the image coordinate system. The results showed that the improvement in recognition accuracy increased by 1.4% and 2.0% for AGV with no load and full load, the combined recognition rate exhibited a 1.7% enhancement. With the correction of image errors, the maximum error values for image coordinates in the uaxis and vaxis directions were 1.3 pixels and 4.3 pixels, the average error values were 0.74 pixels and 2.1 pixels. The localization error of AGV in the coordinate system was reduced, and the localization accuracy was improved.
Keywords:
YOLOv8; automated guided vehicle; attention mechanisms; error correction
收稿日期: 2024-06-05; 修回日期: 2024-07-31
第一作者: 楊振偉(2003-),男,碩士研究生,主要研究方向為圖像處理與機器視覺。
通信作者: 符朝興(1967-),男,博士,副教授,主要研究方向為人工智能和機械振動。Email: cx_f@163.com