1.一種無人機(jī)序列影像批處理三維重建方法,其特征在于,包括以下步驟:
步驟一、融合低精度GPS/INS信息的影像匹配:
假設(shè)一組影像I=Ii,...,In及對應(yīng)的概略的位置姿態(tài)信息G=Gi,...,Gn,以及一個(gè)匹配的視圖對集的子集Vi;
㈠位置姿態(tài)信息
通過GPS和IMU獲得的位置姿態(tài)信息Gi=[Ri|ti],其中Ri是一個(gè)3×3的旋轉(zhuǎn)矩陣,ti是一個(gè)三維空間向量分別代表相機(jī)的位置和姿態(tài)角;標(biāo)準(zhǔn)GPS接收機(jī)得到的全局位置坐標(biāo)是以經(jīng)緯度和高程表示地球某一位置的WGS84坐標(biāo)系;下一步將GPS數(shù)據(jù)轉(zhuǎn)換為地心地固坐標(biāo)系,相機(jī)的定向用偏航角、俯仰角和滾轉(zhuǎn)角來表示,其中,偏航角從地磁北起算;此時(shí),外部姿態(tài)Gi包括了轉(zhuǎn)換到了地心地固坐標(biāo)系的GPS坐標(biāo)和三個(gè)旋轉(zhuǎn)角;再加上已知的相機(jī)的內(nèi)方位參數(shù),則可以得到每張影像Ii的完整的投影矩陣
㈡視圖選擇
為識別可能存在共同對應(yīng)特征點(diǎn)的影像,為每張影像Ii選擇相應(yīng)的具有足夠相似度的候選匹配影像集Ti=T1…Tk;接下來,影像集將根據(jù)影像對應(yīng)的GPS/IMU信息得到的概略的重疊區(qū)域標(biāo)準(zhǔn)剔除影像;若場景的精細(xì)三維模型是可見的,影像間的重疊區(qū)域可通過視圖Ii和Ij之間相互投影的視錐體來得到;若場景的精細(xì)三維模型是不可顯示的,則通過估計(jì)最大景深Si來限制影像Ii可見的區(qū)域;
且,最大景深值Sij可以通過影像對<Ii,Ij>的基線恢復(fù)出來;定義Sij:
Sij=t.d(Gi,Gj),
其中,d(.,.)表示歐氏距離,t是一個(gè)決定重建所需精度的參數(shù);
給定以上約束條件,可以通過影像對<Ii,Ij>的重建計(jì)算最大景深值S:
S=min(Sij,Si,Sj),
并且,該影像有重疊,為計(jì)算一個(gè)粗略的重疊標(biāo)準(zhǔn)定義一個(gè)平行于影像Ii到相機(jī)中心點(diǎn)Gi的距離為S的平面πi;Ri和Rj表示視圖Ii和Ij投影在平面πi上的圖像范圍;影像的重疊度可以通過下式計(jì)算:
其中,a(.)表示投影矩形的面積;
步驟二、建立極線圖:
首先,對每幅圖像提取尺度不變特征點(diǎn),采用高效的SIFT提取算子和描述算子,圖像對之間的特征點(diǎn)匹配應(yīng)用基于CUBLAS矩陣運(yùn)算庫的GPU加速的圖像匹配方法;
在對每個(gè)候選的視圖Ii匹配上相關(guān)的影像集Vi之后,利用五點(diǎn)算法進(jìn)行幾何驗(yàn)證;
根據(jù)特征點(diǎn)描述子的匹配會出現(xiàn)錯(cuò)誤的外點(diǎn),采用RANSAC算法進(jìn)行剔除;
匹配的輸出結(jié)果是用極線圖表示的結(jié)構(gòu)圖,極線圖由對應(yīng)影像的頂點(diǎn)集v={I1...IN}和邊界集ε∈{eij|i,j∈v}組成并是成對重建的,即由視圖i和j之間的相對定向eij=<Pi,Pj>和各自的影像三角化后的點(diǎn)集組成;其中,
Pi=Ki[I|O],Pj=Kj[R|t];
步驟三、計(jì)算全局一致性的旋轉(zhuǎn)集:
給定了極線圖接下來確定相機(jī)的初始位置和定向信息;
根據(jù)兩幅圖像之間的約束,兩個(gè)相機(jī)的絕對位置姿態(tài)(Ri,ti)和(Rj,tj)需要滿足旋轉(zhuǎn)一致性和平移方向一致性
首先,視圖對i和j之間的相對旋轉(zhuǎn)集{Rij}通過解超定方程組可以升級為全局一致性的旋轉(zhuǎn)集{Ri},
RijRi=Rj,
上述以Ri為標(biāo)準(zhǔn)正交為限制條件;
然后利用SVD分解使Ri滿足正交約束,得到最終解
通過解出系統(tǒng)初始的近似旋轉(zhuǎn)矩陣,并用Frobenius范數(shù)將近似旋轉(zhuǎn)矩陣投影到最接近的旋轉(zhuǎn)矩陣;
通過下面的公式來計(jì)算權(quán)重:
其中,N=|Fij|是視圖i和j之間的內(nèi)點(diǎn)數(shù)量,ci,cj是特征覆蓋范圍值,
其中,α是所需內(nèi)點(diǎn)的最小數(shù)量,表示整個(gè)影像的面積,A(Fij,r)是特征點(diǎn)Fij覆蓋范圍經(jīng)過以為圓半徑進(jìn)行擴(kuò)張操作后的面積;
結(jié)果,具有恰當(dāng)分布對應(yīng)點(diǎn)的聚合的視圖對會比那些有同樣多的對應(yīng)點(diǎn)但隨機(jī)分布的視圖對所占權(quán)重要高;因此,全局一致性的旋轉(zhuǎn)集可以拓展為加了權(quán)重的形式:
其中,為Ri的列(k=1,2,3),上式可以通過稀疏的最小二乘算子解算出來;
步驟四、初始化相機(jī)中心點(diǎn):
為實(shí)現(xiàn)相機(jī)的中心點(diǎn)在地心地固坐標(biāo)系下的初始化,需將旋轉(zhuǎn)矩陣Ri轉(zhuǎn)換為適應(yīng)GPS的方式,可以通過將相對定向vij調(diào)整為相應(yīng)的GPS定向
其中,vij是全局坐標(biāo)系中圖像Ii和圖像Ij之間的相對平移,是GPS坐標(biāo)系中圖像Ii和圖像Ij之間的相對平移,可通過奇異值分解法解算R;
步驟五、生成對應(yīng)特征點(diǎn)軌跡:
極線圖存儲了一個(gè)相對定向集和視圖對<Ii,Ij>之間的對應(yīng)特征點(diǎn);每張影像Ii都和鄰近一定數(shù)量的影像匹配,匹配的信息被存儲在本地的節(jié)點(diǎn);
是一個(gè)單向圖,Ii→Ij的匹配并不一定包含Ij←Ii的匹配;然后,對于極線圖中的每張圖節(jié)點(diǎn)Ii,節(jié)點(diǎn)被聚合成軌跡(track)其中f=<xk,yk>表示特征點(diǎn)在影像Ik中的坐標(biāo)位置;
即,根據(jù)圖像匹配關(guān)系,尋找每幅圖像中的每個(gè)特征點(diǎn)在其他匹配圖像中對應(yīng)的特征點(diǎn),所有上述特征點(diǎn),構(gòu)成一個(gè)點(diǎn)軌跡,對應(yīng)現(xiàn)實(shí)世界中的一個(gè)3D點(diǎn);
由于點(diǎn)軌跡是為每張影像而建,并存儲在本地,起初,點(diǎn)軌跡集是冗余的,影像Ik的一個(gè)特征點(diǎn)f可以屬于幾個(gè)不同的軌跡;
然后,點(diǎn)軌跡應(yīng)用光束法平差進(jìn)行整體優(yōu)化,并使用最小的軌跡集來表達(dá);
確定的一個(gè)軌跡的子集,所述子集只包括極線圖上每一個(gè)匹配的對應(yīng)特征點(diǎn)一次;
運(yùn)用貪婪搜索算法來確定軌跡集的最小子集,該最小子集隨后被用來初始化稀疏的3D結(jié)構(gòu);
步驟六、初始化3D結(jié)構(gòu):
通過前述步驟,可得到相機(jī)的方向信息集合和點(diǎn)軌跡
根據(jù)每個(gè)點(diǎn)軌跡確定3D點(diǎn)的坐標(biāo);
若相機(jī)的方向信息集總體上達(dá)不到像素級的精度且中還有外點(diǎn),基于的線性三角化將導(dǎo)致隨機(jī)的大的重建錯(cuò)誤,即3D結(jié)構(gòu)初始化錯(cuò)誤;
可以發(fā)現(xiàn)直接的三角化方法不能保證足夠的結(jié)構(gòu)初始化的精度,甚至經(jīng)常連cheirality約束都不能滿足;但是,極線圖能提供視圖對之間像素級或亞像素級精度的相機(jī)方向信息,可以滿足兩視圖三角化的精度;
因此,在每個(gè)點(diǎn)軌跡中基于相對定向?qū)哂凶铋L基線的視圖對進(jìn)行兩視圖三角化,即選取每個(gè)點(diǎn)軌跡中特征點(diǎn)所在圖像的GPS坐標(biāo)相差最大的兩個(gè)特征點(diǎn)做三角化,得到初始3D點(diǎn);
步驟七、光束法平差:
給定一個(gè)量測值集合,光束法平差可以通過最小化重投影誤差來優(yōu)化相機(jī)的定向和結(jié)構(gòu)恢復(fù):
其中,xij是在未知相機(jī)Pi中未知3D點(diǎn)Xj的觀測值,vij是一個(gè)二進(jìn)制的變量,當(dāng)點(diǎn)Xj在影像Pi中可見時(shí)為1,否則為0;
所述光束法平差是通過最小化非線性實(shí)值函數(shù)的平方和來調(diào)整每個(gè)3D點(diǎn)和相機(jī)中心點(diǎn)之間的射線束;
當(dāng)存在高斯噪音的情況下,非線性的最小二乘法可以實(shí)現(xiàn)最大似然估計(jì),必要的限制條件是初始值必須足夠接近于整體最小值;
在光束法平差的基本實(shí)現(xiàn)形式是最小化矢量的平方和Σi||∈||2,其中
因此,魯棒的目標(biāo)函數(shù)可以以重設(shè)誤差矢量∈′i=wi∈i的權(quán)重值來實(shí)現(xiàn),如下式所示:
由此得出,上式滿足ΣiC(||∈i||)=Σi||∈i||2的要求,其中,
權(quán)值wi常被稱為衰減因子,用于降低外點(diǎn)的影響;
步驟八、稠密點(diǎn)云重建:
采用PMVS算法進(jìn)行稠密點(diǎn)云的重建;
步驟九、紋理映射:
對重建的稠密點(diǎn)云基于Poisson算法構(gòu)建場景或物體的網(wǎng)格表面,并通過遮擋分析,實(shí)現(xiàn)紋理自動映射。
2.根據(jù)權(quán)利要求1所述的無人機(jī)序列影像批處理三維重建方法,其特征在于,所述步驟一的㈠位置姿態(tài)信息中,所述投影矩陣給出了相機(jī)的位置和姿態(tài)信息的概略值,所述概略值在用于后續(xù)的處理過程之前,需首先進(jìn)行預(yù)處理,剔除明顯錯(cuò)誤的數(shù)據(jù),用前后兩張影像的位置姿態(tài)數(shù)據(jù)的平均值來近似代替:
當(dāng)錯(cuò)誤數(shù)據(jù)出現(xiàn)航帶的起始點(diǎn)或終點(diǎn)時(shí),則用前后兩條航帶起始點(diǎn)或終點(diǎn)影像的位置姿態(tài)數(shù)據(jù)的平均值來代替。
3.根據(jù)權(quán)利要求1所述的無人機(jī)序列影像批處理三維重建方法,其特征在于,所述步驟一的㈡視圖選擇中,投影矩陣和標(biāo)準(zhǔn)平面πi之間的夾角小于最大旋轉(zhuǎn)角度α,否則就設(shè)置為0。
4.根據(jù)權(quán)利要求1所述的無人機(jī)序列影像批處理三維重建方法,其特征在于,所述步驟一的㈡視圖選擇中,對于每組影像對<Ii,Ij>計(jì)算其重疊區(qū)域其中Ij∈Ti。
5.根據(jù)權(quán)利要求1所述的無人機(jī)序列影像批處理三維重建方法,其特征在于,所述步驟一的㈡視圖選擇中,若重疊區(qū)域值大于設(shè)定的閾值,Ij則被加入到子集Vi以用于后續(xù)的精細(xì)匹配;即,每一幅圖像Ii只與同時(shí)滿足以下兩個(gè)條件的圖像Ij進(jìn)行匹配:
其中,表示圖像Ii和Ij拍攝時(shí)的方向角,threshold為設(shè)定的閾值。
6.根據(jù)權(quán)利要求1所述的無人機(jī)序列影像批處理三維重建方法,其特征在于,所述步驟七中光束法平差的目標(biāo)函數(shù)具體包括以下所列:
(a)Squarederror目標(biāo)函數(shù)
C(∈)=∈2
(b)Huber目標(biāo)函數(shù)
(c)Blake-Zisserman目標(biāo)函數(shù)
(d)Sigma目標(biāo)函數(shù)
(e)Cauchy目標(biāo)函數(shù)
C(∈)=b2log(1+∈2/b2)。