王晶晶,楊俊杰
(上海電力大學(xué)電子與信息工程學(xué)院, 上海 200090)
絕緣子由于其出色的電絕緣和機(jī)械固定性能,被廣泛用于輸電網(wǎng),配電網(wǎng)和各種變電站中[1]。因此,電力系統(tǒng)的安全、穩(wěn)定運(yùn)行與否,與絕緣子的狀態(tài)優(yōu)劣有直接關(guān)系,所以對其進(jìn)行狀態(tài)監(jiān)測具有一定的重要性?,F(xiàn)代巡檢方式中紅外智能檢測能有效地實(shí)現(xiàn)絕緣子串的自動(dòng)定位與分割,是智能檢測絕緣子串狀態(tài)的重要發(fā)展方向[2-5]。通過無人機(jī)或其他巡檢方式,采集到的絕緣子圖像環(huán)境復(fù)雜,影響絕緣子狀態(tài)判斷的準(zhǔn)確性。因此,圖像分割是關(guān)鍵點(diǎn),而邊緣檢測是對紅外圖像中絕緣子串進(jìn)行圖像分割的重要前提,為自動(dòng)檢測絕緣子狀態(tài)奠定基礎(chǔ)[6]。
邊緣大多位于背景和目標(biāo)區(qū)域之間,使圖像能進(jìn)行有效的分割,常見的邊緣模型有階梯邊緣和屋頂狀邊緣,分別指兩側(cè)像素灰度值呈階梯式下降或上升的邊緣和位于灰度值從上升到下降的轉(zhuǎn)折點(diǎn)的邊緣[7]。在紅外圖像中,絕緣子串的溫度、背景溫度有較大的差距,是典型的階躍式邊緣,據(jù)此特性,對絕緣子串進(jìn)行理想的邊緣檢測具有可行性[8]。邊緣檢測算法中,常用的一階算子主要有Roberts,Sobel和Prewitt,二階算子主要有Laplacian,LoG等[9],但這些算子易受噪聲,光照等因素影響。傳統(tǒng)的Canny算子是一種多階段算法融合在一起的邊緣檢測,但需要手動(dòng)設(shè)置閾值,且對圖像噪聲敏感[10]。文獻(xiàn)[11]提出了一種基于Canny算子的自適應(yīng)邊緣檢測算法,該算法通過尋找局部梯度幅值最高點(diǎn)改進(jìn)非極大值抑制。文獻(xiàn)[12]改變了傳統(tǒng)Canny的濾波方式,并對非極大值抑制進(jìn)行改進(jìn),檢測到更多的邊緣細(xì)節(jié)。文獻(xiàn)[13]提出一種迭代式自適應(yīng)的Canny邊緣檢測算法,通過迭代法求出梯度直方圖的高低閾值。雙傘形絕緣子中靠近鐵帽的面積較小,易被當(dāng)做噪聲過濾,閾值設(shè)定不準(zhǔn)確,會(huì)引起邊緣丟失,準(zhǔn)確度下降等問題。以上方法在一定程度上能解決邊緣丟失問題,但在閾值方面還有待提高。
筆者提出基于高壓絕緣子串紅外圖像邊緣檢測的改進(jìn)Canny算法。首先對高壓絕緣子串紅外圖像進(jìn)行預(yù)處理;然后采用同時(shí)考慮像素點(diǎn)的空間域信息與值域信息的雙邊濾波器代替原有的高斯濾波器進(jìn)行圖像平滑處理;最后將基于熵的圖像自動(dòng)分塊、最優(yōu)閾值、Otsu相結(jié)合的改進(jìn)自適應(yīng)閾值法代替?zhèn)鹘y(tǒng)的人工設(shè)定進(jìn)行閾值選取。結(jié)果證明該邊緣檢測算法能從高壓絕緣子串紅外圖像中有效的檢測出輪廓清晰、完整度高、失真小的有效邊緣。
1)一階微分算子
常見的一階微分算子主要有Roberts、Sobel、Prewitt等,它們利用圖像邊緣的階躍性進(jìn)行邊緣檢測[14]。
2)小波變換模極大值邊緣檢測
小波變換模極大值(WTMM)邊緣檢測具有方向敏感性,原理是取小波函數(shù)作為平滑函數(shù)的導(dǎo)數(shù),利用小波變換的模值性質(zhì)提取邊緣點(diǎn),達(dá)到邊緣檢測的目的[15]。
3)形態(tài)學(xué)邊緣檢測
形態(tài)學(xué)邊緣檢測(MG)利用膨脹圖像與腐蝕圖像之差得到圖像,用梯度刻畫圖像灰度級劇烈變化的區(qū)域,突出高亮區(qū)域的外圍,對噪聲比較敏感[16-17]。
傳統(tǒng)Canny的流程圖見圖1。
圖1 傳統(tǒng)Canny邊緣檢測算法流程圖Fig.1 Flow chart of traditional Canny edge detection algorithm
具體實(shí)現(xiàn)過程如下:
1)圖像高斯濾波
一維高斯函數(shù)為
(1)
二維高斯函數(shù)為
(2)
I(x,y)=G(x,y,σ)×f(x,y)
(3)
f(x,y),I(x,y)分別為輸入圖像和經(jīng)過卷積運(yùn)算濾波后的圖像。
2)計(jì)算圖像的梯度方向和幅值
利用2×2鄰域內(nèi)的方差計(jì)算每個(gè)像素點(diǎn)一階偏導(dǎo)數(shù)Ix和Iy:
(4)
(5)
點(diǎn)(x,y)對應(yīng)的梯度幅值M、方向θ依次為
(6)
(7)
3)非極大值抑制處理
對于非極大值抑制而言,它不僅可以細(xì)化圖像的邊緣,而且對非邊緣點(diǎn)有抑制作用[18]。具體做法是,將鄰域中心即當(dāng)前像素點(diǎn)與正負(fù)方向上的相鄰像素進(jìn)行比較,保留或置零當(dāng)前像素點(diǎn),抑制非極大值,實(shí)現(xiàn)對邊緣的細(xì)化處理。
4)雙閾值提取真實(shí)邊緣
噪聲會(huì)引起邊緣間斷,因此非極大值抑制后并不能完全描述邊緣特性,設(shè)定高閾值Th和低閾值T1。基于高低閾值,將邊緣像素分為3類,梯度大于Th被標(biāo)記為強(qiáng)像素,代表低邊緣靈敏度;梯度小于Th大于T1被標(biāo)記為弱像素,代表高邊緣靈敏度;梯度小于T1則被標(biāo)記為非邊緣。邊緣像素借助雙double閾值去除假陽性并處理滯后閾值,從而提高真實(shí)邊緣的可信度,減少偽邊緣[19-20]。
1.3.1 峰值信噪比(PSNR)
PSNR簡稱峰值信噪比,主要用于檢測圖像的失真率或測量噪聲水平[21]。
(8)
對于灰度數(shù)據(jù)來說,若MAX對應(yīng)的數(shù)值為255,代表灰度極大值。MSE代表兩張圖像之間的均方差,具體定義如下:
(9)
式中,K(i,j),I(i,j)分別表示第1張和第2張圖像的像素點(diǎn)值,m和n為像素值個(gè)數(shù)。
1.3.2 結(jié)構(gòu)相似性(SSIM)
SSIM是權(quán)衡圖像質(zhì)量與圖像間相似性的算法[22],對于圖像x和y, 其SSIM值為
(10)
式中,ux,uy為圖像塊所有像素;δx,δy,δxy,分別為圖像像素值的標(biāo)準(zhǔn)差和協(xié)方差;C2,C2為常數(shù)。
PSNR是圖像處理中應(yīng)用最為廣泛的數(shù)值評估方式之一,其計(jì)算簡便,但也存在“不夠接近人眼的直觀感覺”的局限性。而SSIM致力于向人類感知看齊,通過亮度、對比度、結(jié)構(gòu)對比,可以抵消PSNR無法權(quán)衡圖像結(jié)構(gòu)相似的缺陷。因此,同時(shí)使用兩種評估方式,測評結(jié)果更具有說服力。
對于傳統(tǒng)Canny算子使用的高斯濾波,在保護(hù)邊緣信息方面表現(xiàn)較差,濾波同時(shí)會(huì)使邊緣模糊。在閾值選取方面,傳統(tǒng) Canny算子依賴于手動(dòng)調(diào)節(jié)高低閾值,自適應(yīng)性差。筆者提出一種改進(jìn)方法,首先用能完整保存邊緣的雙邊濾波代替高斯濾波對預(yù)處理后的圖像進(jìn)行降噪處理;再基于熵,將圖像自動(dòng)分塊;最后結(jié)合最優(yōu)閾值與Otsu對每個(gè)圖像塊進(jìn)行自適應(yīng)閾值選取。
雙邊濾波器能夠在高斯濾波的基礎(chǔ)上同時(shí)考慮像素點(diǎn)的空間域信息與值域信息。當(dāng)圖像變換緩慢時(shí),相鄰像素點(diǎn)接近,進(jìn)行常規(guī)濾波會(huì)造成邊緣模糊[23]。而雙邊濾波除了包含點(diǎn)之間的距離影響,還增加了像素灰度值的影響。因此在完成圖像去燥的同時(shí),還能保存完整邊緣。主要依據(jù)是,當(dāng)邊緣兩側(cè)的像素值相差較大時(shí),權(quán)重降低,因此相似一邊的鄰域權(quán)重影響更大,從而防止邊緣被模糊。像素點(diǎn)P(i,j)對應(yīng)的輸出值公式如下:
(11)
(12)
(13)
w=wd(i,j,k,l)×wr(i,j,k,l)
(14)
f(k,l)代表不同像素點(diǎn)的值;wd,wr依次代表位置域高斯函數(shù)、像素值亮度高斯函數(shù)。
改進(jìn)算法利用熵對圖像進(jìn)行分塊,分塊后可以有效地將熵值較大的圖像分塊為熵值較小的圖像,從而使得下一步計(jì)算出的閾值可以更準(zhǔn)確的區(qū)別此局部的邊緣。
分塊原理為,如果在進(jìn)行分塊后熵值減小,繼續(xù)分塊;否則,停止分塊,步驟如下:
1)以灰度熵P表示圖像的復(fù)雜度,根據(jù)式(15)計(jì)算原始圖像的熵P0。
(15)
式中,i表示灰度值,f0i為灰度為i的點(diǎn)所占總圖像的比值。
2)如圖2所示,先把圖像分為4塊,求取P1,P2,P3,P4,若滿足:
圖2 分塊示意圖Fig.2 Block diagram
(16)
則表示系統(tǒng)混亂程度減小,可以進(jìn)行分塊。否則,反而增加了系統(tǒng)混亂程度,不需要進(jìn)行分塊。
3)對于分塊后的圖像重復(fù)步驟(2),直到滿足式(17)。
(17)
式中,ε表示熵增閾值,在本實(shí)驗(yàn)中另ε=0.05。
為了使閾值分割更精確,提取更全面,本研究提出改進(jìn)方法,如下:
1)假設(shè)基于熵將圖像n分割成i塊。
2)分別對n0,n1,…,ni-1中每一塊圖像進(jìn)行閾值分割。
3)用迭代式最優(yōu)閾值選擇法求取ni的高閾值,從而將ni分割出真實(shí)邊緣和非真實(shí)邊緣。
4)用Otsu法求取ni的低閾值,從而將非真實(shí)邊緣部分分割成偽邊緣部分和非邊緣部分。
5)將處理后的n0,n1,…,ni-1圖像塊還原至初始位置,得到圖像n,,完成圖像邊緣提取。
其中,迭代式最優(yōu)閾值選擇算法的步驟見圖3。
圖3 迭代法最優(yōu)閾值流程圖Fig.3 Iterative method optimal threshold flow chart
本研究改進(jìn)Canny算法具體流程見圖4。
圖4 改進(jìn)Canny算法流程圖Fig.4 Improved flowchart of Canny algorithm
本研究使用Windows平臺(tái)下的MATLAB R2019a軟件,對各個(gè)算法進(jìn)行仿真實(shí)驗(yàn)。
圖5-圖8分別為原始圖像、高斯噪聲圖像、高斯濾波圖像、雙邊濾波圖像。
圖5 原始圖像Fig.5 Original image
圖6 加入高斯噪聲Fig.6 Gaussian noise image
圖7 高斯濾波Fig.7 Gaussian filtering
圖8 雙邊濾波Fig.8 Bilateral filtering
清晰圖像比模糊圖像的邊緣更加銳利,邊緣像素灰度值變大,因而有更大的梯度值。為將圖7、圖8進(jìn)行清晰度對比,本研究選取能量梯度函數(shù)(Energy of Gradient, EOG)作為濾波圖像清晰度評判參考依據(jù)。該函數(shù)采用圖像上相鄰像素點(diǎn)的差分計(jì)算局部梯度,其計(jì)算公式為
(18)
式中:I為當(dāng)前圖像,I(x,y)為點(diǎn)(x,y)處的像素值。在MATLAB中做處理,結(jié)果見表1。
表1 兩種濾波方式EOG結(jié)果比較Table 1 Comparison of EOG results of two filtering methods
由表1可以看出,雙邊濾波后的圖像清晰度高于高斯濾波后的圖像清晰度,所以雙邊濾波后邊界更清晰,能在去除噪聲的同時(shí)保持邊界。
由Sobel、Roberts、Prewitt、Log、Canny、WTMM、MG和改進(jìn)Canny算法生成的絕緣子串邊緣檢測圖像見圖9-圖16。
圖9 Sobel邊緣檢測算子Fig.9 Sobel edge detection operator
圖10 Roberts邊緣檢測算子Fig.10 Roberts edge detection operator
圖11 Prewitt邊緣檢測算子Fig.11 Prewitt edge detection operator
圖12 Log邊緣檢測算子Fig.12 Log edge detection operator
圖13 Canny邊緣檢測算子Fig.13 Canny edge detection operator
圖14 WTMM邊緣檢測算子Fig.14 WTMM edge detection operator
圖15 尺度形態(tài)學(xué)(MG)邊緣檢測算子Fig.15 Scale morphology (MG) edge detection operator
圖16 改進(jìn)Canny邊緣檢測算法Fig.16 Improved canny edge detection algorithm
由結(jié)果圖可以看出,Sobel、Roberts、Prewitt 3種算子的檢測結(jié)果中絕緣子串邊緣不連續(xù);Log算子邊緣連續(xù),但與真實(shí)邊緣有較大差異;傳統(tǒng)Canny算子產(chǎn)生很多非真實(shí)邊緣,會(huì)影響下一步分割;WTMM算法邊緣失真嚴(yán)重;MG算法與改進(jìn)Canny算法邊緣完整,但MG算法產(chǎn)生邊緣較弱,且由表2可知,改進(jìn)Canny算法清晰度高于MG算法。因此,本研究改進(jìn)Canny算法在邊緣完整的基礎(chǔ)上較為清晰,有利于絕緣子串分割。
表2 MG、改進(jìn)Canny檢測結(jié)果EOG比較Table 2 EOG comparison of Canny and MG test results
根據(jù)PSNR、SSIM圖像質(zhì)量評價(jià)指標(biāo)比較Sobel、Roberts、Prewitt、Log、Canny、WTMM、MG、改進(jìn)Canny這8種算法結(jié)果圖。結(jié)果分別總結(jié)在表3和圖17、圖18中。
表3 8種算法PSNR和SSIM結(jié)果比較Table 3 Comparison of PSNR and SSIM results of 8 algorithms
圖17 不同算法的PSNR結(jié)果柱狀圖Fig.17 Histogram of PSNR results of different algorithms
圖18 不同算法的SIMM結(jié)果柱狀圖Fig.18 Histogram of SIMM results of different algorithms
由圖17可以看出,本研究改進(jìn)Canny算法的峰值信噪比明顯高于其他7種方法,這意味著改進(jìn)算法可以更準(zhǔn)確的提取邊緣。
由圖18可以看出,改進(jìn)Canny算法的結(jié)果圖SIMM值最大,即與原圖的結(jié)構(gòu)相似性最高,這說明本研究改進(jìn)算法的結(jié)果失真最小。
筆者提出了一種改進(jìn)的Canny算法,該算法能夠?qū)t外圖像中絕緣子串進(jìn)行高質(zhì)量的邊緣檢測。改進(jìn)算法中,首先用雙邊濾波代替高斯濾波;然后提出一種新穎的自適應(yīng)最優(yōu)閾值選取方法;最后得到理想的邊緣檢測結(jié)果。仿真結(jié)果表明,改進(jìn)Canny算法能提取出清晰且完整的絕緣子串邊緣。結(jié)合峰值信噪比數(shù)值和結(jié)構(gòu)相似性數(shù)值進(jìn)行性能比較,在PSNR上,本研究算法高于其他算法8~10 dB;在SSIM上,本研究算法高于其他算法8.42%~48%,證明該算法可以明顯提高邊緣檢測的準(zhǔn)確度。但同時(shí),多維數(shù)據(jù)能反映出更為豐富的目標(biāo)特征信息,因此,后續(xù)也將進(jìn)行更多圖像融合方面的探討,以期提高算法穩(wěn)定性與魯棒性。