華北電力大學(xué) 控制與計(jì)算機(jī)工程學(xué)院,河北保定 071003
絕緣子是輸電線路中的重要元件,起到電氣絕緣及線路支撐的作用,同時(shí)也是故障頻發(fā)元件,自爆、破損、裂紋和異物等故障嚴(yán)重威脅著輸電線的安全可靠運(yùn)行[1]。據(jù)統(tǒng)計(jì),因絕緣子故障導(dǎo)致的跳閘事故占目前輸電線路事故的81.3%[2]。
因此,定期監(jiān)測(cè)絕緣子狀況,及時(shí)發(fā)現(xiàn)絕緣子故障至關(guān)重要。近幾年,因無(wú)人機(jī)巡線的高效、快捷、可靠、成本低、不受地域影響等優(yōu)點(diǎn)[1],通過對(duì)無(wú)人機(jī)巡線采集的圖像數(shù)據(jù)進(jìn)行分析處理,從而發(fā)現(xiàn)絕緣子故障已成為研究熱點(diǎn)。而實(shí)現(xiàn)絕緣子的精確定位是實(shí)現(xiàn)絕緣子故障自動(dòng)診斷的重要前提。
輸電線路中使用的絕緣子種類繁多,根據(jù)絕緣子片結(jié)構(gòu)型式可分為盤形絕緣子、針式絕緣子、蝶形絕緣子和棒形絕緣子[3]。但是各類絕緣子串具有以下相同特點(diǎn):絕緣子串的片狀結(jié)構(gòu)具有平行排列的規(guī)律特征。
因此,本文提出一種基于聚類分析與Adaboost算法的絕緣子串識(shí)別方法,通過聚類分析初步確定絕緣子串區(qū)域,通過Adaboost分類器對(duì)初識(shí)別結(jié)果進(jìn)行進(jìn)一步判定,實(shí)現(xiàn)絕緣子串的準(zhǔn)確識(shí)別,識(shí)別準(zhǔn)確率達(dá)到91.5%。
本文所提絕緣子串識(shí)別方法的思路如圖1所示。首先對(duì)待測(cè)航拍巡檢圖像進(jìn)行預(yù)處理后,采用LSD算法檢測(cè)直線段,通過聚類分析檢測(cè)平行線段,初步確定絕緣子串區(qū)域。由于航拍背景中有可能存在其他同樣具備平行特征的目標(biāo),通過建立正負(fù)樣本集,提取不變矩特征進(jìn)行學(xué)習(xí)訓(xùn)練,得到Adaboost級(jí)聯(lián)分類器,用此分類器對(duì)絕緣子串初始識(shí)別結(jié)果進(jìn)行進(jìn)一步判定,得到最終識(shí)別結(jié)果。
LSD[4]是一種線段檢測(cè)子,相比于其它線段檢測(cè)算法,它具有運(yùn)算時(shí)間短,不需要人工設(shè)置參數(shù)等優(yōu)點(diǎn)。該算法的核心思想是區(qū)域生長(zhǎng)和誤差控制,具體處理過程如下所示:
(1)梯度特征計(jì)算
首先對(duì)圖像進(jìn)行高斯下采樣來消除鋸齒效應(yīng),并計(jì)算圖像中每一個(gè)像素點(diǎn)的梯度值和梯度方向。
(2)像素點(diǎn)偽排序
根據(jù)梯度值對(duì)所有的點(diǎn)進(jìn)行偽排序,建立狀態(tài)列表,所有的點(diǎn)初始狀態(tài)均為UNUSED,將梯度值小于閾值ρ的點(diǎn)的狀態(tài)設(shè)為USED。
(3)區(qū)域生長(zhǎng)
取出列表偽排序中數(shù)值最大的點(diǎn)作為種子點(diǎn),以該點(diǎn)為起點(diǎn)搜索周圍狀態(tài)為UNUSED且梯度方向滿足閾值[-t,t]的點(diǎn),修改滿足條件點(diǎn)的狀態(tài)為USED,生成包含所有滿足條件點(diǎn)的矩形。
(4)一致性判斷
判斷該矩形內(nèi)一致性點(diǎn)密度是否滿足閾值要求,將不滿足的矩形切斷為多個(gè)矩形,并重復(fù)本步驟,直至滿足閾值要求。點(diǎn)一致性判別公式為:
式中:region_ang(t) —第t個(gè)區(qū)域的方向角;
ang(i,j)—像素(i,j)的梯度方向角。
(5)線段判斷
用一個(gè)隨機(jī)分配平均分布于[0-2π]像素值且不包含直線段的噪聲圖像作為模板,計(jì)算NFA值,定義如下:
式中:N—當(dāng)前圖像中直線(矩形框)的數(shù)量;
k(r,l)—模板圖片l中r矩形內(nèi)一致性點(diǎn)的個(gè)數(shù);
k(r,i)—測(cè)試圖片i中r矩形內(nèi)一致性點(diǎn)的個(gè)數(shù)。
如果NFA值很大,則認(rèn)為當(dāng)前區(qū)域是背景中的一部分,相反,如果NFA值小于閾值,此時(shí)矩形框內(nèi)的區(qū)域則認(rèn)定為線段,并輸出,線段檢測(cè)效果如圖2所示。
統(tǒng)計(jì)每一條直線段的長(zhǎng)度、方向和中心點(diǎn)坐標(biāo),依據(jù)絕緣子串的特點(diǎn),線段本身滿足平行性, 線段中心點(diǎn)保持在一條直線上,線段的長(zhǎng)度、相鄰線段之間的距離保持在一定的范圍內(nèi)。根據(jù)這些特征,給出一種 ADKC(adaptive dynamic k-means clustering)聚類算法[5]對(duì)直線段進(jìn)行聚類,檢測(cè)出滿足以上特征的平行線段。
ADKC不需要初始確定聚類質(zhì)心,只需要執(zhí)行一次循環(huán)遍歷即可獲得最終聚類結(jié)果,且每次聚類結(jié)果相同。具體操作過程如下:
假設(shè)直線段集合S={x1,x2,…,xn},其中直線x1的方程為:y=m1x+b1。
(1)構(gòu)建樣本距離矩陣D
其中:di,j—樣本集中兩兩之間的距離
(2)計(jì)算距離矩陣中非對(duì)角原始的均值和方差
其中,1{·}—表示指示函數(shù)。
(3)計(jì)算閾值
其中,δ—正常數(shù)。
(4)平行段聚類
初始化樣本集的聚類數(shù)為1,樣本聚類中為μ1=x1,第1聚類結(jié)果為S1={x1},計(jì)算待處理樣本xi到所有聚類中心的距離,并獲得該樣本屬于的聚類類別jmin,如果該樣本的最小距離小于閾值ξ,說明樣本屬于第jmin類,并記錄該直線段樣本的長(zhǎng)度、方向、中心點(diǎn)位置,以此對(duì)所有直線段進(jìn)行處理后,對(duì)K個(gè)聚類結(jié)果執(zhí)行權(quán)重歸一化操作,并計(jì)算直線段聚類結(jié)果。
通過聚類分析后,平行線段檢測(cè)結(jié)果如圖3所示。
矩是一種線性特征,矩特征對(duì)于圖像的旋轉(zhuǎn)、比例和平移具有不變性,因而被用來描述圖像中的區(qū)域特征[6]。
一幅數(shù)字圖像f(x,y)的二維(p+q)階矩定義為:
其中,p,q=0, 1, 2……。
相應(yīng)中心矩定義為:
歸一化(p+q)階中心矩定義為:
Hu[7]利用上述矩理論構(gòu)造了7個(gè)具有平移、比例和旋轉(zhuǎn)不變性的矩不變量,即Hu不變矩。
Adaboost算法[8]起源于Schapire在1959年提出的Boosting算法,它是一種能夠提升任意給定學(xué)習(xí)算法精度的普適方法。其核心思想是針對(duì)同一個(gè)訓(xùn)練集訓(xùn)練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構(gòu)成一個(gè)更強(qiáng)的最終分類器(強(qiáng)分類器)。
其算法本身是通過改變數(shù)據(jù)分布來實(shí)現(xiàn)的,它根據(jù)每次訓(xùn)練集之中每個(gè)樣本的分類是否正確,以及上次的總體分類的準(zhǔn)確率,來確定每個(gè)樣本的權(quán)值。將修改過權(quán)值的新數(shù)據(jù)集送給下層分類器進(jìn)行訓(xùn)練,最后將每次訓(xùn)練得到的分類器最后融合起來,作為最后的決策分類器。使用Adaboost分類器可以排除一些不必要的訓(xùn)練數(shù)據(jù)特征,并放在關(guān)鍵的訓(xùn)練數(shù)據(jù)上面。
AdaBoost算法的具體步驟如下:
1、給定訓(xùn)練樣本集S:
其中,X和Y—分別對(duì)應(yīng)于正例樣本和負(fù)例樣本;
T—訓(xùn)練的最大循環(huán)次數(shù)。
2、初始化樣本權(quán)重為1/n,即為訓(xùn)練樣本的初始概率分布;
3、第一次迭代:
(1)訓(xùn)練樣本的概率分布相似的情況下,訓(xùn)練弱分類器;
(2)計(jì)算弱分類器的錯(cuò)誤率;
(3)選取合適閾值,使得誤差最小;
(4)更新樣本權(quán)重;
經(jīng)T次循環(huán)后,得到T個(gè)弱分類器,按更新的權(quán)重疊加,最終得到的強(qiáng)分類器。
圖4是Adaboost算法訓(xùn)練過程。
利用上述方法對(duì)絕緣子串進(jìn)行識(shí)別,本文選取500張正樣本(絕緣子串)圖像和500張負(fù)樣本(背景)圖像,分別提取正負(fù)樣本的7個(gè)Hu不變矩后,采用Adaboost算法進(jìn)行分類器訓(xùn)練,得到一個(gè)級(jí)聯(lián)分類器,運(yùn)用該分類器對(duì)聚類分析初始識(shí)別區(qū)域進(jìn)行進(jìn)一步識(shí)別,最終識(shí)別效果如圖5所示。該算法在VS2008,opencv2.4.3的環(huán)境下編程實(shí)現(xiàn)。
將本文算法與文獻(xiàn)[9]的方法進(jìn)行比較,算法的平均時(shí)耗和檢測(cè)率見表1。
表1 算法的平均耗時(shí)與檢測(cè)率比較
在輸電線路識(shí)別中,準(zhǔn)確識(shí)別絕緣子串位置是檢測(cè)絕緣子串故障的前提,本文針對(duì)絕緣子串的特點(diǎn),提出了一種有效的絕緣子串識(shí)別方法,通過聚類分析檢測(cè)平行線段,通過Adaboost分類器進(jìn)一步識(shí)別絕緣子串。實(shí)驗(yàn)證明,本文提出的絕緣子串方法具有以下特點(diǎn)。
(1)魯棒性強(qiáng)。對(duì)于不同背景下的輸電線路航拍圖像,只要圖像中絕緣子串結(jié)構(gòu)清晰,該算法就能對(duì)絕緣子串進(jìn)行準(zhǔn)確識(shí)別與定位。
(2)識(shí)別效果好。對(duì)于不同種類的絕緣子串都能準(zhǔn)確定位,檢測(cè)率能夠達(dá)到91%以上。
(3)實(shí)時(shí)性好。該算法利用聚類分析檢測(cè)平行線段的方式對(duì)絕緣子串區(qū)域進(jìn)行預(yù)定位,大大減少了機(jī)器學(xué)習(xí)遍歷搜索的區(qū)域,整體計(jì)算用時(shí)少,保證了算法的實(shí)時(shí)性。
本文所提的絕緣子串識(shí)別方法面向電力系統(tǒng)工程應(yīng)用,具有魯棒性強(qiáng)、定位效果好、實(shí)時(shí)性高等優(yōu)點(diǎn),在工程實(shí)際中有很好的應(yīng)用前景。