?

高鐵跨海路由單物標水深圖提取算法研究

2023-12-19 10:27王昊宇
鐵道勘察 2023年6期
關鍵詞:海圖字符水深

王昊宇

(中鐵第六勘察設計院集團有限公司,天津 300308)

引言

截至2022 年底,我國高速鐵路的營運里程已經超過4.2 萬 km[1]。 高速鐵路網絡極大促進了沿線地區的物流、商貿和人力資源的循環發展,為國家“城市經濟圈”戰略規劃發揮巨大的紐帶作用。 根據《中、長期高速鐵路網規劃發展綱要》,在“十四五”期間我國要建設完成“八縱八橫”的高速鐵路網絡體系,實現覆蓋大部分縣域的高鐵網絡互聯互通[2]。 東部沿海一直是我國經濟發展最活躍的地區,也是高鐵建設的重點區域。 得益于港口海運優勢,經濟發達城市往往依海而建,則部分高鐵建設勢必要由傳統的陸地建設,逐步邁入跨海建設。

高鐵跨海設計初期,需要測繪詳細的“水深圖”來知悉設計路由區域的水深變化、海底地形起伏,以及暗礁、孤石、沉船等海底障礙物分布情況。 工程類水深圖與“陸地地形高程圖”類似,均為CAD 電子格式,水深值以單個“Text”字符的形式按其地理坐標排列,字符內容即為“水深數值”。 但是水深數據的實測點位坐標并不在其text 字符的插入點位置,二者存在偏差,且隨著text 字符的“高度、寬度、旋轉角度”等屬性的變化,該偏差也在變化。 海圖軟件生成CAD 水深圖為“單向過程”,并不提供從已有CAD 水深圖中“反向提取水深數據”功能。 因此,對于已有的CAD 水深圖,手動方式很難獲得其準確的水深實測坐標。

現行的各種海圖制圖規范和標準中,只是籠統規定了水深實測點位與水深字符的位置關系,卻并未給出明確的位置特征或數學計算公式。 如《中國海圖圖式》中描述為“水深的實測點位應位于水深注記的中心”[3];《水運工程測量規范》中描述為“水深坐標位置應位于水深字符中部”[4]。 對于已有的CAD 水深圖成果資料,只能使用其字符插入點坐標代替實測坐標的方式來獲取其水深數據,對于“路由淺點精確定位”“疏浚方量精細計算”等高級工程應用,無法滿足位置精度要求。

目前,國內外現有的研究成果,鮮有“水深字符插入點坐標與其實測坐標幾何關系”方面的研究,而是大部分專注于“注記標準制定、數據格式轉換、數字模型建立、三維可視化”等領域,卻也提供很多的參考思路和理論基礎。 宋子康等提出一種利用樹狀結構層次化等深線簇的深度注記自動配置方法[5];呂立蕾等分析研究《海道測量標準》中“航行安全測量最低水深標準”的內容[6];賈帥東等提出海圖水深注記分布度的精細化評估方法[7];魏源等借鑒人工交互處理視角下多波束測深后視圖中異常值的圖像特征,實現存疑數據的判斷標準[8];陳義蘭等給出多源數據構建數字水深模型的插值方法選取的合理化建議[9];劉黨衛等從海底數字高程模型中提取對應位置的高程值,減少水深踏勘的工作量[10];閆吉順等研究基于時間序列的單子集水深數據線性回歸優化方法[11];程益鋒等研究像元找水深點的順序匹配法和水深點找像元的順序匹配[12];于粉香等有效降低S-57 海圖數據直接轉換為基礎地理信息數據的難度[13];萬曉霞等基于S-100 的圖示表達機制為多源異構數據產品和服務的可視化互操作提供了基本處理模型[14]。

在前人已有研究成果的基礎上,研究CAD 電子海圖中水深字符插入點坐標與其水深實測坐標的數學幾何關系,推導具體的實測坐標計算公式,編寫坐標批量提取計算軟件,以期實現CAD 中海量水深數據實測坐標的快速、精確計算提取。

1 單物標水深

工程施工中所使用的CAD 電子海圖,水深值以“單物標水深”的形式存在[15-16]。 每個水深數值在CAD 中由1 個“單行文字標注(text 字符)”表示,是海圖制圖中常見的一種水深注記方式。 單物標水深主要有4 種表現形式,見圖1。

圖1 單物標水深

(1)不保留小數位水深

水深值導出時不保留小數位數,字符中為整數值和小數點。

(2)保留小數位水深

水深值導出時保留至少1 位小數,文本字符中為整數值、小數點和小數值。

(3)小數水深

水深值在0 與1 之間,保留至少1 位小數,文本字符中為0、小數點和小數值。

(4)負值水深

水深值為負值,文本字符首位為橫線(負號),其他與以上3 種情況相同。

CAD 中的text 字符對象只有“插入點坐標”,位于字符對象的左下角,稱為“錨固位置(Anchor)”,是text字符對象的唯一位置標識[17]。 而制圖規范要求水深實測位置應位于水深標注的“中部”。 因此,海圖軟件在將采集處理后的水深數據生成CAD 水深圖時,就需要根據水深實測坐標計算出text 字符對象的插入點坐標,然后寫入CAD 文件。 因此,text 字符對象的插入點坐標與水深實測坐標之間的幾何關系,必然與text字符的高度、寬度、旋轉角度、字體等屬性信息呈某種“比例關系”。 這種“比例關系”即為字符插入點坐標與水深實測坐標之間的數學算法關系。

2 算法推導

無論何種水深字符,都是由0、1、2…9 等10 個數字字符和負號字符組合而成。 因此,選取常規水深測量中常見的-100、-99、…、-2、-1、-0.1、0、1、2、…、100 等數值,以不同的字高和不同的旋轉角度模擬生成水深圖,將水深數據的實測坐標展繪為point 點對象,疊加顯示在CAD 水深圖中,發現水深數據的實測坐標位置均位于text 字符對象的小數點位置處,見圖2。

圖2 水深坐標位置

分別量取水深字符插入點至水深實測坐標之間的距離以及角度,text 字符插入點位置與水深實測位置關系見表1。

對表1 中3 種字高和旋轉角度的水深數據進行對比統計分析后,可以得出以下結論。

(1)同種字高的2~9 字符的寬度一致,0 和1 字符寬度各不同。

(2)組合字符寬度為各字符寬度之和。

(3)不同字高的相同字符寬度與字高成正比。

(4)負號寬度與字高相同。

(5)插入點至實測坐標的角度與字符旋轉角度相同。

根據以上結論可得出各種字高下0、1 和2~9 字符寬度公式,即

式中,D0為“0”字符寬度;D1為“1”字符寬度;D2-9為“2~9”字符寬度;D-為負號字符寬度;H為字高。

根據式(1)~式(4),可計算字符插入點與水深實測位置(小數點)間的距離L,則可得由字符插入點坐標計算水深實測坐標公式為

式中,E為水深實測東坐標;N為水深實測北坐標;X為水深字符的插入點X坐標;Y為水深字符的插入點Y坐標;L為插入點與小數點間距;A為字符旋轉角度。

水深圖的默認字體為“Arial”,表1 和式(1)~式(4)均基于此字體推導。 在水深圖后期修飾和最終成圖時,一般會保留使用“Arial”字體,有時也會改為“宋體”。 使用中發現,各字符的寬度、間距,與Arial 字體的比例關系為0.01~0.02 倍的字高,相對于實際測量中的GPS 定位精度,此偏差可以忽略不計。 故該算法不再區分字體,對于其他特殊字體只需按照相同統計方法單獨研究,不再贅述。

進行計算機編程自動提取計算時,主要分為以下4 個步驟。

(1)讀取CAD 的DXF 交換文件

首先創建FileStream 文件流對象,指定該對象的編碼屬性為ASCII[18];然后使用該文件流對象將DXF文件的所有字節讀入內存數組;創建StreamReader 類對象,使用已經創建的FileStream 對象來實例化,將內存中的字節數組編譯為字符元素數組[19]。

(2)海量數據篩選

采用人機交互的方式,根據原始CAD 水深圖中水深數據隸屬圖層等屬性,遍歷元素數組,將“陸域、說明、圖例”等非水深元素去除[20];然后設置測區的范圍坐標,將插入點坐標位于范圍以外的元素排除;最后,為了防止原始元素數組容量過于龐大,根據水深元素數量和測區范圍等因素,劃分若干小型方格網,以分塊數組的形式對每塊方格網的數據進行分別存儲,每塊方格網內水深元素的數量不宜超過10 萬。

(3)提取計算

從各分塊數組中逐個提取元素對象,根據式(1)~式(5),利用插入點坐標計算出實測坐標。 根據計算機的CPU 和內存負載情況,開啟多個線程,多個分塊數組同步進行并發提取計算。

(4)生成報表

全部分塊數組計算提取計算完畢后,將水深值和其計算實測坐標生成導出“XYZ”格式報表。

為了檢驗提取算法在各種極限情況下的計算精度,使用人工模擬的方式,模擬11 種典型和極端情況的水深數據,使用海圖軟件生成CAD 水深圖,然后使用自編軟件提取這些水深數據,最后與原始模擬坐標進行比對,比對結果見表2。

表2 模擬坐標與提取坐標對比

由表2 可知,提取坐標與模擬坐標有1~3 cm 的誤差。 因為式(1)~式(5)使用的是有限數據樣本,(經人工量算、歸納所得),所以無論公式形式,還是參數設置并不完全嚴密。 而海圖軟件在生成CAD 水深圖時,其程序內部所采用的數值變量類型和小數位保留邏輯尚不明確,所以計算坐標與實測坐標的差值無法精確計算。

3 工程實例

福廈高速鐵路北起福州市,南至廈門市,線路全長277.42 km,設計速度350 km/h,是我國首條真正意義上的海洋環境高鐵,也是世界行車速度最高的跨海鐵路。 泉州灣跨海大橋是福廈高速鐵路全線重點控制性工程,全長20.287 km,主橋跨度為400 m,為雙塔雙索面鋼混結合梁半漂浮體系斜拉橋。

橋梁設計中,需要對大橋路由海域的海底地形進行三維建模,來完成“疏浚方量計算、橋墩基礎沖刷分析、基槽回淤分析”等精細計算,要求水深坐標位置精度<0.5 m。 大橋設計路由區域100 m 范圍內的1 ∶500 水深測量,按照“單物標水深”注記樣式繪制為CAD 水深圖。 因為大橋跨越泉州港主航道,往來穿梭船舶密集,且當地海域的水動力環境復雜,洋流水文條件強勁,這些都給水深測量帶來了很大的困難,導致測量工期冗長、測量成本高昂。 為獲取精細分析所需的水深數據,最經濟高效的方式就是利用已經繪制完成的1 ∶500 水深圖。

常規的水深數據提取手段為:使用CAD 軟件中的“元素提取”功能,設定“水深數據所在的圖層”“水深數據字符類型、元素坐標X、Y、Z、元素內容(數值)”等提取選項,將水深坐標和數值導出為Excel 表格形式。此處所能提取的坐標是元素的插入點坐標,并非水深實際坐標。 從本項目已經繪制的CAD 水深圖中,選取部分數據,實際量測發現,字符插入點至小數點的距離約為1.2 m,即直接從CAD 中提取的水深坐標有1.2 m 的位置偏差,則無法滿足0.5 m 的位置精度要求,會造成整個三維模型偏離。 且此偏離值受字符角度、寬度等因素影響,并不均勻且沒有固定方向。

使用該提取軟件將已經繪制完成的CAD 水深圖進行水深提取: CAD 水深圖中共有水深值1 374 531 個,有效提取水深1 374 357 個,提取率為99.987%。 未能提取的174 個水深為灘涂、潮間帶等區域,因與其他圖示數據疊加干擾,導致提取失敗,但因為數量占比微小,對整體數據影響可忽略。 為了檢驗提取坐標的位置精度,將提取坐標重新生成水深圖,與原水深圖進行疊加對比分析,新圖與原圖水深字符插入點坐標的差值:東坐標E 最大差值為0.04 m,均值為0.02 m;北坐標N 最大差值為0.05 m,均值為0.03 m。 按照《水運工程測量規范》,水深測量在近岸、港口、航道等通航水域的定位精度一般要求為0.1~1 m,在外海水域的定位精度一般為2~5 m,故≤0.05 m 的位置偏差可以忽略不計。

4 結語

以海圖軟件生成的各種不同“字符、高度、寬度、角度等”的典型水深數據為樣本,對其進行歸納統計分析,推導水深字符插入點坐標與其實測坐標之間幾何關系的計算公式。 以計算機編程的方式,實現水深數據的批量自動提取和報表生成。 分別使用模擬數據和工程實例,對算法進行檢驗:人工模擬的典型和極端水深數據中,統計得提取坐標偏差為1~3 cm;工程實例水深圖中,統計得提取東坐標最大差值為4 cm,北坐標最大差值為5 cm;從而驗證算法的精度可靠性。

在未來的研究中,可以繼續通過多種復雜環境、海量數據樣本的歸納統計,對公式進行迭代升級,以提高算法的適用性和精確度。 研究思路同樣適用于難以反向提取數據的其他海圖軟件,為已有水深資料的重復再利用、精細數字化等拓展挖掘工作,提供一種新的解決方案。

猜你喜歡
海圖字符水深
書法靜水深流
基于水深分段選擇因子的多光譜影像反演水深
尋找更強的字符映射管理器
紙海圖AI小改正制作模式探討
字符代表幾
一種USB接口字符液晶控制器設計
消失的殖民村莊和神秘字符
少林功夫拳(三)
點亮兵書——《籌海圖編》《海防圖論》
電子海圖在內河船舶綜合導航系統中的應用探討
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合