王 宸,張秀峰,劉 超,張 偉,唐 禹
(1.湖北汽車工業(yè)學(xué)院 機(jī)械工程學(xué)院,湖北 十堰 442002;2.上海大學(xué) 上海市智能制造與機(jī)器人重點(diǎn)實(shí)驗(yàn)室,上海 200072)
輪轂是車輛的承載部件,其主要由輪圈和輻板兩部分組成,制造方法有焊接法、鑄造法和鍛造法。在焊接法的生產(chǎn)過(guò)程中,需要對(duì)輪轂焊接焊縫的缺陷進(jìn)行檢測(cè),來(lái)保障輪轂產(chǎn)品質(zhì)量。輪轂焊縫缺陷多為表面缺陷,目前采用人工目測(cè)的方法進(jìn)行檢測(cè),但此方法檢測(cè)效率低,檢測(cè)人員容易疲勞,存在漏檢和誤檢等問(wèn)題。隨著機(jī)器視覺(jué)等技術(shù)的不斷進(jìn)步,尤其是人工智能技術(shù)在工業(yè)領(lǐng)域的應(yīng)用[1],給智能化檢測(cè)帶來(lái)了更多解決方案[2]。為了改進(jìn)人工檢測(cè)方法[3],可以把焊縫缺陷看作目標(biāo)檢測(cè)問(wèn)題,采用目標(biāo)檢測(cè)的方法實(shí)現(xiàn)焊縫缺陷的智能化檢測(cè)。目標(biāo)檢測(cè)[4]的方法主要可以分為兩類:一類是采用傳統(tǒng)機(jī)器視覺(jué)的方法另一類是采用深度學(xué)習(xí)的方法。
傳統(tǒng)的機(jī)器視覺(jué)方法使用特定編程算法,提取特征信息進(jìn)行分類識(shí)別。羅志偉等[5]根據(jù)焊球的形狀和尺寸特征,使用高斯混合模型實(shí)現(xiàn)了其缺陷的識(shí)別分類,得到了97.06%的檢測(cè)準(zhǔn)確率,但是存在較高的誤判率,數(shù)據(jù)樣本較少。高向東等[6]采用主成分分析和支持向量機(jī)對(duì)高強(qiáng)鋼焊縫特征的動(dòng)態(tài)磁光圖像進(jìn)行分析,實(shí)現(xiàn)了焊縫缺陷的自動(dòng)檢測(cè),識(shí)別率為92.6%。Malarvel等[7]使用了機(jī)器視覺(jué)方法對(duì)焊縫圖像進(jìn)行去噪,利用梯度幅值增強(qiáng)圖像特征,實(shí)現(xiàn)了焊縫缺陷檢測(cè),但方法對(duì)于弱缺陷特征的檢測(cè)效果較差。湯勃等[8]采用了多尺度高斯函數(shù)方法提取了圖像的光照參數(shù),實(shí)現(xiàn)了對(duì)光照不均的自適應(yīng)校正,并且使用遺傳算法優(yōu)化圖像分割閾值,實(shí)現(xiàn)了鋼板表面缺陷的有效檢出,該方法受環(huán)境和光照等因素的影響較大。上述的傳統(tǒng)機(jī)器視覺(jué)方法都是針對(duì)特定問(wèn)題,設(shè)計(jì)特征提取算法,不能高效地提取多種焊縫缺陷特征,并且在復(fù)雜環(huán)境下易受干擾,準(zhǔn)確率較低。
深度學(xué)習(xí)算法特別是卷積神經(jīng)網(wǎng)絡(luò)(CNN)[9]算法擁有強(qiáng)大的自動(dòng)提取特征能力,使得其在復(fù)雜環(huán)境下能較好地完成目標(biāo)檢測(cè)任務(wù)[10]。上海大學(xué)的馬立等[11]對(duì)Tiny YOLOv3算法模型的特征提取網(wǎng)絡(luò)與損失函數(shù)進(jìn)行改進(jìn),提升了模型對(duì)小目標(biāo)的檢測(cè)準(zhǔn)確率。王建林等[12]改進(jìn)了YO‐LOv2算法模型,利用數(shù)據(jù)增強(qiáng)擴(kuò)充數(shù)據(jù)集,得到了90.48%的多類型合作目標(biāo)檢測(cè)精度。余永維等[13]將Inception網(wǎng)絡(luò)結(jié)構(gòu)結(jié)合SSD算法,最終在自制的零件數(shù)據(jù)集上得到了97.8%的準(zhǔn)確率,其檢測(cè)速度快滿足實(shí)際生產(chǎn)的零件檢測(cè)需求。華中科技大學(xué)的謝經(jīng)明等[14]使用輕量化的YOLO算法實(shí)現(xiàn)了焊縫X射線圖像的準(zhǔn)確識(shí)別。周明浩和朱家明[15]使用卷積神經(jīng)網(wǎng)絡(luò)檢測(cè)機(jī)械零件的表面缺陷,取得了極高的識(shí)別準(zhǔn)確率,證明了其在零件表面缺陷檢測(cè)方面的優(yōu)勢(shì)。趙海文等[16]使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)汽車輪轂的劃痕、擦傷等表面缺陷進(jìn)行了檢測(cè),檢測(cè)試驗(yàn)結(jié)果表明該方法檢測(cè)準(zhǔn)確率高、魯棒性強(qiáng)。Chen等[17]使用深度卷積神經(jīng)網(wǎng)絡(luò)檢測(cè)鐵路接觸網(wǎng)的懸臂連接件的缺陷,通過(guò)大量實(shí)驗(yàn)和比較,該方法在復(fù)雜環(huán)境下具有較高的檢測(cè)率和良好的環(huán)境適應(yīng)性。
輪轂生產(chǎn)的環(huán)境十分復(fù)雜,焊縫的表面缺陷種類多,使用傳統(tǒng)機(jī)器視覺(jué)的檢測(cè)方法通用性差,算法魯棒性不足,檢測(cè)效率低,難以滿足實(shí)時(shí)性需求?;谏疃葘W(xué)習(xí)的目標(biāo)檢測(cè)算法[18]通用性好、魯棒性高,檢測(cè)速度快、準(zhǔn)確率高,適用于環(huán)境復(fù)雜的工業(yè)目標(biāo)檢測(cè)。本文基于YO‐LOv3[19-20]算法,首先設(shè)計(jì)了檢測(cè)平臺(tái)結(jié)構(gòu),然后采集了焊縫圖像制作數(shù)據(jù)集,最后對(duì)YOLOv3算法進(jìn)行了改進(jìn)優(yōu)化,得到Y(jié)OLOv3-MC算法模型并進(jìn)行檢測(cè)試驗(yàn)。
在輪轂的生產(chǎn)過(guò)程中,企業(yè)依靠人工目視來(lái)檢測(cè)輪轂焊縫的焊接質(zhì)量,篩選出不合格產(chǎn)品。為了能在實(shí)際的生產(chǎn)過(guò)程中實(shí)現(xiàn)輪轂焊縫缺陷的智能化檢測(cè),本文模擬生產(chǎn)中的實(shí)際情況設(shè)計(jì)和搭建了智能檢測(cè)平臺(tái)。其結(jié)構(gòu)簡(jiǎn)圖如圖1所示。
圖1 檢測(cè)平臺(tái)結(jié)構(gòu)設(shè)計(jì)簡(jiǎn)圖Fig.1 Structure diagram of detecting platform
檢測(cè)平臺(tái)的主要結(jié)構(gòu)有輸送裝置、圖像采集裝置和缺陷工件頂出裝置,平臺(tái)的檢測(cè)流程如下:在實(shí)際生產(chǎn)過(guò)程中通過(guò)輸送裝置將輪轂由上一工序傳輸?shù)綑z測(cè)平臺(tái),當(dāng)輪轂到達(dá)預(yù)定位置并觸發(fā)光電傳感器時(shí),圖像采集裝置開(kāi)始對(duì)輪轂焊縫進(jìn)行取像。在取像時(shí),由于輪轂的尺寸是固定的,輪圈和輻板的焊接位置是一個(gè)固定位置的圓,并且焊接機(jī)器人焊接的焊縫長(zhǎng)度是固定值10 cm,每個(gè)輪轂有四條焊縫,所以將相機(jī)聚焦到該圓附近進(jìn)行旋轉(zhuǎn)拍照即可完成數(shù)據(jù)采集。然后將圖像信息傳輸?shù)焦ぷ髡具M(jìn)行處理并判斷是否合格,若其結(jié)果是焊縫無(wú)缺陷,則檢測(cè)結(jié)束,輪轂傳輸至下一工序。若檢測(cè)結(jié)果是焊縫存在缺陷,則在輪轂經(jīng)過(guò)1第二個(gè)光電傳感器時(shí)啟動(dòng)頂出裝置,將不合格輪轂頂出到缺陷工件回收滾道上,搭建的模擬智能檢測(cè)平臺(tái)實(shí)物如圖2所示。
圖2 智能檢測(cè)平臺(tái)Fig.2 Intelligent detecting platform
本文的檢測(cè)試驗(yàn)流程可分為圖像數(shù)據(jù)采集,制作數(shù)據(jù)集,訓(xùn)練模型,測(cè)試模型和對(duì)比分析。試驗(yàn)首先需要采集輪轂焊縫圖像,使用BFS-U3-89S6C-C型號(hào)面陣CCD傳感器工業(yè)相機(jī),其最大分辨率為4 096×2 160,幀頻為42FBS,數(shù)據(jù)接口為USB3.0,使用型號(hào)為HC3505A的定焦鏡頭。然后對(duì)采集的圖像做預(yù)處理并且制作數(shù)據(jù)集,使用圖像標(biāo)注工具對(duì)各類焊縫缺陷圖像進(jìn)行標(biāo)注。數(shù)據(jù)集包含了用于模型訓(xùn)練的訓(xùn)練集,用于評(píng)價(jià)模型性能的驗(yàn)證集和用于檢測(cè)的測(cè)試集,并且使用數(shù)據(jù)增強(qiáng)方法擴(kuò)充數(shù)據(jù)集。最后進(jìn)行識(shí)別檢測(cè),對(duì)檢測(cè)結(jié)果數(shù)據(jù)進(jìn)行分析。整體試驗(yàn)流程如圖3所示。
圖3 輪轂焊縫檢測(cè)試驗(yàn)流程圖Fig.3 Flow chart of test about wheel hub welds detection
輪轂焊縫缺陷圖像數(shù)據(jù)來(lái)源于某輪轂生產(chǎn)企業(yè)中的輪轂焊縫缺陷樣本。根據(jù)常見(jiàn)的輪轂焊縫表面缺陷類型,將焊縫缺陷劃分為斷弧、焊瘤、偏焊、起弧不良和氣孔5種缺陷類型。其中斷弧的缺陷特征是焊縫表面有明顯的凹陷或穿透;焊瘤是指焊接過(guò)程中,熔化金屬流淌到焊縫之外未熔化的母材上所形成的金屬瘤;偏焊缺陷特征為焊縫發(fā)生偏移,未在中間位置;起弧不良的缺陷特征為焊縫兩段的端頭有縮頸;氣孔是指熔池中的氣泡在凝固時(shí)未能逸出而殘留在焊縫表面形成的空穴。
在輪轂生產(chǎn)過(guò)程中,出現(xiàn)焊縫缺陷的概率較小,但是深度學(xué)習(xí)需要大量的訓(xùn)練圖像來(lái)減少過(guò)擬合,減少由不相關(guān)特征產(chǎn)生的建模偏差?,F(xiàn)有的解決方法有數(shù)據(jù)增強(qiáng)、正則化和元學(xué)習(xí)(Metalearning)等,由于輪轂焊縫的背景較為相似,使用數(shù)據(jù)增強(qiáng)方法不僅可以擴(kuò)充數(shù)據(jù)集的數(shù)量,而且可以避免模型學(xué)習(xí)到背景特征。采用數(shù)據(jù)增強(qiáng)后最終得到可用的輪轂焊縫圖像共計(jì)18 990張。
將缺陷圖像劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集,劃分比例大約為7∶2∶1,其中訓(xùn)練集9 064張,驗(yàn)證集3 140張,測(cè)試集有缺陷焊縫圖像1 368張,統(tǒng)計(jì)結(jié)果如表1所示。本文試驗(yàn)使用開(kāi)源圖像標(biāo)注工具LabelImg[21],標(biāo)注圖像數(shù)據(jù)中的焊縫缺陷位置,共標(biāo)注了12 204張圖像。其中斷弧缺陷標(biāo)注2 484張;焊瘤缺陷共標(biāo)注2 484張;偏焊缺陷共標(biāo)注2 457張;起弧不良缺陷共標(biāo)注2 286張;氣孔缺陷共標(biāo)注2 493張。輪轂實(shí)際生產(chǎn)過(guò)程中,輪轂焊縫產(chǎn)生缺陷是相對(duì)概率較小的事件,所以在測(cè)試集中加入了5 418張完好無(wú)缺陷的焊縫圖像作為干擾項(xiàng),模擬實(shí)際情況。如圖4所示展示了最終的數(shù)據(jù)集的5類缺陷,其中第一列是采集圖像,第二列是標(biāo)注圖像,其余三列是增強(qiáng)后的圖像數(shù)據(jù)。
圖4 輪轂焊縫檢測(cè)試驗(yàn)流程圖Fig.4 Flow chart of test about wheel hub welds detection
表1 數(shù)據(jù)集中各類別圖像數(shù)量Tab.1 Numbers of each types in the dataset
YOLOv3是基于回歸方法的端到端的目標(biāo)檢測(cè)算法,其直接通過(guò)一個(gè)深度卷積神經(jīng)網(wǎng)絡(luò)將原始圖像數(shù)據(jù)信息轉(zhuǎn)變?yōu)槟繕?biāo)物體的位置和類別信息,把目標(biāo)檢測(cè)問(wèn)題轉(zhuǎn)化為回歸問(wèn)題,得到邊界框和類別置信度。這種端到端的一步式處理方法使檢測(cè)速度得到極大提升,適用于實(shí)時(shí)檢測(cè),并且該算法通用性強(qiáng),檢測(cè)準(zhǔn)確率高。
YOLOv3的主干網(wǎng)絡(luò)是Darknet-53的卷積神經(jīng)網(wǎng)絡(luò),用于對(duì)輸入圖像的特征進(jìn)行提取。YOLOv3可以實(shí)現(xiàn)對(duì)不同大小尺度的目標(biāo)進(jìn)行檢測(cè)[22],其采用多尺度融合的方法實(shí)現(xiàn)局部特征交互[23],對(duì)主干網(wǎng)絡(luò)提取到的三個(gè)不同尺度的特征圖Y1,Y2和Y3進(jìn)行融合預(yù)測(cè)。不同尺度的特征圖是把輸入圖像劃分成不同數(shù)量的單元格,數(shù)量越多越容易檢測(cè)小目標(biāo)物體。特征圖的每一個(gè)單元格所含信息大小用維數(shù)D表示,其計(jì)算方法如式(1)所示,YOLOv3的整體算法網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖5所示。
圖5 YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.5 YOLOv3 network structure diagram
其中,E表示每個(gè)單元預(yù)測(cè)的邊界框數(shù)量,F(xiàn)表示檢測(cè)目標(biāo)的類別數(shù),G代表每個(gè)邊界框包含的4個(gè)位置坐標(biāo)信息和1個(gè)目標(biāo)性得分信息。在YO‐LOv4算法中有多種改進(jìn)方法,例如使用Mish激活函數(shù)和CIoU計(jì)算損失函數(shù)的方法等[24]。通過(guò)這些改進(jìn),算法的檢測(cè)精度和檢測(cè)效率都有明顯提升。
YOLOv3的算法結(jié)構(gòu)最小單元是DBL結(jié)構(gòu),其由卷積層,批次歸一化層(Batch Normaliza‐tion)和非線性激活組成。非線性激活是使神經(jīng)網(wǎng)絡(luò)具有非線性的關(guān)鍵單元,它決定了人工神經(jīng)元是否處于激發(fā)狀態(tài),這種模擬生物神經(jīng)結(jié)構(gòu)的方法賦予了深度學(xué)習(xí)算法學(xué)習(xí)復(fù)雜函數(shù)的能力,YOLOv3算法采用Leaky ReLU激活函數(shù)。本文針對(duì)YOLOv3主干網(wǎng)絡(luò)的激活函數(shù)做優(yōu)化,使用Mish函數(shù)替換原激活函數(shù)[25],圖6是這兩種激活函數(shù)曲線圖。
圖6 激活函數(shù)曲線圖Fig.6 Activation function graph
Leaky ReLU激活函數(shù)的表達(dá)式如下公式2所示,Mish激活函數(shù)的表達(dá)式如下公式3所示。顯然可以發(fā)現(xiàn)Mish函數(shù)是連續(xù)函數(shù),其可以連續(xù)微分,這使得在反向傳播時(shí)梯度優(yōu)化更容易,優(yōu)化效果更好,網(wǎng)絡(luò)泛化效果也更好。并且Mish函數(shù)在正無(wú)窮方向發(fā)散,在負(fù)無(wú)窮方向收斂到0,函數(shù)在x軸下方具有非單調(diào)性且有最小值,這可以產(chǎn)生較強(qiáng)的正則化效果。通過(guò)函數(shù)表達(dá)式計(jì)算可得,Mish函數(shù)的最小值點(diǎn)為(-1.192 4,-0.308 44),這使得絕對(duì)值較小的負(fù)輸入也會(huì)有相對(duì)較大的負(fù)輸出,提高了模型表達(dá)能力和控制流。本文在主干網(wǎng)絡(luò)中采用了Mish激活函數(shù)替換Leaky ReLU激活函數(shù),以期得到更高的檢測(cè)平均準(zhǔn)確率,并在下文的試驗(yàn)中驗(yàn)證了其改進(jìn)效果。
YOLOv3算法在進(jìn)行迭代計(jì)算時(shí)使用損失函數(shù)來(lái)表征預(yù)測(cè)框與真實(shí)框之間的差異程度,通過(guò)不斷更新權(quán)重值,損失函數(shù)值不斷減小,YO‐LOv3的損失函數(shù)公式如公式4所示。
式(4)中的1,2項(xiàng)為定位損失函數(shù),3,4項(xiàng)為置信度損失函數(shù),第5項(xiàng)是分類損失函數(shù)。式中obj表示單元格內(nèi)含有目標(biāo),noobj表示單元格內(nèi)沒(méi)有目標(biāo),i表示第i單元格,j表示該單元格預(yù)測(cè)的第j框。txi,tyi表示預(yù)測(cè)框的中心點(diǎn)橫縱坐標(biāo)偏移值,twi,thi分別表示預(yù)測(cè)框?qū)捙c圖像寬的比,預(yù)測(cè)框高和圖像高的比,同樣的,tpxi,tpyi,tpwi,tphi分 別 表示真實(shí)框的相應(yīng)地的位置信息?!?”表示第i單元格第j框中是否含有目標(biāo)的示性函數(shù),C表示預(yù)測(cè)框置信度得分,P表示條件類別概率值。公式4中的λcoord=2-w×h,其取值范圍是(1,2)。如公式4中的最后一項(xiàng)所示,YOLOv3在分類損失計(jì)算中使用了交叉熵。
YOLOv3算法計(jì)算損失函數(shù)的過(guò)程中,前兩項(xiàng)的定位損失函數(shù)計(jì)算,使用的是位置坐標(biāo)的二范數(shù)值,這種度量方法有可能出現(xiàn)交并比(Inter‐section over Union,IoU)不同,但二范數(shù)值卻相同的情況。如果直接使用IoU又會(huì)帶來(lái)梯度消失問(wèn)題。2019年Rezatofighi H等人引入廣義交并比GIoU來(lái)彌補(bǔ)IoU的缺點(diǎn),對(duì)深度學(xué)習(xí)算法的損失函數(shù)的度量方法進(jìn)行優(yōu)化[26],GIoU計(jì)算公式如公式6所示。
其中,A表示真實(shí)框,B表示預(yù)測(cè)框,M表示包含A和B的最小外接矩形。GIoU不僅可以度量重合度還度量了非重合的程度,可以更好地反映預(yù)測(cè)框的優(yōu)劣。但從式(6)可知,當(dāng)真實(shí)框A與預(yù)測(cè) 框B處于包含關(guān)系時(shí),M-(A∪B)=0即GIoU退化為IoU。事實(shí)上要度量?jī)蓚€(gè)框的重合程度應(yīng)該同時(shí)考慮重疊面積、中心點(diǎn)距離和長(zhǎng)寬比三個(gè)因素。
Zheng和Wang等人在2019年提出了能同時(shí)計(jì)算這三要素的度量指標(biāo)CIoU[27],該方法是在IoU的計(jì)算后面加入關(guān)于中心點(diǎn)距離和長(zhǎng)寬比的兩項(xiàng)懲罰項(xiàng),如式(7)~式(9)所示。改進(jìn)度量指標(biāo)后可以提升算法模型的檢測(cè)準(zhǔn)確率,尤其可以顯著提高預(yù)測(cè)框的定位精度,下文的試驗(yàn)結(jié)果驗(yàn)證了該改進(jìn)的效果。
其中,c表示最小外接矩的對(duì)角線長(zhǎng)度,b,bgt分別表示預(yù)測(cè)框和真實(shí)框的中心點(diǎn),ρ2表示歐氏距離,v表示長(zhǎng)寬比一致性衡量參數(shù),wgt,hgt分別表示真實(shí)框的寬和高,w和h表示預(yù)測(cè)框的寬和高。
本文的輪轂焊縫智能化檢測(cè)方法所訓(xùn)練和測(cè)試的模型均運(yùn)行在Windows 10操作系統(tǒng)的高性能工作站上,其配置為英特爾2.10 GHz八核CPU,32 GB內(nèi)存,Nvidia GeForce RTX 2080Ti顯卡。試驗(yàn)通過(guò)模型驗(yàn)證結(jié)果反饋,選擇最優(yōu)超參數(shù)值,每次訓(xùn)練模型迭代20 000次,用時(shí)在22 h左右。
為了對(duì)訓(xùn)練出來(lái)的模型進(jìn)行客觀評(píng)價(jià),需要使用一些評(píng)價(jià)指標(biāo)。準(zhǔn)確率(Precision)表示預(yù)測(cè)為真的樣本中正樣本數(shù)的比例,召回率(Recall)表示在所有真實(shí)情況為正的樣本中預(yù)測(cè)為真的樣本數(shù)的比例,平均精度AP(Average Precision)是不同召回率下的準(zhǔn)確率的平均值,均值平均精度mAP表示不同類別的AP值的平均值,輔助評(píng)估值F1[28]值是準(zhǔn)確率與召回率的綜合值,具體公式如下。
其中,TP表示預(yù)測(cè)為真的正樣本(True posi‐tive),F(xiàn)N表示 預(yù)測(cè)為假的負(fù)樣本(False nega‐tive),F(xiàn)P表示預(yù)測(cè)為假的正樣本(False posi‐tive),k表示類別數(shù),AP(i)表示第i個(gè)類別的AP值。
在本次試驗(yàn)中,綜合考慮不同訓(xùn)練超參數(shù)和不同算法模型的影響,選用以下四種算法模型進(jìn)行對(duì)比:使用原始YOLOv3算法,用YOLOv3表示;使用Mish激活函數(shù)優(yōu)化主干網(wǎng)絡(luò)的YO‐LOv3算法,用YOLOv3-M表示;使用CIoU優(yōu)化損失函數(shù)的YOLOv3算法,用YOLOv3-C表示;同時(shí)使用Mish激活函數(shù)和CIoU優(yōu)化方法,用YOLOV3-MC表示。如下圖7和圖8所示,對(duì)四種模型的訓(xùn)練過(guò)程作可視化處理,以便分析訓(xùn)練過(guò)程中的損失函數(shù)(Loss)值和平均交并比變化情況。
圖7 Loss值隨著迭代次數(shù)變化曲線圖Fig.7 Loss value curve changes with iterations
如圖7所示,四種算法模型在訓(xùn)練中Loss值整體變化趨勢(shì)一致,它們都在前2 000次訓(xùn)練中快速下降,然后逐漸趨于穩(wěn)定,但依然會(huì)小幅震蕩。如圖8所示,平均交并比在訓(xùn)練前期數(shù)值較低且波動(dòng)較大,在訓(xùn)練7 000次后都會(huì)逐漸穩(wěn)定。YOLOv3-C和YOLOv3-MC的平均交并比要明顯高于其余兩種算法,并且波動(dòng)程度較小。這和3.3小節(jié)的理論分析結(jié)果一致,即當(dāng)使用更完備的度量值優(yōu)化損失函數(shù)時(shí),可以提升算法的定位精度,并且有助于得到準(zhǔn)確率更高的結(jié)果模型。
圖8 平均交并比迭代曲線Fig.8 Iteration curves of average IoU
本文試驗(yàn)主要以公式12的mAP值作為評(píng)價(jià)指標(biāo),以驗(yàn)證集作為真值,計(jì)算不同算法模型在不同迭代訓(xùn)練次數(shù)下的mAP值。計(jì)算時(shí)判定為正樣本的參數(shù)條件為:與真實(shí)框的IoU值大于0.5[27],結(jié)果數(shù)據(jù)統(tǒng)計(jì)如圖9所示。改進(jìn)后的YO‐LOv3-MC的mAP值在多數(shù)迭代次數(shù)下數(shù)值最高,曲線也更穩(wěn)定。四種算法模型在20 000次迭代中的最優(yōu)結(jié)果模型的驗(yàn)證集檢測(cè)結(jié)果數(shù)據(jù)如表2所示。YOLOv3-MC算法在驗(yàn)證集中檢測(cè)正確的正樣本(TP)數(shù)量最高,檢測(cè)錯(cuò)誤的FP和FN數(shù)量最少,各個(gè)類別準(zhǔn)確率和召回率也最高。YOLOv3-MC的最優(yōu)模型的mAP相較于原始YOLOv3的最優(yōu)模型的mAP值提升了1.88%。
圖9 mAP值隨迭代次數(shù)變化Fig.9 Mean average precision changes with iterations
此外,使用相同的數(shù)據(jù)集在原始SSD和Faster-RCNN算法上進(jìn)行訓(xùn)練,得到最優(yōu)模型為迭代60epoch后的模型,在驗(yàn)證集上檢測(cè)模型的mAP等各類指標(biāo),如表2所示。可以看出驗(yàn)證集準(zhǔn)確率低于YOLOv3-MC算法模型,并且在下文的測(cè)試集檢測(cè)中發(fā)現(xiàn),SSD和Faster-RCNN算法模型的誤檢率較高,有大量的無(wú)缺陷圖像被誤檢為缺陷圖像。綜上所述,改進(jìn)Mish激活函數(shù)和CIoU度量指標(biāo)的YOLOv3-MC算法是更優(yōu)的算法,得出的最優(yōu)模型的檢測(cè)效果也最好,其在IoU閾值為0.5的驗(yàn)證集上的mAP值為98.94%,F(xiàn)1得分值為0.99,平均交并比為80.92%,每張圖像的檢測(cè)時(shí)間不超過(guò)14毫秒,模型大小234 MB,滿足輪轂生產(chǎn)企業(yè)檢測(cè)需求,該算法模型可用于智能檢測(cè)系統(tǒng)。
表2 不同模型的驗(yàn)證集檢測(cè)結(jié)果數(shù)據(jù)Tab.2 mAP of validation sets for different models under different IoU thresholds
最終確定改進(jìn)后的YOLOv3-MC的最優(yōu)模型作為智能系統(tǒng)的檢測(cè)模型。為了證明該算法模型的實(shí)際檢測(cè)效果,使用測(cè)試集圖像進(jìn)行檢測(cè)。測(cè)試集圖像包括了與訓(xùn)練集相獨(dú)立的圖像數(shù)據(jù)以及作為干擾項(xiàng)的無(wú)缺陷焊縫圖像。測(cè)試集檢測(cè)時(shí)置信度閾值設(shè)為0.25[19],圖10展 示 了五種缺陷類型的檢測(cè)結(jié)果圖。測(cè)試集檢測(cè)試驗(yàn)完成后,統(tǒng)計(jì)各類型的正確率,結(jié)果統(tǒng)計(jì)如表3所示。
表3 YOLOv3-MC在測(cè)試集上的檢測(cè)結(jié)果Tab.3 YOLOv3-MC detection results on test set
圖10 測(cè)試集上的檢測(cè)結(jié)果圖Fig.10 Test renderings on test sets
表3以能否正確識(shí)別圖像樣本缺陷類型為判斷條件,得到測(cè)試集的檢測(cè)結(jié)果,測(cè)試集中的所有圖像均未出現(xiàn)在訓(xùn)練集中。其中各缺陷類別數(shù)據(jù)檢測(cè)正確率均為100%,無(wú)缺陷焊縫檢測(cè)正確率為99.11%。說(shuō)明了該模型對(duì)于缺陷樣本的檢測(cè)精度很高,可以滿足檢測(cè)需求。但是,在測(cè)試集的全部5 418張無(wú)缺陷圖像中,有48張無(wú)缺陷焊縫圖像錯(cuò)誤檢測(cè)出了缺陷,其中誤檢為斷弧(置信度為0.33)一張,如圖11(a)所示;誤檢為焊瘤(置信度為0.38)一張,如圖11(b)所示;誤檢為氣孔9張,如圖11(c)所示;誤檢為偏焊37張,如圖11(d)所示。
圖11 測(cè)試集無(wú)缺陷圖像誤檢結(jié)果圖Fig.11 Error detection result of no defects images on test set
分析以上48張誤檢樣本,對(duì)于誤檢為氣孔缺陷的圖像,其特征為含有呈金色且形狀較小的斑點(diǎn),而真實(shí)氣孔缺陷焊縫的缺陷特征為黑色斑點(diǎn)且形狀較大。誤檢為偏焊的圖像中,由于拍攝角度使得焊縫和縫隙有偏差,這種特征和偏焊的缺陷特征類似。誤檢為焊瘤的圖像,其特征和焊瘤缺陷特征也非常類似,從人工角度去判斷也有困難。為了在實(shí)際檢測(cè)中盡可能的減少無(wú)缺陷樣本的誤檢,即提高召回率,在采集圖像進(jìn)行檢測(cè)時(shí),要盡可能保證焊縫的清晰完整和角度垂直,避免出現(xiàn)誤檢;另一方面在算法上擴(kuò)大數(shù)據(jù)集的規(guī)模,可以有更好的檢測(cè)結(jié)果。其次,也可將無(wú)缺陷類型樣本圖像也作為一個(gè)缺陷類型進(jìn)行訓(xùn)練和測(cè)試,可以減少誤檢情況發(fā)生,但是會(huì)增加模型的訓(xùn)練難度和降低模型的泛化能力。
此外,YOLOv3-MC算法不僅可以得到如上圖10和11的檢測(cè)結(jié)果圖像,還可以得到具體圖像中缺陷檢測(cè)框的坐標(biāo)和缺陷類型置信度,如下數(shù)據(jù)所示:“duanhu:82%(left_x:246 top_y:205 width:63 height:54)”,在后續(xù)的工作中可以對(duì)這些結(jié)果數(shù)據(jù)作分析。
本文提出了關(guān)于輪轂焊縫缺陷智能化檢測(cè)的新方法,將YOLOv3算法作為基礎(chǔ)檢測(cè)算法,設(shè)計(jì)了檢測(cè)方案,制作了數(shù)據(jù)集。使用效果更優(yōu)的Mish激活函數(shù)改進(jìn)算法,以及使用CIoU度量指標(biāo)改進(jìn)損失函數(shù),最終改進(jìn)后的算法在檢測(cè)試驗(yàn)中有更高的準(zhǔn)確率和效率。
檢測(cè)試驗(yàn)結(jié)果表明,改進(jìn)后的模型在驗(yàn)證集上(IoU閾值為0.5)的F1值為0.99,mAP值達(dá)到了98.94%,平均交并比為80.92%,在測(cè)試集上檢測(cè)的總體正確率為99.29%。檢測(cè)算法的單張檢測(cè)時(shí)間不超過(guò)14毫秒,檢測(cè)效率較高,滿足輪轂生產(chǎn)企業(yè)的生產(chǎn)線節(jié)拍要求。說(shuō)明了該模型擁有高精度和較好的魯棒性,其可以在實(shí)際應(yīng)用中準(zhǔn)確識(shí)別、分類與定位輪轂焊縫缺陷,實(shí)現(xiàn)輪轂焊縫缺陷的智能化檢測(cè),代替人工目測(cè)。
在后續(xù)工作中,由于YOLOv3-MC算法對(duì)硬件設(shè)備要求較高,在實(shí)際的工業(yè)應(yīng)用中增加了成本,需在不損失檢測(cè)精度和效率的情況下,對(duì)模型進(jìn)行剪枝等操作,縮減模型大小,降低使用成本。