樊 博,田 瑞,金旭榮,郭林明
(1.國網(wǎng)寧夏營銷服務(wù)中心(計量中心),寧夏銀川 750011;2.四川大學(xué)電氣工程學(xué)院,四川成都 610065)
芯片元器件是諸多設(shè)備的核心部件,但在生產(chǎn)過程中,可能會出現(xiàn)芯片誤用、混用等問題[1]。隨著智能檢測技術(shù)的快速發(fā)展,基于圖像的器件型號識別得到廣泛研究,它結(jié)合數(shù)字圖像處理技術(shù),能快速根據(jù)圖像信息來識別芯片型號,能夠提升檢測效率。但圖像獲取過程中,往往會存在一定的噪聲,這會影響檢測的準(zhǔn)確性[2],為此需要對芯片圖像的去噪進行研究。
目前,圖像去噪算法主要分為空間域去噪和變換域去噪[3],空間域去噪包括:均值濾波[4]、高斯濾波[5]、非局部均值濾波(non-local means filter,NLM)[6]等??臻g域濾波有著計算簡單和處理速度快的優(yōu)點,但不能達到很好的去噪效果。變換域去噪包括基于小波變換的算法[7]、經(jīng)驗?zāi)B(tài)分解(empirical mode decomposition,EMD)[8]和變分模態(tài)分解(variational mode decomposition,VMD)[9]等。變換域濾波的去噪效果比空間域有一定提升,但在某些場景也會出現(xiàn)細(xì)節(jié)缺失的問題。
近年來,變換域去噪算法在圖像處理領(lǐng)域得到了廣泛的應(yīng)用。文獻[10]使用二維經(jīng)驗?zāi)B(tài)分解對圖像信號進行處理,但該算法存在對噪聲較為敏感、缺乏堅實的理論基礎(chǔ)和需要對插值進行選擇等不足。文獻[11]利用2D-VMD和中值濾波結(jié)合的算法對圖像進行去噪處理,相比經(jīng)典的濾波算法,取得降噪性能上的一些提升,但需要人為設(shè)置模態(tài)個數(shù)K值,缺乏自適應(yīng)性??烧{(diào)Q因子小波變換(tunable Q-factor wavelet transform,TQWT)[13]作為改進的離散小波變換(discrete wavelet transform,DWT),有小波靈活多變和魯棒性好的優(yōu)點,計算量比VMD低,而且分解效果也出色。文獻[12]將TQWT應(yīng)用于低頻振蕩信號的去噪,獲得了不錯的去噪效果。
針對芯片圖像在去噪過程中對字符特征保留的要求,將變換域中的TQWT算法和噪聲估計算法結(jié)合,提出一種圖像去噪算法。提出圖像的TQWT分解方法,使用噪聲估計算法估計高頻子帶的噪聲方差,并以此優(yōu)化TQWT參數(shù)。在頻域分解圖像,將噪聲有效分離并保持芯片字符輪廓的清晰,有助于芯片圖像的識別。
TQWT是一種易于調(diào)諧小波基振蕩特性的改進DWT,有品質(zhì)因子Q、冗余系數(shù)r和分解層數(shù)J3個參數(shù)。Q為中心頻率和帶寬的比值,主要影響小波的振蕩屬性。TQWT在頻域設(shè)計小波,通過調(diào)節(jié)品質(zhì)因子Q和冗余系數(shù)r,就可以改變小波濾波器的縮放尺度α和β,得到契合信號頻率特性的小波基。α、β和Q、r的關(guān)系如式(1)所示[13]:
(1)
(2)
(3)
為了使用TQWT對二維圖像進行分解,參考圖像的離散小波分解,提出了圖像的TQWT分解方法。首先沿水平方向或者豎直方向,對每一行/列像素進行TQWT分解,然后對得到的子帶按原行/列順序組合就可以實現(xiàn)圖像的TQWT分解。圖像的TQWT行分解如算法1所示,算法基于MATLAB語法表示,其中TQWT_dec表示TQWT分解函數(shù)。
算法1:圖像沿水平方向的TQWT分解輸入:原始圖像I,r,Q,J輸出:圖像分量decImage1:(N,M)=size(I)2:decTemp=zeros(J+1,M),decImage=zeros(N,M,J+1)3:Foreachi∈1,2,…,N,do4: decTemp(1:J+1,:)=TQWT_dec(I(i,:),r,Q,J)5: Foreachj∈1,2,…,J+1do6: decImage(i,:,j)=decTemp(j,:)7: endFor8:endFor
TQWT的冗余系數(shù)r和品質(zhì)因子Q對圖像分解效果的影響很大,選擇合適的r和Q能夠有效地將噪聲分量分離。噪聲一般屬于高頻分量,在參數(shù)合適的情況下,能將噪聲分離在高頻子帶。因此可以通過評估高頻子帶的含噪情況來優(yōu)化參數(shù)。本文使用噪聲估計[14]的方法來估計TQWT的高頻子帶的噪聲方差,方法流程如下:
(4)
式中:F-1為反伽瑪累積函數(shù);τ為置信系數(shù),設(shè)為0.99;Dh和Dv分別代表水平和垂直導(dǎo)數(shù)算子。
(3)在弱紋理區(qū)域中,假設(shè)噪聲方差是常數(shù),使用極大似然估計來估計噪聲參數(shù)。根據(jù)弱紋理區(qū)域信息,似然函數(shù)可表示為
(5)
(6)
考慮到芯片圖像主要包含純色背景和字符,且參數(shù)J具有一定的適用性,所以使用固定的J=3。而TQWT的參數(shù)r和Q會影響到小波基的振蕩特性,對圖像分解的影響較大。參數(shù)r和Q的優(yōu)化流程如下:
(1)設(shè)置參數(shù)r和Q的遍歷范圍及步長r∈[rlow∶τr∶rup]、Q∈[Qlow∶Qr∶Qup]。
(2)得到所有的參數(shù)組合P={(r,Q,J)}。
(3)使用參數(shù)為(r,Q,J)∈P的TQWT分解圖像,得到Vj,j=1,2,…,J+1,并估計高頻子帶V1的噪聲強度。
(4)根據(jù)估計噪聲強度的最大值選擇最優(yōu)參數(shù)(r,Q,J)。
為了提升芯片圖像的去噪效果,提出了基于噪聲估計和可調(diào)Q因子小波變換的圖像去噪算法,算法流程如圖2所示。
圖像去噪的評價指標(biāo)有峰值信噪比(PSNR)和結(jié)構(gòu)相似性(SSIM)。PSNR的值越高,所含噪聲越少。SSIM的值越大,去噪后的圖像和原圖像的相似性越高。兩者的計算公式如下[15]:
(7)
(8)
式中:x和y分別為原始圖像和去噪后圖像;n為每個像素的比特數(shù),對于灰度圖像,n=8;ux、uy、σx、σy分別為x、y的均值和方差;σxy為協(xié)方差;L為圖像像素值的動態(tài)范圍,取255;k1和k2為超參數(shù),取0.01和0.03。
為了驗證本文算法的可行性,進行了仿真實驗。仿真環(huán)境為:CPU為AMD Ryzen5 2600,16 GB內(nèi)存和Windows10操作系統(tǒng),仿真軟件為MATLAB2019a。對芯片圖像添加均值為零,方差為0.04的高斯白噪聲進行實驗。
首先進行參數(shù)尋優(yōu)實驗,設(shè)置r∈[1.1∶0.1∶4],Q∈[1∶0.1∶3],J=3,參數(shù)尋優(yōu)結(jié)果如圖3所示。從峰值處得到最優(yōu)參數(shù)為:(r,Q,J)=(2,1,3)。
然后使用最優(yōu)參數(shù),對含噪圖像進行分解去噪,結(jié)果如圖4所示??梢钥吹?,噪聲被較好分離在高頻子帶V1,而子帶V2和V3主要包含字符的邊緣信息,V4保留了圖像的總體信息。經(jīng)過水平方向和豎直方向的分解去噪,圖像的大部分噪聲被去除,芯片字符信息也被較好地保留。
為了驗證本文算法的去噪性能,對比了高斯濾波、2D-VMD去噪算法、維納濾波、非局部均值去噪濾波和TV-L1去噪算法。對2幅含噪芯片圖像進行去噪,結(jié)果如圖5和圖6所示??梢钥闯觯咚篂V波和2D-VMD去噪丟失了一些紋理細(xì)節(jié),導(dǎo)致圖像清晰度不高;維納濾波和TV-L1算法出現(xiàn)了字符邊緣被模糊化的現(xiàn)象;本文算法較對比算法有更好的畫面純凈度,更好地去除了字符上和背景上的噪點,并且較好地保留了字符的紋理和邊緣信息。
為了更好地從去噪指標(biāo)上評價本文算法,對20張芯片圖像添加方差為0.02~0.06高斯噪聲,計算不同算法去噪后圖像的PSNR和SSIM,并取結(jié)果的均值,得到表1和表2??梢钥吹?,本文方法在PSNR和SSIM指標(biāo)中都有最好的表現(xiàn),能夠適用于不同的含噪情況,具有較好的魯棒性,比處理方法類似的2D-VMD去噪算法更好。非局部均值去噪在低噪聲中有比較好的表現(xiàn),但是隨著噪聲的增大,指標(biāo)下降也較大。
表2 不同去噪算法的SSIM比較
為了更好去除芯片圖像噪聲,并且保留字符信息。提出了將可調(diào)Q因子小波變換和噪聲估計相結(jié)合的去噪算法。提出了TQWT的圖像分解方法,將噪聲和圖像信息有效分離。然后使用噪聲估計的方法研究了TQWT的參數(shù)優(yōu)化問題,根據(jù)高頻子帶的弱紋理區(qū)域的估計噪聲方差來優(yōu)化TQWT參數(shù)。最后使用參數(shù)優(yōu)化的TQWT沿水平和豎直方向?qū)π酒瑘D像進行去噪,得到了去噪效果好、字符信息保留完好的去噪圖像。也通過對比實驗說明了算法的有效性,并證明了算法在去噪指標(biāo)上的提升。