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

?

基于改進(jìn)的RetinaNet醫(yī)藥空瓶表面氣泡檢測

2020-12-04 01:54吳華運任德均呂義釗
關(guān)鍵詞:空瓶瓶頸氣泡

吳華運, 任德均, 呂義釗, 胡 彬, 付 磊, 邱 呂

(四川大學(xué)機(jī)械工程學(xué)院, 成都 610065)

1 引 言

醫(yī)藥空瓶在生產(chǎn)制造過程中表面會出現(xiàn)氣泡類缺陷.氣泡的存在不僅會影響產(chǎn)品外形包裝的美觀,而且會影響產(chǎn)品的銷售和使用.因此,對表面存在氣泡的空瓶進(jìn)行檢測在工業(yè)生產(chǎn)過程中有著重要意義.傳統(tǒng)的檢測往往由人工來完成,不僅工作量大、勞動強(qiáng)度高,而且容易受到檢測人員主觀因素的影響,導(dǎo)致檢測效率和檢測精度都不能夠保證.基于機(jī)器視覺的檢測系統(tǒng)由于檢測精度高等優(yōu)點已經(jīng)被廣泛的應(yīng)用在瓶體表面缺陷檢測領(lǐng)域,但在實際應(yīng)用中也遇到許多問題和挑戰(zhàn)[1].傳統(tǒng)特征提取算子提取的特征通常處于較低水平,在針對復(fù)雜的場景變化,如光照變換,透視失真,遮擋,物體變形等情況下,所提取的特征通常不足以應(yīng)對這種情況,因此許多算法在實際環(huán)境中并不適用.除此之外,醫(yī)藥空瓶在拍攝過程中,由于氣泡缺陷自身的透明特性和瓶身位置的不確定性,使其在圖片上成像并不明顯,給傳統(tǒng)的特征提取帶來很大的挑戰(zhàn).

深度學(xué)習(xí),特別是卷積神經(jīng)網(wǎng)絡(luò)[2],已經(jīng)被證明在提取圖像特征方面有著強(qiáng)大的能力,在各種監(jiān)督問題上都達(dá)到了最高的精度,如物體分類[3],目標(biāo)檢測[4],語義分割[5]等.相比傳統(tǒng)的空瓶表面缺陷檢測,深度學(xué)習(xí)提取的特征可以達(dá)到更好的效果,同時它不需要將特征提取和分類訓(xùn)練分開進(jìn)行,它可以在訓(xùn)練過程中實現(xiàn)自動提取最優(yōu)特征.近年來,深度學(xué)習(xí)已經(jīng)廣泛應(yīng)用與工業(yè)檢測,文獻(xiàn)[6]提出一種基于正樣本訓(xùn)練的新型缺陷檢測框架,他們將GAN和自動編碼器結(jié)合起來用于缺陷圖像重建,并使用LBP[7]進(jìn)行圖像局部對比以檢測缺陷.文獻(xiàn)[8]提出使用兩個FCN語義分割網(wǎng)絡(luò)來檢測物體表面缺陷,一個FCN用來粗略定位,另一個FCN用來精準(zhǔn)定位,實現(xiàn)了準(zhǔn)確地繪制缺陷輪廓,并達(dá)到實時檢測缺陷的效果.

本文針對傳統(tǒng)算法在醫(yī)用空瓶表面缺陷檢測中存在的局限性進(jìn)行了簡單的分析,首先提出將深度學(xué)習(xí)目標(biāo)檢測算法RetinaNet[9]應(yīng)用于空瓶表面缺陷檢測,并對RetinaNet網(wǎng)絡(luò)進(jìn)行改進(jìn),大大提高了檢測精度.本文主要工作如下.

(1) 對特征金字塔網(wǎng)絡(luò)進(jìn)行了改進(jìn).傳統(tǒng)的FPN僅將高層和底層輸出網(wǎng)絡(luò)簡單的合并,并未考慮對融合后特征圖的進(jìn)行語義特征的提取.針對這種情況,本文在特征融合過程中增加了膨脹卷積操作,增強(qiáng)對語義特征的提取,提高特征的判別性和魯棒性;

(2) 本文以RetinaNet作為基礎(chǔ)檢測算法,在訓(xùn)練和測試過程中,本文僅利用FPN網(wǎng)絡(luò)中P3,P4,P5和P6等四個階段的特征圖來分類和定位缺陷,并去除了原網(wǎng)絡(luò)中用來檢測較大目標(biāo)的網(wǎng)絡(luò)結(jié)構(gòu),降低網(wǎng)絡(luò)的計算量,加快模型的訓(xùn)練速度;

(3) 對ResNet50網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了優(yōu)化.在ResNet50骨干網(wǎng)絡(luò)中增加了Layer5,并使用膨脹瓶頸模塊替換Layer4和Layer5中的普通瓶頸模塊.這樣可以保證特征圖尺寸不變的基礎(chǔ)上增大特征圖的感受野.

2 基于RetinaNet的空瓶表面缺陷檢測

本文采用RetinaNet算法實現(xiàn)對醫(yī)藥空瓶表面缺陷的檢測,具體結(jié)構(gòu)如圖1所示.由圖可知,RetinaNet算法由ResNet網(wǎng)絡(luò)[10],F(xiàn)PN網(wǎng)絡(luò)[11]和分類定位子網(wǎng)絡(luò)構(gòu)成,ResNet網(wǎng)絡(luò)主要用來提取特征,F(xiàn)PN網(wǎng)絡(luò)將提取的特征圖進(jìn)行重新組合,實現(xiàn)特征的精細(xì)化提取,分類定位子網(wǎng)絡(luò)用于目標(biāo)的分類和定位.輸入圖片首先經(jīng)過ResNet網(wǎng)絡(luò)提取特征,然后通過FPN網(wǎng)絡(luò)實現(xiàn)高層特征和低層特征之間的融合.最后使用分類定位子網(wǎng)絡(luò)完成分類和定位.

圖1 RetinaNet 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 The structure of RetinaNet

在分類子網(wǎng)絡(luò)中,常用的損失函數(shù)為交叉熵?fù)p失函數(shù).在RetinaNet網(wǎng)絡(luò)中,為了解決正負(fù)樣本不平衡現(xiàn)象,引入?yún)?shù)α,用來控制正負(fù)樣本對總分類損失的貢獻(xiàn)權(quán)重,新?lián)p失函數(shù)定義如下[13].

CE(Pt)=-αtlog (pt)

(1)

其中,定義Pt為

(2)

式中,y∈{±1}為真實標(biāo)簽類別;p∈[0,1]為類標(biāo)簽y=1的概率值.

針對難例問題,在新?lián)p失函數(shù)中加入調(diào)節(jié)因子(1-pt)γ,其中,γ為聚焦參數(shù),因此,F(xiàn)ocal Loss損失函數(shù)定義為

FL(Pt)=-αt(1-pt)γlog (pt)

(3)

(4)

(5)

3 模型結(jié)構(gòu)

3.1 膨脹瓶頸模塊

隨著網(wǎng)絡(luò)層數(shù)的增加,使用標(biāo)準(zhǔn)卷積層將要訓(xùn)練大量的參數(shù),模型參數(shù)越多,運行所需要的消耗的資源越多.針對這種現(xiàn)象,常用的解決方法是將標(biāo)準(zhǔn)卷積層和1×1的卷積相結(jié)合,通過中間產(chǎn)生一個瓶頸層,達(dá)到減少參數(shù)和計算量,加快網(wǎng)絡(luò)模型的收斂,如圖2(a)所示[14].在本文中,為了擴(kuò)大特征圖的感受野,引進(jìn)了一種新的瓶頸模塊結(jié)構(gòu),即替換標(biāo)準(zhǔn)瓶頸模塊中的3×3標(biāo)準(zhǔn)卷積層為卷積核為3,膨脹系數(shù)為2的膨脹卷積,形成了膨脹瓶頸模塊[15],如圖2(b)所示.除此之外,在膨脹卷積模塊的shortcut的分支中加入1×1的卷積映射得到1×1卷積映射的膨脹瓶頸模塊,如圖2(c)所示.這種模塊結(jié)構(gòu)可以在不增加參數(shù)量的條件下,可以有效的擴(kuò)大特征圖的感受野.

圖2 網(wǎng)絡(luò)的基本結(jié)構(gòu)模塊

3.2 改進(jìn) FPN網(wǎng)絡(luò)

特征金字塔網(wǎng)絡(luò)(FPN)通過自上而下的路徑和橫向連接可以實現(xiàn)網(wǎng)絡(luò)特征提取更加精細(xì)化,網(wǎng)絡(luò)從單分辨率輸入圖像中可以有效地構(gòu)建一個豐富的多尺度的特征金字塔.FPN的設(shè)計思想就是同時利用低層特征和高層特征,在不同的層上同時進(jìn)行預(yù)測.因此其檢測過程是通過在原始圖像上先進(jìn)行深度卷積,然后分別在不同的特征層上面進(jìn)行預(yù)測.傳統(tǒng)FPN的低層特征和高層特征融合方式簡單地將高層語義特征和低層細(xì)節(jié)特征相加,但這種方式獲得的特征魯棒性不強(qiáng),都是一些弱特征.為了提取到尺度和形狀不變的強(qiáng)特征圖,本文在特征融合之后增加了特征增強(qiáng)模塊(Feature Enhance Module),通過采用具有不同擴(kuò)張率(r=1,3,5,7)的膨脹卷積來捕獲不同感受野的語義信息.然后讓不同膨脹卷積得到的特征與1×1卷積后特征組合起來,得到最終用于檢測的特征圖,如圖3所示.

圖3 改進(jìn)的FPN特征融合方式Fig.3 Improved FPN feature fusion

定義改進(jìn)后的FPN計算方式為

Pj=fconcat(fdilation(fadd(Cj,fup(Ci))))

(6)

式中,Ci表示高層特征圖;Cj表示低層特征圖;fup(·)表示特征圖Ci上采樣函數(shù);fAdd(·,·)表示特征融合函數(shù);fdilation(·)表示膨脹卷積操作;Pj表示經(jīng)過上采樣,特征融合以及膨脹卷積后得到的特征圖.

3.3 ResNet網(wǎng)絡(luò)

深度學(xué)習(xí)目標(biāo)檢測對骨干網(wǎng)絡(luò)的設(shè)計通常存在兩大難題:(1) 保持深度神經(jīng)網(wǎng)絡(luò)的空間分辨率會極大地消耗時間和內(nèi)存;(2) 減小下采樣因子將會導(dǎo)致有效感受野的減少.為了解決這兩個難題,本文的網(wǎng)絡(luò)結(jié)構(gòu)單元采用了DetNet[15]中的膨脹瓶頸模塊結(jié)構(gòu).除此之外,在使用原始RetinaNet算法對空瓶氣泡缺陷進(jìn)行研究中發(fā)現(xiàn),較小的氣泡缺陷在經(jīng)過多次降采樣后,特征逐漸消失.為了解決這種現(xiàn)象,本文對ResNet50進(jìn)行重新組合形成改進(jìn)后ResNet50網(wǎng)絡(luò),如圖4所示.

對于ResNet詳細(xì)改進(jìn)細(xì)節(jié)說明如下.(1) 將原始ResNet50中Layer3中的6個瓶頸層減小為3個,并在Layer4后面增加一個layer5,Layer5設(shè)置為3個膨脹瓶頸模塊.因此,改進(jìn)后ResNet從Layer1到Layer5的瓶頸模塊數(shù)依次為3,4,3,3,3;(2) 保持前3個Layer的瓶頸模塊類型不變,對Layer4和Layer5中的瓶頸模塊使用膨脹瓶頸模塊進(jìn)行替換,這樣可以有效地擴(kuò)大感受野.為了減小膨脹卷積帶來的時間損耗,本文設(shè)置Layer4和Layer5擁有和Layer3相同的輸入通道數(shù)(256個輸入通道);(3) 修改了ResNet50網(wǎng)絡(luò)每一階段輸出特征圖的空間尺寸.相比較于原始的ResNet50的輸出步長[2,4,8,16,32],修改后的ResNet的輸出步長為[2 ,4,8,16,16,32],保持Layer3和Layer4有著相同的特征圖輸出尺寸,有效地防止因下采樣而造成感受野的減小.

圖4 優(yōu)化后ResNet50網(wǎng)絡(luò)詳細(xì)結(jié)構(gòu)

4 實 驗

4.1 實驗設(shè)置

數(shù)據(jù)集:本文數(shù)據(jù)集為在線采集的瓶身氣泡缺陷圖片,對圖片缺陷使用LabelImg進(jìn)行標(biāo)注,對被標(biāo)注后的數(shù)據(jù)集進(jìn)行訓(xùn)練測試設(shè)置如表1所示,其中在訓(xùn)練設(shè)置中,訓(xùn)練集和驗證集均為帶有氣泡缺陷的圖片,而測試數(shù)據(jù)集中含有500張正常圖片.

表1 訓(xùn)練測試數(shù)據(jù)詳細(xì)設(shè)置

性能評價指標(biāo):為了評估檢測的效果,我們通過使用準(zhǔn)確率(Accuracy),漏檢率,誤檢率和均值平均精度(mAP)等性能評價指標(biāo)對檢測效果進(jìn)行了評估.

(7)

(8)

(9)

其中,TP表示被正確預(yù)測為缺陷數(shù)目;FP表示為錯誤預(yù)測為背景的數(shù)目;FN表示錯誤預(yù)測為缺陷的數(shù)目;TN表示正確預(yù)測背景的數(shù)目;AP表示平均精度,precision表示精準(zhǔn)率;recall表示召回率.

訓(xùn)練:本文實驗基于PyTorch實現(xiàn),所有實驗均使用Xavier初始化方法對網(wǎng)絡(luò)模型進(jìn)行初始化.輸入圖像大小為300×450×3,.訓(xùn)練過程中,采用多尺度訓(xùn)練方法,并對圖片進(jìn)行隨機(jī)旋轉(zhuǎn)、平移、剪切等數(shù)據(jù)增強(qiáng)操作.訓(xùn)練時使用隨機(jī)梯度下降優(yōu)化方法進(jìn)行迭代優(yōu)化,設(shè)置動量為momentum=0.9,權(quán)重退化率為weight-decay=0.000 5,輸入批次batchsize=16,初始學(xué)習(xí)率為learning rate=0.000 01,其中每經(jīng)過60次迭代后學(xué)習(xí)率下降為原來的十分之一,總共迭代次數(shù)為200次.

4.2 模型改進(jìn)前后結(jié)果對比

為了驗證改進(jìn)后的模型結(jié)構(gòu)對注塑空瓶表面氣泡檢測的有效性,本文分別對原始RetinaNet模型,RetinaNet加改進(jìn)后的FPN,RetinaNet加改進(jìn)后的ResNet網(wǎng)絡(luò)以及本文方法在測試集上的檢測效果進(jìn)行了對比,結(jié)果如表2所示.

表2 模型改進(jìn)前后檢測結(jié)果

由表2可知,在檢測精度方面,改進(jìn)后的模型相比改進(jìn)前的模型mAP提升接近2.4%,準(zhǔn)確度提高了1.6%,漏檢率和誤檢率分別降低到0.12%和0.16%;在檢測速度方面,改進(jìn)后的模型速度提升了14.18%.對比改進(jìn)前后的特征金字塔網(wǎng)絡(luò)的檢測結(jié)果,可以看出改進(jìn)后的特征金字塔網(wǎng)絡(luò)相較于原始特征金字塔網(wǎng)絡(luò)有更好特征提取能力.對比ResNet 50網(wǎng)絡(luò),改進(jìn)后的網(wǎng)絡(luò)也有較小幅度的提升.

本文算法在醫(yī)藥空瓶數(shù)據(jù)集上的部分檢測結(jié)果和原始RetinaNet檢測結(jié)果如圖5所示.

圖5 本文算法檢測結(jié)果和原始RetinaNet檢測結(jié)果對比第一行圖片為Ground Truth;第二行圖片為RetinaNet算法檢測結(jié)果;第三行圖片為本文算法檢測結(jié)果.Fig.5 Comparison of detection results between the algorithm in this paper and the original RetinaNetThe first row: Ground Truth; the second row: the detection results of RetinaNet; the third row: the detection results of ours.

由圖5可知,相較于原始RetinaNet網(wǎng)絡(luò),本文算法有更好的定位能力,尤其對于粘連氣泡缺陷.

4.3 不同目標(biāo)檢測模型檢測效果對比

為了進(jìn)一步驗證本文檢測算法對于醫(yī)藥空瓶表面氣泡缺陷檢測的有效性,本文通過將本文算法與當(dāng)前主流的目標(biāo)檢測算法Faster RCNN、SSD以及YOLOV3等算法進(jìn)行了對比,通過在醫(yī)藥空瓶氣泡數(shù)據(jù)集上對上述算法進(jìn)行訓(xùn)練和測試,結(jié)果如表3所示.由表3數(shù)據(jù)可知,相較于Faster RCNN、SSD和YOLOV3,本文提出的算法有更高的mAP和準(zhǔn)確率;在檢測速度上,本文算法優(yōu)于Faster RCNN和SSD算法,但略低于YOLOV3的檢測速度.

表3 不同模型檢測效果對比

5 結(jié) 論

本文使用深度學(xué)習(xí)中最先進(jìn)的目標(biāo)檢測算法RetinaNet對醫(yī)藥空瓶表面氣泡缺陷進(jìn)行了檢測.為了滿足工業(yè)檢測所需要的準(zhǔn)確度,本文先對原始特征金字塔網(wǎng)絡(luò)的特征融合過程進(jìn)行優(yōu)化,增加了語義特征提取模塊,有效地增強(qiáng)了對特征圖語義信息的提取和擴(kuò)大特征圖的感受野.然后,去掉特征金字塔網(wǎng)絡(luò)用于檢測大目標(biāo)的網(wǎng)絡(luò)層,從而減小網(wǎng)絡(luò)的參數(shù)量和降低訓(xùn)練過程中的計算消耗.最后,在ResNet網(wǎng)絡(luò)中添加了膨脹卷積瓶頸模塊,有效地提高了特征圖的感受野和特征的魯棒性.通過上述改進(jìn),在滿足檢測時間的條件下,檢測準(zhǔn)確率較未改進(jìn)網(wǎng)絡(luò)提升了1.60%,漏檢率降低到0.12%,誤檢率降低到0.16%.相較于傳統(tǒng)的檢測方法,本文提出的方法有較高的優(yōu)勢.

猜你喜歡
空瓶瓶頸氣泡
堵塞:綠色瓶頸如何威脅清潔能源業(yè)務(wù) 精讀
SIAU詩杭便攜式氣泡水杯
浮法玻璃氣泡的預(yù)防和控制對策
滿瓶不響空瓶響
分批換VS一次換
冰凍氣泡
在突破瓶頸中成長
買酒還瓶
動動腦,你能喝幾瓶?
再論校園足球發(fā)展的瓶頸