国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進(jìn)YOLOv4的地板缺陷檢測算法

2023-10-29 01:32陳浩棟孫偉波李紅軍
計算機仿真 2023年9期
關(guān)鍵詞:先驗特征提取準(zhǔn)確率

陳浩棟,張 弛,孫偉波,李紅軍

(武漢紡織大學(xué)機械工程與自動化學(xué)院,湖北 武漢 430200)

1 引言

地板表面缺陷決定了地板的產(chǎn)品等級,地板的制造容易產(chǎn)生表面缺陷,導(dǎo)致企業(yè)的生產(chǎn)效益下降[1],表面質(zhì)量是評判地板質(zhì)量的重要指標(biāo)之一[2]。國內(nèi)的地板制造廠商大部分還是在使用傳統(tǒng)的人工目測方式,檢測效率低,人工容易產(chǎn)生視覺疲勞[3],出現(xiàn)漏檢誤檢等問題,并且人工目測對評判人員要求高,需要擁有大量的實踐經(jīng)驗,同時對地板紋理缺陷的判斷會因光線和經(jīng)驗等問題出現(xiàn)差錯,評判標(biāo)準(zhǔn)缺乏客觀性。近幾年來,國家不斷推進(jìn)工業(yè)4.0智能化工廠和智能制造的方針[4],實現(xiàn)地板表面缺陷自動化檢測有著重要的應(yīng)用意義。傳統(tǒng)的機器視覺檢測方法受限于計算機的計算能力,對計算能力要求高。深度學(xué)習(xí)是機器視覺技術(shù)的進(jìn)一步發(fā)展,基于深度學(xué)習(xí)的目標(biāo)檢測算法已逐步應(yīng)用于各領(lǐng)域工業(yè)生產(chǎn)質(zhì)量檢測中,深度學(xué)習(xí)網(wǎng)絡(luò)的框架不斷發(fā)展,從CNN(Conventional Neural Net-work)[5]卷積神經(jīng)網(wǎng)絡(luò)解決分類問題,到可以生成候選框的RCNN(Region-Conventional Neural Network)[6]、Fast-RCNN[7]、Faster-RCNN[8]等的目標(biāo)檢測算法,應(yīng)用比較廣泛的是YOLO(You Only Look Once)[9],YOLO使用Reset[10]-[11]殘差網(wǎng)絡(luò)結(jié)構(gòu),增強了對特征的提取效果,在缺陷檢測中有著比較好的表現(xiàn)。

在地板表面缺陷識別研究領(lǐng)域,國內(nèi)外已有學(xué)者做出研究,例如梁浩、曹軍等[12]學(xué)者提出先使用近紅外光譜對實木地板進(jìn)行缺陷檢測,對讀取到的紅外光譜數(shù)據(jù)進(jìn)行貝葉斯網(wǎng)絡(luò)分析,從而辨別地板表面的活節(jié)、死節(jié)等缺陷。張怡卓、許雷等[13]學(xué)者提出通過小波分析和缺陷定位將實木地板表面的背景剔除,分割出缺陷,取得了較好實驗效果。程耀瑜等[14]學(xué)者提出的基于光度立體技術(shù)的地板缺陷檢測。以上的算法均以檢測活節(jié)、死節(jié)、裂紋等缺陷為主,存在一定的局限性,沒有能同時做到對小目標(biāo)的缺陷、紋理類缺陷檢測的算法。

因此,本文通過在以上文獻(xiàn)中得到的思路,建立一套基于改進(jìn)型-YOLOV4的地板缺陷檢測算法。通過對地板表面缺陷的數(shù)據(jù)特征對網(wǎng)絡(luò)進(jìn)行修改,增加特征提取網(wǎng)絡(luò)中對小物體的信息提取,使用數(shù)據(jù)集中的缺陷數(shù)據(jù)對檢測先驗框進(jìn)行優(yōu)化。通過實驗驗證了改進(jìn)后的YOLOv4進(jìn)行地板表面缺陷檢測的可行性,實現(xiàn)對小目標(biāo)缺陷和紋理類缺陷的檢測。

2 YOLO V4算法原理

YOLOv4是Alexey等人提出的一種目標(biāo)檢測 模型,算法主要由三部分構(gòu)成:特征提取、特征融合、預(yù)測結(jié)果。特征提取部分采用CSPDarknet53[15]的主干特征提取網(wǎng)絡(luò),對YOLOv3的Resblock-body的結(jié)構(gòu)進(jìn)行修改,使用CSPnet網(wǎng)絡(luò)結(jié)構(gòu),新的殘差網(wǎng)絡(luò)塊具有更高的語義信息。CSPResnet53的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,經(jīng)過多層卷積和池化的特征提取,網(wǎng)絡(luò)輸出三個特征層,分別是(13,13)、(26,26)、(52,52),隨后三個特征層進(jìn)入特征融合部分。

對于特征融合部分,在YOLOv3的特征金字塔網(wǎng)絡(luò)FPN的基礎(chǔ)上添加了SPP模塊。13×13的特征層將進(jìn)行三次卷積,輸入到SPP模塊中,同步進(jìn)行三次最大池化,最后進(jìn)行拼接,如圖1所示。YOLOv4的SPP-(Spatial Pyramid Pooling)[16]模塊是受SPP-net的啟發(fā)而來,能夠顯著地改善域尺寸,在提高上下特征提取的同時,不降低網(wǎng)絡(luò)的處理速度。在YOLOV4中,SPP可以有效避免神經(jīng)網(wǎng)絡(luò)對圖像區(qū)域卷積等操作后導(dǎo)致圖像中的目標(biāo)扭曲問題,同時可以有效解決卷積神經(jīng)網(wǎng)絡(luò)對圖像重復(fù)特征提取的問題,將主干網(wǎng)絡(luò)輸出的深層特征向淺層傳遞,大大提高產(chǎn)生先驗框的速度,節(jié)省了計算的時間。

圖1 SPP結(jié)構(gòu)圖

圖2 CSPDarknet53網(wǎng)絡(luò)結(jié)構(gòu)圖

預(yù)測部分采用的是CIOU Loss,預(yù)測部分的信息包括預(yù)測置信度得分score、先驗框尺寸及坐標(biāo)等,回歸函數(shù)包含了三個重要幾何因素:預(yù)測框中心點和長寬、交互比。YOLOHead預(yù)測層對先驗框的坐標(biāo)、長和寬等信息進(jìn)行調(diào)整,通過置信度得分篩選掉部分先驗框,最后采用距離交并比DIOU的非極大值抑制算法,輸出最終的預(yù)測結(jié)果。

3 改進(jìn)的地板表面缺陷檢測算法

3.1 YOLOv4的多尺度檢測改進(jìn)

在CSPDarknet53特征提取網(wǎng)絡(luò)輸出的特征層中,通過殘差網(wǎng)絡(luò)塊,對圖像進(jìn)行卷積處理,提取圖像特征,并在最后的三層,輸出三個特征層,分別是13×13、26×26、52×52,其中13×13的特征層進(jìn)入SPP模塊進(jìn)行最大池化處理,如圖3所示。26×26、52×52兩個模塊進(jìn)行卷積,先進(jìn)行上采樣,再進(jìn)行下采樣,最后進(jìn)行特征融合,拼接特征信息,低層網(wǎng)絡(luò)特征圖用來檢測小物體,高層網(wǎng)絡(luò)特征圖用來檢測具有大輪廓的物體。

圖3 改進(jìn)后YOLO-V4網(wǎng)絡(luò)圖

在實際的地板缺陷檢測中,有些缺陷,如黑點、小雜質(zhì)等目標(biāo)比較小,檢測效果較為不理想。因此本文改進(jìn)特征提取網(wǎng)絡(luò)的輸出,增加大小為(104,104)的特征層,特征提取網(wǎng)絡(luò)會將圖像分為104×104的網(wǎng)格,微小的缺陷將通過此特征層進(jìn)行預(yù)測,如圖3中加黑部分所示。

改進(jìn)后的網(wǎng)絡(luò)中(52,52),(26,26),(13,13)的三個特征層將通過卷積和Up-Sampling進(jìn)行特征融合,最后與(104,104)的特征層進(jìn)行拼接,拼接后將分為兩部分,一部分作為特征層的output輸出到Y(jié)OLO head進(jìn)行下一步的數(shù)據(jù)轉(zhuǎn)換,另一部分將進(jìn)行Downsampling的下采樣操作,將經(jīng)過下采樣的特征層與(52,52)的特征層進(jìn)行拼接,進(jìn)行卷積與特征融合,再做同樣的下采樣與下面的特征層融合,使特征提取的更加充分,減少信息的丟失。

3.2 基于數(shù)據(jù)集的先驗框改進(jìn)

YOLOv4是使用先驗框(anchors boxes)對目標(biāo)檢測的圖像進(jìn)行預(yù)測,初始的先驗框是由作者通過聚類COCO數(shù)據(jù)集得到的,初始的先驗框標(biāo)定了常見目標(biāo)的寬和高,在進(jìn)行預(yù)測的時候,可以獲取更加準(zhǔn)確的邊界框。在改進(jìn)前的YOLOv4中,每個特征層都有3個先驗框,三個特征層共有9個提前計算好的先驗框。由于地板上的缺陷大小不一,有的缺陷占據(jù)了整副圖像,有的缺陷只是很小的一個黑點,因此想要提高缺陷的識別率,必須要對先驗框的尺寸進(jìn)行優(yōu)化,對數(shù)據(jù)集的缺陷數(shù)據(jù)進(jìn)行聚類分析,使其更適合用來檢測地板表面缺陷。

標(biāo)準(zhǔn)的K-means聚類分析使用的是歐式測距法測量先驗框和臨近的目標(biāo)真實框之間的距離[17],這樣會導(dǎo)致目標(biāo)框越大,產(chǎn)生的誤差越大,因此引用新的計算方式[18]:

d(box,centroid)=1-IOU(box,centroid)

(1)

式中box代表數(shù)據(jù)集樣本中標(biāo)注的邊框;centroid代表聚類分析時作為聚類中心的邊框;d(box,centroid)代表數(shù)據(jù)集樣本中標(biāo)記的邊框到聚類中心的距離。

同時采用AvgIOU的方法來檢測聚類分析的結(jié)果的好壞,AvgIOU的計算方式

(2)

式中的IIOU(B,C)表示聚類的中心框與數(shù)據(jù)樣本的中心框的交互比;k代表聚類簇的數(shù)量;n代表樣本的總數(shù);nk代表第k個聚類中心樣本的個數(shù)。聚類結(jié)果如圖4所示,結(jié)果的先驗框為(16,23),(20,32),(22,49),(30,42),(34,97),(49,49),(49,401),(59,157),(119,301),(129,85),(272,388),(378,92)。

圖4 k-means聚類分析結(jié)果

3.3 地板表面缺陷檢測流程

按照地板的缺陷種類,建立好地板數(shù)據(jù)集。使用改進(jìn)后的K-means聚類算法進(jìn)行聚類分析,生成最優(yōu)的12種先驗框后,將先驗框和數(shù)據(jù)集按照8:1:1的比例作為訓(xùn)練集、驗證集、測試集傳入改進(jìn)后的YOLOv4網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,在改進(jìn)后的CSPDark-net53中進(jìn)行卷積池化、上采樣和下采樣等特征提取后,將特征層結(jié)果輸出,最后訓(xùn)練出loss值最低的模型文件。

訓(xùn)練出的模型使用mAP進(jìn)行檢測率和分類正確率計算,達(dá)到預(yù)期效果后進(jìn)行實際現(xiàn)場預(yù)測調(diào)試,設(shè)置好閾值score和交互比IOU后,使用現(xiàn)場獲取的地板原圖進(jìn)行檢測缺陷,檢測結(jié)果為缺陷類型、缺陷位置、缺陷大小,記錄結(jié)果,完成檢測。改進(jìn)后YOLOv4的地板表面缺陷檢算法如圖5所示。

圖5 地板表面缺陷檢算法流程圖

圖6 地板缺陷分類

4 實驗與結(jié)果分析

4.1 實驗平臺

本文的實驗配置為臺式計算機,CPU為intel(R) Core(TM) i7-11700、GPU為NVIDIA GeForce RTX 3060 12G、運行內(nèi)存為32G;64位Window 10操作系統(tǒng),開發(fā)環(huán)境為:Python3.7、Tensorflow-gpu2.4.0、cuda11.0。

4.2 數(shù)據(jù)集

實驗的圖像采集部分使用工業(yè)攝像頭對缺陷地板進(jìn)行拍攝,獲取了5200張圖像大小為416×416像素的缺陷圖像,其中訓(xùn)練集、驗證集、測試集的比例為8∶1∶1。因為地板的紋理看起來比較相近,故數(shù)據(jù)集中添加了1000張困難樣本既正常的地板圖像,添加困難樣本在訓(xùn)練的時候可以提高模型對缺陷的泛化能力,同時防止模型過擬合,分類后的地板數(shù)據(jù)集如圖7所示。缺陷標(biāo)記使用Labeling軟件進(jìn)行標(biāo)記,標(biāo)記結(jié)束后,會將缺陷名稱、缺陷框的左上和右下的坐標(biāo)信息儲存在xml文件中,訓(xùn)練模型的時候?qū)⑻崛∵@些信息進(jìn)行訓(xùn)練。

圖7 地板缺陷訓(xùn)練集

地板表面的缺陷種類有很多,傳統(tǒng)的分類有19種缺陷,如果想要訓(xùn)練多目標(biāo)的缺陷檢測模型,每一種目標(biāo)都需要龐大的數(shù)據(jù)集,但是實際的地板表面缺陷數(shù)據(jù)集中,部分缺陷目標(biāo)數(shù)據(jù)集較少,難以單獨作為目標(biāo)進(jìn)行訓(xùn)練。因此本文根據(jù)地板表面缺陷的特征、大小等信息進(jìn)行研究,對具有相似特征的缺陷劃分為一個大類,使用labeling標(biāo)記后進(jìn)行訓(xùn)練。

如圖6所示,本文將地板缺陷分為了黑點類、紋理類、亮點類共3類。

4.3 訓(xùn)練模型

初始的學(xué)習(xí)率為0.0001,最小學(xué)習(xí)率為0.00001,訓(xùn)練的batch_size為8,訓(xùn)練epoch為100,IOU的閾值(IOU Threshold)為0.4,動量參數(shù)monentum為0.953。

訓(xùn)練模型時,通過loss值的曲線可以查看訓(xùn)練的效果,如圖8所示。YOLOv4中計算loss使用的損失函數(shù)為binary_crossentropy,輸出張量與目標(biāo)張量之間的二進(jìn)制交叉熵。計算方式

圖8 訓(xùn)練loss值圖

(3)

4.4 實驗結(jié)果分析

為了評估地板缺陷檢測的結(jié)果,本文使用準(zhǔn)確率Precision、召回率Recall、分類準(zhǔn)確率Classification,作為模型檢測結(jié)果的評判標(biāo)準(zhǔn)。

(4)

(5)

(6)

式中:XTP代表模型預(yù)測缺陷正確的數(shù)量;XFP代表無缺陷但模型出缺陷的誤檢數(shù)量;XFN代表有缺陷但模型未檢測到的漏檢數(shù)量;XFC代表模型檢測出缺陷但分類出錯的錯檢數(shù)量。準(zhǔn)確率Precision表示了模型預(yù)測出所有的缺陷中,正確的缺陷所占的比例。召回率Recall代表在所有人工標(biāo)記的真實缺陷中,模型預(yù)測出正確缺陷所占的比例。分類準(zhǔn)確率Classification代表在模型檢測出所有缺陷中,分類正確的比例。

評估模型整體檢測效率使用mAP,將Preci-sion和Recall進(jìn)行接合,計算出三種缺陷的各自的mAP:黑點類檢測率為94%;紋理類檢測率為82%;亮點類檢測率為91%,整體的檢測率為89.07%。

再對網(wǎng)絡(luò)分類準(zhǔn)確率進(jìn)行測試,分類準(zhǔn)確率Classification使用300張驗證集進(jìn)行單獨測試,其中100張黑點類、100張紋理類、100張亮點類,將圖像進(jìn)行缺陷檢測,統(tǒng)計正確檢測XTP的數(shù)量、漏檢XFN的數(shù)量、誤檢XFC的數(shù)量,最后使用式(6)計算分類準(zhǔn)確率。實驗結(jié)果如表1所示。

表1 地板表面缺陷檢測分類準(zhǔn)確率

從表1和實驗結(jié)果中分析得出,黑點類的分類準(zhǔn)確率為93.91%;紋理類的分類準(zhǔn)確率為93.33%;亮點類的分類準(zhǔn)確率為96.73%。從實驗結(jié)果分析對比得知,紋理類的部分小劃痕和黑點的特征相似,會出現(xiàn)小部分誤檢情況,但并不影響整體的分類準(zhǔn)確率,最后三個缺陷的平均分類準(zhǔn)確率為94.62%,符合分類準(zhǔn)確率的要求。

4.5 實驗結(jié)果對比

通過實際檢測結(jié)果進(jìn)行網(wǎng)絡(luò)優(yōu)化對比,本文的網(wǎng)絡(luò)名稱定義為“改進(jìn)型-YOLOv4”,將使用初始的YOLOv4、YOLOv3、Faster R-CNN進(jìn)行對照實驗。取這三個網(wǎng)絡(luò),使用相同的訓(xùn)練集,學(xué)習(xí)率與訓(xùn)練批次等訓(xùn)練參數(shù)均與改進(jìn)型-YOLOv4設(shè)置相同。訓(xùn)練出模型后,使用mAP對各自的缺陷檢測率做一個評估,同時隨機選取地板表面圖片進(jìn)行缺陷檢測,對比檢測效果。

對三種算法的mAP進(jìn)行統(tǒng)計,如表2所示,YOLOv4的檢測率比YOLOv3的高,改進(jìn)型-YOLO-v4的mAP比改進(jìn)前提升了5.77%,其中黑點類和亮點類的小目標(biāo)檢測分別比改進(jìn)前提升了8.64%和7.22%。改進(jìn)后加入了(104,104)的特征層輸出,使得黑點、墨漬等不明顯的小目標(biāo)更容易被檢測到,因此改進(jìn)型-YOLOv4比未改進(jìn)前有更好的表現(xiàn)。

表2 各算法檢測率對比

兩個不同模型的地板表面缺陷檢測對比如圖9所示,對比分析得出,在小斑點、小黑漬等目標(biāo)的檢測效果上,改進(jìn)型-YOLOv4有著更好的效果,并且通過預(yù)測框大小的對比,可以看出經(jīng)過K-means聚類分析后的先驗框在預(yù)測目標(biāo)的時候表現(xiàn)更好,標(biāo)記缺陷的預(yù)測框尺寸更為精準(zhǔn)。綜上在地板表面缺陷檢測效果上,改進(jìn)型-YOLOv4檢測效果明顯好于未改進(jìn)的。

5 結(jié)束語

本文提出了一種基于改進(jìn)YOLOv4的地板表面缺陷檢測算法。在原有的YOLOv4算法基礎(chǔ)上,對CSPDarknet53的特征提取網(wǎng)絡(luò)輸出做了修改,增加了特征層的輸出,增加的特征層為(104,104)用于檢測小目標(biāo)缺陷。在主干網(wǎng)絡(luò)中,增加的特征層進(jìn)行上采樣融合和下采樣融合,使特征提取的更加充分,減少信息的丟失。同時在原有的先驗框聚類分析上,采用了自己的數(shù)據(jù)集進(jìn)行聚類分析,將先驗框的數(shù)量調(diào)整至12個,新的先驗框更符合真實缺陷框。通過實驗對比,改進(jìn)后的YOLOv4比改進(jìn)前的YOLOv4和YOLOv3檢測率要提升了,加強了對地板表面缺陷的檢測能力。接下來要對改進(jìn)后的YOLOv4的檢測速度進(jìn)行研究,并做出提升。

猜你喜歡
先驗特征提取準(zhǔn)確率
乳腺超聲檢查診斷乳腺腫瘤的特異度及準(zhǔn)確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準(zhǔn)確率比較探討
2015—2017 年寧夏各天氣預(yù)報參考產(chǎn)品質(zhì)量檢驗分析
基于無噪圖像塊先驗的MRI低秩分解去噪算法研究
基于Daubechies(dbN)的飛行器音頻特征提取
高速公路車牌識別標(biāo)識站準(zhǔn)確率驗證法
基于自適應(yīng)塊組割先驗的噪聲圖像超分辨率重建
Bagging RCSP腦電特征提取算法
基于平滑先驗法的被動聲信號趨勢項消除
先驗的廢話與功能的進(jìn)路