周振建, 陳 饋, 高會(huì)中, 褚長(zhǎng)海, 張合沛, 任穎瑩
(1. 盾構(gòu)及掘進(jìn)技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室, 河南 鄭州 450001; 2. 中鐵隧道局集團(tuán)有限公司, 廣東 廣州 511458)
全斷面隧道掘進(jìn)機(jī)在高鐵、地鐵、水利工程等建設(shè)領(lǐng)域中應(yīng)用廣泛。目前,我國(guó)的全斷面隧道掘進(jìn)機(jī)施工還處于人工經(jīng)驗(yàn)控制階段,掘進(jìn)操作依賴于主司機(jī)的個(gè)人經(jīng)驗(yàn)。為提高施工安全及質(zhì)量,避免人為失誤,借助神經(jīng)網(wǎng)絡(luò)、隨機(jī)森林、K-means等機(jī)器學(xué)習(xí)算法來(lái)實(shí)現(xiàn)全斷面隧道掘進(jìn)機(jī)智能化施工已成為新的趨勢(shì)。機(jī)器學(xué)習(xí)算法需要足夠數(shù)量的機(jī)器數(shù)據(jù)和環(huán)境數(shù)據(jù),機(jī)器數(shù)據(jù)可通過(guò)全斷面隧道掘進(jìn)機(jī)的傳感器采集,實(shí)現(xiàn)自動(dòng)傳輸、自動(dòng)收集儲(chǔ)存; 而環(huán)境數(shù)據(jù)(主要為地質(zhì)數(shù)據(jù))尚需人工處理,不僅效率低,而且數(shù)據(jù)密度低、錯(cuò)誤率高、數(shù)據(jù)不全面。如何取得滿足要求的地質(zhì)數(shù)據(jù),是全斷面隧道掘進(jìn)機(jī)智能化施工技術(shù)研究所面臨的一個(gè)問(wèn)題。
地質(zhì)數(shù)據(jù)種類繁多、形式多樣,具有多元(源)、異構(gòu)、時(shí)空性、相關(guān)性、隨機(jī)性、模糊性和非線性等特征,地質(zhì)數(shù)據(jù)形式又包括文檔、圖片、表格等[1],都是離散數(shù)據(jù),在精度、分辨率、數(shù)量、質(zhì)量等方面存在較大差異[2],需要采用適合且有效的方法來(lái)處理,以此來(lái)獲得具有較高使用價(jià)值的地質(zhì)數(shù)據(jù)[3]。國(guó)內(nèi)外學(xué)者結(jié)合各自領(lǐng)域,對(duì)地質(zhì)數(shù)據(jù)的處理分析進(jìn)行了大量的研究。吳志春等[4]運(yùn)用等高線數(shù)據(jù)構(gòu)建數(shù)字模型,通過(guò)約束及離散光滑插值技術(shù)實(shí)現(xiàn)了地表地質(zhì)數(shù)據(jù)和地下地質(zhì)數(shù)據(jù)的融合;唐丙寅等[5]提出了一種基于鉆孔的點(diǎn)—線—面—體快速遞進(jìn)三維地質(zhì)建模方法,再利用BSP矢量剪切技術(shù),形成三維地質(zhì)模型; 陳宇龍等[6]利用地質(zhì)信息數(shù)據(jù)庫(kù)系統(tǒng),開(kāi)發(fā)了鉆孔柱狀圖的自動(dòng)成圖系統(tǒng); 陳蜀等[7]在Excel 中運(yùn)用VBA進(jìn)行編程,實(shí)現(xiàn)海量地質(zhì)數(shù)據(jù)的提取與處理,提高了數(shù)據(jù)處理的效率與質(zhì)量; 王大志等[8]基于AutoCAD的二次開(kāi)發(fā)技術(shù),以測(cè)量數(shù)據(jù)和地質(zhì)鉆孔數(shù)據(jù)為基礎(chǔ),建立工程地質(zhì)三維模型,不僅能真實(shí)反映地質(zhì)環(huán)境,還能提高設(shè)計(jì)工作效率。但目前地質(zhì)數(shù)據(jù)處理分析技術(shù)大多以地質(zhì)研究及工程設(shè)計(jì)為目的,對(duì)于工程施工技術(shù)研究所需地質(zhì)數(shù)據(jù)的處理分析技術(shù)較少。本文提出一種將多源地質(zhì)信息進(jìn)行數(shù)據(jù)化轉(zhuǎn)換的方法,采用VBA(visual basic for applications)編程操作AutoCAD、Microsoft Excel以及SQLite數(shù)據(jù)庫(kù)[9],實(shí)現(xiàn)地質(zhì)信息的高效準(zhǔn)確數(shù)據(jù)化轉(zhuǎn)換,解決現(xiàn)有地質(zhì)勘察報(bào)告中圖、表、文字描述等地質(zhì)信息無(wú)法直接被機(jī)器學(xué)習(xí)算法辨識(shí)的問(wèn)題。使用該方法轉(zhuǎn)換后的數(shù)據(jù)化地質(zhì)信息,不僅可應(yīng)用于全斷面隧道掘進(jìn)機(jī)行業(yè)的技術(shù)研究和工程施工,也可應(yīng)用于樁基工程、資源勘察、礦藏開(kāi)采工程中的技術(shù)研究,如鉆頭磨損率、開(kāi)挖效率、開(kāi)采效率、能效比等,還可應(yīng)用于地下工程沉降機(jī)制等研究,同時(shí)也可為地下工程實(shí)現(xiàn)智能化、無(wú)人化施工提供基礎(chǔ)數(shù)據(jù)。
多源地質(zhì)信息的數(shù)據(jù)化轉(zhuǎn)換方法主要分為5個(gè)步驟: 1)地質(zhì)縱斷面矢量圖形處理,保留地層分界線,去除多余圖元,封閉地層區(qū)域; 2)地層區(qū)域填充,將各地層區(qū)域按指定顏色的填充圖案填充; 3)繪制參考線,以全斷面隧道掘進(jìn)機(jī)的實(shí)際工況,繪制地層識(shí)別的定位參考線; 4)地層識(shí)別,以參考線為定位基礎(chǔ),采用VBA矢量圖形識(shí)別技術(shù)辨識(shí)地質(zhì)縱斷面圖中隧道穿越的各地層; 5)多源地質(zhì)信息融合,將多源地質(zhì)信息與對(duì)應(yīng)地層進(jìn)行融合,實(shí)現(xiàn)多源地質(zhì)信息的數(shù)據(jù)化轉(zhuǎn)換。
對(duì)巖土勘察報(bào)告中的CAD地質(zhì)縱斷面矢量圖進(jìn)行處理是地質(zhì)信息數(shù)據(jù)化轉(zhuǎn)換的基礎(chǔ)。地質(zhì)縱斷面圖包括地質(zhì)柱狀圖及其中各地層的填充圖案、地層推測(cè)分界線、地質(zhì)填充圖案圖例、地層代號(hào)字符、隧道輪廓線等,除地層分界線和地層編號(hào)之外的其他圖元需要清除或隱藏。
地質(zhì)縱斷面矢量圖如圖1所示,圖中的大部分區(qū)域?yàn)榭瞻?,?jì)算機(jī)程序無(wú)法直接從這些空白區(qū)域獲取相關(guān)的地質(zhì)信息,需要對(duì)這些區(qū)域賦予信息。為不同地層的封閉區(qū)域填充不同顏色的Solid圖案,是一種簡(jiǎn)單而有效的方法。
確保填充區(qū)域完全封閉是進(jìn)行Solide圖案填充的必要條件。多數(shù)情況下,地質(zhì)縱斷面圖中地層區(qū)域并沒(méi)有完全封閉,線段間存在一定的間隙,如圖2所示。對(duì)于此類情況,以線段X坐標(biāo)較大的端點(diǎn)(如圖3中線段A1A2中的端點(diǎn)A1)為基點(diǎn),在給定的范圍內(nèi)(如圖3中的黑色虛線框)選擇其周?chē)徑木€段,并根據(jù)實(shí)際給定一個(gè)閥值(該閥值應(yīng)比實(shí)際測(cè)量的線段間隙稍大),當(dāng)某線段一端點(diǎn)與基點(diǎn)的距離小于閥值且不為0時(shí)(如圖3中,點(diǎn)A1分別與點(diǎn)A3、A5、A7),將該端點(diǎn)移動(dòng)至基點(diǎn),使端點(diǎn)相近的線段首尾相接(如圖3中的虛線),同時(shí)對(duì)移動(dòng)過(guò)的端點(diǎn)進(jìn)行標(biāo)記,不再參與后續(xù)的計(jì)算,以此減少計(jì)算量,提高效率。
圖1 地質(zhì)縱斷面矢量圖(單位: m)
Fig. 1 Vector map of geological longitudinal section (unit: m)
圖2 地層分界線節(jié)點(diǎn)放大圖(單位: m)
圖3 地層分界線節(jié)點(diǎn)連接示意圖
另一種情況是基點(diǎn)與相鄰線段鄰近(即基點(diǎn)到相鄰線段的最小距離小于閥值且不為0),但與線段的兩端點(diǎn)都相距較遠(yuǎn)(如圖4基點(diǎn)N與線段QP),此類情況需要將線段延長(zhǎng)至相鄰線段上。
將基點(diǎn)移至兩鄰近線段所在直線的交點(diǎn)以連接地層分界線。對(duì)于交點(diǎn)的計(jì)算,由于已知兩線段的兩端點(diǎn)坐標(biāo),通常情況下聯(lián)立兩線段的兩點(diǎn)式方程進(jìn)行求解得到兩線段所在直線的交點(diǎn),但是當(dāng)兩線段的斜率相近時(shí),由于求解過(guò)程中的除數(shù)過(guò)小,而使計(jì)算結(jié)果會(huì)有較大的偏差。采用直線的參數(shù)方程進(jìn)行求解可避免此問(wèn)題,以圖4中線段PQ和NM為例,過(guò)程如下。
圖4 基點(diǎn)與線段臨近示意圖
線段PQ、NM所在直線相交,則有參數(shù)方程[10-11]:
λ×(Q-P)+μ×(N-M)=N-P。
(1)
式中:λ為線段PQ所在直線參數(shù)方程的參數(shù);μ為線段NM所在直線參數(shù)方程的參數(shù)。
式(1)的增廣矩陣[11]可寫(xiě)為
(2)
式中:A11=Qx-Px;A12=Nx-Mx;A13=Nx-Px;A21=Qy-Py;A22=Ny-My;A23=Ny-Py。
當(dāng)A11
(3)
(4)
(5)
將μ代入線段NM所在直線的參數(shù)方程,可求得交點(diǎn)J的坐標(biāo)。
通過(guò)程序遍歷各基點(diǎn)進(jìn)行對(duì)應(yīng)的計(jì)算操作,可將地質(zhì)縱斷面圖的所有地層區(qū)域完全封閉。
為每個(gè)封閉的地層區(qū)域分配相應(yīng)的地層編號(hào)及顏色,作為地層識(shí)別的標(biāo)簽,并建立一個(gè)地層編號(hào)與顏色的映射數(shù)據(jù)倉(cāng)庫(kù),是對(duì)地層區(qū)域進(jìn)行Solid圖案填充的基礎(chǔ)。
本文采用VBA中的SendCommand方法,向AutoCAD發(fā)送命令來(lái)進(jìn)行圖案填充,其代碼為: ThisDrawing.SendCommand "-H" & vbCr & "P" & vbCr & "Solid" & vbCr & Points & vbCr & "co" & vbCr & "t" & vbCr & RGBData & vbCr & "a" & vbCr & "s" & vbCr & "o" & vbCr & vbCr & vbCr。以地層編號(hào)圖塊的插入點(diǎn)作為圖案填充的內(nèi)部拾取點(diǎn),即命令中的Points。填充完成后的效果如圖5所示。
圖5 圖案填充效果
為了給地質(zhì)信息轉(zhuǎn)換提供位置基準(zhǔn),在地質(zhì)縱斷面圖中沿隧道中心線每間隔1 m(間隔可依據(jù)襯砌管片環(huán)寬等實(shí)際需要調(diào)整)繪制地質(zhì)轉(zhuǎn)換參考線。參考線應(yīng)與隧道中心線垂直,因地質(zhì)縱斷面圖的縱坐標(biāo)比例被放大,在隧道變坡點(diǎn)位置可能會(huì)出現(xiàn)參考線相互交叉的情況,如圖6所示參考線1與參考線2相交于上部。
參考線出現(xiàn)相互交叉的問(wèn)題是在繪制隧道中心線的變坡點(diǎn)時(shí)未添加豎曲線造成的,可根據(jù)地質(zhì)縱斷面圖中的豎曲線要素(見(jiàn)圖7)結(jié)合文獻(xiàn)[12-14] 提供的方法自行計(jì)算豎曲線的標(biāo)高。
圖6 參考線相互交叉
圖7 豎曲線要素
根據(jù)計(jì)算得到的線數(shù)據(jù)繪制豎曲線。將帶豎曲線的軌面標(biāo)高線偏移至隧道中心,使用AutoCAD的ArrayPath命令以定數(shù)等分的方式陣列參考線即可,如圖8所示。
圖8 正確參考線
選擇全部參考線進(jìn)行批量識(shí)別整條隧道的地質(zhì)信息,被選擇的參考線在選擇集中的排序是混亂的,需根據(jù)全斷面隧道掘進(jìn)機(jī)的掘進(jìn)方向進(jìn)行重排。如掘進(jìn)方向是從右向左,那么以參考線屬性中StartPoint的X坐標(biāo)由大到小進(jìn)行排序;反之,則由小到大進(jìn)行排序。
參考線排序需將各參考線對(duì)象句柄及屬性中StartPoint的X坐標(biāo)寫(xiě)入SQLite,再根據(jù)排序的需要,使用Sql語(yǔ)句Select * form TableName Order by X ASC/DESC即可返回排序后的參考線句柄,使用HandleToObject方法分別取得參考線對(duì)象,即可按順序進(jìn)行操作。
地層識(shí)別是采用VBA矢量圖形識(shí)別技術(shù),獲取各地層區(qū)域填充圖案的顏色,從而取得對(duì)應(yīng)的地層信息。
地質(zhì)信息識(shí)別如圖9所示。參考線與各地層分界線的交點(diǎn)之間為同一種地層,通過(guò)取得該地層的填充圖案顏色,根據(jù)顏色與地層一一對(duì)應(yīng)的關(guān)系,也就確定了地層,再融合巖土勘察報(bào)告中的相關(guān)信息,即可得到詳細(xì)的數(shù)據(jù)化地質(zhì)信息。
(a) (b)
圖9 地質(zhì)信息識(shí)別示意圖
Fig. 9 Sketch of geological identification
5.2.1 地層分界點(diǎn)識(shí)別
以圖9(a)為例說(shuō)明如何識(shí)別在參考線處地層之間的分界點(diǎn)。首先將參考線的起點(diǎn)S和終點(diǎn)E分別沿掘進(jìn)方向偏移一個(gè)微小的距離(通常取0.1 mm)后,得到點(diǎn)S′和點(diǎn)E′。采用VBA的Select By Polygon方法,以四邊形SS′E′E為選擇多邊形,使用ac Selection Set Crossing Polygon選擇模式,通過(guò)選擇過(guò)濾器只選擇線型對(duì)象,即得到所有與參考線相交的地層分界線選擇集。
使用VBA的IntersectWith方法計(jì)算參考線與地層分界線選擇集中每個(gè)對(duì)象的交點(diǎn),即可得到各地層在參考線處的分界點(diǎn)。由于在AutoCAD中,點(diǎn)是以一個(gè)包含X、Y、Z坐標(biāo)的1×3的數(shù)組來(lái)表示的,而當(dāng)?shù)貙臃纸缇€是LwPolyline或Polyline且與參考線多次相交時(shí),得到的交點(diǎn)將會(huì)是一個(gè)1×3n的數(shù)組。圖9(a)中黃色Polylinea、b與紅色參考線SE相交于G、H點(diǎn),所得結(jié)果為一個(gè)1×6的數(shù)組,需要按點(diǎn)X、Y、Z坐標(biāo)對(duì)應(yīng)的3個(gè)元素拆分為2組1×3的點(diǎn)坐標(biāo)數(shù)組。
5.2.2 地層代號(hào)識(shí)別
由于參考線為非水平直線段,同一參考線處的地層分界點(diǎn)(包括參考線的2個(gè)端點(diǎn)S、E)Y坐標(biāo)值一定不同,因此將地層分界點(diǎn)按照Y坐標(biāo)由大到小進(jìn)行排序,那么每2個(gè)相鄰的地層分界點(diǎn)(包括參考線2個(gè)端點(diǎn)S、E)之間為同一種地層。取得兩地層分界點(diǎn)間的填充圖案顏色,通過(guò)顏色與地層的映射關(guān)系,即可識(shí)別出相應(yīng)地層的代號(hào)。
本文采用VBA的SelectAtPoint方法來(lái)取得兩地層分界點(diǎn)之間的填充圖案對(duì)象,該方法需要指定一個(gè)基點(diǎn)B(如圖9(a)所示,點(diǎn)B為參考線起點(diǎn)S與地層分界點(diǎn)F之間的基點(diǎn)),如果點(diǎn)B處有其他圖元位于填充圖案之上,則無(wú)法取得填充圖案對(duì)象。B點(diǎn)坐標(biāo)計(jì)算方法如下。
1)點(diǎn)B處無(wú)其他圖元覆蓋填充圖案時(shí):
(6)
(7)
2)點(diǎn)B處有其他圖元覆蓋填充圖案時(shí),使點(diǎn)B在高為0.8×ΔY、寬為0.8×Wn、距離點(diǎn)S為0.1×ΔY、距離參考線SE為0.1×Wn,如圖9(a) 所示紅色半透明區(qū)域內(nèi)移動(dòng),且X、Y軸方向每次移動(dòng)的距離分別為0.1×Wn和0.1×ΔY,點(diǎn)B的坐標(biāo)可用矩陣表示為:
(8)
Wn=min(|Snx-Sn+1x|,|Enx-En+1x|),n=1、2、…。
(9)
式(9)中當(dāng)參考線(SE)n為最后一條時(shí),不再需要地質(zhì)識(shí)別,式(9)始終正確。
ΔY=|Sny-Fny|。
(10)
式(8—10)中:Wn為第n條參考線與第n+1條參考線之間的最小距離;Snx為沿掘進(jìn)方向第n條參考線的起點(diǎn)X坐標(biāo);Sn+1x為沿掘進(jìn)方向第n+1條參考線的起點(diǎn)X坐標(biāo);Sny為沿掘進(jìn)方向第n條參考線的起點(diǎn)Y坐標(biāo);Enx為沿掘進(jìn)方向第n條參考線的終點(diǎn)X坐標(biāo);En+1x為沿掘進(jìn)方向第n+1條參考線的終點(diǎn)X坐標(biāo); ΔY為同一參考線上兩相鄰地層分界點(diǎn)Y軸距離;Bx為指定基點(diǎn)B的X坐標(biāo);By為指定基點(diǎn)B的Y坐標(biāo);Fnx為沿掘進(jìn)方向第n條參考線地層分界點(diǎn)F的X坐標(biāo);Fny為沿掘進(jìn)方向第n條參考線地層分界點(diǎn)F的Y坐標(biāo)。
5.2.3 地層比例計(jì)算
地層在縱向呈層狀分布,變化較大,在水平方向的變化較為平緩。因此,沿隧道橫斷面水平方向的地層可視為無(wú)變化,地層橫斷面如圖10所示。地層比例以各地層的面積比來(lái)確定。
圖10 隧道地層橫斷面示意圖
由圖10可知,隧道橫斷面各地層形狀主要由弓形和鼓形組成。根據(jù)弓形和鼓形面積計(jì)算公式依次計(jì)算出各地層面積,最后將識(shí)別出的地層代號(hào)、地層比例以及對(duì)應(yīng)的位置標(biāo)記(管片環(huán)號(hào)或里程)輸出到Excel中形成地質(zhì)數(shù)據(jù)基礎(chǔ)表。
根據(jù)需要,提取隧道巖土工程勘察報(bào)告中各地層相關(guān)數(shù)據(jù),包括地層代號(hào)、巖土名稱、塑性、密實(shí)度、天然重度、滲透系數(shù)、標(biāo)貫值等,并將諸如巖石完整性的“完整”、“較完整”等定性描述轉(zhuǎn)換為定量描述(即完整性系數(shù))。
根據(jù)地質(zhì)數(shù)據(jù)基礎(chǔ)表中的地層代號(hào),在地層信息數(shù)據(jù)表搜索對(duì)應(yīng)的數(shù)據(jù),并以文獻(xiàn)[15]中的方法將數(shù)據(jù)寫(xiě)入地質(zhì)數(shù)據(jù)基礎(chǔ)表,使巖土勘察報(bào)告中的圖示信息、文字描述、數(shù)字等多源地質(zhì)信息進(jìn)行融合,最終生成隧道穿越地層的數(shù)據(jù)化地質(zhì)信息表,機(jī)器學(xué)習(xí)算法程序可直接從該表中讀取數(shù)據(jù)進(jìn)行計(jì)算。
以廣東某隧道為例進(jìn)行地質(zhì)數(shù)據(jù)化轉(zhuǎn)換測(cè)試。對(duì)地質(zhì)縱斷面矢量圖中多余圖元進(jìn)行清除,將各地層封閉區(qū)域填充為相應(yīng)顏色的Solid圖案,并繪制參考線。處理完成的地質(zhì)縱斷面矢量圖如圖11所示。
圖11 處理完成的地質(zhì)縱斷面矢量圖
Fig. 11 Processing completed geological longitudinal section vector map
提取巖土勘察報(bào)告中的地質(zhì)數(shù)據(jù),形成結(jié)構(gòu)化地層數(shù)據(jù)表,見(jiàn)表1。
表1 地層數(shù)據(jù)表(部分)
通過(guò)程序識(shí)別地質(zhì)縱斷面矢量圖中的各地層,將數(shù)據(jù)輸出,形成地質(zhì)數(shù)據(jù)基礎(chǔ)表后,與地層數(shù)據(jù)表融合,形成新的數(shù)據(jù)化地質(zhì)信息表,見(jiàn)表2。測(cè)試共產(chǎn)生記錄5 837條,用時(shí)1 min 50 s,無(wú)任何錯(cuò)誤,其效率和準(zhǔn)確性是人工無(wú)法相比的。實(shí)現(xiàn)地質(zhì)信息數(shù)據(jù)化轉(zhuǎn)換的部分程序界面如圖12所示。
表2 數(shù)據(jù)化地質(zhì)信息表(部分)
圖12 程序界面(部分)
1)從全斷面隧道掘進(jìn)機(jī)智能施工技術(shù)研究的需求出發(fā),分析了隧道巖土勘察報(bào)告的內(nèi)容,對(duì)CAD的自動(dòng)操作二次開(kāi)發(fā)進(jìn)行了一定程度的研究,提出地質(zhì)縱斷面矢量圖的處理和自動(dòng)識(shí)別,重組和構(gòu)造結(jié)構(gòu)化數(shù)據(jù),獲得細(xì)致、準(zhǔn)確的數(shù)據(jù)化地質(zhì)信息的方法,并詳細(xì)闡述了思路,對(duì)類似地質(zhì)信息處理具有一定的借鑒意義。
2)采用圖案填充對(duì)地質(zhì)縱斷面矢量圖間斷信息進(jìn)行補(bǔ)充,是一種提高地質(zhì)信息數(shù)據(jù)密度簡(jiǎn)單有效的手段。
3)二維的地質(zhì)縱斷面矢量圖不能有效地反映地質(zhì)在隧道橫向上的變化,在將來(lái)的研究中,可結(jié)合地質(zhì)鉆孔平面位置與地質(zhì)柱狀圖,采用地質(zhì)三維建模技術(shù)和三維矢量切割技術(shù)進(jìn)行處理,可提高數(shù)據(jù)化地質(zhì)信息在橫向上的準(zhǔn)確性。