摘要: 提出一種基于YOLOv8n算法改進(jìn)的YOLOv8n-MG算法,用于解決目標(biāo)小、遮擋重疊、算法參數(shù)量大等問題。首先,引入GSConv和VoV-GSCSP模塊降低算法復(fù)雜度,提高算法對(duì)缺陷粗糙邊緣的檢測(cè)能力;其次,使用輕量級(jí)的上采樣算子Carafe替換原有的傳統(tǒng)上采樣,保留更多的細(xì)節(jié)特征;最后,引入混合局部通道注意力(MLCA)機(jī)制,以較低的計(jì)算成本和參數(shù)量保留更多的空間特征信息,并利用Adam優(yōu)化器提高算法對(duì)復(fù)雜參數(shù)空間的學(xué)習(xí)能力。結(jié)果表明:優(yōu)化后的算法與YOLOv8n算法相比,參數(shù)量減少了11.3%,檢測(cè)幀率提高了7.7%,平均精度提高了2.8%。
關(guān)鍵詞: 焊接缺陷; 缺陷檢測(cè); MLCA模塊; YOLOv8算法; 檢測(cè)幀率
中圖分類號(hào): TP 391.41; TU 229文獻(xiàn)標(biāo)志碼: A" "文章編號(hào): 1000-5013(2024)06-0766-10
X-Ray Pipe Weld Detection Algorithm of Improved YOLO
WANG Hejia1, LIN Ning2, LIN Zhenchao2, HUANG Kai2, NIU Dun2, ZHENG Lixin1
(1. College of Engineering, Huaqiao University, Quanzhou 362021, China;
2. Quanzhou Branch of Special Equipment Inspection Research Institue, Huaqiao University, Quanzhou 362021, China)
Abstract: An improved YOLOv8n-MG algorithm based on the YOLOv8n algorithm is proposed to solve issues such as the small targets, overlapping occlusion, and large number of algorithm parameters, etc. Firstly, the GSConv and VoV-GSCSP modules are introduced to reduce the complexity of the the algorithm and enhance its ability to detect rough edges of defects. Secondly, a lightweight up-sampling operator, Carafe, is used to replace the traditional up-sampling, preserving more detailed features. Finally, a mixed local channel attention (MLCA) mechanism is introduced to retain more spatial feature information with lower computational cost and parameters, and the Adam optimizer is used to improve the algorithm′s learning ability in complex parameter spaces. The results show that compared with the YOLOv8n algorithm, the optimized algorithm reduces the number of parameters by 11.3%, improves the detection frame rate by 7.7%, and improves the average accuracy by 2.8%.
Keywords: weld defect; defect detection; mixed local channel attention module; YOLOv8 algorithm; detection frame rate
隨著我國工業(yè)化水平的不斷提高,焊接技術(shù)已廣泛應(yīng)用于承壓容器、冶金工業(yè)、石油化工等多個(gè)領(lǐng)域。工業(yè)設(shè)備的焊接質(zhì)量直接影響焊接結(jié)構(gòu)的使用性能和壽命[1]。由于生產(chǎn)工藝和焊接環(huán)境等因素的影響,工業(yè)設(shè)備的焊縫位置在制造和使用過程中容易產(chǎn)生各類焊接缺陷[2]。這些缺陷根據(jù)不同焊縫位置可分為內(nèi)部缺陷(裂紋、未熔合、未焊透、條形和圓形缺陷等)和表面缺陷。內(nèi)部缺陷利用X射線技術(shù)將其映射到圖像中,并通過專家或計(jì)算機(jī)視覺進(jìn)行檢測(cè)。
隨著深度學(xué)習(xí)技術(shù)的進(jìn)步,深度學(xué)習(xí)在焊縫缺陷檢測(cè)方面顯示出巨大的潛力。目前的目標(biāo)檢測(cè)算法大致可分為兩種:兩階段檢測(cè)算法和一階段檢測(cè)算法。兩階段檢測(cè)算法包括R-CNN算法[3],F(xiàn)aster R-CNN算法[4]和HyperNet算法[5]等。一階段檢測(cè)算法包括YOLO算法[6-8],SSD算法[9]等。許多研究人員采用這兩種算法對(duì)實(shí)際場(chǎng)景進(jìn)行研究,并取得了一定進(jìn)展。Liu等[10]提出AF-RCNN算法,將ResNet 和FPN作為網(wǎng)絡(luò)的骨干,同時(shí)利用了輕量級(jí)模型信道注意和空間注意機(jī)制。Chen等[11]在Faster R-CNN算法的基礎(chǔ)上進(jìn)行改進(jìn),利用深度殘差網(wǎng)絡(luò)Res2Net增強(qiáng)了焊接缺陷特征提取能力。然而,上述模型通過增加模型的參數(shù)量和復(fù)雜程度以提高檢測(cè)精度,導(dǎo)致參數(shù)量過大、推理速度較慢。
為了解決檢測(cè)速度的問題,Liu等[12]提出了一種基于改進(jìn)LF-YOLO算法的高效的特征提?。‥FE)模塊,速度為61.5 F·s-1 ,平均精度為92.9%。Zhang等[13]在YOLOv8-nano算法引入了對(duì)小目標(biāo)敏感的全維動(dòng)態(tài)卷積和基于歸一化(NAM)注意力機(jī)制,提高了模型檢測(cè)性能。程松等[14]在YOLOv5算法中引入GhostBottleneck模塊和注意力機(jī)制,極大減少了算法參數(shù)量,使其適用于嵌入式設(shè)備。Yang等[15]在YOLOv3-tiny算法的主干上增加了空間金字塔池化結(jié)構(gòu)(SPP)模塊,減少了檢測(cè)頭的數(shù)量,極大減少了算法參數(shù)量,但該算法的小目標(biāo)檢測(cè)性能不足。上述算法因過分強(qiáng)調(diào)速度提升而導(dǎo)致整體性能下降。
在實(shí)際工業(yè)環(huán)境中,焊接過程中的焊絲飛濺會(huì)造成焊渣等雜質(zhì)的產(chǎn)生,不同缺陷相互重疊會(huì)對(duì)缺陷的定位和識(shí)別分類造成干擾,因此,上述研究的準(zhǔn)確性和檢測(cè)速度有一定局限性。基于此,本文提出一種基于 YOLOv8n算法改進(jìn)的深度學(xué)習(xí)檢測(cè)算法。
1 YOLOv8n-MG算法
1.1 YOLOv8算法
YOLO算法是目前較為先進(jìn)的單階段目標(biāo)檢測(cè)框架,旨在通過僅分析一次圖像提供檢測(cè)結(jié)果。從YOLOv1算法開始,經(jīng)過多次改進(jìn)和更新,一直到Y(jié)OLOv8算法。YOLOv8算法整合了YOLOv5算法部分結(jié)構(gòu),將第1個(gè)卷積層的內(nèi)核從6×6過渡到3×3,并用 C2F模塊取代了 C3 模塊,更新了部分瓶頸的結(jié)構(gòu)變化及頂層激活函數(shù)的變化。YOLOv8算法主要包括主干、頸部和頭部。YOLOv8算法,如圖1所示。
主干提取圖像特征。YOLOv8算法使用一個(gè)新的骨干網(wǎng)絡(luò),它由多個(gè)C2F模塊加上空間金字塔池化(SPPF)模塊組成,SPPF模塊使用更多的跳過連接來豐富模型的特征表達(dá)能力,能夠處理不同尺度的物體,使網(wǎng)絡(luò)能夠在多個(gè)尺度上提取特征,增強(qiáng)了模型的尺度適應(yīng)能力。
頸部負(fù)責(zé)融合特征。頸部采用了雙流特征金字塔網(wǎng)絡(luò)(FPN),以實(shí)現(xiàn)對(duì)多尺度特征圖的語義和空間信息進(jìn)行有效融合。
頭部預(yù)測(cè)對(duì)象類別和位置。頭部輸出有兩個(gè)分支:一個(gè)是分類分支,輸出每個(gè)像素點(diǎn)屬于每個(gè)類別的概率;另一個(gè)是回歸分支,輸出每個(gè)像素點(diǎn)對(duì)應(yīng)的目標(biāo)框參數(shù)。
在數(shù)據(jù)增強(qiáng)方面,由于YOLOv8 算法采用了 Mosaic 方法,通過隨機(jī)裁剪和拼接圖像增強(qiáng)數(shù)據(jù)集,增強(qiáng)模型的識(shí)別能力。因此,在模型訓(xùn)練的最后10個(gè)時(shí)期關(guān)閉了 Mosaic,以便讓模型在未經(jīng)過裁剪的圖像數(shù)據(jù)集上完成最終收斂,以減輕 Mosaic 數(shù)據(jù)增強(qiáng)方法的潛在缺點(diǎn)。
為了方便用戶在不同場(chǎng)景下測(cè)試速度與平均精度的平衡,YOLOv8算法提供了5種不同尺寸的算法供用戶選擇,包括YOLOv8n算法,YOLOv8s算法,YOLOv8m算法,YOLOv8l算法,YOLOv8x算法。與其他4種算法相比,YOLOv8n算法更輕量級(jí),更易于現(xiàn)場(chǎng)部署。因此,選擇YOLOv8n算法作為基準(zhǔn)算法。
1.2 YOLOv8n-MG算法
與大面積的母材背景相比,缺陷小目標(biāo)只占幾個(gè)像素,而且其邊緣特征較為粗糙,導(dǎo)致難以準(zhǔn)確識(shí)別;部分缺陷類型(如未焊透)出現(xiàn)局部不連續(xù)現(xiàn)象,導(dǎo)致無法準(zhǔn)確定位;YOLOv8算法的多次下采樣操作丟失部分語義信息,無法有效提取小目標(biāo)的細(xì)節(jié)特征,這會(huì)給多個(gè)缺陷重疊檢測(cè)帶來難度,而且不同類別的缺陷大小差別很大。針對(duì)這些問題,選擇最輕量的YOLOv8n算法作為基準(zhǔn)算法進(jìn)行改進(jìn)。
YOLOv8n-MG算法使用GSConv[16]模塊替代頸部的Conv模塊,使用VoV-GSCSP[17]模塊替代頸部的C2F模塊,GSConv模塊和VoV-GSCSP模塊的靈活組合可以有效提高模型對(duì)粗糙邊緣的檢測(cè)能力和對(duì)不同尺度缺陷的檢測(cè)能力。YOLOv8n-MG算法使用輕量級(jí)的上采樣算子Carafe[18]替換原有的Upsample傳統(tǒng)上采樣,保留更多的細(xì)節(jié)特征。引入混合局部通道注意力(MLCA)[19]機(jī)制對(duì)骨干網(wǎng)絡(luò)的C2F模塊進(jìn)行改進(jìn),以更少的參數(shù)量保留更多的語義信息,通過強(qiáng)調(diào)缺陷部位的信息而抑制大面積母材背景信息,結(jié)合更多的空間和通道信息,增強(qiáng)對(duì)小目標(biāo)缺陷特征提取能力。最后,利用Adam優(yōu)化器提高模型復(fù)雜參數(shù)空間的學(xué)習(xí)能力,提高算法對(duì)于小目標(biāo)的檢測(cè)能力。
YOLOv8n-MG算法,如圖2所示。
優(yōu)化后的算法的平均精度為95.1%,比基準(zhǔn)模型提高2.8%;檢測(cè)幀率為85.6%,比基準(zhǔn)模型提高了7.7%;參數(shù)量為5.5×106個(gè),比基準(zhǔn)模型少0.7×106個(gè),減少了11.3%。這表明優(yōu)化后的算法在使用更少參數(shù)的基礎(chǔ)上,不僅能夠保證高精度,還能保持檢測(cè)速度。優(yōu)化后的算法具有更好的特征感知能力、更好的缺陷邊緣的檢測(cè)能力、更多的通道和空間特征信息,從而提高了準(zhǔn)確性。
1.2.1 GSConv模塊 YOLOv8n 的 頸部引入了GSConv模塊和VoV-GSCSP(VoV-Ghost shuffle cross stage partial)模塊進(jìn)行更改。使用GSConv模塊和跨級(jí)部分網(wǎng)絡(luò)模塊CSP(cross stage partial)模塊設(shè)計(jì)出VoV-GSCSP模塊,降低計(jì)算和網(wǎng)絡(luò)復(fù)雜性,同時(shí)保持足夠的精度。在傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)(CNN)中,空間信息逐漸轉(zhuǎn)換成通道信息,而這一過程在每一次特征圖空間壓縮和通道的擴(kuò)張時(shí)都會(huì)導(dǎo)致語義信息的部分丟失,這使得焊縫缺陷邊緣的特征提取不完整,不利于區(qū)分大面積的母材背景和小面積的焊縫缺陷。因此,引入VoV-GSCSP模塊,盡可能多地保留每個(gè)通道的隱藏連接。
GSConv模塊,如圖3所示。
GSConv模塊融合了GhostNet和ShuffleNetv2的輕量級(jí)思想。GhostNet主要解決了標(biāo)準(zhǔn)卷積的輸出通常有很多相似的特征圖,會(huì)給計(jì)算帶來冗余的問題。GhostNet的Ghost卷積不是標(biāo)準(zhǔn)卷積,而是先使用標(biāo)準(zhǔn)卷積來獲得第一部分;其次通過深度卷積對(duì)這部分進(jìn)行卷積,以獲得幾個(gè)相似的特征圖作為第二部分的結(jié)果。最后,將這兩個(gè)部分連接在一起,作為輸出特征圖。ShuffleNetv2 主要解決了深度可分離卷積中的信道信息分離問題,即輸入特征圖中的信道信息在計(jì)算過程中相互獨(dú)立,導(dǎo)致信息交互不足,而通過shuffle操作提高特征間的信息流動(dòng),將標(biāo)準(zhǔn)卷積和深度可分離卷積產(chǎn)生的特征信息融合在一起,增加小目標(biāo)缺陷特征提取的多樣性和豐富度,降低計(jì)算復(fù)雜度,提高模型的泛化能力。
GSConv通過將輸入通道劃分為多個(gè)組,并對(duì)每個(gè)組進(jìn)行獨(dú)立的卷積運(yùn)算,有利于模型對(duì)于缺陷邊緣信息的提取和最大化保留,有助于區(qū)別母材背景和缺陷信息,同時(shí)減少了計(jì)算量。GSConv旨在保持較低時(shí)間復(fù)雜度的同時(shí),盡可能地保留通道之間的隱藏連接,并提高預(yù)測(cè)速度。
VoV-GSCSP模塊,如圖4所示。VoV-GSCSP模塊利用不同的結(jié)構(gòu)設(shè)計(jì)方案,通過跨階段網(wǎng)絡(luò)連接選擇全局上下文信息,進(jìn)一步提高模型對(duì)缺陷重疊邊緣信息特征的提取能力,解決缺陷重疊混淆的問題,提高特征利用效率和網(wǎng)絡(luò)性能,降低計(jì)算和網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜性。通過結(jié)合GSConv模塊和VoV-GSCSP模塊,實(shí)現(xiàn)了YOLOv8n算法頸部結(jié)構(gòu)的重構(gòu),更有利于小目標(biāo)焊縫缺陷特征的提取和分類,在減少模型計(jì)算量的同時(shí),也提高了焊縫缺陷識(shí)別的準(zhǔn)確性。
1.2.2 輕量級(jí)上采樣算子Carafe 特征上采樣是許多網(wǎng)絡(luò)架構(gòu)中的關(guān)鍵操作,上采樣生成的特征圖的質(zhì)量對(duì)模型的準(zhǔn)確性至關(guān)重要。YOLOv8-nano算法使用Upsample操作,僅利用輸入特征圖中的空間信息,而忽略了語義信息,這會(huì)導(dǎo)致信息丟失或模糊,影響檢測(cè)精度。因此,引入輕量級(jí)上采樣算子Carafe。算子Carafe可以保留更多的缺陷圖像細(xì)節(jié),同時(shí)減少采樣過程導(dǎo)致的焊接缺陷的信息丟失,并且不會(huì)額外增加學(xué)習(xí)參數(shù),這有利于模型的壓縮和輕量化。Carafe分為兩個(gè)主要模塊,即上采樣核預(yù)測(cè)模塊和特征重組模塊。假設(shè)上采樣的倍率為α,輸入特征圖的高、寬、長(zhǎng)分別為H,W,C。采樣算子Carafe的采樣操作有如下2個(gè)步驟。
1) 通過上采樣核預(yù)測(cè)上采樣核。對(duì)于輸入特征圖,使用1×1的卷積,將通道數(shù)進(jìn)行壓縮。假設(shè)上采樣核的尺寸為kup×kup,利用kenc×kenc的卷積層來預(yù)測(cè)上采樣核,得到形狀為αH×αW×k2up的上采樣核,并對(duì)上采樣核利用softmax激活函數(shù)進(jìn)行歸一化。
2) 通過特征重組模塊,完成上采樣。將輸出特征圖中的每個(gè)位置映射回輸入特征圖,得到kup×kup為中心的預(yù)測(cè)值,并用該點(diǎn)的上采樣核作點(diǎn)積得到輸出值。內(nèi)容感知重組模塊可使局部區(qū)域中相關(guān)的特征信息得到更多的關(guān)注,重組后的特征圖,比原有的特征圖具有更多的語義信息。
引入輕量級(jí)上采樣算子Carafe,適應(yīng)不同內(nèi)容和尺度的特征,有助于實(shí)現(xiàn)對(duì)不同尺度缺陷目標(biāo)的特征提取,不同于Upsample需要引入額外的參數(shù)量,算子Carafe只引入少量的參數(shù),保持輕量化的特性。
1.2.3 MLCA機(jī)制 注意力機(jī)制在計(jì)算機(jī)視覺中被廣泛應(yīng)用,能夠幫助神經(jīng)網(wǎng)絡(luò)強(qiáng)調(diào)重要元素并抑制不相關(guān)的元素。然而,大多數(shù)信道注意力機(jī)制只關(guān)注信道特征信息,而忽略了空間特征信息, 不利于提高在大面積母材背景下提取小面積缺陷的能力,從而導(dǎo)致目標(biāo)檢測(cè)性能模型較差。此外,現(xiàn)有的空間注意力模塊往往復(fù)雜且成本高昂。
MLCA機(jī)制結(jié)合了局部和全局特征、通道和空間特征信息,從而提高網(wǎng)絡(luò)的表達(dá)效果,同時(shí),相較于其他的注意力機(jī)制,MLCA機(jī)制的參數(shù)量更少,成本較低。MLCA機(jī)制工作原理有如下6點(diǎn)。
1) 輸入特征圖,并進(jìn)行局部平均池化和全局平均池化處理。局部池化關(guān)注局部區(qū)域的特征,而全局池化捕捉整個(gè)特征圖的統(tǒng)計(jì)信息。
2) 通過一維卷積(Conv1d),對(duì)局部池化和全局池化后的特征進(jìn)行特征轉(zhuǎn)換,以壓縮特征通道并保持空間維度不變。
3) 重新排列一維卷積后的特征,便于后續(xù)操作。
4) 通過“乘法”操作,將一維卷積后的特征與原始輸入特征相結(jié)合,實(shí)現(xiàn)特征選擇,強(qiáng)化對(duì)有用特征的關(guān)注。
5) 通過“加法”操作,將全局池化后的特征與局部池化特征相結(jié)合,融合全局上、下文信息。
6) 通過反池化(UNAP)操作,將特征圖恢復(fù)到原始的空間維度。
MLCA機(jī)制,如圖5所示。MLCA機(jī)制的優(yōu)點(diǎn)在于以較低的計(jì)算成本保留更多的空間特征信息,從而使得卷積層能夠接收到更多有用的通道信息,提高小目標(biāo)缺陷特征圖的表達(dá)能力和模型的檢測(cè)性能,有助于區(qū)分在大面積母材背景下小面積缺陷的能力,同時(shí)參數(shù)量更少,能夠在不影響精度的情況下,同時(shí)提高推理速度,實(shí)現(xiàn)模型的輕量化,便于模型部署。
2 實(shí)驗(yàn)結(jié)果與分析
2.1 實(shí)驗(yàn)環(huán)境
為訓(xùn)練模型,使用Adam作為優(yōu)化器,將訓(xùn)練批量大小設(shè)置為32,初始學(xué)習(xí)率為 0.001,為了優(yōu)化模型在訓(xùn)練過程中的性能,采用學(xué)習(xí)率衰減方法。學(xué)習(xí)率衰減方法使用初始學(xué)習(xí)率調(diào)整模型的參數(shù),從而更新速度。此外,還利用學(xué)習(xí)率系數(shù)控制訓(xùn)練過程中學(xué)習(xí)率的衰減。迭代次數(shù)設(shè)置為1 000。實(shí)驗(yàn)在NVIDIA GeForce GTX TITAN Xp GPU上進(jìn)行,使用python3.8和Pytorch深度學(xué)習(xí)框架。
2.2 實(shí)驗(yàn)數(shù)據(jù)集
由于焊接工業(yè)領(lǐng)域的數(shù)據(jù)集很難收集,而且人工標(biāo)注成本很高,目前公開的數(shù)據(jù)集也很稀少,如Mery[20]在 2015年提出了GDXray數(shù)據(jù)集,但僅包含10個(gè)焊縫缺陷數(shù)據(jù)樣本,而且沒有對(duì)缺陷進(jìn)行標(biāo)注。實(shí)驗(yàn)數(shù)據(jù)集來自福建省特種設(shè)備檢驗(yàn)研究院(泉州分院)。對(duì)X射線管道焊縫缺陷膠片原件進(jìn)行圖像采集,使用專業(yè)的VIDAR工業(yè)膠片掃描儀對(duì)膠片進(jìn)行掃描。在膠片掃描過程中,因?yàn)槟z片本身拍攝儀器和管道的原因,掃描出的圖像不明顯。對(duì)掃描的圖像進(jìn)行灰度調(diào)節(jié),使得焊縫圖像明顯可見,對(duì)采集到的圖像進(jìn)行篩選,刪除缺陷顏色暗淡和不易于母材區(qū)分的圖像,僅留下缺陷特征較為明顯的圖像(共431張),從而能夠方便專業(yè)人士進(jìn)行標(biāo)簽標(biāo)注。
增強(qiáng)圖像數(shù)據(jù)方法有隨機(jī)調(diào)整圖像亮度、增加高斯噪點(diǎn)、水平翻轉(zhuǎn)。圖像數(shù)據(jù)增強(qiáng)后,數(shù)據(jù)集擴(kuò)展為1 884張圖片,命名為HWDXray數(shù)據(jù)集。在專業(yè)人士的指導(dǎo)下,對(duì)圖片標(biāo)注焊縫缺陷(裂紋、未熔合、未焊透、條形和圓形缺陷)。數(shù)據(jù)集按7∶2∶1的比例劃分成1 318張圖片的訓(xùn)練集、377張圖片的測(cè)試集和189張圖片的驗(yàn)證集,圖像像素大小為1 280 px×680 px,訓(xùn)練時(shí)將圖片尺寸統(tǒng)一縮放,像素尺寸為640 px×640 px。HWDXray數(shù)據(jù)集缺陷樣例,如圖6所示。
將GDXray數(shù)據(jù)集的10張焊縫缺陷數(shù)據(jù)作為驗(yàn)證模型的泛化性能,由于原數(shù)據(jù)集并沒有提供缺陷標(biāo)注,所以在專業(yè)人士的指導(dǎo)下同HWDXray數(shù)據(jù)集進(jìn)行相同的標(biāo)注。GDXray數(shù)據(jù)集缺陷樣例,如圖7所示。
2.3 模型評(píng)估指標(biāo)
精度(P)公式為
P=TPTP+FP。(1)
式(1)中:TP為正確識(shí)別為正樣本的數(shù)量;FP為錯(cuò)誤識(shí)別為正樣本但實(shí)際上是負(fù)樣本的數(shù)量。
召回率(ξ)為
ξ=TPTP+FN。(2)
式(2)中: FN為預(yù)測(cè)為負(fù)樣本但實(shí)際上是正樣本的數(shù)量。
不同召回率對(duì)應(yīng)的精度平均值(Pa,R)為
Pa,R=∑nk=1p(k)ΔR(k)。(3)
式(3)中:n為召回率的總數(shù);p(k)為第k個(gè)召回率相對(duì)應(yīng)的精度值;ΔR(k)為第k次召回率和第(k-1)次召回率的差值。
平均精度(Pa)為
Pa=1M∑Mi=1Pi。(4)
式(4)中:M為類別個(gè)數(shù)。
檢測(cè)幀率(η)為
η=1ttot=1tpre+tdet+tpos。(5)
式(5)中:ttot為總處理時(shí)間;tpre為預(yù)處理時(shí)間;tdet為檢測(cè)時(shí)間;tpos為后處理時(shí)間。
2.4 頸部?jī)?yōu)化對(duì)模型性能的影響
分別在YOLOv8n算法和YOLOv5算法的頸部引入GSConv模塊、VoV-GSCSP 模塊及輕量級(jí)算子Carafe,將其命名為YOLOv8n-GVC算法和YOLOv5-GVC算法。在保持其他參數(shù)不變的情況下,使用相同的數(shù)據(jù)集、實(shí)驗(yàn)環(huán)境和評(píng)估指標(biāo)進(jìn)行檢測(cè)和測(cè)試,優(yōu)化頸部對(duì)比實(shí)驗(yàn),如表1所示。 表1中:n為處理器處理次數(shù);m為參數(shù)量。
由表1可知:YOLOv8n-GVC算法和YOLOv5-GVC算法的性能表現(xiàn)令人滿意,其Pa比原算法分別提高了0.9%和1.3%,YOLOv8-GVC算法最高,為92.3%;YOLOv8n-GVC算法和YOLOv5-GVC算法參數(shù)量比原算法也有一定程度的下降,分別下降了0.9×106和0.3×106個(gè),YOLOv5-GVC模型的參數(shù)量最少,為5.1×106個(gè);YOLOv5-GVC算法比YOLOv8n-GVC算法參數(shù)量更少,算法更輕量化,但YOLOv8n-GVC算法在具備較高識(shí)別精度的同時(shí),參數(shù)量也得到保證(參數(shù)量?jī)H多了0.2×106個(gè),但Pa卻提高了2.6%)。
GSConv模塊和VoV-GSCSP模塊跨級(jí)部分網(wǎng)絡(luò)的設(shè)計(jì)不但減少了模型計(jì)算量,而且提高了對(duì)缺陷邊緣特征信息的提取,有助于解決大面積母材背景下小面積焊縫缺陷的問題。而輕量級(jí)算子Carafe對(duì)上采樣核進(jìn)行預(yù)測(cè)和重組,提高上采樣效果,并進(jìn)一步實(shí)現(xiàn)模型的輕量化。表明通過引入GSConv模塊、VoV-GSCSP 模塊及輕量級(jí)算子Carafe,不僅減少算法的計(jì)算量,還提高了焊縫缺陷識(shí)別的準(zhǔn)確率,從而實(shí)現(xiàn)了模型精度和速度之間的平衡。
2.5 不同注意力機(jī)制對(duì)模型性能的影響
將YOLOv8n-GVC算法作為基準(zhǔn)算法,在基準(zhǔn)算法的基礎(chǔ)上添加了MLCA[19],CPCA(Channel prior convolutional attention[21],LSKA(Large separable kernel attention)[22],CBAM(Convolutional block attention module)[23],SegNext[24]等機(jī)制,在保持其他參數(shù)不變的情況下,使用相同的損失函數(shù)、數(shù)據(jù)集、實(shí)驗(yàn)環(huán)境和評(píng)估指標(biāo)。不同注意力機(jī)制對(duì)比實(shí)驗(yàn),如表2所示。
由表2可知:YOLOv8n-GVC-MLCA算法的Pa最高,為95.1%,比基準(zhǔn)算法提高1.9%,表明MLCA機(jī)制能夠更好地結(jié)合更多的通道和空間特征信息,保留了更多的語義信息,提高了對(duì)缺陷小目標(biāo)的檢測(cè)精度,參數(shù)量只增加了0.2×106個(gè),減少對(duì)計(jì)算資源的需求;增加了注意力機(jī)制之后,算法的參數(shù)量都比基準(zhǔn)算法高,并且大多數(shù)η比原基準(zhǔn)算法要低,這表明注意力機(jī)制的引入影響了模型的效率和速度,增加了算法的參數(shù)量,不利于算法的實(shí)際應(yīng)用性。
MLCA機(jī)制通過局部池化和全局池化的操作,結(jié)合更多的通道和空間特征的信息,在不占用更多內(nèi)存的情況下,最大限度地保留語義信息,提高模型檢測(cè)精度。而通過在C2F模塊的基礎(chǔ)上添加MLCA機(jī)制,能夠更好地利用空間和通道維度的信息,提高特征的語義性和多樣性。
2.6 改進(jìn)算法性能
在自制的X射線管道焊縫圖像數(shù)據(jù)集上進(jìn)行改進(jìn)算法性能的實(shí)驗(yàn)測(cè)試,將模型訓(xùn)練設(shè)置為1 000個(gè)epoch,當(dāng)平均精度沒有明顯提高時(shí),程序會(huì)自動(dòng)停止訓(xùn)練。改進(jìn)算法的檢測(cè)結(jié)果,如圖8所示。由圖8可知:改進(jìn)算法能夠在大面積的焊接母材的背景下檢測(cè)缺陷,對(duì)于整個(gè)圖形而言,缺陷所占的面積很小,而且在大面積的母材背景下很難被發(fā)現(xiàn),還有多個(gè)缺陷重疊的情況,但改進(jìn)算法對(duì)于缺陷的檢測(cè)結(jié)果較好;在針對(duì)實(shí)際工業(yè)環(huán)境焊接過程中產(chǎn)生的焊渣影響、不同尺度的缺陷、缺陷重疊等問題上都取得較為不錯(cuò)的結(jié)果,有助于分類缺陷、解決缺陷識(shí)別困難等問題。
2.7 目標(biāo)檢測(cè)算法性能對(duì)比
為了驗(yàn)證改進(jìn)算法的優(yōu)越性,將YOLOv8n-MG算法與目前主流的目標(biāo)檢測(cè)算法進(jìn)行比較,在保持其他參數(shù)不變的情況下,使用相同的評(píng)估指標(biāo)進(jìn)行比較,比較它們?cè)赬射線管道焊縫數(shù)據(jù)集上的性能表現(xiàn)。不同目標(biāo)檢測(cè)算法性能對(duì)比,如表3所示。
由表3可知:YOLOv8n-MG算法Pa均優(yōu)于其他算法,為95.1%,比基準(zhǔn)算法提高2.8%,η比基準(zhǔn)算法略高6.1 F·s-1,提高了7.7%,參數(shù)量比大部分算法更少,比基準(zhǔn)算法少0.7×106個(gè),減少了11.3%。這表明YOLOv8n-MG算法在使用更少參數(shù)量的基礎(chǔ)上,不僅能夠保證精度高,還能保持較好的檢測(cè)速度,實(shí)現(xiàn)模型精度和速度之間的平衡。
為了進(jìn)一步驗(yàn)證改進(jìn)算法的泛化能力和有效性,將YOLOv8n-MG算法在GDXray數(shù)據(jù)集上進(jìn)行驗(yàn)證,比較YOLOv8n-MG在不同數(shù)據(jù)集的性能表現(xiàn)。YOLOv8n-MG算法在GDXray數(shù)據(jù)集上的平均精度為63.4%,這表明模型的泛化性能較好??紤]到不同膠片影像采集標(biāo)準(zhǔn)及缺陷定義的差異,各數(shù)據(jù)集間存在著較大的缺陷類型差距,而YOLOv8n-MG算法能在相似的焊縫缺陷數(shù)據(jù)集上識(shí)別出正確缺陷,展現(xiàn)出不錯(cuò)的泛化性能。
結(jié)果表明,提出改進(jìn)的YOLO算法取得了令人滿意的結(jié)果,對(duì)缺陷小目標(biāo)檢測(cè)、缺陷重疊、模型參數(shù)量較大等問題具有優(yōu)異性,以較少的參數(shù)量實(shí)現(xiàn)了更高的精準(zhǔn)度和推理速度,也證明模型具有一定的泛化性能,這有利于實(shí)驗(yàn)場(chǎng)景中的適用性和有效性。改進(jìn)的YOLO算法不僅保留了YOLO系列的速度優(yōu)勢(shì),而且提高了對(duì)焊縫缺陷小目標(biāo)的檢測(cè)精度。
3 結(jié)論
為了解決X射線管道焊接檢測(cè)中存在的數(shù)據(jù)集缺乏、缺陷小目標(biāo)、遮擋重疊、推理速度慢等問題,自制了X射線管道焊接缺陷數(shù)據(jù)集,并提出YOLOv8n-MG算法。YOLOv8n-MG算法在YOLOv8n算法的基礎(chǔ)上,對(duì)算法多個(gè)方面進(jìn)行了優(yōu)化和改進(jìn),包括對(duì)優(yōu)化頸部為GSConv,并引入VoV-GSCSP模塊和Carafe輕量級(jí)上采樣算子,對(duì)骨干的C2F模塊添加MLCA機(jī)制。利用自制的X射線管道焊縫缺陷HWDXray數(shù)據(jù)集,使用平均精度和檢測(cè)幀率等指標(biāo)評(píng)估了算法性能,并與其他目標(biāo)檢測(cè)算法和GDXray數(shù)據(jù)集進(jìn)行比較。結(jié)果表明,YOLOv8n-MG算法在保持較高檢測(cè)速度的同時(shí),顯著提高了檢測(cè)精度,取得了良好的效果。
未來將進(jìn)一步發(fā)展檢測(cè)模型,并擴(kuò)大數(shù)據(jù)集,收集更多情況下的X射線管道焊縫樣本,使每種缺陷的樣本更加豐富和均衡,從而能夠更詳細(xì)地分析和標(biāo)注缺陷特征;繼續(xù)專注于提高算法檢測(cè)準(zhǔn)確性,降低網(wǎng)絡(luò)參數(shù),并將算法和系統(tǒng)部署到普通的計(jì)算機(jī)設(shè)備中。從而能夠幫助相關(guān)的檢驗(yàn)人員輔助X射線管道焊縫缺陷的檢測(cè)工作。
參考文獻(xiàn):
[1] 高楊.長(zhǎng)輸管道自動(dòng)焊接設(shè)備及技術(shù)發(fā)展探究[J].石化技術(shù),2022,29(12):219-221.
[2] BARSOUM Z,JONSSON B.Influence of weld quality on the fatigue strength in seam welds[J].Engineering Failure Analysis,2011,18(3):971-979.DOI:10.1016/j.engfailanal.2010.12.001.
[3] GIRSHICK R,DONAHUE J,DARRELL T,et al.Region-based convolutional networks for accurate object detection and segmentation[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2015,38(1):142-158.DOI:10.1109/TPAMI.2015.2437384.
[4] GAVRILESCU R,ZET C,F(xiàn)OAL U C,et al.Faster R-CNN: An approach to real-time object detection[C]∥2018 International Conference and Exposition on Electrical and Power Engineering.Lasi:IEEE Press,2018:0165-0168.DOI:10.1109/ICEPE.2018.8559776.
[5] KONG Tao,YAO Anbang,CHEN Yurong,et al.Hypernet: Towards accurate region proposal generation and joint object detection[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE Press,2016:845-853.DOI:10.1109/CVPR.2016.98.
[6] REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once: Unified, real-time object detection[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE Press,2016:779-788.DOI:10.1109/CVPR.2016.91.
[7] REDMON J,F(xiàn)ARHADI A.YOLO9000: Better, faster, stronger[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Honolulu:IEEE Press,2017:7263-7271.DOI:10.1109/CVPR.2017.690.
[8] REDMON J,F(xiàn)ARHADI A.YOLOV3: An incremental improvement[EB/OL].(2018-04-08)[2024-01-03].https:∥arxiv.org/abs/1804.02767.
[9] LIU Wei,ANGUELOV D,ERHAN D,et al.SSD: Single shot multibox detector[C]∥Computer Vision-ECCV 2016: 14th European Conference.Cham:Springer International Publishing,2016:21-37.DOI:10.1007/978-3-319-46448-0_2.
[10] LIU Weipeng,SHAN Shengqi,CHEN Haiyong,et al.X-ray weld defect detection based on AF-RCNN[J].Welding in the World,2022,66(6):1165-1177.DOI:10.1007/s40194-022-01281-w.
[11] CHEN Yongbin,WANG Jingran,WANG Guitang.Intelligent welding defect detection model on improved R-CNN[J].IETE Journal of Research,2023,69(12):9235-9244.DOI:10.1080/03772063.2022.2040387.
[12] LIU Moyun,CHEN Youping,XIE Jingming,et al.LF-YOLO: A lighter and faster YOLO for weld defect detection of X-ray image[J].IEEE Sensors Journal,2023,23(7):7430-7439.DOI:10.1109/JSEN.2023.3247006.
[13] ZHANG Yi,NI Qingjian.A novel weld-seam defect detection algorithm based on the S-YOLO model[J].Axioms,2023,12(7):697.DOI:10.3390/axioms12070697.
[14] 程松,楊洪剛,徐學(xué)謙,等.基于YOLOv5的改進(jìn)輕量型X射線鋁合金焊縫缺陷檢測(cè)算法[J].中國激光,2022,49(21):2104005.DOI:10.3788/CJL202249.2104005.
[15] YANG Jun,F(xiàn)U Bo,ZENG Jinquan,et al.YOLO-Xweld: Efficiently detecting pipeline welding defects in X-ray images for constrained environments[C]∥International Joint Conference on Neural Networks.Padua:IEEE Press,2022:1-7.DOI:10.1109/IJCNN55064.2022.9892765.
[16] HU Jie,WANG Zhangbin,CHANG Minjie,et al.Psg-YOLOV5: A paradigm for traffic sign detection and recognition algorithm based on deep learning[J].Symmetry,2022,14(11):2262.DOI:10.3390/sym14112262.
[17] LI Hulin,LI Jun,WEI Hanbing,et al.Slim-neck by GSConv: A lightweight-design for real-time detector architectures [J].Journal of Real-Time Image Processing,2024,21(3):62.DOI:10.1007/s11554-024-01436-6.
[18] WANG Jiaqi,CHEN Kai,XU Rui,et al.Carafe: Content-aware reassembly of features[C]∥Proceedings of the IEEE/CVF International Conference on Computer Vision.Seoul:IEEE Press,2019:3007-3016.DOI:10.1109/ICCV.2019.00310.
[19] WAN Dahang,LU Rongsheng,SHEN Siyuan,et al.Mixed local channel attention for object detection[J].Engineering Applications of Artificial Intelligence,2023,123:106442.DOI:10.1016/j.engappai.2023.106442.
[20] MERY D,RIFFO V,ZSCHERPEL U,et al.GDXray: The database of X-ray images for nondestructive testing[J].Journal of Nondestructive Evaluation,2015,34(4):42.DOI:10.1007/s10921-015-0315-7.
[21] HUANG Hejun,CHEN Zuguo,ZOU Ying,et al.Channel prior convolutional attention for medical image segmentation[EB/OL].(2023-06-08)[2024-01-03].https:∥arxiv.org/abs/2306.05196.
[22] LAU K W,PO L M,REHMAN Y A U.Large separable kernel attention: Rethinking the large kernel attention design in cnn[J].Expert Systems with Applications,2024,236:121352.DOI:10.1016/j.eswa.2023.121352.
[23] WOO S H,PARK J,LEE J Y,et al.Cbam: Convolutional block attention module[C]∥Proceedings of the European Conference on Computer Vision.Cham:Springer International Publishing,2018:3-19.DOI:10.1007/978-3-030-01234-2_1.
[24] GUO Menghao,LU Chengze,HOU Qibin,et al.Segnext: Rethinking convolutional attention design for semantic segmentation[J].Advances in Neural Information Processing Systems,2022,35:1140-1156.DOI:10.48550/arXiv.2209.08575.
(責(zé)任編輯: "陳志賢" 英文審校: 陳婧)
通信作者: 鄭力新(1967-),男,教授,博士,主要從事圖像分析、機(jī)器視覺、深度學(xué)習(xí)方法的研究。E-mail:zlx@hqu.edu.cn。
基金項(xiàng)目: 福建省科技計(jì)劃項(xiàng)目(2020Y0039); 福建省泉州市科技計(jì)劃項(xiàng)目(2020C042R)https://hdxb.hqu.edu.cn/