亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進(jìn)YOLOv4的電機(jī)端蓋缺陷檢測(cè)①

        2021-03-19 06:37:38萬(wàn)卓,葉明,劉
        關(guān)鍵詞:置信度尺度損失

        萬(wàn) 卓,葉 明,劉 凱

        (南京航空航天大學(xué) 機(jī)電學(xué)院,南京 210016)

        在現(xiàn)代化生產(chǎn)過(guò)程中,由于技術(shù)工藝水平、操作不當(dāng)?shù)纫蛩卦斐傻木T零件表面缺陷是很多重大安全事故的罪魁禍?zhǔn)?因此識(shí)別和檢測(cè)精鑄零件表面缺陷是一種非常重要的產(chǎn)品質(zhì)量控制手段.

        根據(jù)某企業(yè)實(shí)際的檢測(cè)要求,需要在生產(chǎn)線上在線檢測(cè)電機(jī)端蓋的側(cè)面裂紋缺陷,如圖1所示.電機(jī)端蓋是電動(dòng)機(jī)的核心零部件,起著支撐傳動(dòng)部分、確定轉(zhuǎn)子與定子的相對(duì)位置、保護(hù)電機(jī)內(nèi)部和導(dǎo)風(fēng)的作用,其質(zhì)量?jī)?yōu)劣將直接影響電機(jī)的可靠運(yùn)行和工作人員人身安全.該任務(wù)的難點(diǎn)體現(xiàn)于:① 側(cè)面裂紋目標(biāo)特征不明顯、形態(tài)多變且位置不固定,傳統(tǒng)的機(jī)器視覺(jué)算法難以解決;② 由于相機(jī)視野須覆蓋電機(jī)端蓋整個(gè)側(cè)面,導(dǎo)致待檢測(cè)的裂紋目標(biāo)相對(duì)整個(gè)圖片很小,屬于小目標(biāo)檢測(cè);③ 在機(jī)器視覺(jué)系統(tǒng)中,工業(yè)相機(jī)位置固定,采集的圖像的背景單一,不利于深度學(xué)習(xí)數(shù)據(jù)集的構(gòu)建.

        圖1 電機(jī)端蓋實(shí)物圖

        機(jī)器視覺(jué)系統(tǒng)中運(yùn)用深度學(xué)習(xí)目標(biāo)識(shí)別算法,可以解決很多傳統(tǒng)視覺(jué)算法難以解決的問(wèn)題.田曉杰等[1]提出了一種優(yōu)化的SSD 檢測(cè)方法,用DenseNet 網(wǎng)絡(luò)結(jié)構(gòu)替代VGG 網(wǎng)絡(luò)結(jié)構(gòu),從而優(yōu)化了SSD 檢測(cè)算法對(duì)小目標(biāo)的魯棒性,解決硅片隱裂檢測(cè)問(wèn)題,但是檢測(cè)速度較慢,不能滿足實(shí)時(shí)性.馬美榮等[2]基于RetianNet設(shè)計(jì)了一個(gè)目標(biāo)檢測(cè)器,在復(fù)雜背景下的檢測(cè)有極佳的表現(xiàn),解決了手機(jī)主板缺陷檢測(cè)的問(wèn)題,缺點(diǎn)是檢測(cè)器對(duì)外界環(huán)境變化的適應(yīng)性一般.目前常用的算法包括Faster R-CNN[3]、SSD[4]、YOLO 系列[5-9]等,其中YOLOv4是最優(yōu)秀的目標(biāo)檢測(cè)算法之一,其匯集了之前的眾多研究成果,達(dá)到了檢測(cè)精度和效率的最佳平衡,本文基于YOLOv4 進(jìn)行端蓋裂紋的檢測(cè),并從數(shù)據(jù)集構(gòu)建和損失函數(shù)兩個(gè)方面進(jìn)行一系列改進(jìn),使其在端蓋數(shù)據(jù)集上達(dá)到更高的檢測(cè)精度.

        1 數(shù)據(jù)集構(gòu)建

        1.1 圖像增強(qiáng)

        電機(jī)端蓋的側(cè)面特征主要包括光亮帶、撕裂帶和裂紋,如圖2所示,我們希望得到的零件能獲得100%的光亮帶,而實(shí)際生產(chǎn)中由于設(shè)備缺陷,很難得到完全的光亮帶,斷面上通常容易產(chǎn)生撕裂帶,但企業(yè)的質(zhì)檢標(biāo)準(zhǔn)認(rèn)為撕裂帶不影響零件的使用,只要不出現(xiàn)較深的裂紋,就認(rèn)為是合格產(chǎn)品,這無(wú)疑增加了檢測(cè)的難度.當(dāng)裂紋出現(xiàn)在撕裂帶的時(shí)候,特征極不明顯,勢(shì)必會(huì)影響后續(xù)的檢測(cè)過(guò)程.因此本文首先通過(guò)圖像增強(qiáng)的方式強(qiáng)化裂紋目標(biāo)的特征.

        圖2 端蓋側(cè)面拍攝圖

        直方圖均衡化是常用的圖像增強(qiáng)方式,其原理是將圖像的直方圖按照概率分布做一個(gè)簡(jiǎn)單的稀疏拉伸,如圖3(b)所示.但這樣的結(jié)果會(huì)導(dǎo)致變換后的圖像雖然對(duì)比度得到增強(qiáng),但是細(xì)節(jié)紋理部分缺失,同時(shí)圖片中大片暗背景被加亮很多,而其中少量的實(shí)際需要關(guān)注的目標(biāo)對(duì)比度反而沒(méi)有得到改善,如圖4(a).

        圖3 變換前后直方圖

        圖4 變換后結(jié)果圖

        針對(duì)這個(gè)問(wèn)題,本文使用一種限制對(duì)比度的直方圖均衡化(CHALE)算法[10,11],取得了較好的效果如圖4(b).算法流程如下:

        (1)將原圖像劃分為n個(gè)大小為x×y(本文中取13×13)的固定子塊;

        (2)對(duì)這n個(gè)固定子塊計(jì)算灰度直方圖Hi;

        (3)計(jì)算平均分配到每個(gè)灰度值的像素個(gè)數(shù):Navg=NxNy/Ngray其中,Nx是子區(qū)域x軸方向的像素?cái)?shù);Ny是子區(qū)域y 軸方向的像素?cái)?shù),Ngray是子區(qū)域中灰度級(jí)的數(shù)量;

        (4)計(jì)算剪切閾值:Nres=NclipNavg,Nclip設(shè)的剪切倍數(shù),即剪切閾值為平均分配到每個(gè)灰度值的像素個(gè)數(shù)的Nclip倍;

        (5)使用對(duì)應(yīng)的剪切閾值對(duì)每個(gè)子塊的灰度直方圖Hi進(jìn)行剪切,剪切下來(lái)的像素?cái)?shù)目重新分配到各直方圖的各灰度級(jí)中;

        (6)分別對(duì)剪切后的每個(gè)子區(qū)域的灰度直方圖進(jìn)行直方圖均衡化;

        (7)獲取每個(gè)子塊中心點(diǎn)的灰度值,將該點(diǎn)作為參考點(diǎn),采用雙線性插值的方法對(duì)圖像中的每個(gè)像素進(jìn)行灰度線性插值,最終得到的直方圖如圖3(c)所示.裂紋得到明顯區(qū)分,消除了周圍背景的干擾,同時(shí)不存在過(guò)度增強(qiáng)的問(wèn)題.

        1.2 圖像增強(qiáng)

        數(shù)據(jù)增強(qiáng)[12,13]的目的是擴(kuò)充數(shù)據(jù)集并增加輸入圖像的多樣性,從而使設(shè)計(jì)的目標(biāo)檢測(cè)模型具有更高的魯棒性和泛化性.端蓋缺陷檢測(cè)中,由于沒(méi)有公開的數(shù)據(jù)集可以利用,且數(shù)據(jù)通過(guò)固定位置的CCD 相機(jī)采集,導(dǎo)致采集的圖片背景單一,通過(guò)數(shù)據(jù)增強(qiáng)輔助構(gòu)建一個(gè)完善的數(shù)據(jù)集尤為重要.

        常用的數(shù)據(jù)增強(qiáng)方法有3 類:① 空間變換:尺寸變化、隨機(jī)切片、旋轉(zhuǎn)等;② 像素變化:改變飽和度、曝光量等;③ 信息變化:隨機(jī)擦除、添加噪聲等.改變飽和度和曝光量可以模擬工業(yè)現(xiàn)場(chǎng)環(huán)境的拍攝情況,如光源亮度衰減、光路失真和外界環(huán)境光變化等.如圖5(b)和圖5(c)所示.對(duì)圖像增加信噪比為0.98的椒鹽噪聲或高斯噪聲,模擬拍攝過(guò)程中產(chǎn)生的噪聲,并弱化高頻率特征防止模型過(guò)擬合,如圖5(d)所示.

        本文除了使用這兩個(gè)數(shù)據(jù)增強(qiáng)方法之外,對(duì)比了Mosaic 數(shù)據(jù)增強(qiáng)和CutMix 數(shù)據(jù)增強(qiáng).Mosaic是一種新的數(shù)據(jù)增強(qiáng)方法,該方法在圖片上隨機(jī)選取一個(gè)參考點(diǎn),過(guò)該點(diǎn)作水平和豎直線,將圖片分為4 個(gè)大小不同的部分,依次填充4 個(gè)訓(xùn)練圖片,如圖6(a)所示.CutMix 方法是將圖片中隨機(jī)大小的一部分區(qū)域裁剪掉,然后隨機(jī)填充訓(xùn)練集中的其他數(shù)據(jù)的區(qū)域像素值,如圖6(b)所示.

        圖5 數(shù)據(jù)增強(qiáng)效果圖

        圖6 Mosaic 數(shù)據(jù)增強(qiáng)和CutMix 數(shù)據(jù)增強(qiáng)對(duì)比

        在第4 節(jié)中,通過(guò)實(shí)驗(yàn)對(duì)比了Mosaic和CutMix數(shù)據(jù)增強(qiáng)在電機(jī)端蓋數(shù)據(jù)上的表現(xiàn),Mosaic 效果略好于CutMix,我們分析是由于電機(jī)端蓋數(shù)據(jù)集的特殊性造成的,電機(jī)端蓋數(shù)據(jù)是由固定位置相機(jī)采集,圖片背景相對(duì)固定,使用Mosaic 數(shù)據(jù)增強(qiáng)能帶來(lái)的更多的背景多樣性,另外,CutMix 可能會(huì)分割待檢目標(biāo),影響目標(biāo)完整性.

        最終結(jié)合多種數(shù)據(jù)增強(qiáng)方法,構(gòu)成了包含2000 張圖片的端蓋數(shù)據(jù)集,按6:2:2的比例劃分為訓(xùn)練集、驗(yàn)證集、測(cè)試集,并使用Colabeler 工具對(duì)數(shù)據(jù)集制作標(biāo)簽.

        2 基于改進(jìn)YOLOv4的端蓋裂紋識(shí)別算法

        2.1 YOLOv4

        YOLOv4 總體上由骨干網(wǎng)絡(luò)、頸部網(wǎng)絡(luò)和頭部網(wǎng)絡(luò)3 部分組成.骨干網(wǎng)絡(luò)采用CSPDarknet53,是在YOLOv3的Darknet53 基礎(chǔ)上引進(jìn)了CSPNet 塊思路,包含29 個(gè)卷積層,725×725的感受野[14,15],27.6 M 參數(shù),在速度和檢測(cè)精度上都有一定的提升.頸部網(wǎng)絡(luò)采用了空間金字塔池化(Spatial Pyramid Pooling,SPP)模塊和路徑聚合網(wǎng)絡(luò)(Path-Aggregation Neck,PAN).SPP 用于擴(kuò)寬模型的感受野,分離出更重要的上下文信息,同時(shí)不會(huì)導(dǎo)致模型推理速度的下降.PAN是一種比YOLOv3 中FPN 網(wǎng)絡(luò)更好的對(duì)不同的骨干層進(jìn)行參數(shù)聚合的方法,可以為之后的頭部層提供更豐富的信息.頭部網(wǎng)絡(luò)沿用了YOLOv3 中的基于錨(anchor)的頭部.YOLOv4 整體結(jié)構(gòu)圖如圖7所示.

        圖7 YOLOv4 結(jié)構(gòu)圖

        YOLOv4的主要?jiǎng)?chuàng)新點(diǎn)包括:① 使用了自對(duì)抗訓(xùn)練(Self -Adversarial Training,SAT)進(jìn)行數(shù)據(jù)增強(qiáng);② Mosaic 數(shù)據(jù)增強(qiáng);③ 在跨批次歸一化(Cross Batch Normal,CBN)的基礎(chǔ)上改進(jìn)得到跨最小批的歸一化(Cross mini-Batch Normal,CmBN)方法;④ 改進(jìn)PAN,把通道的連接方法從相加(Add)改為拼接(Concat);⑤ 修改空間注意力模塊(Spatial Attention Module,SAM),從逐空間改為逐點(diǎn).

        除此之外,YOLOv4 使用了大量改善模型的策略,包括使用Mish 激活函數(shù)、使用DropBlock 正則化方法、跨階段部分連接、改進(jìn)SOTA 方法使其更適合單GPU 訓(xùn)練、使用遺傳算法尋找最優(yōu)超參數(shù)等.

        2.2 YOLOv4 損失函數(shù)計(jì)算規(guī)則

        YOLOv4 中負(fù)責(zé)計(jì)算損失函數(shù)和輸出結(jié)果的YOLO層是基于錨(anchor)的,YOLO 層在3 個(gè)尺度下進(jìn)行預(yù)測(cè),每個(gè)尺度劃分為S×S個(gè)網(wǎng)格(對(duì)于608×608的輸入圖片,S分別為19、38、76),每個(gè)網(wǎng)格產(chǎn)生9 個(gè)候選框(anchor box),每個(gè)anchor box 會(huì)經(jīng)過(guò)網(wǎng)絡(luò)預(yù)測(cè)得到相應(yīng)的預(yù)測(cè)框(bounding box).通過(guò)人工標(biāo)注的目標(biāo)框稱為真實(shí)框(ground truth box),每個(gè)bounding box和ground truth box 包括目標(biāo)的中心坐標(biāo)x、y,寬高w、h,置信度,以及類別(本文數(shù)據(jù)集的類別數(shù)為1),同時(shí)每個(gè)box 負(fù)責(zé)對(duì)3 個(gè)anchor box 進(jìn)行回歸,因此在一個(gè)批次的一個(gè)尺度的計(jì)算中,輸出box的尺寸為(4+1+1)×3=18.前向運(yùn)算的過(guò)程中,根據(jù)bounding box和ground truth box的差異來(lái)計(jì)算損失函數(shù).

        YOLOv4的損失函數(shù)分為3 個(gè)部分,置信度損失、定位損失、分類損失.Bounding box 按照一定的規(guī)則被劃分為正樣本、負(fù)樣本和忽略樣本,對(duì)于正樣本,需要計(jì)算所有3 部分損失,對(duì)于負(fù)樣本,只需要計(jì)算置信度損失,因?yàn)樨?fù)樣本不負(fù)責(zé)目標(biāo),所以這個(gè)anchor box產(chǎn)生的bounding box的中心坐標(biāo)、寬高、分類都屬于無(wú)用信息,也就不需要計(jì)算這部分的損失函數(shù),但是置信度仍然重要,因?yàn)橹眯哦冗€可以表示這個(gè)anchor box產(chǎn)生的bounding box 中不包含對(duì)象,所以仍然需要計(jì)算置信度損失函數(shù).忽略樣本不需要計(jì)算損失函數(shù).

        YOLOv4 對(duì)正負(fù)樣本和忽略樣本的劃分規(guī)則和YOLOv3 略有不同,在YOLOv3 中,每個(gè)網(wǎng)格對(duì)應(yīng)的9 個(gè)anchor box 中與ground truth box的IoU(交并比)最大的那一個(gè)為正樣本,負(fù)責(zé)這個(gè)目標(biāo)的檢測(cè),一個(gè)目標(biāo)只對(duì)應(yīng)一個(gè)正樣本,其他的anchor box 如果和ground truth box的IoU 大于一個(gè)閾值(Ignore_Thresh),則為忽略樣本,否則為負(fù)樣本.而在YOLOv4 中,每個(gè)目標(biāo)可以對(duì)應(yīng)多個(gè)正樣本,只要IoU 大于設(shè)定的閾值(IoU_Thresh,默認(rèn)值為0.213)就作為正樣本,如果都小于閾值,IoU 最大的為正樣本.這個(gè)改進(jìn)在一定程度上減小了YOLOv3 中正負(fù)樣本不平衡的問(wèn)題,是YOLOv4權(quán)衡COCO 數(shù)據(jù)集中80 個(gè)類別后的解決策略,但在本文中的單類檢測(cè)+小目標(biāo)檢測(cè)問(wèn)題中,待檢測(cè)的裂紋目標(biāo)相對(duì)整幅圖片很小,大部分anchor box是不包含待檢測(cè)物體的,這樣會(huì)導(dǎo)致負(fù)樣本的貢獻(xiàn)會(huì)遠(yuǎn)大于正樣本的貢獻(xiàn),即沒(méi)有目標(biāo)的計(jì)算部分貢獻(xiàn)會(huì)大于有目標(biāo)的計(jì)算部分,從而網(wǎng)絡(luò)會(huì)傾向于預(yù)測(cè)單元格不含有物體,導(dǎo)致平均精度偏低.下面本文通過(guò)改進(jìn)損失的計(jì)算,來(lái)解決這種不平衡的問(wèn)題.

        2.3 改進(jìn)YOLOv4 損失函數(shù)

        YOLOv4的置信度損失:

        其中,S表示網(wǎng)格數(shù),每個(gè)尺度上的特征圖劃分為S2個(gè)網(wǎng)格,B表示每個(gè)網(wǎng)格產(chǎn)生的anchor box的個(gè)數(shù),和表示是否為正負(fù)樣本,對(duì)于正樣本,為1,為0,對(duì)于負(fù)樣本,為0,為1,表示該樣本真實(shí)置信度,取值為0 或1,表示該樣本預(yù)測(cè)置信度.

        考慮到在端蓋數(shù)據(jù)集中出現(xiàn)的正負(fù)樣本嚴(yán)重不平衡問(wèn)題,本文引進(jìn)焦點(diǎn)損失[16]的思想,在原YOLOv4置信度損失函數(shù)的基礎(chǔ)上,設(shè)置樣本平衡系數(shù)和調(diào)制系數(shù).首先于正樣本置信度損失前增加樣本平衡系數(shù)α,于負(fù)樣本置信度損失前增加系數(shù)(1?α),當(dāng)α取值在0.5 到1 之間時(shí),負(fù)樣本的計(jì)算權(quán)重降低、正樣本的計(jì)算權(quán)重增加,可以起到平衡正負(fù)樣本的作用.由于只有正樣本中包含物體,通過(guò)增加正樣本的計(jì)算權(quán)重,使得模型更傾向于預(yù)測(cè)單元格中含有目標(biāo),從而能夠提高檢出率.α的取值應(yīng)與正負(fù)樣本之間的不平衡度成正比,α越大,負(fù)樣本所占權(quán)重越低,平衡效果越明顯.另外,本文對(duì)正樣本增加調(diào)制系數(shù)對(duì)負(fù)樣本增加調(diào)制系數(shù)該系數(shù)可以解決訓(xùn)練樣本中過(guò)多簡(jiǎn)單樣本導(dǎo)致訓(xùn)練的結(jié)果對(duì)困難樣本識(shí)別率不高的問(wèn)題.在本文數(shù)據(jù)庫(kù)中,數(shù)據(jù)由固定相機(jī)采集,不可避免地會(huì)產(chǎn)生大量單一性樣本,這種單一性會(huì)導(dǎo)致大量易分的簡(jiǎn)單樣本,尤其是背景中的簡(jiǎn)單負(fù)樣本.增加調(diào)制系數(shù)后以及不同的γ取值對(duì)簡(jiǎn)單樣本和困難樣本的計(jì)算權(quán)重影響如圖8所示,其中橫坐標(biāo)x為預(yù)測(cè)置信度,對(duì)于正樣本x為,對(duì)于負(fù)樣本x為1?,由圖可見,預(yù)測(cè)置信度x接近1的簡(jiǎn)單樣本,增加調(diào)制系數(shù)后其loss減小很大,而預(yù)測(cè)置信度x較低的困難樣本增加系數(shù)后其loss減少較小,這樣就相當(dāng)于增加了困難樣本的計(jì)算權(quán)重,從而聚焦于困難樣本的學(xué)習(xí),提高最終的檢測(cè)精度.

        圖8 γ 取值的影響

        上述基于焦點(diǎn)損失的改進(jìn),對(duì)置信度損失從整體上起到了調(diào)優(yōu)的作用,并得到了理論上的解釋.但在應(yīng)用到端蓋數(shù)據(jù)集上,在多次調(diào)參之后,得到的平均精度的提升依然有限,如表1所示,焦點(diǎn)損失并不能很好適配于YOLOv4.由于YOLOv4是基于3 個(gè)尺度的組合預(yù)測(cè),我們分別拆分19×19、38×38、76×76 三個(gè)尺度,在計(jì)算置信度損失的時(shí)候增加正負(fù)樣本計(jì)數(shù)器,在訓(xùn)練過(guò)程中統(tǒng)計(jì)80 次迭代中每個(gè)尺度下的平均正負(fù)樣本數(shù),結(jié)果如圖9所示.

        統(tǒng)計(jì)發(fā)現(xiàn),不同尺度下正負(fù)樣本比不同,如果使用相同的焦點(diǎn)損失系數(shù)α和γ,對(duì)每個(gè)尺度下起到的效果并不相同,因此,難以得到一組最優(yōu)的參數(shù)值.由此,本文提出了更適應(yīng)YOLO的多尺度焦點(diǎn)損失,以38×38 尺度為參考點(diǎn),對(duì)19×19和76×76的焦點(diǎn)損失系數(shù)上增加不同的尺度平衡系數(shù)β,β的取值根據(jù)3 個(gè)尺度下的正負(fù)樣本比自適應(yīng)選取,以此來(lái)平衡不同尺度下不同的正負(fù)樣本比.最終,得到改進(jìn)后的置信度損失為:

        其中,N1、N2、N3為3 個(gè)尺度下的正負(fù)樣本比.置信度損失在引進(jìn)焦點(diǎn)損失策略后,使用多尺度平衡改進(jìn)和不改進(jìn)在不同參數(shù)下的表現(xiàn)如表1所示.改進(jìn)后,在α=0.6和γ=2的時(shí)候取得了最高的AP 值,超過(guò)了未進(jìn)行多尺度改進(jìn)時(shí)的最高值.根據(jù)經(jīng)驗(yàn)γ越大,α參的值要越小一點(diǎn),不恰當(dāng)?shù)膮?shù)可能會(huì)導(dǎo)致梯度爆炸,AP 值為0,表1中α=0.8和γ=1 時(shí),改進(jìn)前后AP 值均為0,即為訓(xùn)練失敗.

        表1 改進(jìn)前后的不同參數(shù)情況AP 對(duì)比(%)

        圖9 3 個(gè)尺度下正負(fù)樣本數(shù)

        YOLOv4的分類損失計(jì)算的是錯(cuò)誤分類的損失,計(jì)算公式如下:

        YOLOv4的定位損失包括中心坐標(biāo)損失、寬高損失.IoU 損失是目標(biāo)檢測(cè)廣泛使用的定位損失,計(jì)算公式如下:

        其中,B為預(yù)測(cè)框,Bgt為真實(shí)框.基于IoU 損失的改進(jìn)有很多,Rezatofighi 等[17]提出GIoU 損失,在IoU 損失基礎(chǔ)上增加了C 檢測(cè)框(C 檢測(cè)框是包含了檢測(cè)框和真實(shí)框的最小矩形框),解決了檢測(cè)框和真實(shí)框沒(méi)有重疊的問(wèn)題.但是當(dāng)真實(shí)框和檢測(cè)框之間出現(xiàn)包含關(guān)系的時(shí)候,GIoU和IoU 效果相同.Zheng 等[18]針對(duì)這一缺點(diǎn),提出DIoU 損失,將預(yù)測(cè)框和真實(shí)框都包含進(jìn)C 檢測(cè)框,但是DIoU 計(jì)算的不是框之間的交并,而是計(jì)算的每個(gè)檢測(cè)框之間的歐氏距離.本文的改進(jìn)算法中使用CIoU 損失[18]來(lái)計(jì)算定位損失,在DIoU 損失的基礎(chǔ)上增加了寬高比的懲罰項(xiàng),這樣預(yù)測(cè)框就會(huì)更加的符合真實(shí)框.CIoU 損失的計(jì)算公式如下:

        其中,b、bgt是B、Bgt的中心點(diǎn),ρ為歐氏距離,c為能同時(shí)覆蓋B和Bgt的最小包圍框的對(duì)角線長(zhǎng)度,w和h為預(yù)測(cè)框的寬和高,wgt和hgt為真實(shí)框的寬和高.

        最終改進(jìn)后的損失函數(shù)由增加自適應(yīng)多尺度焦點(diǎn)損失的置信度損失、使用CIoU的定位損失和默認(rèn)的分類損失組成,并通過(guò)加權(quán)系數(shù)k1和k2對(duì)3 部分進(jìn)行加權(quán)融合,損失函數(shù)為:

        本文中k1和k2的取值分別為1和0.07.

        2.4 利用K-means 算法初始化anchor box

        端蓋數(shù)據(jù)集中的裂紋目標(biāo)多數(shù)為線狀,如果使用默認(rèn)的anchor box 尺寸,可能會(huì)導(dǎo)致訓(xùn)練起始階段由于實(shí)際目標(biāo)尺寸和設(shè)定的anchor box 尺寸差異過(guò)大,損失值的下降方向偏離甚至產(chǎn)生梯度爆炸.在訓(xùn)練之前,使用K-means 算法對(duì)標(biāo)注出來(lái)的目標(biāo)框做聚類,用聚類的結(jié)果來(lái)初始化anchor box 大小,可以有效的避免上述情況,同時(shí)可以提高模型的學(xué)習(xí)效率,加快收斂速度,相當(dāng)于在訓(xùn)練之前,為模型提供了先驗(yàn)知識(shí).

        YOLOv4 網(wǎng)絡(luò)中對(duì)于每個(gè)網(wǎng)格的預(yù)測(cè)需要9 個(gè)候選框,因此類簇個(gè)數(shù)k取9.K-means 算法對(duì)初始值是比較敏感的,對(duì)于同樣的k值,選取的初始類簇中心不同,會(huì)影響算法的聚類效果和迭代的次數(shù),經(jīng)驗(yàn)表明,初始的類簇中心之間的相互距離越遠(yuǎn),聚類效果越好[19],以此為出發(fā)點(diǎn),本文通過(guò)以下過(guò)程選取初始的類簇中心點(diǎn):

        1)在標(biāo)注的數(shù)據(jù)集中隨機(jī)選取一個(gè)初始框作為初始中心,遍歷數(shù)據(jù)集中所有點(diǎn)x,計(jì)算它與已選擇的類簇中心的距離D(x);

        2)選取D(x)最大的點(diǎn)作為下一個(gè)中心點(diǎn),遍歷數(shù)據(jù)集中剩余點(diǎn),計(jì)算每個(gè)點(diǎn)與選取的最近的類簇中心的距離D(x);

        3)重復(fù)步驟2),直到選出9 個(gè)類簇中心,將這些值作為K-means 算法的初始類簇中心.

        最終通過(guò)K-means 算法對(duì)端蓋數(shù)據(jù)集做聚類分析,得到9 個(gè)候選框大小分別為:21×17,41×13,35×19,42×16,54×13,48×22,73×22,97×19,90×23.

        3 實(shí)驗(yàn)與結(jié)果分析

        3.1 實(shí)驗(yàn)環(huán)境

        硬件方面,整個(gè)電機(jī)端蓋缺陷檢測(cè)系統(tǒng)由檢測(cè)線體、CCD 相機(jī)、工業(yè)光源、零件工裝、光學(xué)支架以及工控機(jī)組成,如圖10所示.其中光源選用直徑120 mm穹頂光源,與相機(jī)同軸,可以對(duì)相機(jī)視野中物體進(jìn)行均勻照射.CCD 相機(jī)安裝于光學(xué)支架上,搭配8 mm 鏡頭,垂直拍攝電機(jī)端蓋側(cè)面,通過(guò)調(diào)整光學(xué)支架調(diào)節(jié)相機(jī)、光源與零件之間的距離,使得相機(jī)視野覆蓋整個(gè)端蓋側(cè)面,且清晰成像.

        軟件方面,環(huán)境配置如下:Intel i5 8300 處理器,16 GB 內(nèi)存,NVIDIA GeForce GTX 1060 顯卡,OpenCV版本為3.3.0,使用Cuda8.0和Cudnn5.1 對(duì)訓(xùn)練過(guò)程進(jìn)行加速.

        網(wǎng)絡(luò)參數(shù)配置如下:迭代次數(shù)為10 000,初始學(xué)習(xí)率為0.002,采用逐步遞減策略[20],訓(xùn)練到一定次數(shù)后分兩次減小為原學(xué)習(xí)率的10%.動(dòng)量為0.95,權(quán)重衰減為0.005.

        圖10 電機(jī)端蓋檢測(cè)系統(tǒng)構(gòu)成

        3.2 實(shí)驗(yàn)結(jié)果對(duì)比分析

        使用不同改進(jìn)策略后,進(jìn)行多組對(duì)比實(shí)驗(yàn),得到的檢測(cè)結(jié)果如表2所示.其中,√表示在該組實(shí)驗(yàn)中使用了對(duì)應(yīng)策略,FCL 表示使用焦點(diǎn)損失+CIoU的加權(quán)融合的損失函數(shù),MFCL 表示在FCL 基礎(chǔ)上增加自適應(yīng)多尺度焦點(diǎn)損失的改進(jìn).

        表2 使用不同改進(jìn)策略檢測(cè)結(jié)果

        應(yīng)用本文的改進(jìn)策略后,平均檢測(cè)精度均獲得了一定程度的提高.使用CutMix 數(shù)據(jù)增強(qiáng)或者M(jìn)osaic數(shù)據(jù)增強(qiáng)后獲得了最大的提升,可見,深度學(xué)習(xí)是一種數(shù)據(jù)驅(qū)動(dòng)的方法,對(duì)于沒(méi)有公開數(shù)據(jù)集可以使用的工業(yè)場(chǎng)景,使用合適的數(shù)據(jù)增強(qiáng)方法構(gòu)架一個(gè)完善的數(shù)據(jù)集是成功檢測(cè)的重要環(huán)節(jié).

        使用自適應(yīng)多尺度焦點(diǎn)損失+CIoU的加權(quán)融合的損失函數(shù)后,AP 值提升了2.7%,改進(jìn)損失函數(shù)前后的損失值曲線如圖11所示.實(shí)驗(yàn)證明,這樣的改進(jìn),對(duì)于本文中的小目標(biāo)+單類檢測(cè)的場(chǎng)景十分有效.

        最終的識(shí)別結(jié)果如圖12所示,檢測(cè)的AP 值為95.8%,單張圖片檢測(cè)時(shí)間為48 ms,滿足工程應(yīng)用的精度和速度要求.

        圖11 損失值曲線

        圖12 識(shí)別結(jié)果圖

        使用本文中數(shù)據(jù)增強(qiáng)后的數(shù)據(jù)集,在不同的算法模型下的檢測(cè)效果如表3所示.從實(shí)驗(yàn)結(jié)果可以看出,使用two-stage 網(wǎng)絡(luò)結(jié)構(gòu)的Faster-RCNN 算法檢測(cè)速度較慢,其通過(guò)RPN 網(wǎng)絡(luò)推薦候選框,這一過(guò)程耗時(shí)較長(zhǎng),難以滿足工業(yè)場(chǎng)景應(yīng)用中的實(shí)時(shí)性要求.而onestage 算法中,結(jié)合了多策略的YOLOv4 算法達(dá)到了檢測(cè)精度和速度的最佳平衡,檢測(cè)精度和速度都優(yōu)于SSD 算法,而同樣使用焦點(diǎn)損失思想的RetineNet 雖然實(shí)現(xiàn)了較高的檢測(cè)精度,但代價(jià)是增加了檢測(cè)時(shí)間.本文通過(guò)優(yōu)化損失函數(shù)和優(yōu)化anchor box 初始值等改進(jìn),將YOLOv4 對(duì)于小目標(biāo)的檢測(cè)精度進(jìn)一步突破,同時(shí)幾乎沒(méi)有增加檢測(cè)時(shí)間,在同類型場(chǎng)景下的具有一定的工程應(yīng)用價(jià)值.

        4 結(jié)語(yǔ)

        本文基于改進(jìn)YOLOv4 算法實(shí)現(xiàn)了一個(gè)電機(jī)端蓋裂紋缺陷檢測(cè)系統(tǒng),首先針對(duì)目標(biāo)特征不明顯、訓(xùn)練數(shù)據(jù)少且背景單一的問(wèn)題,從圖像增強(qiáng)和數(shù)據(jù)增強(qiáng)兩個(gè)方面系統(tǒng)地構(gòu)建端蓋數(shù)據(jù)集.之后,本文介紹了YOLOv4 網(wǎng)絡(luò)框架并著重解釋了損失函數(shù)的計(jì)算規(guī)則,同時(shí)創(chuàng)造性地提出了自適應(yīng)多尺度焦點(diǎn)損失+CIoU 損失的加權(quán)融合的改進(jìn)損失函數(shù),并從理論和實(shí)驗(yàn)兩個(gè)方面證明了改進(jìn)損失函數(shù)的有效性.另外,在訓(xùn)練之前,針對(duì)裂紋目標(biāo)多為線狀的特點(diǎn),使用K-means 算法初始化anchor box,加快了收斂速度并提高了平均精度.

        最終實(shí)驗(yàn)結(jié)果表明,使用改進(jìn)策略和改進(jìn)算法后取得了95.8%的AP 值,相較于改進(jìn)前提升9.7%.不足之處在于改進(jìn)算法引入了更多的參數(shù),參數(shù)的調(diào)優(yōu)需要耗費(fèi)一定的時(shí)間.

        表3 不同網(wǎng)絡(luò)模型的檢測(cè)效果對(duì)比

        猜你喜歡
        置信度尺度損失
        少問(wèn)一句,損失千金
        硼鋁復(fù)合材料硼含量置信度臨界安全分析研究
        胖胖損失了多少元
        財(cái)產(chǎn)的五大尺度和五重應(yīng)對(duì)
        玉米抽穗前倒伏怎么辦?怎么減少損失?
        正負(fù)關(guān)聯(lián)規(guī)則兩級(jí)置信度閾值設(shè)置方法
        宇宙的尺度
        太空探索(2016年5期)2016-07-12 15:17:55
        一般自由碰撞的最大動(dòng)能損失
        置信度條件下軸承壽命的可靠度分析
        軸承(2015年2期)2015-07-25 03:51:04
        9
        日韩av无码成人无码免费| 亚洲av熟女少妇一区二区三区| 亚洲日本一区二区三区四区| 午夜精品久久久久久久无码| 国产成人综合在线视频| 国产精品国产三级国产专区5o| 一区二区三区少妇熟女高潮| 国产一区二区三区激情视频 | 亚洲欧洲无码av不卡在线| 9久9久女女热精品视频免费观看| 99视频偷拍视频一区二区三区| 国产情侣一区二区三区| 国产成人无码免费视频在线| 久久青草免费视频| 国产大全一区二区三区| 亚洲精品粉嫩美女一区| 粉嫩虎白女毛片人体| 精品一区二区av天堂| 国产一区二区三区探花| 亚洲图片自拍偷图区| 看国产黄大片在线观看| 红杏性无码免费专区| 日本老熟妇五十路一区二区三区| 四虎国产精品永久在线| 精品亚洲aⅴ在线观看| 久久青青草视频免费观看| 美女扒开内裤让我捅的视频| 影音先锋中文字幕无码资源站| 亚洲第一网站免费视频| av网址大全在线播放| 在线日本看片免费人成视久网| 日本无码人妻波多野结衣| 日韩欧美在线播放视频| 美女狂喷白浆网站视频在线观看| 欧美老熟妇乱子| 人人妻人人爽人人做夜欢视频九色| 亚洲AV日韩AV高潮喷潮无码| 最新中文字幕日韩精品| 日韩毛片免费无码无毒视频观看| 91短视频在线观看免费| 日本精品中文字幕人妻|