吳俊豪,李 琛,王 蓉,劉文黎,周星宇
(華中科技大學(xué) 土木工程與力學(xué)學(xué)院,湖北 武漢 430074)
排水管道作為城市的生命線工程,關(guān)系著城市防澇[1]、水體黑臭整治[2]、城市水循環(huán)[3]等重要領(lǐng)域的健康安全運(yùn)轉(zhuǎn)。然而,目前由于管道的階段化建設(shè),周邊施工誘發(fā)管道遷移,管道老化、破損、變形等病害的影響,導(dǎo)致管道信息不全面、不完備、不準(zhǔn)確,從而給管網(wǎng)的運(yùn)維管理帶來不便。因此,如何準(zhǔn)確高效地探明城市既有地下排水管網(wǎng)情況,對城市的管網(wǎng)維護(hù)有著重大意義。當(dāng)前,排水管網(wǎng)的現(xiàn)代檢測方式有CCTV檢測[4]、探地雷達(dá)檢測[5]、激光檢測[6]、聲吶檢測[7]等。其中,聲吶檢測[8]因?yàn)榭梢詫?shí)現(xiàn)水下檢測和高穩(wěn)定性的特點(diǎn),在城市排水管道探測中得到了廣泛應(yīng)用。但是,由于檢測設(shè)備自身振動、管道內(nèi)水流混聲等因素的影響,在管道檢測中利用聲吶技術(shù)生成的點(diǎn)云數(shù)據(jù)中往往會不可避免地存在噪聲點(diǎn),如何高效精確地去除這些噪聲點(diǎn),是利用聲吶技術(shù)進(jìn)行管道檢測面臨的一大難點(diǎn)。
國內(nèi)外學(xué)者一直關(guān)注點(diǎn)云去噪技術(shù)的發(fā)展,如Ester等提出了基于密度的噪音聚類方法[9],但在進(jìn)行聚類優(yōu)化時,需要主觀輸入部分關(guān)鍵變量;2014年,Rodriguez A和Laio A在《Science》上提出聚類中心的特征是密度高于其臨近代理值,并且與密度較高的點(diǎn)的距離相對較大[10];張玉存等提出基于曲率約束的點(diǎn)云分割去噪方法,通過曲率約束來保持模型特征[11];程一峰和劉增力采用稀疏貝葉斯學(xué)習(xí)對圖像信號進(jìn)行預(yù)處理,結(jié)合Bartlett檢驗(yàn)法裁剪掉噪聲原子[12];章曼等提出了一種基于自適應(yīng)可達(dá)距離的密度峰值聚類算法(ARD-DPC),利用非參數(shù)核密度估計(jì)方法計(jì)算點(diǎn)局部密度,避免了截斷距離的主觀選取[13]??傮w來說,目前的研究主要聚焦于從數(shù)理方面改進(jìn)噪聲聚類優(yōu)化算法,缺少結(jié)合實(shí)際工程背景和聲吶點(diǎn)云特點(diǎn),給出適用于特定領(lǐng)域,如聚焦城市排水管道的點(diǎn)云去噪聚類優(yōu)化方法等方面的研究。
為了更精準(zhǔn)地去除基于聲吶技術(shù)生成的排水管道點(diǎn)云模型中的噪聲點(diǎn),同時有效保留管道內(nèi)壁和淤積線的點(diǎn)云特征,本文提出將密度聚類優(yōu)化算法(density clustering optimization algorithm, DBSCAN)和類圓外切線斜率擬合相結(jié)合的方式進(jìn)行點(diǎn)云去噪。首先針對管壁環(huán)狀的特征,確定合適的全局鄰域半徑和Min Pts個數(shù),通過密度聚類優(yōu)化算法識別核心對象和密度相連點(diǎn),有效排除噪聲對象,得到去噪后的管道內(nèi)壁掃描點(diǎn)和淤泥掃描點(diǎn);其次,在處理后的點(diǎn)云數(shù)據(jù)基礎(chǔ)上,采用類圓外切線斜率擬合的方式,提高管道內(nèi)部特征點(diǎn)云數(shù)據(jù)擬合的效率和識別精度,得到精確的管道內(nèi)壁和淤積淤泥擬合曲線;最后以武漢市某排水管道為工程案例,分析了DBSCAN密度算法和斜率擬合方法的應(yīng)用效果。
聲吶檢測過程中,由于排水管道內(nèi)水流混聲和聲吶檢測設(shè)備自身的振動等多因素的影響,導(dǎo)致聲吶點(diǎn)云掃描結(jié)果噪聲嚴(yán)重、邊緣惡化,不易識別出管道內(nèi)壁和淤泥淤積線。因此,為提高聲吶掃描數(shù)據(jù)處理的效率和準(zhǔn)確度,首先需要在現(xiàn)有聲吶檢測技術(shù)基礎(chǔ)上,通過對掃描點(diǎn)云結(jié)果的去噪優(yōu)化,在保留管道內(nèi)壁特征同時,去除噪音點(diǎn),得到優(yōu)化后的點(diǎn)云數(shù)據(jù);其次,通過類圓截面擬合算法,擬合出排水管道的內(nèi)壁曲線;最后,結(jié)合管壁和點(diǎn)云掃描特征,得到淤泥淤積曲線。
DBSCAN算法作為一種經(jīng)典密度算法,基于點(diǎn)云密度對數(shù)據(jù)進(jìn)行處理,避免了需要人工設(shè)定聚類簇的數(shù)量,可以在有噪聲的數(shù)據(jù)庫中有效識別任意形狀的簇。其算法的核心步驟在于尋找核心點(diǎn),通過將尋找到的相鄰核心點(diǎn)連成一片,從而得到所需要的簇。
為理解DBSCAN算法,有幾個基本定義[14]:
(1) 鄰域(Eps):指在數(shù)據(jù)集范圍內(nèi),以每個數(shù)據(jù)點(diǎn)為圓心所形成的半徑為ε的圓圈區(qū)域,對于任意數(shù)據(jù)點(diǎn)xi落于圓圈范圍內(nèi),則稱xi屬于該Eps。
(2) 密度值:落在數(shù)據(jù)集內(nèi)任意數(shù)據(jù)點(diǎn)xi既定半徑ε鄰域范圍內(nèi)的數(shù)據(jù)點(diǎn)個數(shù)稱為該點(diǎn)的密度值。其中,可以人為選定密度閾值(MinPts)作為核心點(diǎn)判別標(biāo)準(zhǔn),如果數(shù)據(jù)點(diǎn)xi密度大于等于密度閾值,則判定該點(diǎn)為核心點(diǎn)。
(3) 邊緣點(diǎn):當(dāng)數(shù)據(jù)點(diǎn)密度小于密度閾值,但位于核心點(diǎn)鄰域范圍內(nèi)時,則稱該點(diǎn)為邊緣點(diǎn)。
(4) 噪聲點(diǎn):若數(shù)據(jù)點(diǎn)密度小于密度閾值,且該點(diǎn)不處于任意核心點(diǎn)鄰域范圍內(nèi)時,記該點(diǎn)為噪聲點(diǎn)。
(5) 直接密度可達(dá):對于核心點(diǎn)x1和任意數(shù)據(jù)點(diǎn)x2,數(shù)據(jù)點(diǎn)x2位于核心點(diǎn)x1鄰域范圍內(nèi),則稱點(diǎn)x1和點(diǎn)x2直接密度可達(dá)。
(6) 密度可達(dá):對于數(shù)據(jù)集內(nèi)數(shù)據(jù)點(diǎn)x1,x2,…,xn,其中n≥2,滿足xi到xi+1直接密度可達(dá),則稱數(shù)據(jù)點(diǎn)x1,x2,…,xn密度可達(dá),顯然,數(shù)據(jù)點(diǎn)x1,x2,…,xn-1都必須是核心點(diǎn)。
(7) 密度相連:如果數(shù)據(jù)集內(nèi)存在數(shù)據(jù)點(diǎn)xx到數(shù)據(jù)點(diǎn)xy和xz都是密度可達(dá)的,則稱數(shù)據(jù)點(diǎn)xy和xz密度相連,可以看出,該性質(zhì)具有對稱性,既點(diǎn)xy和xz密度相連等價于點(diǎn)xz和xy密度相連。
DBSCAN算法的詳細(xì)流程如圖1所示。
圖1 DBSCAN算法流程Fig.1 DBSCAN algorithm process
在算法的實(shí)際應(yīng)用過程中,通過設(shè)定鄰域(Eps)和密度閾值(MinPts),尋找出數(shù)據(jù)集中的核心點(diǎn),選定任意核心點(diǎn)xi為起點(diǎn),通過將直接密度可達(dá)的核心點(diǎn)連接起來,同時將邊緣點(diǎn)連接至最近的核心點(diǎn)上,直至所有密度相連的點(diǎn)都連接起來,形成所需要的簇,實(shí)現(xiàn)聚類,同時識別噪聲點(diǎn)。
在性質(zhì)上,同一個簇內(nèi)的點(diǎn)必定是密度相連的,且簇內(nèi)點(diǎn)的任意密度可達(dá)點(diǎn)必定屬于該簇。
由微分定義可知,當(dāng)平面內(nèi)兩點(diǎn)之間相距距離極近時,斜率與微分近似相等。因此,對于圓截面來說,可以將圓面上點(diǎn)的切線斜率近似等價于該點(diǎn)的微分。
(x-a)2+(y-b)2=r2
(1)
(2)
圖2 標(biāo)準(zhǔn)圓面上點(diǎn)切線斜率變化趨勢Fig.2 The slope change of the outer tangent of a standard circle
其中,式(1)為圓的標(biāo)準(zhǔn)方程,式(2)為圓的斜率方程,根據(jù)圓的切線斜率方程性質(zhì)可以知道,當(dāng)設(shè)定圓心為原點(diǎn)時,圓上點(diǎn)切線斜率變化與圓的半徑無關(guān),且圓斜率呈連續(xù)變化趨勢,如圖2所示。因此,通過計(jì)算相臨近點(diǎn)云之間的斜率變化趨勢是否與圓斜率變化趨勢相匹配,可以篩選出位于圓截面上的掃描點(diǎn)云點(diǎn)。
為表述方便,定義正圓面上點(diǎn)與圓心連線和y軸夾角、橢圓面上點(diǎn)與原點(diǎn)連線同y軸夾角統(tǒng)稱為圓心偏向角。
由圖3可以看出,當(dāng)為正圓面時,圓上一點(diǎn)A切線的斜率k與圓心偏向角tanθ1數(shù)值相等,而根據(jù)兩條相互平行線之間內(nèi)錯角相等原理,tanθ1的值可由對應(yīng)兩條邊的長度比值得到,即有如下等式:
(3)
圖3 圓外切線計(jì)算原理圖Fig.3 The calculation principle of the outer tangent to the circle
針對橢圓面,由于橢圓上一點(diǎn)的切線斜率與該點(diǎn)和原點(diǎn)之間連線斜率乘積為定值,即:
(4)
(5)
其中,式(4)為橢圓標(biāo)準(zhǔn)方程,式(5)為橢圓面上一點(diǎn)的切線斜率與該點(diǎn)和原點(diǎn)之間連線斜率的乘積定值計(jì)算公式,顯然橢圓上一點(diǎn)的切線斜率與該點(diǎn)和原點(diǎn)之間連線斜率成反比例關(guān)系,即與圓心偏向角斜率呈線性關(guān)系。當(dāng)需要擬合的截面為橢圓時,同一象限內(nèi)相鄰點(diǎn)云點(diǎn)的斜率變化僅與橢圓長短軸相關(guān),具有連續(xù)變化趨勢。在實(shí)際應(yīng)用中,通過迭代確定橢圓長短軸長度范圍,可以得到較好的擬合效果。
結(jié)合圖2和圖3可知,當(dāng)以x軸為起始線逆時針選點(diǎn)進(jìn)行斜率計(jì)算時,位于圓面上的點(diǎn)云點(diǎn)之間斜率變化趨勢符合tanθ曲線。在實(shí)際應(yīng)用場景中,雖然不能確定管道圓心的坐標(biāo),但通過選取點(diǎn)云的均值中心點(diǎn)作為假設(shè)圓心O1,其第一和第二象限上的逆時針相鄰點(diǎn)云點(diǎn)間斜率仍呈單調(diào)遞增趨勢。選定假設(shè)圓心,計(jì)算固定角度θ范圍內(nèi)點(diǎn)云之間的最小斜率,minkθn>minkθ2>minkθ1>tanθi,通過增大θi的值,最終能篩選出合適的擬合圓截面。
當(dāng)然,為減少計(jì)算量,根據(jù)圓切線斜率連續(xù)變化性質(zhì),且圓上相鄰兩點(diǎn)之間的歐氏距離必定最小,可以選擇位于同一鄰域內(nèi)的直接密度可達(dá)點(diǎn)之間進(jìn)行斜率計(jì)算。在已知兩點(diǎn)坐標(biāo)的情況下,通過代入斜率計(jì)算公式,算出兩點(diǎn)之間的斜率,再代入圓切線斜率變化方程進(jìn)行迭代計(jì)算。圖4為圓外切線斜率擬合流程圖。
圖4 圓外切線斜率擬合流程圖Fig.4 The process of fitting the slope of the tangent to the circle
本文研究對象為排水管道,其標(biāo)準(zhǔn)制式為圓柱體,因此,對排水管道內(nèi)壁進(jìn)行擬合時需要得到的聚類簇可以視作圓面。
根據(jù)最小二乘法和中垂線定理推論可知,至少3點(diǎn)能夠確定一個圓面,當(dāng)圓面上的確定點(diǎn)越多,擬合效果越好。為保證排水管道內(nèi)壁的擬合效果,需要盡可能準(zhǔn)確地找到位于管道內(nèi)壁同一截面上的點(diǎn)。因此,通過采用DBSCAN密度算法,對聲吶掃描得到的點(diǎn)云數(shù)據(jù)進(jìn)行聚類優(yōu)化,去除原始點(diǎn)云數(shù)據(jù)中的噪聲點(diǎn)。之后,在去噪處理初篩后的數(shù)據(jù)基礎(chǔ)上,利用圓面外切線斜率擬合的方式,盡可能找出更多圓面上的點(diǎn),得出最終的類圓擬合曲線。此外,由于管道內(nèi)部存在淤泥,在實(shí)際數(shù)據(jù)處理過程中還需要識別出淤積線。
DBSCAN算法在計(jì)算過程中需要自主設(shè)定鄰域半徑和密度閾值(MinPts)。為得到最優(yōu)的計(jì)算結(jié)果,通過計(jì)算數(shù)據(jù)點(diǎn)之間的歐式距離,由大到小排序并繪制曲線,選擇曲線上臨近中段部分梯度最大點(diǎn)的歐式距離作為鄰域半徑。因?yàn)橛商荻榷x可知,該點(diǎn)兩側(cè)的點(diǎn)云歐式距離變化幅度最大,選定該點(diǎn)數(shù)值能兼顧去噪效率和精確度。在確定了鄰域半徑的基礎(chǔ)上,試運(yùn)行程序得到每個數(shù)據(jù)點(diǎn)的密度值,將全部密度值的算術(shù)平均值作為密度閾值(MinPts)。
(6)
Pi為數(shù)據(jù)點(diǎn)i的密度值。在數(shù)據(jù)去噪結(jié)果基礎(chǔ)上,通過圓外切線斜率擬合方式,確定排水管道內(nèi)壁截面上的點(diǎn),之后,通過類圓曲線進(jìn)行光順處理。
具體流程如下:(1) 多次試驗(yàn)確定密度算法的鄰域半徑和密度閾值(MinPts);(2) 基于密度算法,去除截面點(diǎn)云數(shù)據(jù)中的噪聲點(diǎn),得到排水管道內(nèi)壁數(shù)據(jù)核心點(diǎn)和淤積曲線數(shù)據(jù)核心點(diǎn);(3) 通過圓外切線斜率擬合算法,在全部核心點(diǎn)的基礎(chǔ)上識別出管道壁上的核心點(diǎn);(4) 設(shè)定半徑線性變化的圓截面去網(wǎng)羅數(shù)據(jù)點(diǎn),所包含數(shù)據(jù)點(diǎn)最多的圓面即為最終擬合管道內(nèi)壁;(5) 在得到排水管道內(nèi)壁截面的基礎(chǔ)上,針對DBSCAN算法所發(fā)現(xiàn)的非噪聲點(diǎn),其中單獨(dú)聚類且斜率變化相對平緩的數(shù)據(jù)集點(diǎn)即為擬合出來的淤積線。
為驗(yàn)證算法的實(shí)用性,本文以武漢市某排水管道為工程案例,進(jìn)行實(shí)地探測。由于本文主要探究聲吶點(diǎn)云去噪和排水管道內(nèi)部情況截面擬合問題,管道本身的連接性質(zhì)并非顯著影響因素,為簡化實(shí)地檢測過程,故選取直線布置的城市支干管道作為試驗(yàn)場地,相鄰管道的設(shè)計(jì)直徑保持一致。
管道的空間布局和井口布置如圖5所示,在實(shí)地測量過程,通過搭載有HLD-S1型號聲吶機(jī)器人進(jìn)行管道掃描,共得到98萬個點(diǎn)云數(shù)據(jù)。
圖5 武漢市某排水管道布置示意圖Fig.5 Schematic diagram of a drainage pipeline layout in Wuhan
圖6(a)為其中一個截面聲吶掃描點(diǎn)的原始數(shù)據(jù)二維呈現(xiàn)??梢钥闯?,初始掃描點(diǎn)云圖除了管道壁和淤積線以外,還存在有大量噪音點(diǎn),影響管道內(nèi)壁和淤積線的最終擬合效果。
圖6 聲吶掃描點(diǎn)截面數(shù)據(jù)Fig.6 Sectional data of sonar scanning points
由于噪聲的發(fā)生具有瞬時性[15],有理由相信,當(dāng)多次掃描同一截面時,反復(fù)出現(xiàn)的信號點(diǎn)即為管壁點(diǎn)或者淤積點(diǎn)。所以,為減少數(shù)據(jù)處理量,通過聲吶自帶的信號值強(qiáng)度檢測,可以初步篩選出描述管道內(nèi)部特征的點(diǎn)云點(diǎn)。
將初篩后的聲吶掃描點(diǎn)二維坐標(biāo)數(shù)據(jù)代入設(shè)定好初始鄰域半徑(ε0=0.04)和密度閾值(MinPts0=10)的DBSCAN算法,可以有效識別出點(diǎn)云中密度值符合要求的核心點(diǎn),刪除掉噪聲點(diǎn)后,根據(jù)剩余全部點(diǎn)云點(diǎn)的均值中心點(diǎn)劃分出4個象限的排水管道內(nèi)壁和淤泥點(diǎn)云二維呈現(xiàn)如圖6(b)所示。
根據(jù)圓外切線斜率擬合算法,固定角度為10°,可以將全部點(diǎn)云數(shù)據(jù)劃分為36個部分,如圖7(a),其中每個部分范圍內(nèi)求取臨近角度兩兩核心點(diǎn)之間的斜率,可以得到范圍內(nèi)核心點(diǎn)的斜率值。
根據(jù)計(jì)算得到的斜率結(jié)果,以對應(yīng)角度作為橫坐標(biāo),斜率取值作為縱坐標(biāo),可以繪制出每個核心點(diǎn)在坐標(biāo)軸范圍內(nèi)的空間位置,通過與標(biāo)準(zhǔn)圓的斜率變化進(jìn)行比較,可以篩選出位于圓面上的點(diǎn)。由于存在斜率值過大的離散核心點(diǎn),為更好地比較效果,圖7(b)將y軸值范圍限制在[-20,20]之間。
圖7 斜率擬合算法過程示意圖Fig.7 Schematic diagram of the slope fitting algorithm process
結(jié)合圓外切線斜率擬合原理篩選后得到的圓面上核心點(diǎn),用圓的極坐標(biāo)方程去擬合相關(guān)點(diǎn),根據(jù)最小二乘法原理,圓方程需滿足盡可能多的核心點(diǎn)位于圓面上。如圖8,通過迭代計(jì)算得出圓極坐標(biāo)相關(guān)參數(shù)值,從而繪制出擬合圓截面,
x=x0+ρcosθ
(7)
y=y0+ρsinθ
(8)
圖8 排水管道壁擬合示意圖Fig.8 Fitting diagram of the inner wall
圖9為光順處理過后的最終結(jié)果,從圖中可以明顯看出管道內(nèi)壁輪廓和淤泥的淤積曲線,相較于圖6(a),已經(jīng)完全處理了聲吶掃描過程中形成的噪音點(diǎn),并且通過圓外切線斜率擬合的形式,在保留原始掃描管道內(nèi)壁特征的同時,得到了管道的內(nèi)壁截面和淤積曲線圖,驗(yàn)證了文中方法的實(shí)用性。
圖9 管道內(nèi)壁和淤積擬合曲線Fig.9 Fitting curve of pipeline inner wall and siltation
為驗(yàn)證文中方法的精度可靠性,需要對擬合圓心C和半徑R進(jìn)行估計(jì)[16]。由于管道空間位置的不變性,本文僅就半徑擬合值進(jìn)行對比分析。通過對比另外3種常見聚類算法聚類得到的半徑擬合結(jié)果,如表1所示。
表1 常見聚類算法聚類結(jié)果指標(biāo)對比Tab.1 Comparison of common clustering algorithm result indicators m
(9)
(10)
(11)
(12)
本文以武漢市某排水管道為例進(jìn)行分析,考慮管道內(nèi)水流混聲、檢測設(shè)備自身振動等多因素影響,基于現(xiàn)場聲吶掃描采集的98萬個點(diǎn)云坐標(biāo)進(jìn)行數(shù)據(jù)去噪和管道特征提取。在采用密度聚類優(yōu)化算法進(jìn)行點(diǎn)云數(shù)據(jù)初篩的基礎(chǔ)上,提出圓外切線斜率擬合算法,相較于單一聚類算法能夠更有效識別出排水管道內(nèi)壁界限和淤積線,所得結(jié)論如下:
(1) 本文所提方法在保留管道原始特征的同時,去除了點(diǎn)云數(shù)據(jù)中所包含的大量噪聲點(diǎn),并得出最終的排水管道內(nèi)壁界限和淤泥淤積擬合曲線。
(2) 通過分段圓外切線斜率擬合方式,可以有效識別出排水管道內(nèi)壁特征,避免多元擬合所帶來的管壁局部信息缺失問題。
(3) 試驗(yàn)結(jié)果表明,相比于用原始數(shù)據(jù)直接進(jìn)行密度擬合,本文提出的方法有效提高了擬合的精度,擬合結(jié)果更加穩(wěn)定。
由于聲吶在掃描過程中不能保證呈直線運(yùn)動,如何實(shí)現(xiàn)變化圓心點(diǎn)的管道內(nèi)壁掃描截面拼接,從而得到整段排水管道的三維模型,將是下一步的研究重點(diǎn)。