張利
(南充職業(yè)技術學院,四川 南充 637131)
隨著數(shù)字圖像處理算法、無人機飛行器和CCD傳感器等技術的進一步發(fā)展和融合,無人機攝影測量成為了提供空間信息服務的重要方法,在城市勘測、地理國情監(jiān)測和應急測繪等領域的應用十分廣泛。目前,無人機攝影系統(tǒng)大部分情況下搭載的相機為普通的數(shù)碼相機,即非量測數(shù)碼相機,其內方位元素未知,鏡頭也存在較大的光學畸變。因此,非量測數(shù)碼相機用于攝影測量時必須經(jīng)過相機檢校,獲取相機的內方位元素和光學畸變參數(shù),相機定期檢校費用不可避免。相機檢校結果的精度和可靠性,會影響攝影測量獲取測繪產(chǎn)品的精度和質量。
非量測數(shù)碼相機用于攝影測量時必須經(jīng)過相機檢校,獲取相機的檢校參數(shù),包括內方位元素和光學畸變參數(shù)。內方位元素是表示攝影瞬間相機的攝影中心與影像之間的相關位置的參數(shù),包括像主點相對于影像中心的平面坐標(,)和攝影中心到像片的垂距(主距);光學畸變差是數(shù)碼相機的光學物鏡系統(tǒng)設計、加工和裝配所引起的影像像點偏離其理想位置的點位誤差,分為徑向畸變差(Radial Distortion)和偏心畸變差(Decentering Distortion)兩類,是影響像點坐標質量和攝影測量成果質量的一項重要誤差。
由于非量測數(shù)碼相機的型號種類多種多樣,并且檢校內容中的光學畸變參數(shù)并未標準化,相機檢校方法也因而種類繁多。根據(jù)檢校方法原理和場地設備的不同,非量測數(shù)碼相機的檢校方法目前大致可以分為以下三類:基于標定物的傳統(tǒng)檢校方法、基于主動視覺的檢校方法、相機自檢校方法。
基于標定物的傳統(tǒng)檢校方法在攝影測量中的應用十分廣泛。并且,相機檢校的精度一般和采用的標定物維數(shù)成正比,故本文采用傳統(tǒng)相機檢校方法中的三維直接線性變換(DLT)解法來完成非量測數(shù)碼相機的檢校。此方法采用的標定物為室內/室外三維檢校場內的三維控制點標志。
直接線性變換(Direct linear transformation, DLT)由Abdel-Aziz和Karara在1971年提出,在近景攝影中采用相機成像模型的線性方程組,來表示和求解相機拍攝圖像和被拍攝物體之間的對應關系。其基本關系式:
式中,(,)為像點的二維像方坐標,(,,)為像點相應物方點的三維物方坐標,(,,…,)系數(shù)是內、外方位元素以及坐標軸非正交誤差參數(shù)和比例尺不一致誤差參數(shù)的函數(shù)。
三維直接線性變換(DLT)相機檢校解法一般需要借助控制檢校場,能夠直接建立檢校標志點在圖像中的二維像點坐標與其在物方空間中的三維坐標之間的基本線性關系(11個線性變化系數(shù));然后在線性方程中加入光學畸變差組成方程組,采用最小二乘法迭代解算11個線性變化系數(shù)和畸變參數(shù),最后根據(jù)線性變化系數(shù)求得相機的內方位元素。
將相機鏡頭的總畸變參數(shù)方程作為附加參數(shù)模型加入到三維DLT解法,同時迭代求解相機的內方位元素和所有的光學畸變系數(shù),即為本文采用的三維DLT檢校方法。
三維DLT檢校方法的實現(xiàn),需要基于室內三維檢校場或者室外三維檢校場,二者的建立方案大致相同,在此以室內三維檢校場為例來進行敘述。室內三維檢校場應選擇空曠房間作為檢校場主體,要求整個空間的大小合適、照明較好,并布設足夠數(shù)量且均勻分布的三維檢??刂泣c,并使用全站儀測量控制標志點的三維物方空間坐標。如圖1所示。
圖1 室內三維檢校場示意圖
在距離控制點標志的適當位置,設置至少兩個平行于合金管所在鉛垂面的地面測量控制點。地面控制點應按照相應測量規(guī)范中的高標準要求來進行布設,必須確保其長期穩(wěn)定性。一般以其中一個地面控制點為原點,以兩個控制點的連線和連線的平面垂線以及地面的鉛垂線為XYZ軸,構建獨立空間直角坐標系。地面控制點之間的高差采用水準儀測量確定,平面位置差則采用全站儀測量確定,測量精度均應控制在亞毫米級,從而確定地面控制點的三維空間坐標。然后分別在不同的地面控制點采用全站儀測量控制點標志,并將同一個控制點標志不同架次的測量結果進行比對,以確保其三維空間坐標的準確性,從而得到檢校場內全部控制點標志的三維空間坐標。至此,完成整個三維檢校場的建立。
三維DLT檢校方法的解算大致可以分為三步,如圖2所示:首先,計算得到l系數(shù)和部分相機檢校參數(shù)(,,,,)的近似值;然后,檢校參數(shù)(,,,)的初始值均設為0,將第一步的近似值作為初始值迭代解算l系數(shù)和全部相機檢校參數(shù)(,,,,,,,,)的精確值,迭代終止條件為相鄰兩次的主距差值不超過0.01 mm,此通常為量測攝影機內方位元素的測定精度;最后,根據(jù)以上參數(shù)的精確值和未知點的像點坐標,通過空間前方交會解算未知點的物方空間坐標,迭代終止條件為相鄰兩次的物方空間坐標差值不超過精度要求的1/10。
圖2 三維DLT檢校方法的解算流程圖
根據(jù)三維DLT檢校方法的解算步驟,采用Visual Studio 2015編程實現(xiàn)了三維DLT檢校方法,并形成了相應的相機檢校程序(三維DLT相機檢校.exe)。首先,基于像片上控制點標志的二維像點坐標(,)及其相應的三維物方空間坐標(,,),迭代解算得到l系數(shù)和全部相機檢校參數(shù)(,,,,,,,,)的精確值;然后,根據(jù)兩張以上像片的三維DLT算法的解算結果,來進行空間前方交會迭代求解未知控制點的物方空間坐標(,,)的精確值,并和相應未知控制點的全站儀測量坐標值進行比對,以進一步驗證檢校程序的有效性和結果的可靠性。
(1)三維檢校場控制點的像點坐標(,)和物方空間坐標(,,):
在三維檢校場內,使用全站儀測量布設的控制點標志,得到高精度的三維物方空間坐標(,,);使用待檢校的非量測數(shù)碼相機在不同位置拍攝三維檢校場,確??刂泣c標志在像片上的構像范圍盡量大,然后根據(jù)所攝像片可獲取檢校標志點的二維像點坐標(,)。
(2)求解l系數(shù)和部分相機檢校參數(shù)(,,,,)的近似值:
將光學畸變差系數(shù)(,,,)的初始值設為零,然后從上一步已知像點坐標和三維物方空間坐標的控制點標志中,選取6個控制點的兩組坐標,建立包含11個方程式的方程組,解算得到11個系數(shù)的近似值。最后,求解得到部分相機檢校參數(shù)(,,,,)的近似值。
(3)解算l系數(shù)和全部檢校參數(shù)(,,,,,,,,)的精確值:
(4)解算未知控制點的物方空間坐標(,,)的精確值:
未知控制點物方空間坐標(,,)的解算是一個空間前方交會的過程,故應在不同攝站拍攝兩張及以上的像片。首先,基于步驟(3)解算不同像片的l系數(shù)和全部相機檢校參數(shù)的精確值;然后,根據(jù)不同像片的系數(shù)精確值、未知控制點的像點坐標,計算未知控制點物方空間坐標(,,)的近似值(包括);根據(jù)畸變差方程式計算未知控制點成像的非線性畸變誤差,并對其像點坐標進行改正(+△,+△);最后,結合未知控制點物方空間坐標(,,)的近似值、改正后的像點坐標、不同像片的l系數(shù)精確值,中誤差方程式中的矩陣和,然后解算式(4-10)中的法方程,即可求得未知控制點的物方空間坐標(,,)的新值(包括);以上步驟為迭代運算的過程,迭代終止條件為:|-|≤1/10精度要求,即相鄰兩次的運算值的差值絕對值不超過物方空間坐標精度要求的1/10。若超過,則將物方空間坐標(,,)的最新運算值作為初始值,接著進行迭代運算,直至滿足迭代終止條件,最后得到未知控制點的物方空間坐標(,,)的精確值,并輸出和保存相應的結果。
基于上述的三維DLT檢校方法的編程流程,形成了具有操作界面的三維DLT相機檢校程序(三維DLT相機檢校.exe),程序運行界面如圖3所示。檢校程序包含兩大部分:(1)非量測數(shù)碼相機的檢校參數(shù)的解算(三維DLT相機檢校);(2)未知點物方空間坐標的解算。解算的相機檢校參數(shù)包括:像主點坐標(,)、主距、徑向畸變參數(shù)(,)、偏心畸變參數(shù)(,)、坐標軸比例尺不一致參數(shù)、坐標軸非正交參數(shù)。需要注意的是,像點坐標、焦距和物方空間坐標的單位均統(tǒng)一要求轉換為毫米(mm),像點坐標要以像片幾何中心為原點。
圖3 相機檢校程序界面
未知點物方空間坐標的解算實際為空間前方交會算法,需要兩張及以上的像片數(shù)據(jù)來進行解算。假設采用的像片張數(shù)為,導入的數(shù)據(jù)為張像片中未知控制點相應的像點坐標(,)、張像片的系數(shù)精確值和相機檢校參數(shù)精確值。經(jīng)過三維DLT解法的編程流程中的步驟(4),最后解算得到的數(shù)據(jù)為未知點的物方空間坐標(,,)的精確值,并保存計算結果。值得注意的是,張像片的像點坐標(,)和張像片的系數(shù)精確值必須一一對應。
為了驗證三維DLT相機檢校結果實際應用的有效性,搭載數(shù)碼相機Canon EOS 5D Mark II獲取了某個區(qū)域的無人機航空攝影數(shù)據(jù),基于此相機的檢校參數(shù)結果,進行了攝影測量大比例尺1:2 000 DOM的實際生產(chǎn)。在使用和不使用相機檢校結果的兩種情況下,對航攝影像數(shù)據(jù)進行處理,通過對比和分析兩種情況下,空三平差結果的整體中誤差和加密點坐標的平均標準差,以及1:2 000數(shù)字正射影像圖DOM上檢查控制點的量取坐標與其外業(yè)實測坐標的差值,從而完成檢校結果的應用分析。
采用無人機搭載數(shù)碼相機Canon EOS 5D Mark II,獲取了測區(qū)3條航線共20張有效影像,航飛高度約為550 m。航攝區(qū)域最低處與水面相接,最低處與最高處的高差約為20 m,包含了建筑物、平地、陡坡和植被等多種地形地貌。由于無人機搭載的為單頻GPS接收機,定位精度不高,故采用GPS接收機基于CORS系統(tǒng),在航測區(qū)域均勻測量了20個平高控制點的物方三維坐標,測量精度為1~2 cm。其中15個控制點作為定向點參與了空三平差等一系列處理,5個控制點(J1~J5)作為檢查點全程未參與以對最后生成的DOM進行評價。隨后,采用數(shù)字攝影測量處理系統(tǒng),基于數(shù)碼相機Canon EOS 5D Mark II的相機檢校參數(shù)、無人機航攝影像和15個平高像控點等數(shù)據(jù)進行了影像畸變差改正、建立影像金字塔、自動空三加密和區(qū)域網(wǎng)平差以及DOM生成等一系列處理。在使用和不使用相機檢校結果的兩種情況下,空三平差結果的整體中誤差分別為4.3 μm(0.7像素)和21.6 μm(6.4像素),加密點坐標(,,)的平均標準差分別為0.089 m、0.090 m、0.405 m和0.236 m、0.241 m、1.21 m。
然后,根據(jù)最后生成的兩幅1:2 000數(shù)字正射影像圖DOM,分別量取5個檢查點(J1-J5)在DOM上的平面坐標,并與其外業(yè)實測坐標進行對比,坐標誤差結果如表1所示,采用相機檢校結果的坐標誤差更小。其中,采用相機檢校結果得到的DOM如圖4所示,紅色三角形標志為15個平高像控點,黃色三角形標志為5個檢查點。
圖4 1:2 000數(shù)字正射影像圖(DOM)示意圖
表1 是否使用檢校結果的控制點坐標誤差(m)
由此可見,在使用相機檢校結果的情況下,空三平差結果的精度和最后生成的數(shù)字正射影像圖DOM的精度在整體上得到了顯著的提升,能夠更好地滿足《CH/Z 3003-2010低空數(shù)字航空攝影測量內業(yè)規(guī)范》和《CH/T 9008.3—2010基礎地理信息數(shù)字成果1:500、1:1 000、1:2 000數(shù)字正射影像圖》中1:2 000比例尺相應的精度要求,表明了相機檢校結果在大比例尺(1:2 000)攝影測量中的實際應用性。
本文采用三維直接線性變換(DLT)檢校方法,采用Visual Studio2015編程實現(xiàn)了具有操作界面的三維DLT相機檢校程序。檢校程序具備相機檢校參數(shù)解算和未知點物方空間坐標解算的功能。然后,基于三維控制場的相關數(shù)據(jù),采用編制的相機檢校程序對非量測型數(shù)碼相機進行了相機檢校參數(shù)的解算和精度分析。最后,將相機檢校參數(shù)的結果應用于大比例尺(1:2 000)攝影測量的實際數(shù)據(jù)處理,獲得了符合要求的1:2 000數(shù)字正射影像圖DOM,并進行了相應的應用分析。結果表明三維DLT檢校程序是穩(wěn)定和可靠的,具有實際應用性。