李志偉,陳聯(lián)鵬,江堯堯,張 升
(1.中國電建集團江西省水電工程局有限公司,江西 南昌 330096;2.南昌大學工程建設學院,江西 南昌 330031)
近年來,隨著我國風電事業(yè)蓬勃發(fā)展,傳統(tǒng)數(shù)字攝影測量方法已無法滿足實際風電場建設項目中地形圖繪制、信息收集、規(guī)劃等工作的精度和效率。無人機LiDAR 點云數(shù)據(jù)精度高、采集效率快,可以滿足風電場建設項目要求。點云分類是點云數(shù)據(jù)處理中的關(guān)鍵一環(huán),傳統(tǒng)風電場點云數(shù)據(jù)分類效率低、人工干預大,直接影響風電場項目各項工作的進度及數(shù)據(jù)的準確性。故而亟需一種高效、準確、適用性強的風電場點云數(shù)據(jù)分類方法。
目前風電場點云數(shù)據(jù)常用的地面點分類方法[1],有基于分割類算法[2-3]和坡度的分類算法[4],但計算量大、內(nèi)存占用率高。形態(tài)類分類方法[5],對地勢起伏較大地形適用性低。常見的非地面點云數(shù)據(jù)分類方法,如DBSCAN 算法[6-8]利用密度聚類,且聚類速度快、適用性高,但聚類結(jié)果受算法中Eps 和MinPts 兩個核心參數(shù)影響大,兩參數(shù)需要人為擬定。對此Yue 等[9]提出一種快速確定Eps 參數(shù)的算法,但算法MinPts 參數(shù)恒定取值為4。周治平等[10]提出AF-DBSCAN 算法,自適應確定了兩參數(shù),但聚類結(jié)果偶然因素更多。Khan 等[11]提出的AD-DBSCAN 自適應聚類算法也無法自動識別簇數(shù),需提前給定。李宗林等[12]提出(Kernel-DBSCAN)可通過數(shù)據(jù)的分布特征來確定兩個參數(shù),但僅在一維上有效,高維度聚類效果差。由李文杰等人提出的KANN-DBSCAN 算法[13],基于自身特征自動確定最優(yōu)Eps 和MinPts,聚類分類結(jié)果準確性較高,但僅運行于二維少量點數(shù)據(jù)聚類實驗。
綜上,本研究利用基于不規(guī)則三角網(wǎng)加密濾波算法[14]提取風電場原始點云數(shù)據(jù)中的地面點及非地面點,使用三維KANN-DBSCAN 算法對非地面點進行精分類,采用South LiDAR 軟件在地面點云中分類道路點,實現(xiàn)風電場點云數(shù)據(jù)高效、準確分類。
風電場點云數(shù)據(jù)是利用三維激光LiDAR,對地表進行掃描得到的三維數(shù)據(jù),主要分為兩大類:
(1) 地面點云,包含裸地表面、道路等點。
(2) 非地面點云,包括建筑物、密林植被、高壓或民用電線等點。
本研究將去噪后的原始數(shù)據(jù)分為地面點和非地面點。并進一步分類非地面、地面點點云中的植被、建筑、道路點云等點云。形成一套完整風電場點云數(shù)據(jù)處理方法路線,路線圖見圖1,本研究方法大幅提高風電場點云數(shù)據(jù)分類精度和效率。
圖1 風電場點云數(shù)據(jù)處理方法路線
廟墩中學前段數(shù)據(jù)面積36 881.662 m2,數(shù)據(jù)中共包含40 419 351 個點云對象,下文具體分析,以廟墩中學前段數(shù)據(jù)為例:
不規(guī)則三角網(wǎng)加密濾波算法對地面點分類,實現(xiàn)步驟如下:
(1) 首先選擇低點建立初始三角網(wǎng)模型。
(2) 利用算法持續(xù)加入新的點向上擴建模型,使其與地表模型更加吻合。
(3) 數(shù)據(jù)點納入三角網(wǎng)需滿足兩個閾值,為反復參數(shù)迭代角和迭代距離。新激光點連接與其距離最小的三角形頂點成線,該線與對應三角形所處平面的最大角度,稱為迭代角。隨著迭代角的減小,點云起伏變化的幅度也減小,意味著迭代角與地面點數(shù)量成正比。迭代距離在三角形較大時,可以避免在三角形向上構(gòu)建的情況下出現(xiàn)劇烈的波動甚至大的跳躍等狀況;在三角形較小時,由于迭代距離,迭代角度隨之迭代減小,可以避免地面點云出現(xiàn)過多的無用點云數(shù)據(jù)。當三角形邊短于一個給定值,則迭代停止。兩個參數(shù)的定義見圖2。
圖2 反復參數(shù)的定義示意
根據(jù)如上步驟即可實現(xiàn)地面點與非地面點的快速分類。使用不規(guī)則三角網(wǎng)加密濾波算法分類后的廟墩中學前段地面點云及非地面點云數(shù)據(jù),其中包含36 456 736 個地面點和3 958 332 個非地面點。
本研究針對非地面點基于KANN-DBCSCAN 算法對非地面點云進行精分類,地面點云分類利用集成的South LiDAR 軟件平臺實現(xiàn)地面點云精分類。
KANN DBCSCAN 算法基于DBSCAN 算法自適應確定Eps 和MinPts 的參數(shù),其中,Eps 為掃描半徑,MinPts 為鄰域密度閾值。具體算法求解過程如下:
(1) Eps 列表由數(shù)學期望法和經(jīng)過平均最近鄰法改進的K-平均最鄰近法[15]相結(jié)合生成。該算法計算數(shù)據(jù)集D 中所有對象的K-最鄰近距離,再取所有K-最鄰近距離的平均值,最后計算每一個K,得到K-平均最鄰近距離向量,計算步驟如下:
Step1:數(shù)據(jù)集D 中所有對象之間的距離,經(jīng)過計算可得到矩陣Distm×n,式中對象個數(shù)為m,第i 個對象到第j 個對象的距離是dist(i,j)。
圖3 為廟墩中學前段非地面點數(shù)據(jù)集的Eps 列表和K 值的關(guān)系圖,其中Eps 隨K 值增大而升高。
圖3 Eps 列表和K 值關(guān)系
(2) 使用數(shù)學期望法,生成MinPts 參數(shù)列表。該方法利用上一步生成的Eps 參數(shù)列表,計算對應Eps鄰域中的對象數(shù),計算所有對象的Eps鄰域?qū)ο笃骄鶖?shù),作為整個數(shù)據(jù)集D 的鄰域密度閾值MinPts,其表達式為:
Qi為第i 個數(shù)據(jù)點的Eps 鄰域數(shù)量;m 為數(shù)據(jù)集D 的數(shù)據(jù)點的總個數(shù)。
依次計算每個Eps 參數(shù)可得到廟墩中學前段非地面點數(shù)據(jù)集MinPts 與K 值關(guān)系圖見圖4。
圖4 MinPts 列表和K 值關(guān)系
(3) 自適應確定最優(yōu)參數(shù)。該方法采用參數(shù)集合DEps的數(shù)據(jù)和MinPts參數(shù)作為DBSCAN 算法的兩個關(guān)鍵參數(shù)進行計算,計算所得再進行聚類分析。最優(yōu)K 值為利用不同的K 值計算時,生成的簇數(shù)N 連續(xù)三次相同對應的值K。將其最優(yōu)K 值的K-平均最鄰近距離Distk作為最優(yōu)的Eps 參數(shù),與其相應的鄰域密度閾值MinPts 作為最優(yōu)MinPts 參數(shù)。
(4) 將最優(yōu)的Eps 參數(shù)和最優(yōu)MinPts 參數(shù)代入DBSCAN 算法。該算法開始任意選取一個未訪問點,找出該點Eps 鄰域內(nèi)的所有臨近點。找點數(shù)大于或者等于MinPts 時,該點與其臨近點形成一個簇,并將出發(fā)點標記為已訪問點。之后對簇內(nèi)所有未標記的點,以相同的方法處理來延展該簇。當訪問完簇內(nèi)所有標記的點后,用相同的算法去處理未訪問點,將數(shù)據(jù)集分成各種簇,以此達到全部非地面點云數(shù)據(jù)分類的目的。
South LiDAR 軟件平臺的分類功能,可實現(xiàn)在地面點中分類出地形點及道路點,操作難度低,效率及準確率較高。
利用上述方法對廟墩中學前段數(shù)據(jù)集進行分析,通過KANN-DBCSCAN 算法運行,得出聚類簇數(shù)與K值的關(guān)系見圖5。由圖可得當K = 89 到K = 163簇數(shù)穩(wěn)定,根據(jù)此選取K=163 時對應最優(yōu)Eps 和MinPts 參數(shù),分別為Eps=6.693,MinPts=113。將兩參數(shù)導入DBSCAN 算法可得出聚類結(jié)果,結(jié)合South LiDAR 軟件對地面點分類。非地面點云分成結(jié)果為3個主要類別,分類準確度較高;地面點中到道路分類結(jié)果效果好。由此證明本算法能夠有效的對非地面、地面點云進行精分類。
圖5 聚類簇數(shù)N 和K 值關(guān)系
本研究以廣東韶關(guān)市翁源周陂風電場項目廟墩中學作為研究對象。地點位于廣東韶關(guān)市翁源縣周陂鎮(zhèn),存在山地、密林及村鎮(zhèn)等復雜地形環(huán)境。采用無人機激光LiDAR 進行點云數(shù)據(jù)測繪,飛行工具選取大疆Matrice 300 RTK,最大飛行高程為100 m,最快飛行速度為23 m/s。三維激光掃描儀型號為禾賽Pandar 40P,選用Ustudio 軟件進行原始數(shù)據(jù)解算,利用South LiDAR 軟件進行點云去噪,導出XYZ 文件,本研究算法主要使用Python 實現(xiàn)。
廟墩中學中段及后段去噪后的原始點云數(shù)據(jù),總面積分別為28 296.118 m2和36 371.533 m2,中段包含27 152 031 個點云數(shù)據(jù),后段包含39 259 992 個點云數(shù)據(jù)。分類后的廟墩中學中段及后段地面與非地面點云數(shù)據(jù)。廟墩中學中段中分類得到24 735 748個地面點云數(shù)據(jù),2 415 235 個非地面點云數(shù)據(jù)。廟墩中學后段中分類得到36 277 666 個地面點云數(shù)據(jù),2 968 168 個非地面點云數(shù)據(jù)。結(jié)果表明,兩段的地面點與非地面點都得到分類較好效果。
利用KANN-DBSCAN 算法及SouthLiDAR 軟件,對廟墩中學中段及后段非地面、地面點云數(shù)據(jù)進行精分類,結(jié)果可見KANN-DBSCAN 算法能夠使得各類非地面點云得到有效分類,廟墩中學中段點云數(shù)據(jù)分為三類,包含植被點2 285 476 個,建筑點包括建筑及線桿共126 831 個,電線點為2 928 個;廟墩中學后段點云數(shù)據(jù)分為四類,其中植被點2 314 283 個,建筑點包括建筑點共650 720 個,電線點為3 165個,菜棚點15 750 個。直接使用SouthLiDAR 軟件和KANN-DBSCAN 算法分類a、b 段為SouthLiDAR 軟件分類,存在大量植被點和建筑點的混雜,a、b 段使用KANN-DBSCAN 算法分類,兩段點云得到有效的區(qū)分,還分類出不屬于植被的菜棚點。由此可發(fā)現(xiàn)相較于直接使用SouthLiDAR 軟件對非地面點云直接分類,KANN-DBSCAN 算法分類結(jié)果更加準確。
(1) 本研究針對風電場項目點云數(shù)據(jù)數(shù)量龐大,分類不準確的問題。首先使用不規(guī)則三角網(wǎng)加密濾波算法,后運用三維KANN-DBSCAN 算法和SouthLiDAR 軟件。實現(xiàn)地面點、非地面點快速分類,并進一步分類出植被、建筑、電線、道路等各類點云,指出一條快速有效的風電場點云數(shù)據(jù)分類方法。
(2) 根據(jù)翁源風電場項目點云數(shù)據(jù)分類結(jié)果,證明本研究方法適用于實際風電項目,并驗證了本研究方法能提高風電場點云數(shù)據(jù)分類精度和效率。該方法也能為相近的工程項目數(shù)據(jù)分類方法給予參考依據(jù)。
(3) 本研究僅將原始數(shù)據(jù)分為植被、建筑、電線等大類,之后還可以針對植被高度,建筑、電線類型等進行更精確的分類研究。