鄢家鑫,陳青,李朋洲,周寒,劉曉東
(中國核動力研究設計院,四川 成都 610213)
反應堆回路試驗裝置是建設新型核反應堆的必要設施。受環境因素或操作人員影響,該裝置回路管道邊界會發生高壓蒸汽泄漏,嚴重威脅反應堆試驗裝置運行[1]。對此一些學者和專家在泄漏檢測領域做出了研究。目前在該領域,普遍采用專業試驗人員進行泄漏檢查的方式,該方法面臨識別的準確率和頻率受限的問題。目前已經有了一些用于管道設備泄漏的自動化檢測方法[2]。這些方法通過測量設備內介質的壓力、溫度等物理特性,人工建立精確的流動數學模型識別特定泄漏,成本較高且適用場景有限[3-4]。除此之外,采用接入主控系統的自動化傳感器進行泄漏檢測的方法需要鋪設大量物理傳感器,技術復雜、成本高昂且缺乏靈活性[5]。
盡管當前研究已經在壓力設備的泄漏檢測領域進行了許多研究,但對于一種適用于形狀結構多變、泄漏介質多變且泄漏機理不清晰的裝置的智能泄漏檢測方法仍是該檢測領域所迫切需要的。隨著視覺技術的興起,基于拍攝視頻的背景建模和背景差分技術在不同的檢測領域得到了廣泛的應用。目前這種智能視覺監控系統已經應用于機場、港口、道路、工業園區[6-7]。
為了實現對壓力設備蒸汽泄漏的故障檢測,在當前普遍用于運動目標檢測的背景差分法的研究基礎上[8-9],提出一種改進的混合高斯背景建模(Gaussian Mixture Model, GMM)背景差分方法用于紅外蒸汽泄漏檢測分割,并研究高溫壓力容器泄漏環境下的運動蒸汽特征表現,提出檢測與分割效果的量化評價指標,并構建真實數據集與現有背景分割方法進行實驗對比。
在大部分的紅外蒸汽泄漏場景中,攝像機拍攝的背景是變化較少的固定場景,基于此假設,我們判斷在沒有蒸汽泄漏的情況下,攝像機拍攝的背景具有可以用統計學模型描述的常規特征。因此,本文建立了該紅外蒸汽泄漏場景的背景模型,當出現不符合場景圖像中背景模型的部分時,視為檢測到蒸汽泄漏。其流程如圖1所示。
背景差分法的原理如下,一般分為四步:
(1)背景初始化:(也稱為背景生成、背景提取或背景重建)是計算第一幅背景圖像的過程。
(2)背景建模:(也稱為背景表示)描述了用于表示背景的模型。
(3)背景更新:該步驟主要關心如何更新背景模型,以自適應視頻幀隨著時間推移出現的變化。
(4)背景與目標像素分類:也稱為前景檢測,包括對“背景”或“運動目標對象”中的像素進行分類。
這四個步驟使用的方法有不同的目標函數和約束條件。因此,它們具有不同的算法特征。背景初始化是離線的,通過“批處理”來實現初始化。背景更新是在線的動態算法,通過采取逐幀傳入數據的方式完成背景模型更新。背景初始化、建模和更新屬于圖像重建算法,前景檢測屬于分類算法。其運作原理見圖1,其中N是用來建模的視頻幀數,B(t)和I(t)分別代表t幀時背景和圖像。
背景模型的建立是背景差分法的核心任務,是決定其余步驟采用何種方法的關鍵環節。背景建模有以下常見方式,統計見表1[10-13]:

圖1 蒸汽泄漏檢測方法流程

表1 背景建模方法
表1的背景建模方式并不是全部的方法,且均存在不同程度的問題,但混合高斯背景建模(GMM)相比其他方法,出現了更多的學者對其進行改進[14-17]。考慮到紅外蒸汽泄漏檢測的場景的背景較為復雜,屬于多模態背景。本文使用一種改進的基于混合高斯背景建模(GMM)的方法來實現對紅外蒸汽泄漏的檢測。
在本文的應用場景中,蒸汽在大部分時間與管道、墻壁背景具有不同色彩與紋理,因此使用像素的強度值作為我們特征表示的基礎,以此來建立背景模型,該特征表示有效利用了白色蒸汽陰影與背景的顏色差異,對光照的變化具有足夠的魯棒性。像素的強度值是該像素距離最近的物體表面反射的光線在該像素傳感器上的度量,滿足靜態背景和靜態光照的條件下,這個度量將是相對恒定的。假設在采樣過程中產生了獨立的高斯噪聲,那么該像素的強度值的密度可以用一個以平均像素值為中心的正態分布來描述。對于以t幀構建背景模型的視頻序列I來說,每個像素X的變化過程可以用式(1)表示:
{X1,…,Xt}={I(x0,y0,i):1≤i≤t}
(1)
在檢測任務中,假設對于圖像的每個固定位置像素來說,其受到相同材質物件的光照,那么僅需要一個可以自適應調節參數的高斯模型就可以表示該像素。但實際上,整個檢測追蹤過程中,同一像素會受到不同材質的不同光照,除此之外,在場景中存在移動變化的前景像素,即使是如蒸汽這樣的具有相對一致的色彩特征的移動對象,也會相比靜態背景產生更多的變化。對于大部分背景像素來說,其通常具有相同的像素分布,且數量要遠多于前景像素,因此可以使用多個自適應高斯模型來對某一像素點進行近似,以模擬背景中像素值的不同模態。這一針對像素點的混合自適應模型如式(2):

(2)

(3)
本文方法對背景像素高斯模型進行更新,其過程基于這樣的兩點簡單假設。
(1)像素的三通道取值獨立且具有相同的方差;
(2)某一像素在損失函數的度量上越接近訓練得到的背景模型,該像素就越可能是背景的一部分,反之則更可能是前景目標。
在將像素的背景模型用式(1)描述的基礎上,背景更新的過程采用K-means方法,對每一幀的每一個像素對照現有的K個高斯分布進行檢查,直到新的像素點與對應的高斯分布匹配上,本文采用Wasserstein作為匹配方法,其表達式見式(4):
Wp(μ,y)={infE[d(X,Y)p]}1/p
(4)
E為X,Y兩個分布的聯合分布的期望均值, 當Wasserstein距離小于35,視為找到匹配,匹配函數描述了更新幀與背景模型的概率相似度,極大地提高了該算法的適用性。
當新的像素與背景模型的高斯分布匹配上, 新背景模型的分布參數更新方式如下式:
μt=(1-ρ)μt-1+ρXt
(5)

(6)
其中式(7)為當前背景模型的最小似然概率;式(8)中的α為學習率,表示背景的更新速率,當像素與背景匹配上Mk,t為1,未匹配上為0。
ρ=αη(Xt∣μk,σk)
(7)
ωk,t=(1-α)ωk,t-1+α(Mk,t)
(8)
α為學習率,表示背景的更新速率,當像素與背景匹配上Mk,t為1,未匹配上為0。如果當前像素值沒有匹配上任何的背景模型分布,以當前像素作為均值重新創建一個高斯模型,其標準差設置為初始化背景模型中的最大值,權重為初始化權重中的最小值。基于最大似然法更新背景模型的思路,使用ω/σ度量各個像素混合高斯分布的優先級,值越大,優先級越高,越可能是背景。隨著訓練樣本的增加,方差減小,ω/σ會不斷增加,在不斷更新中,只有匹配成功的樣本會讓其變化。這樣保證了最可能的背景模型始終在頂部。匹配到第n個模型分布時,所建立的背景模型的數學表達式可以被表示為式(9):
(9)
其中T表示背景權重之和的最小值,表示屬于背景而不受運動前景影響的最小度量,默認設置為0.9。T較高時,背景模型中可能會包括一些重復運動的背景(例如吹動的煙霧、工廠里震動的螺絲等)所導致的透明陰影。蒸汽泄漏目標的檢測分割過程就是不斷地用當前幀與背景模型進行差分運算來檢測分割動態目標。在本文方法中就是逐像素計算當前幀模型與背景高斯模型之間的Wasserstein距離,當距離大于閾值時,該像素為目標像素,反之屬于背景。
蒸汽泄漏場景存在著管路與拍攝平臺的微小相對運動導致的震動、蒸汽對光線的遮擋等各種影響成像質量的因素,如圖2(a)、(b)所示,需要在檢測中進行圖像處理,本文采取了兩種圖像處理方式對抗以上因素導致的噪聲、空洞與裂縫。
1.2.1 空間域濾波
當前常見的空間域濾波方法包括高斯濾波、中值濾波、均值濾波等,其采用卷積元素作為kernel,一般通過諸如微分、積分的數值運算得到中心濾波像素的值。高斯濾波根據距離濾波核中心元素的距離與高斯分布的模型計算中心像素,在去除高斯隨機噪聲時非常有效,但是容易造成圖像模糊,中值濾波用核中中值代替中心像素,計算簡單但容易濾掉小目標。均值濾波取核中像素均值代替中心元素,對于椒鹽噪聲濾除能力強,雖然也會造成一定的模糊,但小于高斯濾波。本文使用自適應的均值濾波方法進行去噪并進行數學形態學處理,結果如圖2(c)所示。

圖2 濾波及形態學處理
1.2.2 檢測結果形態學處理
形態學是一門建立在拓撲學基礎上的圖像分析學科,其與空域濾波的本質區別是采用結構元素作為內核,通過集合運算得到對應的中心像素值。結構元素是由0和1組成的矩陣,它可以是任何形狀與大小,但是一般來說,結構元素要小于待處理的圖像中的形狀,且結構元素的中心像素原點應當與輸入圖像的ROI區域像素點對應。
形態學操作的基本方式有腐蝕與膨脹,以及在此之上通過不同處理順序,不同運算方式得到的高級形態學操作。通常來講,腐蝕可以刪除對象形狀的邊界像素,使形狀減小,膨脹與此相反,使邊界像素增加,形狀變大。當先腐蝕再膨脹就實現了高級形態學操作開運算,它可以分離物體,并在平滑邊界的同時不明顯改變形狀及其大小。當順序顛倒,先膨脹再腐蝕,即為閉運算,可以排除形狀中的空洞。本文在圖像處理的不同階段使用了開閉運算作為圖像檢測的后處理,處理結果如圖2(d)所示。
蒸汽目標作為一種大小、形狀不定的特殊檢測目標,通過背景差分法處理泄漏圖像獲得疑似泄漏區域,在疑似泄漏區域目標中,針對泄漏蒸汽灰度特征、形狀及擴散特征分析判別泄漏蒸汽區域,并根據泄漏陰影面積特征判定泄漏級別。
1.3.1 蒸汽特征研究
當紅外光通過物質,物質分子中與光波振動頻率相同的部分會吸收紅外輻射能量躍遷到高能級,導致紅外光能量下降。表現在紅外圖像上就是在蒸汽邊緣的低溫部分出現較暗的陰影效果,計算泄漏圖像中灰度zk出現概率:

(10)
其中,nk是灰度zk在圖像中出現的次數,WH是像素總數,在第102幀泄漏蒸汽圖像中,其灰度分布直方圖如圖3所示:

圖3 泄漏蒸汽灰度特征
可以看到泄漏幀灰度圖具有兩個峰,代表背景和蒸汽像素的兩類區域。本文計算疑似蒸汽泄漏區域與背景區域的灰度標準差,如式(11),發現泄漏與疑似泄漏區域的方差具有一定偏離。m表示各個區域的灰度均值,該項特征可用于與形狀面積特征聯合判定蒸汽泄漏。
(11)
1.3.2 蒸汽特征判別準則
考慮到本文蒸汽泄漏場景下的紅外圖像會出現與可見光成像所面對的不同的干擾,比如因泄漏蒸汽加熱周圍管道保溫層導致的非泄漏區域異常高溫,蒸汽受到物體阻礙產生的形狀變化,所以無法憑借單一特征判定蒸汽泄漏。本文利用蒸汽泄漏圖像的灰度、形狀及面積特征,判別相關幀是否處在蒸汽泄漏狀態,并根據泄漏大小,給出初步的輕微、普通、嚴重三種泄漏程度判斷。判斷標準如下,當疑似蒸汽泄漏區域灰度值屬于泄漏蒸汽灰度分布的第二個峰且形狀閉合時,認為該幀是蒸汽泄漏。在確定泄漏的情況下,本文挑選人工判斷的三種不同程度的泄漏圖像,根據對泄漏蒸汽陰影占全圖面積的比例來確定泄漏程度,當占比小于4%時,判斷為輕微泄露,占比為4%~7%時定義為中等泄漏,大于12%即為嚴重泄漏,人工判斷的三種程度泄漏成像如圖4所示:

圖4 蒸汽泄漏程度示意圖
在Windows 11系統進行實驗,軟件配置為Python 3.8,opencv-contrib-python 4.4.0版本,numpy 1.19.0,scipy 1.6.2版本。
數據集選用自建的SteamLeak數據集中的steamTS200inf1數據集作為該次試驗的數據集,該數據集采集自海康DS-2TA03型號紅外相機拍攝的蒸汽泄漏試驗,如圖5所示。
其拍攝的智能機器人試運行測試平臺,由管廊管網區、容器設備區,儀器儀表區等組成,使用的試驗蒸汽源壓力穩定在0.3 MPa左右,蒸汽溫度設置為110℃左右。該數據集由218張紅外圖片組成,大小為384×288,為方便處理,統一裁剪成160×120大小。標注采用labelme軟件,對具有明顯輪廓的蒸汽泄漏圖像進行標注,生成遮罩。

圖5 蒸汽泄漏試驗
為了探索在蒸汽泄漏陰影檢測中背景差分方法的有效性,選用了3種算法與本文所提供的改進算法做對比分析,本文算法優于其對比算法。本算法的主要參數設置見表2。

表2 主要參數設置與初始化
2.2.1 主觀結果對比分析
為了驗證所提改進方法的優勢,選用LSBP[18](Local SVD Binary Pattern)、GMG[19](三位作者的姓氏首字母簡寫)、CNT[20](CouNT)三種方法與本文所提方法在steamTS200inf數據集上進行對比,其檢測結果對比如圖6所示。
從中可以看到,所有的方法都存在不同程度的噪聲點,GMG算法幾乎無法檢測到大片的蒸汽陰影,LSBP和CNT檢測到的蒸汽具有較為明顯的空洞與裂縫,檢測到的前景目標不是很完整。相比這幾種算法,本文提到的改進算法檢測到的目標非常完整,雖然整幅圖像去噪方面并無明顯優勢,但是對目標前景的邊緣與內部噪聲抑制非常明顯。
2.2.2 檢測結果客觀評價分析
為了評估算法對蒸汽泄漏的檢測能力,本文根據分類任務的常用評價模型好壞的方法及概念計算了相關指標并對四種算法做了對比,以未泄漏、輕微泄漏、中度泄漏、嚴重泄漏為分類標簽,根據實驗數據集steamTS200inf,依據時間順序,將序列幀劃分為四個階段,即前15幀為0類未泄漏,第16幀到第20幀為1類輕微泄漏,第21幀到第25幀為2類中度泄漏,從第25幀到218幀均為3類嚴重泄漏。

圖6 steamTS200inf 數據集檢測結果對比分析
本文使用精準度(accuary)、準確率(precision)、召回率(recall)和F1分數作為泄露二分類的評價指標。在本文的分類任務中,對每一幀圖像的對應i類(i取值0,1,2,3)預測結果可以分為TP真正例、TN真負例、FP偽正例、FN偽負例,它們的含義如表3所示。

表3 混淆矩陣示意
在機器學習中,精度可以表示為式(12),其是對分類器分類精度的整體評價,是預測正確的樣本量和總樣本量的比值。
(12)
準確率表示為式(13),是預測i類中正確分到對應類的比例,取值為0~1,越接近1代表分類模型越好;召回率表示為(14),是預測為i類的樣本占所有i類樣本的比例,取值為0~1,同樣約接近1越好,召回率和準確率互相矛盾,成反比關系,因此需要用F分數平衡矛盾,定義如式(15),是權重為α的F和R的加權調和平均,α為1時即為F1分數。

(13)

(14)
(15)
當不需要泄漏等級判斷,僅做泄漏和未泄漏的二分判別時,本文定義未泄漏卻預測為泄漏的樣本量比上真實泄漏樣本量為泄漏誤報率,預測真實泄漏樣本量比上真實標簽泄漏量的值為泄漏報警率,該值越接近1越好,可以大于100%。試驗結果如表4所示。
從表4中可以看到,文使用算法泄漏報警率最接近1,檢測效果最好,LSBP算法靈敏度較高,超出了100%,誤報較多,GMG算法對于本場景的識別效果最差,只有11.33%的報警率。準確率和召回率均是二分類指標,當用于多分類時,本文根據樣本在總樣本中所占比例為4類結果分配權重取加權均值得到對應的指標,可以看到,各個泄漏等級類i的檢測具有不同的特征閾值,導致其他算法的F1指標與i(i=1,2,3)類精準率并不高,加之各類樣本不均衡,會出現取值為0的結果。但蒸汽泄漏問題最關注的是泄漏與否,即二分問題,可以看到本文算法及其他算法在泄漏報警率上與誤報率上均表現較佳,除GMG算法外均可達95%以上,誤報率低于5%。
為了客觀評價本文方法對蒸汽泄漏紅外陰影目標檢測的有效性。借鑒圖像分割任務中的相關評價指標,本文使用索倫森-骰子系數(Dice Coefficient)利用數據集第218幀標注結果度量蒸汽泄漏分割檢測效果。Dice是一種集合相似的度量函數,用于計算樣本的相似度,其通常定義為式(16):

(16)
在背景與前景的分割問題中,蒸汽前景像素點為真值(陽性),背景像素點為負值(陰性),其中TP(True Positive)表示正確的分為陽性的像素數,即實際為蒸汽前景,也正確檢測為蒸汽前景的像素個數;FP表示錯分為陽性的像素個數,即被錯誤歸到蒸汽前景的背景像素的個數;FN表示錯分為陰性的像素個數,即錯誤檢測為背景像素的蒸汽前景像素的個數。

表4 試驗檢測分類結果指標圖
從圖6和表5中可以看到,MG算法的Dice最低,與真實值相差最大;CNT和LSBP算法的度量值接近,本文改進的混合高斯背景差分法得分最高,為0.7831,驗證了該算法在蒸汽泄漏紅外目標檢測中的有效性。

表5 分割Dice指標比較
本文實現了對靜態背景下的蒸汽泄漏檢測,并提出一種改進的基于混合高斯模型的背景差分法。該方法在與目前主流的其他背景差分法的對比中,在泄漏報警率及Dice指標上有更優異的表現。以真實的紅外蒸汽泄漏數據做實驗分析,實驗結果表明,基于改進GMM背景差分方法可以實現對紅外蒸汽視頻的泄漏檢測。
本文提出的方法是一種近于無監督學習的方法,這是本文工作的主要優勢,同時從原理來看,本文的方法也具有對類似靜態背景目標進行檢測的通用性。由于樣本數據的長尾效應,本文并沒有機會使用大量的泄漏數據去獲取背景模型特征。在日后的研究與工作中,將建立更大的數據集,通過基于深度學習的圖像分割與建模方法實現對蒸汽泄漏類型目標的識別與定位;并將本文方法在其他動態目標檢測領域進行拓展。