張秋雁,楊忠,陳聰,胡國雄,韓家明,許昌亮,賴尚祥
1. 貴州電網(wǎng)有限責(zé)任公司 電力科學(xué)研究院,貴州 貴陽 550002
2. 南京航空航天大學(xué) 自動(dòng)化學(xué)院,江蘇 南京 211106
為保證電網(wǎng)系統(tǒng)的平穩(wěn)安全運(yùn)行,定期的電力線維護(hù)起著重要作用,樹障清理是其中一項(xiàng)重要內(nèi)容[1]。傳統(tǒng)上,電力設(shè)備周圍的樹障清理任務(wù)由專業(yè)工作人員執(zhí)行,工人必須在高電壓的現(xiàn)場條件下工作,這涉及很大的風(fēng)險(xiǎn)。因此,在電網(wǎng)系統(tǒng)的維護(hù)中采用樹障清理機(jī)器人,不僅可以滿足實(shí)際需求,也具有重大的意義。在樹障清理機(jī)器人工作中需要避開電力線,因此,成功檢測(cè)到電力線是使用樹障清理機(jī)器人進(jìn)行電力系統(tǒng)維護(hù)的重要前提。
如何有效提取電力線特征并檢測(cè)出電力線一直備受關(guān)注。Radon變換與Hough變換是常用的2種檢測(cè)直線的方法[2]。其中,Radon變換只能識(shí)別近似水平方向的輸電線,且無法準(zhǔn)確地獲取直線長度,局限性較大;利用Canny邊緣檢測(cè)算法提取物體邊緣,進(jìn)一步利用Hough變換檢測(cè)直線的方法在不同的領(lǐng)域都得到了廣泛應(yīng)用,但是通過無人機(jī)在較近距離獲取的電力線圖像的背景中包含復(fù)雜的地物信息,比如農(nóng)田、樹木等,這些物體包含了大量密集線形邊緣結(jié)構(gòu),會(huì)對(duì)抗噪性能較弱的Canny邊緣檢測(cè)算法造成較大的干擾[3],無法在復(fù)雜背景中有效地檢測(cè)出電力線邊緣,在電力線檢測(cè)中并不能取得令人滿意的效果??乖胄阅茌^好、線性特征提取精度高的Ratio算法在直線檢測(cè)中得到了較多的應(yīng)用。但Ratio算法計(jì)算量大、耗時(shí)較長,無法對(duì)電力線進(jìn)行快速的檢測(cè)[4]。近年來,LSD算法也得到了較大的關(guān)注,LSD算法速度快、精度高,能夠較好地提取圖像中的直線段[5],但LSD算法獲取的直線段較多、長短不一,難以進(jìn)行直線的擬合進(jìn)而獲取電力線,因此,在應(yīng)用中也受到了一定的限制。針對(duì)上述問題,本文通過對(duì)無人機(jī)獲取的電力線圖像進(jìn)行分析,提出一種復(fù)雜環(huán)境下電力線識(shí)別方法。
無人機(jī)拍攝的原始電力線圖像中電力線和復(fù)雜背景對(duì)比度較低,為增強(qiáng)電力線邊緣信息,對(duì)其做直方圖均衡化處理,便于對(duì)電力線進(jìn)行邊緣檢測(cè)和特征提取。
首先對(duì)輸入的3通道圖像進(jìn)行灰度化處理,獲取原始電力線圖像的灰度圖像。根據(jù)人眼對(duì)不同顏色敏感程度的不同,按照式(1)對(duì)R、G、B三個(gè)分量以不同的權(quán)值進(jìn)行加權(quán)平均,得到合理的灰度圖像。
式中:FGray(x,y)為灰度圖像;R、G、B分別為3個(gè)通道像素分布函數(shù)。原始電力線灰度圖中電力線和復(fù)雜植被對(duì)比度較低,為提升圖像整體對(duì)比度,增強(qiáng)電力線的邊緣信息,對(duì)圖像做灰度直方圖均衡處理[6]。直方圖均衡化能修正一些灰度集中分布在狹窄區(qū)間、缺乏細(xì)節(jié)信息的圖像,拉開圖像的灰度間距,使圖像的灰度分布更為均勻,提高圖像的對(duì)比度,增強(qiáng)圖像。對(duì)圖像進(jìn)行直方圖均衡化處理后,運(yùn)用邊緣檢測(cè)算法進(jìn)行邊緣檢測(cè),可以有效地避免電力線邊緣的漏檢。
設(shè)變量r代表圖像中像素灰度級(jí),每個(gè)像素值在[0,1]的灰度級(jí)是隨機(jī)的。首先獲得原始圖像的直方圖,用概率密度函數(shù)來表示圖像灰度級(jí)的分布,概率密度函數(shù)為:
式中:nr為圖像中灰度級(jí)為r的像素?cái)?shù);N為圖像中的像素總數(shù)。
原始圖像灰度級(jí)概率密度的累積就是新圖像灰度級(jí)的概率密度,圖像進(jìn)行直方圖均衡化的函數(shù)表達(dá)式為:
原灰度圖像與灰度分布直方圖分別如圖1、2所示。通過灰度直方圖均衡化后的圖像與灰度分布直方圖分別如圖3、4所示,直方圖中橫坐標(biāo)為灰度值,縱坐標(biāo)為灰度值的頻數(shù)。
圖1 原灰度圖
圖2 原灰度直方圖
圖3 直方圖均衡化處理后的灰度圖
圖4 直方圖均衡化處理后的灰度直方圖
邊緣檢測(cè)是一種基于灰度不連續(xù)性的并行邊界分割技術(shù),是所有基于邊界分割方法的第一步。邊緣是目標(biāo)和背景的分界,邊緣提取是將目標(biāo)和背景區(qū)分開的重要步驟。一般意義上,邊緣檢測(cè)方法利用背景和目標(biāo)在顏色、紋理、灰度等特征上的差異來實(shí)現(xiàn)。檢測(cè)邊緣一般常用一階或二階導(dǎo)數(shù)來完成,但在實(shí)際的數(shù)字圖像中求導(dǎo)是利用差分運(yùn)算近似代替微分運(yùn)算。圖像中處于邊緣兩側(cè)的點(diǎn),其灰度值發(fā)生突變,所以這些點(diǎn)將具有較大的微分值,當(dāng)微分的方向和邊界垂直時(shí),微分值最大。根據(jù)這種特點(diǎn)即可獲得圖像邊緣。
Hessian矩陣是一個(gè)多元函數(shù)的二階偏導(dǎo)數(shù)構(gòu)成的方陣,描述了函數(shù)的局部曲率。在圖像處理中,Hessian矩陣可以進(jìn)行邊緣與特征點(diǎn)檢測(cè)、消除邊緣響應(yīng),眼底圖像血管增強(qiáng)與分割中基于Hessian矩陣的Frangi濾波算法,即利用了Hessian矩陣對(duì)眼底血管邊緣進(jìn)行了增強(qiáng)[7]。
對(duì)于一幅二維圖像來說,其Hessian矩陣是一個(gè)二元正定矩陣,有2個(gè)特征值和對(duì)應(yīng)的2個(gè)特征向量。2個(gè)特征值表示出了圖像在2個(gè)特征向量所指方向上圖像變化的各向異性。圖像中的點(diǎn)性結(jié)構(gòu)具有各項(xiàng)同性,而線性結(jié)構(gòu)具有各向異性。因此我們可以利用Hessian矩陣對(duì)圖像中的線性結(jié)構(gòu)進(jìn)行增強(qiáng),濾去點(diǎn)狀的結(jié)構(gòu)和噪聲點(diǎn)[8]。
二階偏導(dǎo)數(shù)對(duì)噪聲比較敏感,在求圖像的Hessian矩陣時(shí),首先進(jìn)行高斯平滑操作。高斯平滑函數(shù)為Gσ(x,y),σ為高斯平滑參數(shù)。由于卷積的交換律,可以先求高斯平滑函數(shù)的二階微分,然后再與圖像卷積。對(duì)于需要提取的電力線,當(dāng)尺度因子σ與電力線的實(shí)際寬度最匹配時(shí),濾波器的輸出最大。通過選取合適的σ值,可以有效地濾除背景干擾,保留電力線的線狀結(jié)構(gòu)。
高斯平滑函數(shù)的二階微分為:
對(duì)圖像進(jìn)行卷積計(jì)算后可得到圖像的Hessian矩陣H:
利用Sobel算法、Canny算法與Hessian算法3種邊緣檢測(cè)算法對(duì)灰度直方圖均衡化后的電力線圖像進(jìn)行處理,如圖5~7所示。可以看出,Sobel算法雖然能夠提取出電力線邊緣,但邊緣精度并不理想;Canny算法可以有效地提取出圖像中所有的邊緣,但是由于復(fù)雜的背景干擾的存在,很難進(jìn)行直線的檢測(cè)與擬合;在選取σ值為0.58時(shí),Hessian算法能有效獲取電力線邊緣,也較好地濾除了圖像中的背景干擾,便于下一步的直線檢測(cè)工作。
圖5 Sobel算法檢測(cè)出的邊緣
圖6 Canny算法檢測(cè)出邊緣
圖7 Hessian算法檢測(cè)出的邊緣
直線的方程表示可以由斜率和截距表示,即用斜率k和截距b表示一條直線。
但是這樣會(huì)出現(xiàn)參數(shù)問題,當(dāng)直線的斜率不存在(或無限大)時(shí),會(huì)使斜率參數(shù)k的值接近于無限??梢詫⒅本€上的點(diǎn) (x0,y0)映射到參數(shù)空間中,即:
式中:d為直角坐標(biāo)系坐標(biāo)原點(diǎn)到直線的距離;θ為坐標(biāo)原點(diǎn)到直線的垂線與坐標(biāo)系x軸正方向的夾角;在取值范圍內(nèi)對(duì)θ等分若干份,并求取r,即可得到一條正弦曲線。
通過這種映射關(guān)系可以將圖像的每一條直線與一對(duì)參數(shù)相關(guān)聯(lián)。這個(gè)參數(shù) (r,θ)平面被稱為Hough空間。每一條直線對(duì)應(yīng)的點(diǎn) (r,θ)均構(gòu)成Hough空間中的一條正弦曲線。如果這些正弦曲線有共同的交點(diǎn),則這些點(diǎn)在二維平面中共線。檢測(cè)共線點(diǎn)的問題可以轉(zhuǎn)化為找到并發(fā)曲線的問題。
經(jīng)過Hough變換后,平面直角坐標(biāo)系下的直線的斜率k和截距b可由極坐標(biāo)系下一對(duì)參數(shù)(ri,θi)唯一確定。由于此直線上每一點(diǎn)經(jīng)霍夫變換后,在參數(shù)空間上形成的各正弦曲線都會(huì)交于同一點(diǎn) (rj,θj),所以通過對(duì)參數(shù)空間各正弦曲線經(jīng)過的每一點(diǎn)進(jìn)行權(quán)值統(tǒng)計(jì),并求取權(quán)值峰值點(diǎn)即可確定平面坐標(biāo)系內(nèi)的直線方程。
由于各種環(huán)境干擾的存在,通過Hough變換直接獲取的直線并不一定是電力線,因此需要對(duì)獲得的直線進(jìn)行篩選。通過對(duì)電力線圖像的分析可以發(fā)現(xiàn),圖像中的電力線為斜率一定的直線,且不同的電力線基本相互平行。通過Hough變換,原圖像中的直線上每一個(gè)點(diǎn)對(duì)應(yīng)一條參數(shù)空間中曲線,同一條直線上的點(diǎn)所映射的曲線會(huì)相交到一個(gè)點(diǎn),形成一個(gè)最值。因此,直線斜率的計(jì)算可轉(zhuǎn)化為在參數(shù)空間中尋找最值。
k-means算法是一種廣泛應(yīng)用的基于劃分的聚類算法,以距離作為數(shù)據(jù)實(shí)例間相似性度量的標(biāo)準(zhǔn),數(shù)據(jù)實(shí)例之間的距離越小,相似性即越高,則屬于同一個(gè)類簇的可能性越大[9]。但k-means算法開始時(shí)對(duì)k個(gè)初始聚類中心的選擇會(huì)對(duì)聚類結(jié)果有較大的影響,可能無法得到有效的聚類結(jié)果。k-means++算法[10]獲得的初始聚類中心之間的相互距離盡可能遠(yuǎn),可以有效地避免這種情況出現(xiàn)。
k-means++算法的步驟如下:
1)從輸入的數(shù)據(jù)集X中隨機(jī)選擇一個(gè)點(diǎn),將其作為初始的聚類中心;計(jì)算數(shù)據(jù)集X中的每一個(gè)點(diǎn)x與 已選擇的最近聚類中心的距離D(x);計(jì)算樣本點(diǎn)x被 選為下一個(gè)聚類中心的概率P:
2)選擇概率P值大的樣本點(diǎn)作為新的聚類中心,直到選出所需的k個(gè)聚類中心。再利用選出的k個(gè)初始的聚類中心進(jìn)行k-means算法。
通過獲得所有候選直線的 (r,θ),可以得到所有候選直線的斜率,針對(duì)獲得所有候選斜率值進(jìn)行k-means++聚類,保留聚類結(jié)果中計(jì)數(shù)最多的直線,可以濾除與電力線斜率相差較大的雜亂直線。
本文中的實(shí)驗(yàn)環(huán)境為Windows10,Matlab2017b。為驗(yàn)證本文所提方法的有效性,進(jìn)行了多組實(shí)驗(yàn)來分析電力線提取的效果。使用Hessian算法獲取電力線圖像的邊緣,Hough變換算法提取電力線,通過本文方法篩選并擬合電力線。從中選出具有代表性的3類場景,實(shí)驗(yàn)結(jié)果如圖8~10所示,提取出的電力線以深色粗直線標(biāo)識(shí)。提取出的電力線統(tǒng)計(jì)結(jié)果如表1所示,通過k-means++進(jìn)行斜率聚類篩選的結(jié)果如表2所示。
圖8 場景A電力線檢測(cè)結(jié)果
圖9 場景B電力線檢測(cè)結(jié)果
圖10 場景C電力線檢測(cè)結(jié)果
表1 電力線提取結(jié)果
表2 斜率聚類結(jié)果
場景A中,干擾主要為遠(yuǎn)處的地物背景。根據(jù)表1中電力線提取結(jié)果,通過本文中的方法能夠提取出A1、A2兩種場景中所有的電力線,完整度高,與原電力線重合度好。
場景B中,干擾主要為茂盛的樹木枝葉。根據(jù)表1中電力線提取結(jié)果,通過本文中方法能夠提取出B1、B2這2種場景中所有的電力線,但是在B2中因?yàn)闃淠镜挠绊?,一部分提取出的電力線完整度不高,且與原電力線出現(xiàn)一定的偏差。
場景C中,干擾主要為樹木的枝杈。樹木的枝杈與電力線的粗細(xì)相近,會(huì)對(duì)電力線的邊緣提取造成較大的干擾。根據(jù)表1中電力線的提取結(jié)果,通過本文中方法仍可提取出C1、C2這2種場景中所有的電力線,完整度較好,但由于樹枝邊緣干擾的存在,提取出的電力線會(huì)與原電力線產(chǎn)生少量的偏差。
通過表2中的聚類結(jié)果,可以看到在A1~C2這6種場景中,通過聚類篩選出的電力線斜率均集中在一個(gè)較小的范圍內(nèi),符合圖像中電力線互相平行的特點(diǎn)。
通過對(duì)比結(jié)果可以驗(yàn)證,本文提出的方法檢測(cè)出的電力線完整,能夠有效地避免不同背景干擾帶來的電力線漏檢,與原電力線重合度較好,具有一定的實(shí)際應(yīng)用價(jià)值。
本文通過對(duì)無人機(jī)近距離拍攝的電力線圖像進(jìn)行分析,提出一種復(fù)雜背景下的電力線的檢測(cè)方法。通過灰度直方圖均衡進(jìn)行圖像增強(qiáng)、基于Hessian算法對(duì)電力線邊緣進(jìn)行提取、通過Hough變換提取篩選并擬合電力線。
相對(duì)于傳統(tǒng)的電力線檢測(cè)方法,本文中提出的方法提取出的電力線邊緣完整,可以有效地解決Hough變換提取電力線時(shí)出現(xiàn)的斷裂與完整性不足問題,在復(fù)雜背景下,對(duì)電力線的提取具有精度高、完整性好的優(yōu)點(diǎn),為樹障清理機(jī)器人工作中避開電力線提供了良好的技術(shù)支撐。
但是本文提出的方法仍然存在一些問題,如針對(duì)有一定弧度的電力線檢測(cè)效果較差,有較強(qiáng)環(huán)境干擾的電力線的提取結(jié)果存在完整度不夠、定位精度不足的情況。因此,可通過改進(jìn)圖像分割與直線提取方法提升檢測(cè)效果,也是電力線檢測(cè)的重要發(fā)展方向。