吳獻(xiàn)文
(廣東工貿(mào)職業(yè)技術(shù)學(xué)院, 廣州 510510)
傾斜攝影測量技術(shù)作為一項新興的測繪新技術(shù), 在各領(lǐng)域中得到了普及[1-2], 其三維重建有五個關(guān)鍵技術(shù)流程組成, 分別是影像特征點提取與匹配、 空中三角測量[3-4](簡稱空三)、 密集點云匹配、 三角網(wǎng)構(gòu)建和紋理映射[3]。 參與過傾斜攝影測量項目的人都深有體會, 在外業(yè)數(shù)據(jù)采集順利的前提下, 項目生產(chǎn)真正的痛點主要在內(nèi)業(yè)數(shù)據(jù)處理。 內(nèi)業(yè)數(shù)據(jù)處理又以空三解算為核心[5]。 空三解算是三維重建的重中之重, 但很多技術(shù)人員在實際作業(yè)生產(chǎn)中, 只關(guān)注數(shù)據(jù)采集的硬件設(shè)備而忽視了數(shù)據(jù)處理。 作業(yè)過程中航拍效率很高, 但是由于數(shù)據(jù)處理速度低, 龐大影像數(shù)據(jù)積壓, 整體效率偏低, 導(dǎo)致項目進(jìn)展極為緩慢。
空三解算存在的主要問題是: 在花費大量時間運算后, 結(jié)果出現(xiàn)斷裂、 分層交叉、 彎曲等現(xiàn)象, 這要花費技術(shù)人員大量精力進(jìn)行人工干預(yù)。甚至人工干預(yù)不成功的, 直接導(dǎo)致空三解算失敗,浪費全部時間與精力。 降低空三結(jié)果斷裂、 分層交叉、 彎曲產(chǎn)生的概率, 可以節(jié)約大量時間, 降低生產(chǎn)成本。 針對這個目標(biāo), 可以從空三技術(shù)流程出發(fā), 對相機(jī)畸變、 影像姿態(tài)與色差、 像控點布設(shè)、 連接點選擇等方面進(jìn)行分析, 找出傾斜攝影空三結(jié)果的優(yōu)化方法。
傾斜攝影空三技術(shù)流程主要包括: 建立影像拓?fù)潢P(guān)系、 影像特征點提取、 影像匹配、 光束法區(qū)域網(wǎng)平差, 最后輸出空三結(jié)果[6]。
傾斜攝影可以獲取垂直、 前視、 后視、 左視及右視五組影像[7], 除垂直影像外, 其它四組影像都為傾斜影像, 所有影像都對應(yīng)有POS(Position and Orientation System)定位數(shù)據(jù), 可提供近似的影像外方位元素[8], 從而建立影像間的相對位置關(guān)系[9],自動重構(gòu)傾斜影像航帶[10]。
由于SIFT 算子對于傾斜影像特征提取具有較好的重復(fù)率, 所以影像特征點提取一般采用 SIFT算子。 在提取計算之前, 需加入相機(jī)畸變參數(shù)、影像色差等影響因素, 有利于準(zhǔn)確快速進(jìn)行特征提取。
影像匹配實質(zhì)是如何準(zhǔn)確快速獲取多視傾斜影像的同名點坐標(biāo), 從而獲取地物三維特征信息,形成點云數(shù)據(jù)[11]。 傾斜影像匹配一般采用基于特征的影像匹配算法, 算法的數(shù)學(xué)模型多數(shù)采用適用于傾斜影像的多視最小二乘法。
采用POS 輔助的方法進(jìn)行平差, 以像控點坐標(biāo)、 像點坐標(biāo)、 GNSS 攝站坐標(biāo)和IMU 姿態(tài)角為觀測值[5], 以物點地面坐標(biāo)、 影像外方位元素以及各種系統(tǒng)誤差改正參數(shù)為待定參數(shù)[12]。 按照像控點坐標(biāo)、 像點坐標(biāo)、 POS 系統(tǒng)提供的GNSS 攝站坐標(biāo)及IMU 姿態(tài)角的測量精度[12], 分別給予觀測值不同的權(quán), 利用最小二乘平差法求解物點的三維地面坐標(biāo)和影像外方位元素的最或然值[12-13]。
從傾斜攝影測量的空三技術(shù)流程可以得出,算法涉及相機(jī)畸變參數(shù)、 影像姿態(tài)與色差、 像控點布設(shè)、 連接點選擇等方面。 在實際生產(chǎn)中, 采用的三維重建軟件眾多, 不同的三維重建軟件采用的算法往往不太一樣, 但是大多數(shù)算法基本參考經(jīng)典算法, 或者在其基礎(chǔ)上拓展創(chuàng)新。 從算法原理角度分析, 可以推測出空三結(jié)果出錯或是無法成功的因素可能來以下幾個方面。
多數(shù)三維重建軟件的空三算法都對光照變化反應(yīng)靈敏。 同一測區(qū), 在不同時段航拍的影像,因氣象條件、 光照變化等因素的影響導(dǎo)致影像存在色差時, 會導(dǎo)致空三解算過程影像特征匹配不穩(wěn)定, 導(dǎo)致空三解算失敗。 相機(jī)畸變也可以導(dǎo)致空三解算過程影像匹配不準(zhǔn)確, 導(dǎo)致空三結(jié)果彎曲。
優(yōu)化方法: 在導(dǎo)入影像后, 設(shè)置每一相機(jī)的畸變參數(shù)。 根據(jù)高度不同而分開空三解算, 另外也要考慮拍攝時間過長導(dǎo)致拍照時有陰天晴天等差別, 如果色差明顯必須區(qū)分開來, 定義到不同的組別里。 空三運算的第一步就是解算同名點,即匹配多張照片中同一物體的位置信息。 像田地、海水等紋理不明顯的物體來說, 解算同名點比較困難, 需要在邊界處人為多測設(shè)一些像控點。 另外如果結(jié)果顯示的模型大小形狀基本匹配, 而只是方向傾斜的話, 可以在空三解算前另外定義幾個連接點來控制方向。
傾斜影像數(shù)據(jù)量往往比一般正射數(shù)據(jù)量大很多倍, 我們常用的三維重建軟件進(jìn)行空三處理海量數(shù)據(jù)時, 為了提高生產(chǎn)的效率, 采用對數(shù)據(jù)進(jìn)行分塊、 逐塊空三解算、 最后再合并解算的策略,但是多數(shù)軟件的空三合并功能的穩(wěn)定度仍有待提高, 并且進(jìn)行并行空三解算時, 只處理影像特征點提取及匹配, 未有效對自由網(wǎng)構(gòu)建進(jìn)行并行化處理, 最終導(dǎo)致塊合并后的空三結(jié)果出現(xiàn)問題。
優(yōu)化方法: 選擇多次重復(fù)空三解算, 反復(fù)調(diào)整參數(shù), 或者在塊與塊銜接處人工添加有效連接點, 或者在塊與塊銜接處增加像控點數(shù)量等, 從而得到比較合適的結(jié)果。
有些軟件的空三解算區(qū)域網(wǎng)平差未有效利用影像的POS 定位數(shù)據(jù)。 航空攝影時, POS 定位數(shù)據(jù)中的GNSS 位置存在航帶分布的系統(tǒng)誤差, 稱為航帶誤差。 在經(jīng)典的GNSS 輔助平差時, 往往需要對航帶誤差進(jìn)行改正, 如果軟件沒有進(jìn)行此處理,故往往無法獲得高精度平差結(jié)果。 另外, 進(jìn)行航帶改正的另一個優(yōu)勢是當(dāng)控制點的坐標(biāo)系和GNSS的坐標(biāo)系不相同時(如分別為2000 國家大地坐標(biāo)系和WGS84 坐標(biāo)系時), 可以通過平差改正, 使控制點的坐標(biāo)系和GNSS 的坐標(biāo)系趨近一致。 如果航帶信息不能夠有效利用, 可能會導(dǎo)致空三結(jié)果出現(xiàn)嚴(yán)重的分層交叉。
優(yōu)化方法: 選擇相關(guān)軟件的空三解算功能,解算初始空三結(jié)果, 將空三結(jié)果作為POS 初值導(dǎo)入三維重建軟件中, 再次進(jìn)行空三解算, 有效提高空三成功率, 得到合適空三結(jié)果。
本驗證實例為某大學(xué)粵東校區(qū)規(guī)劃實景三維模型與1: 500 地形圖生產(chǎn)項目, 面積約 12 km2,該區(qū)域相對平坦, 但水域分布較多, 交通不便,航飛時間跨越兩天, 采用五拼傾斜相機(jī), 共飛5架次, 獲取影像26 萬多張。 三維重建采用Context Capture 軟件解算。 為了驗證需要, 解算數(shù)據(jù)分為整體解算、 按架次分別解算再合并、 人為分區(qū)解算再合并等方式, 并且對相機(jī)畸變參數(shù)、 像控點、連接點等因素根據(jù)解算需要進(jìn)行調(diào)整。 經(jīng)過解算,出現(xiàn)斷裂、 分層交叉、 彎曲等空三結(jié)果, 經(jīng)過調(diào)整參數(shù)、 人工干預(yù)等優(yōu)化方法, 空三結(jié)果表現(xiàn)正常。
空三結(jié)果出現(xiàn)斷裂的情況, 如圖1 所示。 這種情況一般是光照變化影響, 通過對不同時間段拍攝的影像進(jìn)行分組, 并且人工干預(yù)增加連接點,在進(jìn)一步空三解算, 結(jié)果成功, 連接點空三解算情況見表1, 結(jié)果如圖2 所示。 最佳的優(yōu)化方法是采用具有消除色差的傾斜相機(jī), 精心規(guī)劃飛行時間, 減少光照變化。
圖1 空三結(jié)果斷裂示意圖Fig.1 Fracture diagram of aerial triangulation result
圖2 斷裂經(jīng)過優(yōu)化處理后結(jié)果示意圖Fig.2 Diagram of fracture after optimization
空三結(jié)果出現(xiàn)分層交叉情況, 如圖3 所示。出現(xiàn)這種情況一般是任意模式、 不加入約束條件下的空三解算結(jié)果, 優(yōu)化處理的辦法是加入POS數(shù)據(jù)、 像控點并量測, 再次進(jìn)行空三解算, 如果還不理想, 人工干預(yù)加入連接點, 再一次空三解算, 一般可以取得合適結(jié)果, 人工連接點空三解算情況見表2, 結(jié)果如圖4 所示。
表1 空三結(jié)果出現(xiàn)斷裂人工加入連接點后數(shù)據(jù)處理情況Table 1 Data processing status after manually joining connection points when fracture appeared in aerial triangulation result
表2 空三結(jié)果出現(xiàn)分層交叉人工加入連接點后數(shù)據(jù)處理情況Table 2 Data processing status after manually joining connection points when overlap stratification appeared in aerial triangulation result
點名 北坐標(biāo)X/m 東坐標(biāo)Y/m 高程Z/m 所在像片數(shù) 重投影誤差/pixels 距離投影誤差/m User Tie Point 13 560 603.690 2 249 037 3.445 106.071 535 8 15 0.86 0.016 53 User Tie Point 14 560 664.502 8 249 042 6.702 108.408 312 6 15 1.2 0.020 51 User Tie Point 15 560 726.481 9 249 043 3.407 112.383 863 3 16 0.63 0.013 47全中誤差 0.92 0.016 02平均中誤差 0.88 0.015 17
圖3 空三結(jié)果分層交叉示意圖Fig.3 Diagram of overlap stratification of aerial triangulation result
圖4 分層交叉經(jīng)過優(yōu)化處理結(jié)果示意圖Fig.4 Diagram of overlap stratification after optimization
在空三解算前加入像控點、 POS 數(shù)據(jù)、 相機(jī)畸變參數(shù)等要素, 但還是出現(xiàn)空三結(jié)果彎曲情況,如圖5 所示。 一般出現(xiàn)這種情況下主要存在影像重疊率不夠大、 邊緣像控點數(shù)量不夠、 關(guān)鍵點密度低等因素, 解決這些因素并人工干預(yù)加入連接點, 增加連接點之后空三結(jié)果都能得到基本優(yōu)化,得到正確結(jié)果, 人工連接點空三解算情況見表3,結(jié)果如圖6 所示。
如圖7 所示, 空三解算如果遇到了大面積水域情況, 將不能自動匹配同名點, 這時候需要人工干預(yù)加入數(shù)量較多的正確連接點, 確保水域兩邊有足夠多的同名點。 人工連接點空三解算情況見表4, 結(jié)果優(yōu)化處理如圖8 所示。 如果測區(qū)水域面積比較大, 或許水域分布較多, 要從航飛攝影上解決一些問題, 例如, 精心規(guī)劃航線, 避開大面積水域, 加大影像重疊率等。
圖5 空三結(jié)果彎曲示意圖Fig.5 Diagram of aerial triangulation result bending
圖6 彎曲經(jīng)過優(yōu)化處理結(jié)果示意圖Fig.6 Diagram of bending after optimization
表3 空三結(jié)果出現(xiàn)彎曲人工加入連接點后數(shù)據(jù)處理情況Table 3 Data processing status after manually joining connection points when bending appeared in aerial triangulation result
點名 北坐標(biāo)X/m 東坐標(biāo)Y/m 高程Z/m 所在像片數(shù) 重投影誤差/pixels 距離投影誤差/m User_Tie_Point_17 560384.5090 249 104 1.706 117.886 342 2 15 0.86 0.016 46 User_Tie_Point_18 560 587.117 6 249 104 1.73 100.987 698 4 15 1.23 0.027 77 User_Tie_Point_19 560 715.693 0 249 103 5.385 103.230 827 3 15 0.93 0.016 04 User_Tie_Point_20 560 703.263 7 249 086 2.117 120.0320294 15 0.73 0.016 44 User_Tie_Point_16 560 466.834 2 249 098 7.272 111.232 677 0 15 0.68 0.014 69全中誤差 1.06 0.022 79平均誤差 0.96 0.021 49
圖7 空三結(jié)果水域接壤處交叉示意圖Fig.7 Diagram of intersection at the intersection of water boundary of aerial triangulation result
圖8 水域接壤處交叉經(jīng)過優(yōu)化處理結(jié)果示意圖Fig.8 Diagram of optimization result at the intersection of water boundary
在傾斜攝影測量中空三解算非常復(fù)雜, 經(jīng)常出現(xiàn)意想不到的問題, 通過以上的若干優(yōu)化操作。一定程度提高空三解算成功率, 減少失敗的次數(shù),對能夠提高三維重建生產(chǎn)效率有積極意義。
為了讓數(shù)據(jù)生產(chǎn)更加優(yōu)化, 達(dá)到更好更快的效果, 必須配備精良的硬件設(shè)備, 精心規(guī)劃航線,提高像控點精度與密度, 同時需要多種不同類型軟件搭配使用, 找到最優(yōu)的生產(chǎn)技術(shù)路線。 隨著傾斜攝影的普及, 出現(xiàn)越來越多的與處理傾斜影像相關(guān)的軟件, 但是, 三維重建軟件要注重優(yōu)化傾斜攝影測量空三算法, 才能從根本上解決空三解算復(fù)雜問題, 希望上述若干優(yōu)化方法對優(yōu)化空三算法具有借鑒意義。
表4 空三結(jié)果出現(xiàn)水域接壤處分層人工加入連接點后數(shù)據(jù)處理情況Table 4 Data processing status after manually joining connection points when stratification appeared at water boundary in aerial triangulation result