樊 博, 金旭榮, 田 瑞,李昊怡
(1.國網寧夏營銷服務中心(計量中心),銀川 750002;2.四川大學 電氣工程學院,成都 610065)
隨著電力物聯網的蓬勃發展,智能電表作為其中重要的末端感知設備,其可靠性檢測受到越來越多的重視。而芯片型號識別是可靠性檢測的重要一環,智能電表在其生產過程中,可能會出現芯片誤用、安裝位置錯誤等問題[1]。目前,基于機器視覺的智能電表元器件檢測技術發展較快[2],它結合數字圖像處理技術,能快速、準確地檢測智能電表芯片型號。但原始的芯片圖像在采集過程中易受到各種噪聲影響,如高斯噪聲、白噪聲、顆粒噪聲等。這些噪聲會模糊芯片圖像的字符信息,從而增加智能電表的檢測難度。為了降低芯片圖像中夾雜的噪聲影響,最大程度地還原圖像信息,保留圖像的原始特征,去除無用信息,增強清晰度[3],需要對芯片圖像進行去噪。
目前芯片圖像去噪算法主要分為空間域去噪和變換域去噪[4],空間域去噪包括:中值濾波[5]、維納濾波[6]、非局部均值濾波(NLM, non-local mean)[7]等。空間域濾波有著計算簡單和處理速度快的優點,但不能達到很好的去噪效果。變換域去噪包括基于小波變換的算法[8]、經驗模態分解[9]( EMD,empirical mode decomposition)和變分模態分解[10](VMD,variational mode decomposition)等。變換域濾波的去噪效果較為明顯,但去噪后的圖像容易丟失細節,導致圖像的清晰度不高。
近年來,變換域去噪算法在圖像處理領域得到了廣泛的應用。Nunes[11]等人提出二維經驗模態分解對圖像信號進行處理,但該算法存在對噪聲較為敏感、缺乏堅實的理論基礎及需要對插值進行選擇等不足。為了克服上述的缺陷,Dragomiretskiy[12]等提出VMD的擴展版本,即二維變分模態分解(2D-VMD)。2D-VMD是一種自適應、非遞歸的分解算法,類似于一維變分模態分解,它能將二維圖像分解成多個具有不同中心頻率的固有模態函數(IMF,intrinsic mode function)。Dragomiretskiy等學者將2D-VMD應用到霧霾圖像的去噪處理上,并根據原始圖像和重構圖像的峰值信噪比(PSNR,peak signal-to-noise ratio)確定分解的模態個數,但存在需要預設K取值范圍的問題。文獻[13]利用2D-VMD和中值濾波結合的算法對圖像進行去噪處理,相比經典的濾波算法,雖然PSNR值有了一定提升,取得較好的降噪效果,但需要人為設置模態個數K值,缺乏自適應性。
空間域濾波中的非局部均值濾波是近年來去噪效果較好的一種濾波算法,它利用圖像之間的相似性,通過加權平均的方式處理待濾波像素點,能在去噪的同時保持圖像自身的結構信息,非常適用于處理局部信息相似度較高的圖像。
針對空間域濾波和變換域濾波的優缺點,結合芯片圖像局部信息相似度較高的特點,本文將變換域中的2D-VMD算法和空間域中的NLM算法結合,提出一種應用于智能電表芯片圖像的去噪算法。首先利用2D-VMD將含有噪聲的芯片圖像分解為多個不同的模態分量,根據中心頻率觀察法確定分解層數K,克服了人為設置K的缺點;然后分別計算每個模態分量與原始圖像的SSIM,根據預設的SSIM閾值選擇有效的子模態進行重構,去除噪聲項;最后使用NLM濾波對重構后的圖像進行處理,達到二次去噪的效果,減少噪聲對芯片字符的干擾。
類似一維VMD,2D-VMD可以將二維信號非遞歸、完全自適應地分解為多個具有不同中心頻率的子模態。2D-VMD以分解模態的估計帶寬之和的最小值為優化目標,對應的二維約束變分模型可表達為:
(1)
式中,sk={s1,s2,…,sK}為分解后的K個模態分量(IMF),ωk={ω1,ω2,…,ωK}為對應的中心頻率。
在式(1)中引入二次懲罰函數和拉格朗日乘數將約束性變分問題轉換為非約束變分問題。式(1)的擴展的拉格朗日表達式可表示為:
(2)

(3)
通過Parseval傅里葉變換,將式(3)表示為:
?ω∈?k,?k={ω|[ω,ωk]}
(4)

(5)
拉格朗日乘子λ,則更新表達式為:
(6)
然后對IMF進行傅里葉逆變換并計算信號殘差。重復上述迭代過程,直到信號殘差值滿足式(7),輸出各個子模態。
(7)
芯片圖像的噪聲信息主要存在于高頻帶中,2D-VMD能夠有效分離原始圖像中的有效分量和高頻噪聲分量,將高頻成分濾波后,重構回去就能夠得到達到抑制高頻噪聲的目的。
非局部均值濾波算法是一種去噪效果較好的空間域濾波算法[14]。它以圖像中的某個待濾波像素點為中心,構成一個局部區域,尋找圖像中與此局部區域相似的區域,根據這些區域內像素點進行加權平均達到濾除噪聲的效果。
NLM濾波能充分利用圖像本身的相似性,通過計算相似的圖像塊與當前噪聲所在圖像塊之間的相似度,進而利用加權平均來恢復待濾波的像素點。而智能電表中的芯片圖像較為特殊,一般由背景和字符組成,這就導致芯片圖像中能利用的相似、冗余的信息較多,因此,利用非局部均值濾波對芯片圖像進行處理的適用性較好,符合其濾波算法的相似性原理。恰當的利用這些信息可以有效的去除噪聲,選擇NLM濾波進行二級濾波處理能取得較為突出去噪效果。
2D-VMD與NLM級聯算法流程如圖1所示。該算法可分為兩步:1)一級濾波:首先輸入待濾波圖像,利用2D-VMD將原始圖像分解為多個子圖;然后根據中心頻率觀察法確定分解層數K;引入結構相似性系數SSIM來衡量各個分解模態與原圖像的相關性,并根據文中所提出的閾值的設置方法,通過預設的閾值確定分解模態中的噪聲項并去除,如此將所有的模態計算過后,重構剩下的有效分量,一級濾波結束;2)二級濾波:對重構圖像進行NLM濾波處理,進一步去除重構圖像的剩余噪聲。

圖1 算法流程圖
假設原始芯片圖像為f(x,y),其中(x,y)∈Z2。根據式(1)~(7),原始芯片圖像f(x,y)經過2D-VMD分解后,結果為k個具有不同中心頻率的模態分量。

(8)
式中,sk為k個模態分量,ωk為各個模態分量對應的中心頻率。
傳統的2D-VMD算法需要人為設置K值,缺乏自適應性,而2D-VMD的分解層數K對圖像分解效果的影響很大,選擇合適的K能夠有效地將噪聲分量分離出來。若K值過小,則分解不充分,易導致模態混疊的問題;若K值過大,則分解過度,易產生冗余分量,不利于對模態分量的分析[15]。優化K值的關鍵是找到欠分解和過分解的臨界點。2D-VMD是一種頻域分解技術,模態中心頻率的變化可以反映分解狀態:過分解情況下會出現各模態的中心頻率非單調遞增[16]。
(9)
式(9)表明通過獲取中心頻率單調遞增對應的最大K值,可以得到最優的K值。
經2D-VMD分解后,含噪圖像被按照中心頻率分解成K個模態分量,而噪聲分量和有效分量的分布是不確定的,不能通過固定順序來篩選有效分量,為此需要模態評價指標來確定有效分量和去除噪聲分量。為了去除噪聲模態,本文選擇使用SSIM來客觀評估原始圖像和模態之間的相似性。SSIM的值越大則兩幅圖像越相似。SSIM定義為:
k∈[1,K]
(10)

從圖1中可以看出進行2D-VMD濾波之后,再進行NLM濾波,閾值的設置需要考慮細節的保留和噪聲的消除,在去掉噪聲的情況下盡可能多地保留圖像的細節。經多次實驗得知,噪聲分量可以被較好分離在某一個模態,且含有的有效信息很少,與含噪圖像的相似性很低。其余分量因為包含了原圖像的輪廓、邊緣等信息其相似性與含噪圖像的相似性較大。經SSIM數據對比得知,噪聲分量的SSIM值小于最大SSIM值的1/10,為此得到了閾值計算公式:
(11)
結合式(10)、(11),SSIM(f,sk) 在重構圖像g(x,y)中建立一個以待濾波像素點i為中心的鄰域矩陣g(i),尋找出以相似像素點j為中心的鄰域矩陣g(j),將兩者高斯加權的歐式距離作為它們之間的相似度距離l(i,j),如式(12)所示: (12) (13) 式(12)中,λ>0是高斯核標準差,式(13)中r和d分別表示鄰域矩陣的半徑和邊長。利用式(14)和(15)計算像素點i和像素點j的相似度,即權重ω(i,j)。 X(i) = ∑je-l(i,j)/h2 (14) (15) 式(14)中,X(i)為歸一化系數。h為控制高斯函數衰減速度的平滑系數,h越小圖像的邊緣信息保持較好,但去噪效果不明顯。h越大去噪效果越好,但會使圖像模糊。h估計值的選取會直接影響圖像去噪的結果[17]。 根據式(12)~(15),通過加權求和公式即可算出該像素點的估計值: NL[g](i)=∑ω(i,j)g(j) (16) 其中:權重ω(i,j)應滿足0<ω(i,j)≤1及∑ω(i,j)=1兩個條件。 利用估計出的像素值代替重構圖像中的原始像素值即可得到最終的去噪圖像g′(x,y)。 算法的實現方法如算法1所示的偽代碼,其中VMD_2D(·)表示2D-VMD分解函數,NLM(·)為NLM去噪函數。 算法1:2D-VMD和NLM級聯去噪 輸入:含噪圖像f,搜索窗口r,鄰域窗口t k←2 whilek<20 do s,ω←VMD_2D(f,k,α←5000)//進行2D-VMD分解 D←Diff(ω)//計算中心頻率序列的差分 fori=1→kdo ifD(i++)<0 then//判斷非單調遞增是否出現 break end if end for ifi>kthen break end if k←k+1 end while K←k-1//得到最優的K值 s←VMD_2D(f,K,α←5000)//使用自適應參數進行2D-VMD分解 ssim←SSIM(f,s)//計算每個分量和原圖的結構相似性 T=max(ssim)/10//計算模態選擇的閾值 fori=1→Kdo //去除噪聲分量,并重構信號,進行一級去噪 ifssim(i++)>=Tthen g←g+s(i-1) end for end function 圖像去噪的評價指標有均方誤差值(MSE)和峰值信噪比(PSNR)。客觀參數指標能夠客觀、科學地分析所提算法性能的可靠性和準確性。PSNR的值越高,所含噪聲越少。MSE的值越小,去噪后的圖像和原圖像的差別越小。兩者的計算公式如下: (15) (16) 式中,f(i,j)和g(i,j)分別表示原始圖像和去噪后圖像的像素點,n為每個像素的比特數,對于灰度圖像,n=8。 本文算法將2D-VMD與NLM濾波進行有機結合,利用2D-VMD將圖像分解為具有不同中心頻率的K個模態分量,自適應地將圖像中的高頻噪聲進行抑制。充分利用NLM濾波在圖像均質區域可以取得良好抑噪效果的特點,對一級濾波2D-VMD處理后的圖像進行二級濾波,達到圖像去噪的目的。 為了驗證本文算法的可行性,進行了仿真實驗。實驗選取大小為410×320的實驗芯片圖像,添加了方差為0.02~0.06的高斯白噪聲作為待去噪圖像。實驗選取均方誤差值和峰值信噪比兩個客觀參數作為圖像質量的評價指標,并與中值濾波、維納濾波、高斯濾波等6種傳統濾波方法作比較。實驗環境為:Intel Core i7,16 GB內存和Windows 10操作系統,仿真軟件為Matlab2016b。 為了成功分離出含噪圖像中的噪聲分量,便于對重構后的有效分量進行后續處理,如圖2所示,選取標準芯片圖像在噪聲方差為0.05時的含噪圖像作為待濾波對象。針對2D-VMD中K值的選擇,本文采取中心頻率觀察法。如圖3所示為不同的分解層數下,各個模態對應的中心頻率值。從圖中可以看出,當K=4時,中心頻率呈單調遞增的狀態,而K>4中心頻率出現了下降,即出現了過分解的情況。因此,臨界點K=4是最優的參數。2D-VMD中設置懲罰參數α=5 000,模態數K=4,能取得最好的分解效果。 圖2 原圖和含噪聲圖像 圖3 分解層數K的優化 為了能準確判斷出分解模態中的有效分量和噪聲分量,使用式(13)計算每個IMF的SSIM值,用以衡量和原圖像的相似性。為了驗證SSIM在評估圖像相似性上的可靠性,使用噪聲方差為0.05的隨機高斯白噪聲進行了5次實驗,結果如表1所示。可以看到5次實驗所得到的IMF與原圖像的相似性是一致的,即IMF1和原圖的相關性最大,剩余分量與原圖的相關性很小。根據式(14),得到的篩選閾值為T=0.04,根據閾值得到有效分量為IMF1,較好地保留了原圖像的信息。剩余的IMF2~IMF4即為原圖像的高頻成分,包括噪聲等信息。 表1 K=4時各模態分量與原圖的SSIM值 對有效分量進行疊加,并使用NLM濾波對重構后的圖像進行細化濾波處理,得到了本文算法的濾波結果,其中,設置鄰域窗口及搜索窗口的半徑分別為3和5,高斯函數衰減速度的平滑系數h=0.02。而本文中所得到的有效分量僅有IMF1,因此將IMF1作為一級濾波的結果。圖4為方差取0.05的高斯噪聲下多種算法的視覺去噪效果對比。可以看到維納濾波和均值濾波弱化了較多的字符細節,而中值濾波、高斯濾波和k近鄰濾波細節保留較好,但是圖像背景區域仍有一定噪聲。相比傳統的濾波算法,本文所提出的算法不但有最好的視覺效果,還更好地保留了芯片圖像字符的特征,有效去除了字符上的噪點,較好保留了字符的輪廓信息。 圖4 標準芯片圖像去噪結果 表2為7種不同算法在高斯噪聲均方差為0.02~0.06的PSNR值對比結果。可以看出,本文方法的PSNR值最高,也就是去噪后的圖像含噪最少。同時,隨著噪聲方差的增大,所有方法的PSNR值都有所下降,但傳統濾波算法的PSNR值受到的影響較大,其中6種傳統濾波方法PSNR值的最大差值分別為3.668 4、3.090 4、2.800 6、4.329 3、4.292 2、4.185 8。中值濾波、二維統計濾波及k近鄰濾波的PSNR值降低得較嚴重。而本文算法的最大差值為2.437。這說明所提出的算法具有良好的魯棒性和穩定性,能更好地處理不同程度噪聲的影響。表3為7種不同算法在高斯噪聲均方差為0.02~0.06的MSE值對比結果。從表中可以看出,本文算法同樣具有最好的性能指標。 同時,隨著噪聲方差的增大,所有方法的MSE值都有所增大,但傳統濾波算法的MSE值受到的影響較大,其中六種傳統濾波方法MSE值的最大差值分別為0.003 5、0.002 3、0.002 5、0.006 7、0.102 9、0.015 3。中值濾波、二維統計濾波及k近鄰濾波的MSE值增大得較嚴重,說明這三種方法的誤差較大。而本文算法的最大差值為0.002 0。相對于中值濾波、二維統計濾波和k近鄰濾波有較大的優勢。高斯濾波、維納濾波及均值濾波的MSE值相對不高,但結合圖4中這三種濾波方法的去噪結果,本文算法的視覺效果更優。這兩個客觀指標參數直觀地呈現了本文算法的特點,前者能夠較好地去除含噪圖像中的高頻噪聲成分,將有效的信息分量保留下來,后者利用芯片圖像自身的特點,能夠取得較好的濾波結果。這說明經過本文算法處理后的圖像能保留大部分原始圖芯片像的字符信息,最接近原始圖像。本文算法結合圖4、表2及表3的結果,峰值信噪比最高,均方誤差最小,從主觀及客觀的角度上取得了最優的效果。 表2 多種方法的PSNR值比較 表3 多種方法的MSE值比較 為進一步驗證可行性,將本文算法應用于智能電表的硬件檢測中,如圖5所示,其中圖像采集設備分辨率為1 920×1 080。對實際環境下采集到的3幅含噪圖像進行去噪實驗。圖6所示為去噪結果,可以看出,與實驗芯片圖像的實驗結果一致,本文算法同樣取得了較好的去噪效果,噪聲基本被濾除,也較好保留了字符的輪廓細節,減少了芯片上字符的噪點,芯片圖像的模糊度較小,芯片圖像中的背景與字符的對比度更加明顯,這有助于提高字符識別的精度。說明本文所提出的算法適用于智能電表質量檢測中芯片圖像的去噪。 圖5 實際圖像采集設備 圖6 實際含噪圖像去噪結果 針對智能電表芯片圖像在采集過程中受到噪聲的影響,導致芯片字符模糊不清,字符識別精度低等問題,本文提出了一種2D-VMD和NLM濾波級聯的芯片圖像去噪算法。算法充分結合了2D-VMD的自適應性、能去除高頻噪聲的優點及NLM濾波利用圖像相似塊去除噪聲的特點。一級濾波主要去除了芯片圖像中的高頻成分,二級濾波利用芯片圖像中的相似信息濾除芯片字符上的噪點,進一步達到精確去噪的目的。由實驗結果可知,本文方法無論在均方誤差、峰值信噪比兩個客觀參數的數值結果方面,還是在去噪后圖像的視覺效果方面,較傳統的單一濾波方法都具有更有效的去噪性能。并且隨著噪聲的增加,本文方法的去噪效果越明顯,進一步證明了本文算法的適應性和穩定性。但本文算法級聯了兩種濾波方法,導致計算量較大,因此如何進一步提高計算效率是今后的研究方向。


4 實驗結果分析
4.1 評估指標
4.2 實驗芯片圖像的實驗結果與分析






4.3 實際含噪圖像的實驗結果與分析


5 結束語