趙東升,楊理踐,耿 浩,鄭福印,唐權宇
(1.沈陽工業(yè)大學信息科學與工程學院,遼寧沈陽 110870;2.沈陽工程學院自動化學院,遼寧沈陽 110136)
管道漏磁內(nèi)檢測技術是長輸油氣管道安全維護的有效方法[1]。漏磁內(nèi)檢測器在管道中完成檢測后,工作人員需對檢測數(shù)據(jù)進行分析,最后形成檢測報告。檢測數(shù)據(jù)分析的首要任務是從數(shù)據(jù)中識別缺陷并確定缺陷所在區(qū)域。為了提高檢測數(shù)據(jù)分析的工作效率,近年來已有學者開始利用深度學習、計算機視覺等人工智能相關理論和技術,研究面向管道漏磁檢測數(shù)據(jù)的缺陷檢測算法[2-5]。訓練深度神經(jīng)網(wǎng)絡需要大量的樣本數(shù)據(jù),然而,對管道檢測數(shù)據(jù)中的缺陷進行開挖驗證需要耗費大量的人力、物力和財力,同時會影響管道的正常運行,所以,較難在短時間內(nèi)建立大規(guī)模具有良好標注信息的訓練樣本集。于是,探索針對管道缺陷檢測的漏磁數(shù)據(jù)增強方法,從而擴充缺陷樣本數(shù)量,能夠促進深度學習方法在管道漏磁數(shù)據(jù)分析任務中的應用,進而提高漏磁數(shù)據(jù)分析的工作效率,具有重要的現(xiàn)實意義。
數(shù)據(jù)增強技術是一種在機器學習中對有限的訓練樣本進行擴充的方法,是克服由于訓練過程中目標樣本數(shù)據(jù)不足,導致深度學習方法陷入過擬合問題的有效方法之一,可有效提高深度學習目標檢測模型精度與泛化能力[6]。近年來,國內(nèi)外學者在進行深度神經(jīng)網(wǎng)絡訓練過程中,采用了各種數(shù)據(jù)增強方法,對模型的性能產(chǎn)生了不同程度的提升。文獻[6]提出一種樣本空間與特征空間聯(lián)合的數(shù)據(jù)增強方法,以實現(xiàn)可見光遙感圖像中船舶目標的補充。文獻[7]同時采用了Mosaic和MixUp 2種數(shù)據(jù)增強方法,即將多個樣本隨機地縮放、裁剪、排布,拼接成一個新的樣本,再用于網(wǎng)絡訓練,使得小目標的檢測效果得到了提升;文獻[8]發(fā)現(xiàn)大多數(shù)訓練迭代中,小目標的損失對總損失幾乎沒有貢獻,導致優(yōu)化不平衡和性能下降。于是,提出了一種反饋驅(qū)動數(shù)據(jù)增強方法,用平衡的方式訓練網(wǎng)絡模型。算法將圖像調(diào)整為較小的尺寸,然后將其拼接為與常規(guī)圖像相同的尺寸。拼接圖像則會使原來的大目標變?yōu)檩^小的目標。以小目標所貢獻的損失值占所有目標損失值的比例作為反饋,決定下一次迭代更新是否進行拼接。其實驗結果顯示,小目標檢測性能穩(wěn)定且顯著提高,并且在訓練和測試階段幾乎沒有引入任何額外的計算。文獻[9]針對海洋生物互相重疊、遮擋導致檢測精度低的問題,提出PredMix數(shù)據(jù)增強方法,通過線性加權的方式混合目標圖像以模擬水下目標的重疊和遮擋,從而增強網(wǎng)絡模型魯棒性。文獻[10]利用Hallucination幻覺網(wǎng)絡,將從基類中學習到的共享類內(nèi)樣本的變形轉移到新類上,在感興趣區(qū)域特征空間上產(chǎn)生額外的訓練樣本。文獻[11]將圖像中每個對象的尺寸隨機調(diào)整若干次,既增加了感興趣區(qū)域的數(shù)量,又適應了不同大小的對象尺度,同時不會破壞圖像中的空間關系。文獻[12]提出的Pseudo-Labelling方法采用偽標記的方式增加新類別的樣本數(shù)量,顯著減少了類別不平衡性。此外,還有學者[13-14]通過增加候選框數(shù)量的方式間接地擴充樣本數(shù)量,以達到提升模型性能的目的。然而,絕大多數(shù)數(shù)據(jù)增強方法主要還是針對可見光圖像數(shù)據(jù)集,針對漏磁數(shù)據(jù)的增強方法相對較少。在管道漏磁檢測領域,文獻[15]基于卷積神經(jīng)網(wǎng)絡進行缺陷尺寸量化,通過網(wǎng)格化磁偶極子模型生成缺陷仿真數(shù)據(jù),補充訓練樣本。
管道漏磁數(shù)據(jù)與可見光圖像數(shù)據(jù)有著本質(zhì)區(qū)別,從檢測原理和檢測方法上都有其特殊性,因此,用于可見光圖像的數(shù)據(jù)增強方法不宜直接用于管道漏磁數(shù)據(jù)?;诼┐艌鑫锢韺W模型生成的仿真數(shù)據(jù)未能考慮實際檢測過程中的各種噪聲,直接用作訓練樣本,對模型魯棒性的提高具有一定的局限性。本文首先假設管道漏磁檢測系統(tǒng)的各部分獨立工作,漏磁數(shù)據(jù)中的高低頻噪聲均假設為加性噪聲,進而提出如下數(shù)據(jù)增強方法,即基于在役管道漏磁檢測數(shù)據(jù)和利用三維磁偶極子模型生成各種尺寸缺陷漏磁場切向分量、法向分量和周向分量的仿真數(shù)據(jù),對其進行隨機融合,實現(xiàn)一種適用于管道漏磁缺陷檢測的樣本數(shù)據(jù)集擴充方法。
本文簡述了三維磁偶極子模型,并介紹了仿真數(shù)據(jù)與在役管道檢測數(shù)據(jù)隨機融合的方法,進行了算法設計,基于YOLOX模型對所提數(shù)據(jù)增強方法進行了實驗驗證,并對結果進行了分析。
目前,已有學者[16-17]利用磁偶極子模型刻畫鐵磁性材料腐蝕、裂紋等缺陷的漏磁場分布,得到了漏磁場在一定條件下的解析表達式。合理地利用漏磁場的物理學先驗知識,采用漏磁數(shù)據(jù)增強方法,可有效地擴充漏磁數(shù)據(jù)集。通過磁偶極子模型能夠產(chǎn)生不同長度、寬度、深度的矩形凹槽漏磁場仿真數(shù)據(jù),可用于模擬管道缺陷的漏磁檢測數(shù)據(jù)。但仿真數(shù)據(jù)是純凈漏磁信號,實際管道漏磁檢測數(shù)據(jù)包含各種因素產(chǎn)生的噪聲信號。為了更加貼近真實情況,以在役管道漏磁檢測數(shù)據(jù)為基礎,與仿真數(shù)據(jù)進行合理地融合,從而產(chǎn)生擴充的訓練樣本。本文假設管道漏磁內(nèi)檢測器系統(tǒng)各部分獨立工作,即認為各環(huán)節(jié)所產(chǎn)生的噪聲與缺陷漏磁信號之間是獨立的,有用信號與噪聲是加性關系。于是,將磁偶極子模型仿真數(shù)據(jù)與在役管道檢測數(shù)據(jù)進行疊加即可完成樣本數(shù)據(jù)擴充,見式(1)。
(1)
式中:Nn、Nt、N⊥分別為漏磁數(shù)據(jù)中3個分量的純噪聲數(shù)據(jù),從在役管道檢測數(shù)據(jù)中獲取;Gn、Gt、G⊥為擴充出來的樣本數(shù)據(jù);?為逐點疊加運算;Hn、Ht和H⊥分別表示Y軸、X軸和Z軸方向的漏磁場分量,對應管道檢測數(shù)據(jù)的切向分量、法向分量和周向分量;x、y和z為空間坐標。
對比觀察仿真數(shù)據(jù)和真實檢測數(shù)據(jù)時,發(fā)現(xiàn)切向分量和周向分量的漏磁信號幅值偏小,因此,在進行融合時,分別加入了α和β作為修正系數(shù)。
基于此方法,生成的樣本數(shù)據(jù)效果如圖1所示。對比圖1中真實的缺陷和模型生成的缺陷,可以看出,模型生成的缺陷數(shù)據(jù)與真實的檢測數(shù)據(jù)具有高度的相似性,可以預見,將其作為擴充的樣本訓練網(wǎng)絡模型,能夠驅(qū)使模型靠近最優(yōu)解。
(a)法向分量
(b)切向分量
(c)周向分量圖1 擴充樣本數(shù)據(jù)
為了覆蓋不同尺寸的缺陷數(shù)據(jù),在擴充樣本數(shù)據(jù)時對缺陷尺寸在一定范圍內(nèi)進行隨機取值。根據(jù)所用在役管道檢測數(shù)據(jù)中缺陷的分布情況,令缺陷長度和寬度在區(qū)間[10 mm,30 mm]內(nèi)進行等概率取值,深度在區(qū)間[1 mm,4 mm]內(nèi)進行等概率取值。將磁偶極子模型產(chǎn)生的仿真數(shù)據(jù)疊加到在役管道漏磁檢測數(shù)據(jù)樣本中的無標注區(qū)域,并將疊加區(qū)域的坐標信息和缺陷的類別標號追加的標簽列表中。此時,即可作為新的樣本訓練網(wǎng)絡模型。數(shù)據(jù)增強算法的具體計算流程:
輸入量:在役管道檢測漏磁數(shù)據(jù)樣本法向分量、切向分量和周向分量分別為Mn[∶,∶]、Mt[∶,∶]和Mc[∶,∶],通道數(shù)為N,軸向采樣點數(shù)為M,已標注區(qū)域為RLabel,提離值為y,信號截取區(qū)域擴展量為ε;
第1步:隨機生成缺陷的長寬深;
lξ=random(10,30)∥長度
wξ=random(10,39)∥寬度
hξ=random(1,4)∥深度
第2步:生成采樣索引序列;
X=slice(-lξ-ε,lξ+ε,Δa)∥X軸
Z=slice(-wξ-ε,wξ+ε,Δc)∥Z軸
第3步:生成切向分量、法向分量和周向分量的仿真數(shù)據(jù);
第4步:尋找未標注區(qū)域;
X?=random(0,M);z?=random(0,N)
?x∈[x?,x?+len(X)],z∈[z?,z?+len(Z)]
(x,z)?RLabel
第5步:融合缺陷仿真數(shù)據(jù)與檢測數(shù)據(jù);
返回值:增強數(shù)據(jù)Mt_en,Mn_en,Mc_en。
如前文所述,深度學習算法在管道漏磁數(shù)據(jù)分析任務中應用,還需適應真實檢測環(huán)境對數(shù)據(jù)造成各種影響,包括各種成分噪聲。但這種復雜的噪聲信號很難通過解析表達式進行表達,簡單有效的方法是直接從真實管道檢測數(shù)據(jù)中尋找不包含目標的區(qū)域,對應的數(shù)據(jù)即為真實的噪聲。本文從北海-邕寧Φ813輸氣管道漏磁內(nèi)檢測數(shù)據(jù)中截取三軸漏磁數(shù)據(jù)。檢測器沿管道周向均勻分布了320通道三軸傳感器,可同時檢測漏磁場徑向、軸向和周向的漏磁場磁感應強度(分別對應圖1中漏磁場的法向分量、切向分量和周向分量)。檢測器隨著管道內(nèi)介質(zhì)流動而運動,并以一定的采樣率采集傳感器數(shù)據(jù)。每一次采樣數(shù)據(jù)對應管道某一橫截面周向各點的漏磁場分布情況。一次檢測任務的所有漏磁數(shù)據(jù)則可看作為一個具有3個分量、320行、近似無窮多列超級矩陣,一般可超過幾百G字節(jié),如圖2所示。絕大多數(shù)計算機的RAM空間無法容納這樣一個超級矩陣,需沿著列的方向?qū)ζ渥龇侄翁幚怼1疚脑谑占瘶颖緯r,列方向的截取點數(shù)與超級矩陣的行數(shù)一致,即320列,因此,每一幀樣本的矩陣維度為3×320×320。
圖2 漏磁數(shù)據(jù)樣本采集過程
實驗共收集了2295個樣本,并進行了標注,具體分布如表1所示。其中,訓練集所有樣本均不包含真實缺陷,所有缺陷均由所提數(shù)據(jù)增強算法擴充而來,本次實驗在每張樣本中共隨機生成3個尺寸不同的缺陷;而驗證集和測試集所有樣本中的缺陷均為真實的缺陷。這樣,所得模型中的參數(shù)均由仿真缺陷數(shù)據(jù)進行迭代優(yōu)化產(chǎn)生,對模型的性能測試結果則能夠反映所擴充樣本數(shù)據(jù)的有效性。
表1 漏磁數(shù)據(jù)集
3.2.1 實驗環(huán)境與模型選擇
所提數(shù)據(jù)增強方法主要是面向漏磁數(shù)據(jù)的管道缺陷檢測任務,其有效性的評估需要利用所擴增出來的樣本集對缺陷檢測模型進行訓練,通過模型性能變化折射出方法的有效性。然而,目前尚無針對管道漏磁數(shù)據(jù)的缺陷檢測開源模型,本文借助主流的目標檢測深度學習模型對所提方法進行驗證。
雖然檢測器對管道進行在線檢測,數(shù)據(jù)離線分析,但面對龐大的管道漏磁檢測數(shù)據(jù)量,在模型選擇時須考慮算法耗時,否則無法在規(guī)定的時間內(nèi)出具檢測報告。目前主流的深度學習目標檢測模型主要分為兩階段模型和單階段模型,兩階段模型主要優(yōu)勢是檢測精度高,但檢測速度較慢。以YOLO系列模型為典型代表的單階段模型權衡了檢測精度和推理速度兩方面性能,在保證一定檢測精度的前提下,實現(xiàn)了較高的檢測速度。綜上分析,本文基于YOLOX[7]目標檢測算法模型進行實驗,并根據(jù)漏磁數(shù)據(jù)特征對模型進行了一定的修改。YOLOX作者提供了Nano、Tiny、S、M、L、X共6個版本的模型,模型參數(shù)規(guī)模依次遞增,用于在算力資源和檢測性能之間做折中,本文僅對Tiny、S、M 3個版本進行實驗。表2列出了網(wǎng)絡模型進行訓練和測試的實驗環(huán)境。
表2 實驗環(huán)境
3.2.2 模型修改
管道漏磁內(nèi)檢測器的漏磁傳感器分辨率為16位,返回有符號整型數(shù)據(jù),取值范圍為-32 768~32 767,并且包含法向、切向、周向3個分量的數(shù)據(jù)。而YOLOX原始模型主要面向的是可見光圖像,傳感器分辨率為8位,取值范圍為0~255,包含RGB 3個通道。為消除數(shù)據(jù)取值動態(tài)范圍上的差異,本文首先將漏磁數(shù)據(jù)類型轉換為浮點型,并分別對每個分量進行逐行標準化處理,再送入網(wǎng)絡模型。逐行標準化運算過程如式(2)所示。
(2)
式中:i為不同的漏磁分量;j為對應分量數(shù)據(jù)矩陣的行,Mij為第i分量第j行的漏磁數(shù)據(jù);E(·)為取平均運算;σ(·)為求標準差運算。
進行逐行標準化而不是對整體進行標準化的主要原因是:不同行之間的基值有一定差異,逐行標準化可有效消除這一差異,同時使得信號平移到0附近。
此外,YOLOX原始模型使用了Mosaic和MixUp 2種數(shù)據(jù)增強方法,其主要過程是將多個樣本隨機地縮放、裁剪、排布、疊加,最終構成一個新的擴充樣本。從其計算過程上即可看出,Mosaic和MixUp增強算法不宜用于管道漏磁數(shù)據(jù),圖3展示了2種算法在漏磁數(shù)據(jù)上的作用效果。圖3(a)~圖3(d)是4個原始漏磁數(shù)據(jù)樣本,圖3(e)是經(jīng)過Mosaic后的效果,圖3(f)是經(jīng)過MixUp后的效果。從圖3中可以發(fā)現(xiàn),經(jīng)過兩種增強算法擴充的漏磁數(shù)據(jù)與管道的實際結構存在較大差異,甚至出現(xiàn)了真實管道漏磁數(shù)據(jù)中不可能出現(xiàn)的情況。例如,圖3(e)中出現(xiàn)了錯位的環(huán)焊縫以及不連續(xù)的螺旋焊縫,圖3(f)中出現(xiàn)了相互靠近且平行的螺旋焊縫。利用這些樣本訓練網(wǎng)絡,將使得網(wǎng)絡模型偏離最優(yōu)解,降低模型的收斂速度和檢測精度。于是,本文在引入所提數(shù)據(jù)增強算法的同時,關閉了原有的Mosaic和MixUp數(shù)據(jù)增強方法。
圖3 Mosaic和MixUp增強結果
3.2.3 實驗結果分析
基于所提增強算法擴充出來的數(shù)據(jù)集,對前文修改后的模型進行100輪訓練,其余超參數(shù)與原算法保持一致,即初始學習率設為0.01,學習率機制選擇cosine,優(yōu)化器使用隨機梯度下降(stochastic gradient descent,SGD),權值衰減設為0.000 5,動量設為0.9。對100輪訓練得到的所有結果均進行了測試,表3是所得最優(yōu)模型的性能指標,表4是模型最終收斂后的性能指標。
表3 最優(yōu)模型性能
表4 收斂模型性能
3個版本的模型均在最初幾輪訓練后,達到性能相對最優(yōu)的狀態(tài),但隨著訓練的繼續(xù),模型開始偏離這一狀態(tài),向另一個狀態(tài)收斂。圖4~圖6展示了3個版本模型的平均精度(AP:average precision)和損失值(Loss)的變化趨勢。檢測效果展示如圖7所示。
圖4 YOLOX-Tiny的AP和Loss變化曲線
圖6 YOLOX-M的AP和Loss變化曲線
利用矩形凹槽的三維磁偶極子模型產(chǎn)生仿真數(shù)據(jù),與從在役管道漏磁內(nèi)檢測數(shù)據(jù)中收集真實數(shù)據(jù)進行融合,實現(xiàn)了適用于管道漏磁數(shù)據(jù)缺陷檢測的數(shù)據(jù)增強方法,有效擴充了用于訓練深度學習網(wǎng)絡模型的樣本數(shù)量,緩解了管道漏磁內(nèi)檢測數(shù)據(jù)樣本不足的問題。此外,對算法涉及的物理模型和算法執(zhí)行流程進行了介紹,并在YOLOX模型上進行了實驗驗證。實驗結果顯示,在僅使用所提增強算法擴充出來的樣本對網(wǎng)絡模型進行訓練,即可使模型達到一定性能,間接地說明了所提方法具有一定的有效性。然而,模型性能仍然有較大提升空間。同時,本文所生成的仿真數(shù)據(jù)是僅限于一定尺寸范圍內(nèi)的矩形凹槽,而實際的管道腐蝕缺陷往往是不規(guī)則形狀的,后續(xù)工作的重點將是尋找任意形狀缺陷的漏磁場仿真方法,從而進一步提升漏磁數(shù)據(jù)增強方法的有效性。
(a)Tiny版本
(b)S版本
(c)M版本圖7 檢測效果展示