本發(fā)明屬于激光雷達(dá)點(diǎn)云數(shù)據(jù)信息提取技術(shù)領(lǐng)域,涉及一種基于LiDAR點(diǎn)云的多分裂導(dǎo)線自動提取與精細(xì)建模方法。
背景技術(shù):
電力工業(yè)是國民經(jīng)濟(jì)基礎(chǔ)工業(yè)之一,是國家的重要支柱產(chǎn)業(yè)。隨著我國經(jīng)濟(jì)高速發(fā)展,超高壓大容量輸電線路越建越多,線路走廊穿越地理環(huán)境更復(fù)雜,給線路維護(hù)帶來很多困難。
機(jī)載激光掃描(Light Detection and Ranging,LiDAR)技術(shù)作為近年來快速發(fā)展的一項(xiàng)新技術(shù),可以快速獲取高精度的三維信息。該技術(shù)具有全天候工作等優(yōu)點(diǎn),可以彌補(bǔ)傳統(tǒng)航空攝影測量難以快速進(jìn)行電力線測量的缺憾,提高電力巡線的效率,減少輸電事故的發(fā)生。因此,研究機(jī)載激光掃描數(shù)據(jù)中電力線的自動提取和精細(xì)重建技術(shù)對電力巡線工作有著非常重要的現(xiàn)實(shí)意義。
在高壓、超高壓、特高壓輸電線路架設(shè)中,為抑制電暈放電和線路電抗,一般采用多分裂導(dǎo)線進(jìn)行架設(shè),且每隔一段距離采用間隔棒對分裂導(dǎo)線進(jìn)行固定。但現(xiàn)有文獻(xiàn)中的LiDAR電力線建模研究絕大部分局限于非分裂導(dǎo)線,或者把多分裂導(dǎo)線當(dāng)成單導(dǎo)線來進(jìn)行處理,且現(xiàn)有方法只適用于數(shù)據(jù)質(zhì)量較好的情況,對于存在較多噪聲的點(diǎn)云數(shù)據(jù),提取與重建結(jié)果并不理想。例如,澳大利亞的McLaughlin根據(jù)LiDAR點(diǎn)云的維數(shù)特征自動提取電力線,通過點(diǎn)的聚集方法,得到同一條導(dǎo)線上的點(diǎn)數(shù)據(jù),再通過懸鏈線方程擬合,但該方法在檢測電力線點(diǎn)的過程中易受噪聲的影響,提取的各條電力線有間斷,并不連續(xù);余潔采用濾波的方法濾除地面和植被點(diǎn),采用二維Hough變換分離各條電力線,根據(jù)雙曲余弦函數(shù)擬合單條電力線,但樹木和電力線混合區(qū)域的提取結(jié)果會相對變差,當(dāng)電力線出現(xiàn)垂直排列時,用二維Hough變換很難檢測出多條電力線;陳馳采用同一條電力線的局部相鄰點(diǎn)的高程比較接近這一原則,統(tǒng)計(jì)每條電力線在XOY投影面上的鄰近點(diǎn),判斷其高程差是否超過一定的閾值的方法解決重投影的問題,但對于多分裂導(dǎo)線僅利用高程值特征很難區(qū)分每一根分裂導(dǎo)線。
在多分裂導(dǎo)線提取方面,王成、夏少波首次提出一種多分裂導(dǎo)線全自動三維重建方法,采用空間聚類識別單股電力線點(diǎn)云,然后分段進(jìn)行主成分分析并投影到與主方向垂直的平面上,對第一段數(shù)據(jù)采用全排列的方法進(jìn)行k-means聚類確定分裂數(shù),然后對每段進(jìn)行聚類,最后基于懸鏈線進(jìn)行最小二乘擬合。該方法處理過程復(fù)雜且只適用于數(shù)據(jù)質(zhì)量較好的情況,對于存在較多噪聲的點(diǎn)云數(shù)據(jù),提取與重建結(jié)果并不理想。主要原因是該算法對噪聲敏感,抗噪性不強(qiáng),提取的電力線不連續(xù)、不完整,擬合精度的不夠高,且當(dāng)分裂導(dǎo)線間存在間隔棒時,會出現(xiàn)聚類誤差過大甚至錯誤。
因此,隨著機(jī)載LiDAR電力巡線的推廣應(yīng)用,電力部門急需一種能夠克服連續(xù)噪聲影響的多分裂電力線提取與精細(xì)重建的穩(wěn)健方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明目的在于提供一種更穩(wěn)健的基于LiDAR點(diǎn)云的多分裂導(dǎo)線自動提取與精細(xì)建模方法。
本發(fā)明的技術(shù)方案如下:
一、基于LiDAR點(diǎn)云的單相電力線自動提取方法,包括:
步驟1,從LiDAR點(diǎn)云中提取電力線和電力塔點(diǎn)云;
步驟2,根據(jù)電力線點(diǎn)在局部區(qū)域內(nèi)高程基本相同、而電力塔點(diǎn)在局部區(qū)域內(nèi)高程變化大的特點(diǎn),從電力線和電力塔點(diǎn)云中進(jìn)一步提取電力塔點(diǎn)云,剔除電力塔點(diǎn)云得電力線點(diǎn)云;
步驟3,對電力線點(diǎn)云進(jìn)行空間分割,得到各相電力線點(diǎn)云;采用隨機(jī)一致性檢測法檢測各相電力線點(diǎn)云中的噪聲點(diǎn),并剔除。
步驟1進(jìn)一步包括:
1.1基于點(diǎn)云密度和地形坡度從LiDAR點(diǎn)云中濾除地面點(diǎn),獲得非地面點(diǎn)云;
1.2基于點(diǎn)云密度和高差從非地面點(diǎn)云中濾除植被點(diǎn);
1.3基于三維空間k-d樹在濾除了植被點(diǎn)的非地面點(diǎn)云中搜索剩余植被點(diǎn),并濾除;
1.4基于種子填充法從子步驟1.3所得的剩余點(diǎn)云中提取電力線和電力塔點(diǎn)云。
子步驟1.4具體為:
(1)將剩余點(diǎn)云記為數(shù)據(jù)集B,對數(shù)據(jù)集B建立k-d樹,初始化計(jì)數(shù)label為0;
(2)掃描數(shù)據(jù)集B,若當(dāng)前點(diǎn)B(i)未被處理,把B(i)加入棧Q,然后,執(zhí)行如下步驟:
(2a)棧Q中彈出一未處理點(diǎn)作為種子點(diǎn)q,標(biāo)記為已處理并存入點(diǎn)集C;在數(shù)據(jù)集B中搜索種子點(diǎn)q的n’鄰近點(diǎn),得n’鄰近點(diǎn)集N,將n’鄰近點(diǎn)集N中未被處理、且與種子點(diǎn)q的距離和高差均小于對應(yīng)的第二距離閾值Td2和第二高差閾值H2的點(diǎn)加入棧Q;第二距離閾值Td2和第二高差閾值H2為與點(diǎn)云質(zhì)量和點(diǎn)云密度有關(guān)的經(jīng)驗(yàn)值;
(2b)重復(fù)子步驟(2a)直至棧Q為空,此時,點(diǎn)集C中點(diǎn)即構(gòu)成一個連通區(qū)域,該連通區(qū)域內(nèi)點(diǎn)標(biāo)記為label;
(2c)獲取該連通區(qū)域的矩形范圍,計(jì)算對角線長度,若對角線長度滿足長度閾值,則該連通區(qū)域?yàn)殡娏€和電力塔點(diǎn)云,長度閾值根據(jù)所處理電力線的長度進(jìn)行取值;
(3)令label+1,重復(fù)步驟(2),直至數(shù)據(jù)集B中所有點(diǎn)均被處理。
步驟2進(jìn)一步包括:
2.1根據(jù)電力線點(diǎn)在局部區(qū)域內(nèi)高程基本相同、而電力塔點(diǎn)在局部區(qū)域內(nèi)高程變化大的特點(diǎn),通過對電力線和電力塔點(diǎn)云進(jìn)行張量分析,提取潛在電力塔點(diǎn)云;
2.2基于種子填充法對潛在電力塔點(diǎn)云進(jìn)行空間分割,獲取電力塔點(diǎn)云,剔除電力塔點(diǎn)云得電力線點(diǎn)云。
子步驟2.1具體為:
(1)對電力線和電力塔點(diǎn)云建立k-d樹;
(2)對k-d樹中各數(shù)據(jù)點(diǎn)p分別獲取以p為中心的m鄰近點(diǎn),對p進(jìn)行張量分析,獲得mxx、myy、mzz分別用來描述m鄰近點(diǎn)在X方向、Y方向、Z方向的擬合誤差;其中,(xj,yj,zj)為m鄰近點(diǎn)中第j個鄰近點(diǎn)的三維坐標(biāo),(xp,yp,zp)為數(shù)據(jù)點(diǎn)p的三維坐標(biāo);
(3)根據(jù)①電力線在Z方向的擬合誤差小、在X和Y方向的擬合誤差大,以及②電力塔在Z方向的擬合誤差大、在X和Y方向的擬合誤差小的特點(diǎn),根據(jù)各數(shù)據(jù)點(diǎn)p的mxx、myy、mzz值提取潛在電力塔點(diǎn)。
子步驟2.2中,基于種子填充法對潛在電力塔點(diǎn)云進(jìn)行空間分割,獲取電力塔點(diǎn)云,具體為:
采用種子填充法對潛在電力塔點(diǎn)云進(jìn)行空間分割,獲取多個連通區(qū)域,高差大于第三高差閾值H3的連通區(qū)域則認(rèn)為是電力塔連通區(qū)域;
對各電力塔連通區(qū)域分別執(zhí)行:獲取電力塔連通區(qū)域的中心坐標(biāo),在步驟1所提取的電力線和電力塔點(diǎn)云中,以中心坐標(biāo)為圓形,預(yù)設(shè)半徑的圓形范圍內(nèi)點(diǎn)云即電力塔點(diǎn)云;
上述,第三高差閾值H3根據(jù)電力塔長度進(jìn)行取值,預(yù)設(shè)半徑設(shè)為電力塔長度的一半。
步驟3中,采用隨機(jī)一致性檢測法檢測各相電力線點(diǎn)云中的噪聲點(diǎn),具體為:
對各相電力線點(diǎn)云分別進(jìn)行如下步驟:
(1)從該相電力線點(diǎn)云中隨機(jī)產(chǎn)生兩個點(diǎn);
(2)計(jì)算兩點(diǎn)在XOY水平面上的直線方程,統(tǒng)計(jì)到該直線距離小于第四距離閾值Td4的點(diǎn)數(shù);
(3)重復(fù)步驟(1)~(2),直至達(dá)到預(yù)設(shè)的迭代次數(shù);
(4)取統(tǒng)計(jì)點(diǎn)數(shù)最多的直線方程為該相電力線的平面直線方程,該相電力線點(diǎn)云中到該平面直線方程距離小于第四距離閾值Td4的所有點(diǎn)均為該相電力線點(diǎn),其他點(diǎn)為噪聲點(diǎn);
上述,第四距離閾值Td4為經(jīng)驗(yàn)值,其取值要確保區(qū)分出電力線點(diǎn)云中任意兩條電力線。
二、基于LiDAR點(diǎn)云的多分裂導(dǎo)線自動提取與精細(xì)建模方法,包括:
對前一技術(shù)方案所得各相電力線點(diǎn)云分別進(jìn)行如下:
(1)對該相電力線點(diǎn)云進(jìn)行誤差分析,判斷電力線類型,若該相電力線點(diǎn)云為單相地線點(diǎn)云,執(zhí)行步驟(2);若該相電力線點(diǎn)云為單相導(dǎo)線點(diǎn)云,執(zhí)行步驟(3);
(2)對單相地線點(diǎn)云進(jìn)行懸鏈線擬合并輸出;
(3)基于二分法從單相導(dǎo)線點(diǎn)云中提取分裂子導(dǎo)線點(diǎn)云,并對分裂子導(dǎo)線點(diǎn)云進(jìn)行懸鏈線擬合,本步驟進(jìn)一步包括:
3.1將單相導(dǎo)線點(diǎn)云投影到XOZ豎直面,將投影等分為若干導(dǎo)線段,對各導(dǎo)線段分別進(jìn)行線性擬合,得到各導(dǎo)線段的直線方程Ax+Bz+C=0;
3.2對各導(dǎo)線段上所有點(diǎn)(xk,zk)分別計(jì)算所有導(dǎo)線段上d>DIS的點(diǎn)構(gòu)成上分裂子導(dǎo)線點(diǎn)云S(0),所有導(dǎo)線段上d<-DIS的點(diǎn)構(gòu)成下分裂子導(dǎo)線點(diǎn)云S(2),所有導(dǎo)線段上-DIS≤d≤DIS的點(diǎn)構(gòu)成中分裂子導(dǎo)線點(diǎn)S(1);DIS為與多分裂導(dǎo)線規(guī)格相關(guān)的距離閾值,其值不小于0;
3.3分別判斷各分裂子導(dǎo)線點(diǎn)云S(s)中點(diǎn)數(shù)是否大于點(diǎn)數(shù)閾值NUM,s=0、1、2,點(diǎn)數(shù)閾值NUM用來判斷粗差點(diǎn),根據(jù)經(jīng)驗(yàn)設(shè)置;剔除點(diǎn)數(shù)不大于NUM的分裂子導(dǎo)線點(diǎn)云S(s),對點(diǎn)數(shù)小于NUM的分裂子導(dǎo)線點(diǎn)云S(s)執(zhí)行步驟3.4;
3.4對分裂子導(dǎo)線點(diǎn)云進(jìn)行懸鏈線擬合,計(jì)算擬合殘差,輸出擬合殘差小于殘差閾值的分裂子導(dǎo)線點(diǎn)云擬合結(jié)果;對擬合殘差不小于殘差閾值的分裂子導(dǎo)線點(diǎn)云分別執(zhí)行步驟3.5;殘差閾值為與點(diǎn)云質(zhì)量有關(guān)的經(jīng)驗(yàn)值;
3.5將分裂子導(dǎo)線點(diǎn)云投影到XOY水平面,對投影進(jìn)行線性擬合,得到直線方程ax+by+c=0,對分裂子導(dǎo)線點(diǎn)云上所有點(diǎn)(x'k,y'k)分別計(jì)算分裂子導(dǎo)線點(diǎn)云上t>DIS的點(diǎn)構(gòu)成左分裂子導(dǎo)線點(diǎn)云T(0),分裂子導(dǎo)線點(diǎn)云上t<-DIS的點(diǎn)構(gòu)成右分裂子導(dǎo)線點(diǎn)云T(2),分裂子導(dǎo)線點(diǎn)云上-DIS≤t≤DIS的點(diǎn)構(gòu)成中分裂子導(dǎo)線點(diǎn)云T(1);
3.6分別判斷各分裂子導(dǎo)線點(diǎn)云T(u)中點(diǎn)數(shù)是否大于點(diǎn)數(shù)閾值NUM,u=0、1、2;剔除點(diǎn)數(shù)不大于NUM的分裂子導(dǎo)線點(diǎn)云T(u);對點(diǎn)數(shù)小于NUM的分裂子導(dǎo)線點(diǎn)云T(u)進(jìn)行懸鏈線擬合,并輸出擬合結(jié)果。
步驟(1)具體為:
對該相電力線點(diǎn)云進(jìn)行擬合,計(jì)算擬合殘差,若擬合殘差小于殘差閾值,則該相電力線點(diǎn)云為地線點(diǎn)云;否則,為多分裂的導(dǎo)線點(diǎn)云;同時,計(jì)算擬合殘差過程中,將誤差大于三倍殘差閾值的點(diǎn)作為粗差點(diǎn)剔除;殘差閾值為與點(diǎn)云質(zhì)量有關(guān)的經(jīng)驗(yàn)值。
和現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn)和有益效果:
本發(fā)明具有抗噪性強(qiáng)、擬合精度高、人工干預(yù)少等特點(diǎn),提高了三維巡線系統(tǒng)的效率與精度,可獲得更精準(zhǔn)的三維坐標(biāo),降低電力線走廊巡線成本,具有一定的科研意義和重要的使用價(jià)值。
附圖說明
圖1為本發(fā)明的整體流程圖;
圖2為自動提取電力線點(diǎn)云和電力塔點(diǎn)云的流程圖;
圖3為電力塔點(diǎn)云的提取與定位的流程圖;
圖4為單相導(dǎo)線或地線的提取與擬合的流程圖;
圖5為多分裂導(dǎo)線的自動I去與精細(xì)建模的流程圖。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明做進(jìn)一步詳細(xì)描述,本發(fā)明整體流程見圖1,概括起來,本發(fā)明包括四個步驟:
一、從LiDAR點(diǎn)云中自動提取電力線和電力塔點(diǎn)云。
本步驟流程見圖2。根據(jù)點(diǎn)云的分布特性,可基于點(diǎn)云密度和地形坡度從LiDAR點(diǎn)云中濾除地面點(diǎn),基于點(diǎn)云密度和高差從LiDAR點(diǎn)云中初步分離出植被點(diǎn)和非植被點(diǎn),然后在三維空間基于k-d樹搜索植被同類點(diǎn)。其中,密度和高差閾值根據(jù)直方圖統(tǒng)計(jì)結(jié)果進(jìn)行設(shè)置?;诜N子填充法進(jìn)行點(diǎn)云分割得到多個連通區(qū)域,根據(jù)連通區(qū)域長度提取電力線和電力塔點(diǎn)云。
1.1基于點(diǎn)云密度和地形坡度從LiDAR點(diǎn)云中濾除地面點(diǎn),獲得非地面點(diǎn)云。
對原始LiDAR點(diǎn)云在XOY水平面建立規(guī)則矩形格網(wǎng),規(guī)則矩形格網(wǎng)大小記為gridsize,找到各格網(wǎng)的最低點(diǎn),并計(jì)算各格網(wǎng)的點(diǎn)云密度。若格網(wǎng)的點(diǎn)云密度大于預(yù)設(shè)的密度閾值S1,則對格網(wǎng)內(nèi)所有點(diǎn),計(jì)算其與最低點(diǎn)的坡度,坡度小于預(yù)設(shè)的坡度閾值T1的點(diǎn)則為地面點(diǎn)。密度閾值S1的設(shè)值與所采用掃描儀的頻率有關(guān),一般設(shè)為掃描儀的平均點(diǎn)云密度。坡度閾值T1的設(shè)置與當(dāng)?shù)氐匦斡嘘P(guān),當(dāng)該區(qū)域地勢變化較大時,可減小規(guī)則矩形格網(wǎng)大小gridsize或增大坡度閾值T1;當(dāng)該區(qū)域地勢較平坦時,可增大規(guī)則矩形格網(wǎng)大小gridsize或減小坡度閾值T1。本實(shí)施例中,坡度閾值T1取0.3。
1.2基于點(diǎn)云密度和高差從非地面點(diǎn)云中濾除植被點(diǎn)。
對非地面點(diǎn)云,找到各格網(wǎng)的最低點(diǎn),計(jì)算各格網(wǎng)點(diǎn)云密度,若點(diǎn)云密度大于預(yù)設(shè)的密度閾值S1,則該格網(wǎng)中與最低點(diǎn)高差小于預(yù)設(shè)的第一高差閾值H1的所有點(diǎn)為植被點(diǎn)。第一高差閾值H1的設(shè)值與植被平均高度有關(guān),當(dāng)該區(qū)域植被較高大時,可通過增大第一高差閾值H1來盡可能多的提取植被點(diǎn);當(dāng)該區(qū)域大多為低矮灌木時,可通過減小第一高差閾值H1以避免過多的剔除電力線或電力塔點(diǎn)。本實(shí)施例中,第一高差閾值H1取15。
1.3在三維空間基于k-d樹搜索濾除了植被點(diǎn)的非地面點(diǎn)云中的剩余植被點(diǎn),并濾除剩余植被點(diǎn)。
對已經(jīng)分類的植被點(diǎn)按三維坐標(biāo)建立k-d樹,在k-d樹中搜索未分類的非地面點(diǎn)云中各點(diǎn)的n鄰近點(diǎn),若該未分類點(diǎn)到n鄰近點(diǎn)的平均距離小于預(yù)設(shè)的第一距離閾值Td1,則認(rèn)為該未分類點(diǎn)是剩余植被點(diǎn)。這里,未分類的非地面點(diǎn)云即子步驟1.2所得的濾除了植被點(diǎn)的非地面點(diǎn)云。n和第一距離閾值Td為經(jīng)驗(yàn)值,本實(shí)施例中,n取3,第一距離閾值Td也取3。n取值越大或Td1取值越小,則說明判斷為剩余植被點(diǎn)的條件越苛刻,提取的剩余植被點(diǎn)也越少;反之,則說明判斷為剩余植被點(diǎn)的條件越不苛刻,提取的剩余植被點(diǎn)也越多。
1.4基于種子填充法從子步驟1.3獲得的剩余點(diǎn)云中提取電力線和電力塔點(diǎn)云。
考慮到電力線和電力塔點(diǎn)云呈線狀分布,通常貫穿整個區(qū)域,具有較強(qiáng)的延伸性,而噪聲點(diǎn)通常是小范圍分布,數(shù)量較少,具有不規(guī)則性。因此,基于種子填充法對剩余點(diǎn)云進(jìn)行空間分割,獲得連通區(qū)域,再根據(jù)各連通區(qū)域長度提取電力線和電力塔點(diǎn)云。
本子步驟的具體實(shí)施過程如下:
(1)將剩余點(diǎn)云記為數(shù)據(jù)集B,對數(shù)據(jù)集B建立k-d樹,初始化計(jì)數(shù)label為0;
(2)掃描數(shù)據(jù)集B,若當(dāng)前點(diǎn)B(i)未被處理,把B(i)加入棧Q,然后,執(zhí)行如下步驟:
(2a)棧Q中彈出一未處理點(diǎn)作為種子點(diǎn)q,標(biāo)記為已處理并存入點(diǎn)集C;在數(shù)據(jù)集B中搜索種子點(diǎn)q的n’鄰近點(diǎn),得n’鄰近點(diǎn)集N,將n’鄰近點(diǎn)集N中未被處理、且與種子點(diǎn)q的距離和高差均小于對應(yīng)的第二距離閾值Td2和第二高差閾值H2的點(diǎn)加入棧Q。
第二距離閾值Td2和第二高差閾值H2為與點(diǎn)云質(zhì)量和點(diǎn)云密度有關(guān)的經(jīng)驗(yàn)值,并且在設(shè)值時要盡量保證提取的電力線和電力塔點(diǎn)云的完整性和連續(xù)性。當(dāng)點(diǎn)云質(zhì)量較好,點(diǎn)云密度較大時,可適當(dāng)減小第二距離閾值Td2和第二高差閾值H2;當(dāng)點(diǎn)云質(zhì)量較差,點(diǎn)云密度較小時,可適當(dāng)增大第二距離閾值Td2和第二高差閾值H2。本實(shí)施例中,第二距離閾值Td2取5,第二高差閾值H2取3。
(2b)重復(fù)子步驟(2a)直至棧Q為空,此時,點(diǎn)集C中點(diǎn)即構(gòu)成一個連通區(qū)域,該連通區(qū)域內(nèi)點(diǎn)標(biāo)記為label。
(2c)獲取該連通區(qū)域的矩形范圍,計(jì)算對角線長度,若對角線長度滿足長度閾值,則認(rèn)為該連通區(qū)域是電力線和電力塔點(diǎn)云。長度閾值根據(jù)所處理電力線的長度進(jìn)行取值,其取值一般應(yīng)大于100。
(3)令label+1,重復(fù)步驟(2),直至數(shù)據(jù)集B中所有點(diǎn)均被處理,這樣就可以得到剩余點(diǎn)云中的電力線點(diǎn)云和電力塔點(diǎn)云。
二、電力塔點(diǎn)云的提取與定位
基于上述流程可以從原始點(diǎn)云中提取出整個線路上的電力線和電力塔點(diǎn)云,而從中提取出每相鄰兩基塔間的導(dǎo)線段是電力懸線識別和重建的基礎(chǔ)。本發(fā)明根據(jù)電力塔坐標(biāo)對電力線點(diǎn)云進(jìn)行分段,而電力塔的坐標(biāo)是從點(diǎn)云中計(jì)算得到。本方法流程見圖3。
2.1對電力線和電力塔點(diǎn)云進(jìn)行張量分析,提取潛在電力塔點(diǎn)云。
根據(jù)電力線點(diǎn)在局部區(qū)域內(nèi)的高程基本相同,而電力塔點(diǎn)在局部區(qū)域內(nèi)高程變化大的特點(diǎn),采用張量分析的方法從步驟一提取的電力線和電力塔點(diǎn)云中進(jìn)一步提取潛在電力塔點(diǎn)云。
對步驟一提取的電力線和電力塔點(diǎn)云建立k-d樹,對k-d樹中各數(shù)據(jù)點(diǎn)p,分別計(jì)算以p為中心的m個鄰近點(diǎn)的對稱張量矩陣T,如下:
式(1)中:
上述,(xj,yj,zj)為m個鄰近點(diǎn)中第j個鄰近點(diǎn)的三維坐標(biāo),(xp,yp,zp)為數(shù)據(jù)點(diǎn)p的三維坐標(biāo)。
m根據(jù)需求進(jìn)行取值,一般m取值大,精度高,但計(jì)算量也大。一般情況,m取20即可基本反映鄰域特征。
對稱張量矩陣T通過擬合以p為中心的m鄰域點(diǎn)的誤差橢球?qū)點(diǎn)的幾何特性進(jìn)行描述,其中,mxx描述鄰域點(diǎn)在X方向的擬合誤差,myy描述鄰域點(diǎn)在Y方向的擬合誤差,mzz描述鄰域點(diǎn)在Z方向的擬合誤差。根據(jù)電力線在Z方向擬合誤差較小、在X和Y方向上擬合誤差大,而電力塔在Z方向擬合誤差較大、在X和Y方向上擬合誤差小的特點(diǎn),即可提取潛在電力塔點(diǎn)。提取潛在電力塔點(diǎn)時,只需計(jì)算各數(shù)據(jù)點(diǎn)的mxx、myy和mzz,mzz大于mxx和myy的數(shù)據(jù)點(diǎn)即潛在電力塔點(diǎn)。
2.2對潛在電力塔點(diǎn)云進(jìn)行空間分割獲取電力塔點(diǎn)云,剔除電力塔點(diǎn)云得電力線點(diǎn)云。
采用種子填充法以第三距離閾值Td3對潛在電力塔點(diǎn)云進(jìn)行空間分割,得到多個可能的電力塔連通區(qū)域,高差大于第三高差閾值H3的連通區(qū)域則認(rèn)為是電力塔連通區(qū)域??臻g分割即從潛在電力塔點(diǎn)云中分割出高度長度與電力塔匹配的連通區(qū)域,所以第三距離閾值Td3根據(jù)電力塔長度進(jìn)行取值,第三高差閾值H3根據(jù)電力塔高度進(jìn)行取值。本實(shí)施例中,第三距離閾值Td3取為10米,第三高差閾值H3取為5米。
空間分割所提取的電力塔點(diǎn)云并不完整,還需要根據(jù)電力塔平面中心坐標(biāo)提取完整的電力塔點(diǎn)云。
根據(jù)電力塔平面中心坐標(biāo)提取完整的電力塔點(diǎn)云具體為:
獲取各電力塔連通區(qū)域的數(shù)據(jù)范圍參數(shù),數(shù)據(jù)范圍參數(shù)包括(Xmin,Ymin)和(Xmax,Ymax),Xmin和Xmax分別表示電力塔連通區(qū)域中點(diǎn)橫坐標(biāo)的最小值和最大值,Ymin和Ymax分別表示電力塔連通區(qū)域中點(diǎn)縱坐標(biāo)的最小值和最大值,計(jì)算電力塔平面中心的坐標(biāo)(X,Y):
在步驟一所得的電力線點(diǎn)電力塔點(diǎn)云中,以電力塔平面中心坐標(biāo)(X,Y)為圓心,預(yù)設(shè)半徑的圓形范圍內(nèi)點(diǎn)云即電力塔點(diǎn)云。預(yù)設(shè)半徑一般設(shè)為電力塔最大長度的一半,本實(shí)施例中,預(yù)設(shè)半徑取8米。
對各電力塔連通區(qū)域分別執(zhí)行上述步驟,即可獲得完整的電力塔點(diǎn)云。
三、單相電力線的提取與擬合。
采用種子填充算法對電力線點(diǎn)云進(jìn)行空間分割,得到各相電力線點(diǎn)云。本步驟在進(jìn)行空間分割時,所設(shè)置的第四距離閾值Td4和第四高差閾值H4要確保能區(qū)分電力線點(diǎn)云中任意兩條電力線,一般情況下,第四距離閾值Td4取5,第四高差閾值H4取3。當(dāng)電力線附近存在連續(xù)噪聲時,采用空間分割的方法會將噪聲錯分為電力線點(diǎn),因此需要將噪聲點(diǎn)剔除以減小擬合誤差,采用二維RANSAC對各相電力線點(diǎn)云進(jìn)行直線檢測以剔除噪聲點(diǎn),流程見圖4。
隨機(jī)一致性檢測(RANSAC)是用迭代的方法從包含大量異常點(diǎn)的數(shù)據(jù)中確定數(shù)學(xué)模型的最優(yōu)參數(shù),所以也可以用來檢測異常點(diǎn)的存在。本步驟采用隨機(jī)一致性檢測來檢測噪聲點(diǎn)。
本步驟具體為:
對各相電力線點(diǎn)云分別進(jìn)行如下步驟:
(1)從該相電力線點(diǎn)云中隨機(jī)產(chǎn)生兩個點(diǎn);
(2)計(jì)算兩點(diǎn)在XOY水平面上的直線方程,統(tǒng)計(jì)到該直線距離小于第四距離閾值Td4的點(diǎn)數(shù);
(3)重復(fù)步驟(1)~(2),直至達(dá)到預(yù)設(shè)的迭代次數(shù)iter_num;
(4)取統(tǒng)計(jì)點(diǎn)數(shù)最多的直線方程為該相電力線點(diǎn)云的平面直線方程,到該平面直線方程距離小于第四距離閾值Td4的所有點(diǎn)均為該相電力線點(diǎn),其他點(diǎn)為異常點(diǎn),即噪聲點(diǎn),剔除噪聲點(diǎn)。
四、多分裂導(dǎo)線的自動提取和精細(xì)建模
多分裂導(dǎo)線的精細(xì)建模是基于單相導(dǎo)線進(jìn)行三維重建,是本發(fā)明核心內(nèi)容,流程見圖5。
本步驟具體流程如下:
對步驟三提取的各相電力線點(diǎn)云分別進(jìn)行如下步驟:
(1)對該相電力線點(diǎn)云進(jìn)行擬合,計(jì)算擬合殘差,若殘差小于殘差閾值Tm,則該相電力線點(diǎn)云為單相地線點(diǎn)云,執(zhí)行步驟(2);否則為多分裂的單相導(dǎo)線點(diǎn)云,執(zhí)行步驟(3)。殘差計(jì)算過程中,將誤差大于三倍殘差閾值Tm的點(diǎn)作為粗差點(diǎn)剔除。本發(fā)明中,殘差閾值Tm的設(shè)值與點(diǎn)云質(zhì)量有關(guān),點(diǎn)云質(zhì)量較好時,殘差閾值設(shè)置為較小值;點(diǎn)云質(zhì)量較差時,殘差閾值設(shè)置為較大值。一般情況下殘差閾值Tm取0.2。
(2)采用RANSAC法對單相地線點(diǎn)云進(jìn)行懸鏈線擬合。
(3)基于二分法從單相導(dǎo)線點(diǎn)云中提取分裂子導(dǎo)線點(diǎn)云,并采用RANSAC法對分裂子導(dǎo)線點(diǎn)云進(jìn)行懸鏈線擬合。
將單相導(dǎo)線點(diǎn)云L投影到XOZ豎直面上,將投影等分為若干導(dǎo)線段。當(dāng)導(dǎo)線段長度較小時,可認(rèn)為直線。用最小二乘法對每段導(dǎo)線段分別進(jìn)行線性擬合,得到直線方程Ax+Bz+C=0,對該導(dǎo)線段上所有點(diǎn)(xk,zk)分別計(jì)算:
式(4)中,(xk,zk)表示導(dǎo)線段上第k個點(diǎn)。
預(yù)設(shè)距離閾值DIS,若d>DIS,則認(rèn)為該點(diǎn)位于該單相導(dǎo)線點(diǎn)云L的上部分,記為上分裂子導(dǎo)線點(diǎn);若d<-DIS,則認(rèn)為該點(diǎn)位于該單相導(dǎo)線點(diǎn)云L的下部分,記為下分裂子導(dǎo)線點(diǎn);若d介于-DIS~DIS間,則認(rèn)為該點(diǎn)位于該單相導(dǎo)線點(diǎn)云L的中部分,記為中分裂子導(dǎo)線點(diǎn)。
DIS≥0,其值根據(jù)多分裂導(dǎo)線規(guī)格設(shè)置,一般為兩根最鄰近分裂子導(dǎo)線距離的一半,特別的,對二、四分裂電力線直接設(shè)置DIS=0即可。
對各導(dǎo)線段全部劃分完后,得到單相導(dǎo)線點(diǎn)云L的上分裂子導(dǎo)線點(diǎn)云S(0)、中分裂子導(dǎo)線點(diǎn)云S(1)和下分裂導(dǎo)線點(diǎn)云S(2)。分別判斷各分裂子導(dǎo)線點(diǎn)云S(s)(s=0、1、2)中點(diǎn)數(shù)是否大于點(diǎn)數(shù)閾值NUM,點(diǎn)數(shù)閾值NUM用來判斷粗差點(diǎn)。一般來說,一根分裂子導(dǎo)線上點(diǎn)數(shù)至少大于200,所以本實(shí)施例中,NUM設(shè)置為200。若不大于NUM,則將該分裂子導(dǎo)線點(diǎn)云S(s)作為粗差點(diǎn)剔除;否則對該分裂子導(dǎo)線點(diǎn)云S(s)進(jìn)行基于RANSAC的懸鏈線擬合并計(jì)算殘差;若殘差小于殘差閾值Tm,則認(rèn)為是該分裂子導(dǎo)線點(diǎn)云S(s)中僅包含一根分裂子導(dǎo)線,直接輸出懸鏈線擬合結(jié)果;若不小于殘差閾值,則認(rèn)為該分裂子導(dǎo)線點(diǎn)云S(s)中任然包含多根分裂子導(dǎo)線,對該分裂子導(dǎo)線點(diǎn)云S(s)繼續(xù)執(zhí)行如下步驟(a)~(b):
(a)將分裂子導(dǎo)線點(diǎn)云S(s)整體投影到XOY水平面上,根據(jù)最小二乘原理對投影進(jìn)行線性擬合,得到直線方程ax+by+c=0,對該分裂子導(dǎo)線點(diǎn)云S(s)中所有點(diǎn)(x'k,y'k)分別計(jì)算:
若t>DIS,則認(rèn)為該點(diǎn)位于該分裂子導(dǎo)線點(diǎn)云S(s)的左部分,記為左分裂子導(dǎo)線點(diǎn);若t<-DIS,則認(rèn)為該點(diǎn)位于該分裂子導(dǎo)線點(diǎn)云S(s)的右部分,記為右分裂子導(dǎo)線點(diǎn);若t介于-DIS~DIS之間,則認(rèn)為該點(diǎn)位于該分裂子導(dǎo)線點(diǎn)云S(s)的中間部分,記為中分裂子導(dǎo)線點(diǎn)。
將該分裂導(dǎo)線點(diǎn)云S(s)全部劃分完后,得到S(s)的左分裂子導(dǎo)線點(diǎn)云T(0)、中分裂子導(dǎo)線點(diǎn)云T(1)和右分裂子導(dǎo)線點(diǎn)云T(2)。分別判斷各分裂子導(dǎo)線點(diǎn)云T(u)(u=0、1、2)上點(diǎn)數(shù)是否大于點(diǎn)數(shù)閾值NUM,若大于,對該分裂子導(dǎo)線點(diǎn)云T(u)進(jìn)行基于RANSAC的懸鏈線擬合并計(jì)算殘差,輸出懸鏈線擬合結(jié)果,將殘差作為精度評定結(jié)果;否則,將該分裂子導(dǎo)線點(diǎn)云T(u)作為粗差點(diǎn)剔除。
(b)重復(fù)步驟(a),直至單相導(dǎo)線點(diǎn)云L中各分裂子導(dǎo)線點(diǎn)云S(s)均被處理。
(4)重復(fù)步驟(1)~(3),直至各相電力線點(diǎn)云均被處理。
下面將結(jié)合實(shí)施例進(jìn)一步說明本步驟。
對二分裂導(dǎo)線,將各相導(dǎo)線點(diǎn)云投影XOZ豎直面,并分段進(jìn)行線性擬合。將每相導(dǎo)線點(diǎn)云分為上分裂子導(dǎo)線點(diǎn)云S(0)和下分裂子導(dǎo)線點(diǎn)云S(2),對S(0)和S(2)分別進(jìn)行基于RANSAC的懸鏈線擬合并進(jìn)行誤差分析,由于兩個分裂子導(dǎo)線點(diǎn)云均僅包含一根分裂子導(dǎo)線,進(jìn)行誤差分析時殘差小于殘差閾值,因此直接輸出S(0)和S(2)的懸鏈線擬合結(jié)果。
對四分裂導(dǎo)線,將各相導(dǎo)線點(diǎn)云投影到XOZ豎直面,并分段進(jìn)行線性擬合,將每相導(dǎo)線點(diǎn)云分為上分裂子導(dǎo)線點(diǎn)云S(0)和下分裂子導(dǎo)線點(diǎn)云S(2)。對S(0)和S(2)分別進(jìn)行懸鏈線擬合并進(jìn)行誤差分析,由于兩個分裂子導(dǎo)線點(diǎn)云中均包含兩根分裂子導(dǎo)線,進(jìn)行誤差分析時殘差大于殘差閾值,需繼續(xù)將兩個分裂子導(dǎo)線點(diǎn)云整體投影到XOY水平面上并整體擬合,將兩個分裂子導(dǎo)線點(diǎn)云均劃分為左分裂子導(dǎo)線點(diǎn)云和右分裂子導(dǎo)線點(diǎn)云,此時,所劃分的左分裂子導(dǎo)線點(diǎn)云和右分裂子導(dǎo)線點(diǎn)云中均僅包含一根分裂子導(dǎo)線,對左分裂子導(dǎo)線點(diǎn)云和右分裂子導(dǎo)線點(diǎn)云分別進(jìn)行基于RANSAC的懸鏈線擬合并計(jì)算殘差。