晉成龍 沈云 萬鑫怡
(中水淮河規(guī)劃設(shè)計(jì)研究有限公司 安徽省合肥市 230601)
近年來隨著深度學(xué)習(xí)在計(jì)算機(jī)視覺領(lǐng)域的不斷突破,很多學(xué)者研究的一系列深度學(xué)習(xí)目標(biāo)檢測(cè)算法成果(如R-CNN(Region-Convolutional Neural Networks系 列)[5],SSD(SingleShotMultiBox Detector)系列[6]),YOLO(You Only Look Once)系列[7],廣泛應(yīng)用于汽車、醫(yī)療、船舶、電力等行業(yè)?;谏疃葘W(xué)習(xí)的絕緣子目標(biāo)檢測(cè),檢測(cè)結(jié)果均是用矩形框標(biāo)記絕緣子區(qū)域,存在諸如背景和絕緣子不能準(zhǔn)確區(qū)分,并且密集分布的絕緣子難以分離的問題,較難進(jìn)一步提高故障檢測(cè)精度[1–4]。在此背景下,有相關(guān)學(xué)者提出特定領(lǐng)域的深度學(xué)習(xí)定向識(shí)別算法,以此研究一種高精度輪廓提取算法用于復(fù)雜背景下絕緣子串的檢測(cè)具有重要意義。
像19歲時(shí)出行一樣,住別具特色的青旅,同各國驢友交流,我請(qǐng)他們喝酒,他們會(huì)給我一支煙。和19歲不一樣的是,不會(huì)再有太多的話要對(duì)陌生的人說,也不會(huì)喝醉。成長,終究讓人學(xué)會(huì)自制。期間林全打電話給我,我不愿接,發(fā)短信給我問我去了哪里,我也不愿回復(fù),直接刪掉。
本文在yolov5目標(biāo)檢測(cè)算法的基礎(chǔ)上添加語義分割分支,提出一種基于深度特征融合的yolov5-segnet算法進(jìn)行航拍絕緣子串輪廓提取。該算法如圖1所示主要由目標(biāo)檢測(cè)部分和語義分割部分組成,目標(biāo)檢測(cè)部分選用yolov5算法來進(jìn)行絕緣子串檢測(cè),語義分割部分通過融合區(qū)域特征,并且添加注意力模塊,以生成絕緣子區(qū)域的語義分割圖,最后使用OpenCV函數(shù)庫中的輪廓提取函數(shù)繪出巡檢圖像中絕緣子串的輪廓。
圖1:本文網(wǎng)絡(luò)算法訓(xùn)練流程圖
本文yolov5目標(biāo)檢測(cè)模塊,通過特征提取部分和多尺度預(yù)測(cè)部分完成絕緣子目標(biāo)特征提取及初定位。在特征提取部分,首先將輸入的絕緣子串圖像尺寸統(tǒng)一為608×608;然后用Focus結(jié)構(gòu)和CSPDarkNet-53作為骨干網(wǎng)絡(luò)進(jìn)行特征提??;最后,獲得每個(gè)深度絕緣子串圖像的特征張量,并將這些張量用于絕緣子串的檢測(cè)。結(jié)合絕緣子串的目標(biāo)檢測(cè)過程,將基于yolov5的絕緣子檢測(cè)架構(gòu)進(jìn)行可視化處理,另外,為了更加細(xì)化的提取圖像特征,本文對(duì)yolov5算法中的Pooling層(池化層)進(jìn)行改進(jìn)。yolov5算法中原本使用max-pooling(最大池化),一定程度上起到了很好的降維作用,但同時(shí)也丟失了大量的細(xì)節(jié)特征,故本文用動(dòng)態(tài)k-max pooling替代max pooling,動(dòng)態(tài)k-max pooling則是抽取特征中最大的前k個(gè)值,并且保留了他們的順序。同時(shí),這里取k的個(gè)數(shù)是動(dòng)態(tài)變化的,改進(jìn)后可為后續(xù)步驟多保留一些特征信息。
具體動(dòng)態(tài)函數(shù)公式如式(1):
其中l(wèi)表示當(dāng)前卷積層數(shù),L代表模型中卷積層總數(shù),ktop表示最頂層卷積層的pooling操作的k值。
(1)設(shè)置1個(gè)feature map的中心點(diǎn),每一個(gè)中心點(diǎn)對(duì)應(yīng)1個(gè)聚類中心。
午夜前,懸崖上空的銀河將會(huì)呈現(xiàn)出最美的狀態(tài),國際空間站會(huì)在凌晨1∶40從我們頭頂掠過,出現(xiàn)的時(shí)間僅有兩分鐘。
上下層級(jí)的特征融合可有效提取語義特征,由于圖像中絕緣子的尺寸都不相同,為了能讓網(wǎng)絡(luò)準(zhǔn)確的分割出不同尺寸的絕緣子,充分利用不同尺寸特征圖不同感受野的特性,相對(duì)大的感受野的特征圖更關(guān)注絕緣子的語義信息,相對(duì)小的感受野更關(guān)注絕緣子的細(xì)節(jié)信息。yolov5目標(biāo)檢測(cè)階段在三個(gè)尺度上進(jìn)行定位后,依靠置信度對(duì)目標(biāo)區(qū)域進(jìn)行篩查,提取出置信度大于0.5的特征區(qū)域的邊框坐標(biāo)信息,將其還原到原圖后與標(biāo)簽坐標(biāo)進(jìn)行非極大值抑制(NMS,Non-Maximum Suppression)保留最優(yōu)的特征區(qū)域,然后通過語義分割分支提取出不同層的特征區(qū)域進(jìn)行3×3的卷積操作后進(jìn)行上采樣,將不同大小的特征圖處理為相同尺度進(jìn)行concat,使融合的特征圖包含充分的語義信息和細(xì)節(jié)信息。該操作有利于訓(xùn)練的穩(wěn)定性,增加網(wǎng)路的泛化性。
2.2.1 注意力機(jī)制
本文對(duì)yolov5輸出特征圖進(jìn)行目標(biāo)特征提取之后引入通道注意力模塊以精煉特征,強(qiáng)化貢獻(xiàn)度大的目標(biāo)特征圖?;谕ǖ乐g的依賴關(guān)系,實(shí)現(xiàn)通道注意力建模。從語義級(jí)別學(xué)習(xí)特征之間的關(guān)聯(lián),優(yōu)化特征,激活與目標(biāo)更相關(guān)的通道特征,從而消除冗余特征并獲得更加簡潔精確的特征表達(dá)。將輸入的特征圖,分別經(jīng)過基于寬度和高度的最大池化和平均池化操作,生成不同空間信息的特征表示,然后經(jīng)過共享網(wǎng)絡(luò)特征感知機(jī)(MPL)生成注意力特征圖,最后通過逐像素相加操作融合兩個(gè)輸出特征生成最終的通道注意力特征圖。空間注意力機(jī)制通過構(gòu)建不同位置目標(biāo)特征圖的相互關(guān)系對(duì)通道注意力進(jìn)行補(bǔ)充,將通道注意力模塊輸出的特征圖進(jìn)行concat操作之后作為本模塊的輸入特征圖。
2.2.2 自適應(yīng)上采樣訓(xùn)練策略
實(shí)驗(yàn)的評(píng)估指標(biāo)包括精確率(precision)、召回率(recall)、精確率與召回率的加權(quán)調(diào)和平均F1、重疊度IOU共四個(gè)評(píng)價(jià)指標(biāo)。計(jì)算式分別為:
語義分割分支是首先通過提取目標(biāo)檢測(cè)階段輸出的目標(biāo)區(qū)域特征,將其進(jìn)行相應(yīng)的卷積和上采樣操作統(tǒng)一尺寸并且進(jìn)行concat,其次添加不同的注意力機(jī)制,通道注意力機(jī)制(channel attention,CA)和空間注意力機(jī)制(spatial attention, SA)突出重要的特征信息表達(dá),優(yōu)化語義分割精度以實(shí)現(xiàn)絕緣子區(qū)域的語義分割。
(2)求出每一個(gè)樣本與中心點(diǎn)之間的距離,距離公式如下所示:
孩子的年齡和心智有其年齡段的特點(diǎn),不要過分強(qiáng)調(diào)一致性,不要和別的孩子硬性地比較,而要鼓勵(lì)自己的孩子成為他希望成為的那種人——“雖然和高考狀元不同,但媽媽認(rèn)為你同樣是可愛的”,這是在打好孩子的心理基礎(chǔ)。
其中,b(xi)、b(yi)為第i個(gè)樣本的橫、縱坐標(biāo),c(xi)、c(yi)為第i個(gè)中心點(diǎn)的橫、縱坐標(biāo)。
(3)求出每個(gè)樣本到中心點(diǎn)距離的均值,如式所示:
(4)迭代更新聚類中心,直到聚類中心不再發(fā)生變化。
損失函數(shù)的選擇是卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中的重要的一部分,通過梯度下降算法將損失函數(shù)減小,使網(wǎng)絡(luò)逐漸接近最優(yōu)參數(shù),從而使神經(jīng)網(wǎng)絡(luò)達(dá)到較好的性能,本文定義整個(gè)網(wǎng)絡(luò)的訓(xùn)練損失函數(shù)lys由五個(gè)部分組成,如式(4):
微電子技術(shù)是建立在以集成電路為核心,在超大規(guī)模集成電路的背景下發(fā)展起來的新技術(shù)。該技術(shù)由電路設(shè)計(jì)、工藝設(shè)計(jì)、材料制備、器件物理等技術(shù)構(gòu)成,其特點(diǎn)是體積小、重量輕、可靠性高、工作速度快。微電子技術(shù)對(duì)電子信息產(chǎn)生巨大影響。
目標(biāo)檢測(cè)階段:目前主流網(wǎng)絡(luò)模型在進(jìn)行網(wǎng)絡(luò)訓(xùn)練時(shí)普遍會(huì)選擇Adam優(yōu)化器,但仿真實(shí)驗(yàn)表明在迭代0-20次時(shí),基于Adam優(yōu)化器的檢測(cè)過程,損失曲線有一個(gè)較大的波動(dòng),這個(gè)波動(dòng)在數(shù)次調(diào)參后并沒有改善;本文在后期的實(shí)驗(yàn)中選擇了SGD優(yōu)化器,損失曲線的波動(dòng)基本消失??梢奡GD算法可有效解決損失波動(dòng)問題。
其中TP表示絕緣子預(yù)測(cè)正確的個(gè)數(shù),F(xiàn)P表示背景被預(yù)測(cè)為絕緣子的個(gè)數(shù),F(xiàn)N表示絕緣子被預(yù)測(cè)為背景的個(gè)數(shù)。A和B分別表示預(yù)測(cè)結(jié)果和標(biāo)注真值。
則 Focal Loss 的反向傳播過程如式(7):
3 拒絕蛋白質(zhì)含量低于3%的飲料和輔食。 蛋白質(zhì)在3%~15%是寶寶輔食適宜的蛋白質(zhì)含量,低于3%的食品飲料,基本與白水無異,對(duì)攝入量本就有限的寶寶了來說,實(shí)屬雞肋,不選也罷。
該文采集了1000張無人機(jī)拍攝的絕緣子圖像作為實(shí)驗(yàn)數(shù)據(jù)集(本文圖略),可以看出每幅圖像的背景都很復(fù)雜,明暗程度各異。該文通過交叉驗(yàn)證的方式選擇200張航拍圖像作為獨(dú)立的測(cè)試集,為增加樣本多樣性,減少過擬合等問題,通過翻轉(zhuǎn)、旋轉(zhuǎn)、變形等操作對(duì)剩下的800張航拍圖像進(jìn)行數(shù)據(jù)增強(qiáng),增強(qiáng)后樣本數(shù)量達(dá)到1600張,其中驗(yàn)證集占比20%(320張),訓(xùn)練集占比60%(1280張)。受限于計(jì)算資源,本文針對(duì)所有實(shí)驗(yàn)圖像進(jìn)行尺寸統(tǒng)一,將所有圖像統(tǒng)一為640×480。并采用Labelling工具對(duì)其中的絕緣子串進(jìn)行方框標(biāo)記和mask掩膜標(biāo)記。
通常語義分割需要對(duì)前景和背景同時(shí)進(jìn)行分割,本文分割任務(wù)只需對(duì)絕緣子部分進(jìn)行語義分割,但是訓(xùn)練時(shí)每一個(gè)批次經(jīng)過數(shù)據(jù)增強(qiáng)后目標(biāo)的尺寸分布呈非線性,如果將所有的批次統(tǒng)一到同一尺寸,會(huì)讓一切極端目標(biāo)損失像素的細(xì)節(jié)信息。為了解決這一問題,提出了一種自適應(yīng)上采樣訓(xùn)練策略,通過輸入批次的數(shù)據(jù)標(biāo)簽獲取到其中所有目標(biāo)的尺寸,然后對(duì)所有目標(biāo)的尺寸進(jìn)行聚類后取得最佳mask尺寸,根據(jù)邊框坐標(biāo)標(biāo)簽將目標(biāo)提取出來后統(tǒng)一到最佳mask尺寸。具體聚類過程如下:
這無疑是近半個(gè)世紀(jì)以來最為出色的一輛跑車,一輛讓駕駛者感受不到自己存在的跑車。與其他測(cè)試車相比,這輛保時(shí)捷911的車廂布局正合我意,還擁有寬敞的頭部空間,一切都堪稱完美。
式中:L1為focal loss值;α,γ均為超參,本文取α=0.25;γ=2;pτ為sigmoid函數(shù),定義如式(6):
本文實(shí)驗(yàn)均在Linux 系統(tǒng)、CPUs i7 8500 GPU 1070,速度為0.5秒/圖片,程序基于pyTorch框架。
式中:lwy、lc和lclass是計(jì)算中心點(diǎn)損失、置信度損失和類別損失的交叉熵函數(shù);lwh是計(jì)算方框尺寸損失的均方差函數(shù);lseg是語義分割網(wǎng)絡(luò)損失函數(shù)。在語義分割領(lǐng)域中最常用的損失函數(shù)是交叉熵函數(shù),但是本文在后期的實(shí)驗(yàn)中發(fā)現(xiàn)以交叉熵函數(shù)作為損失函數(shù)的損失曲線波動(dòng)較大,且精度上升不明顯,故本文利用focal loss函數(shù)替換語義分割常用的交叉熵?fù)p失函數(shù),從而獲得各像素點(diǎn)預(yù)測(cè)值和真實(shí)值的差。Focal loss函數(shù)如式(5):
下面先對(duì)2度點(diǎn)的色集合進(jìn)行討論,由染色算法,點(diǎn)u03,u05,…,u0(2n+1),um4,um6,…,um(2n),um1以及點(diǎn)us(2n+2), us1(s=2,4,…,m-2)的色集合均可相互區(qū)分且它們的色集合均由不超過k的顏色組成可設(shè)其中1
SGD (stochastic gradientdescent,隨機(jī)梯度下降)算法訓(xùn)練網(wǎng)絡(luò),每次迭代時(shí)使用Δθτ+1進(jìn)行參數(shù)更新,如式(12):
其中,Δθτ+1為本次迭代參數(shù)更新量;Δθτ為前一次參數(shù)更新量;γ為動(dòng)量,通常設(shè)置γ=0.9;為網(wǎng)絡(luò)梯度,l為學(xué)習(xí)率,設(shè)置初始學(xué)習(xí)率lbase=0.05,學(xué)習(xí)率進(jìn)行多項(xiàng)式衰減,即
基于生成對(duì)抗網(wǎng)絡(luò)的HDR圖像風(fēng)格遷移技術(shù)······························謝志峰 葉冠樺 閆淑萁 何紹榮 丁友東 (4,524)
其中, p=0.9;i為當(dāng)前迭代次數(shù),imax為最大迭代次數(shù)。
語義分割階段:本文對(duì)比了分別利用交叉熵函數(shù)和focalloss函數(shù)作為損失函數(shù)時(shí)算法的準(zhǔn)確率和損失。以交叉熵為損失函數(shù)獲得的準(zhǔn)確率和損失隨迭代次數(shù)的變化曲線,存在精度上升曲線波動(dòng)性較大且精度上升不明顯的問題;而本文以Focal loss損失函數(shù)進(jìn)行改進(jìn),改進(jìn)后曲線波動(dòng)性小,且在同樣迭代100次的前提下,使用focal loss作為損失函數(shù)的檢測(cè)準(zhǔn)確率要高于交叉熵?fù)p失函數(shù)。
文中提出的基于深度學(xué)習(xí)的結(jié)合檢測(cè)與分割的yolov5-segnet檢測(cè)算法可快速且高效的進(jìn)行航拍絕緣子輪廓提取,在2000個(gè)樣本的數(shù)據(jù)集上進(jìn)行訓(xùn)練,在200個(gè)測(cè)試集上進(jìn)行測(cè)試,測(cè)試準(zhǔn)確率達(dá)到97.32%,測(cè)試時(shí)間為0.07s每張圖片;文中在語義分割模塊添加的通道注意力機(jī)制和空間注意力機(jī)制可有效提高語義分割模塊的特征表達(dá)能力;文中使用focalloss損失函數(shù)替代交叉熵函數(shù),SGD算法替代Adam算法進(jìn)行損失優(yōu)化,可在提高0.074算法準(zhǔn)確率的同時(shí)有效解決損失曲線和準(zhǔn)確率曲線波動(dòng)的問題。實(shí)驗(yàn)分析表明,本文算法可有效且快速的進(jìn)行絕緣子輪廓提取,為絕緣子缺陷檢測(cè)排除干擾。