孟 偲 周 娜 張亞妮
(北京航空航天大學 宇航學院,北京100191)
利用下降圖像序列重建著陸區三維地形,對著陸器選擇安全著陸點具有重要意義[1-2].大規模場景三維重建是計算機視覺的重要研究內容[3],已有很多關于利用立體視覺重建場景[4-5]和利用運動圖像重建場景的方法被提出[6-9].但是這些方法中,圖像主要沿橫向移動,圖像間分辨率差異較小,圖像的極點一般在圖像外部.在如深空著陸探測的下降段,攝像機主要沿光軸方向運動,極點在圖像中間[10].利用該類相機拍攝圖像進行場景重建的研究還很不成熟,需要進一步深入研究.
針對著陸下降圖像的地形重建,國內外專家學者已開展了一些相關研究.俄亥俄州州立大學在銀湖實驗[11-12]采集了10幅高度折半的下降圖像,聯合地面巡視器圖像利用光束平差法獲得下降圖像方位參數,再通過圖像注冊和特征點匹配搜尋,最后插值優化生成數字地形模型(DTM,Digital Terrain Model).該方法需要較多的下降圖像,并且先利用特征點重建,然后進行稠密化獲得地形重建.相比于俄亥俄州州立大學用10幅圖像重建場景,美國噴氣推進實驗室提出利用圖像對即可重建地形的方法[13].他們也利用高度折半圖像重建地形,通過光線與虛擬平面交點重投影法變換圖像,利用差值平方總和(SSD,Sum of Square Difference)對圖像的相似度進行衡量,從而恢復三維地形信息.該方法可為圖像公共區域每個像素點恢復深度信息從而進行稠密重建,但該方法利用光線重投影變換圖像過于復雜,而后面利用SSD進行匹配運算又過于簡單,魯棒性不強.國內北京理工大學研究了軸向運動圖像重建,通過縮放來搜索匹配點,存在較大誤差,并且只針對特征點實現重建[14].華中科技大學研究了機載前視傳感器圖像的重建問題[15],但只基于特征點匹配實現障礙物與背景的分層,并沒有重建三維場景.
本文作者對美國噴氣推進實驗室的算法進行了深入研究,分析了沿軸向運動相機采用高度折半法采集圖像的原因,并提出了基于單應變換的深度恢復算法,實現了下降圖像的場景稠密重建[16].研究過程中,本文作者發現在基于單應性的下降圖像三維重建算法中,重建結果的準確性在很大程度上受到重建參數的影響,因此需要通過實驗獲取準確的重建參數.但這種參數設定方式增加了操作復雜性,而且在參數設定不準確時,影響重建效果,甚至造成重建結果嚴重失真.針對此問題,本文作者分析了不同重建參數對重建結果的影響,提出一種自適應參數生成算法,并通過實驗驗證了自適應生成的重建參數在地形重建中能較好地適應重建算法對參數的要求.
基于單應變換的下降圖像深度恢復,本質上仍是屬于基于運動圖像的三維場景重建問題,因此仍可分為運動恢復和深度恢復兩步進行.
1)主要是恢復圖像之間的精確運動.首先從圖像提取魯棒性較強的SIFT(Scale-Invariant Feature Transform)特征點,并結合RANSAC(Random Sample Consensus)算法進行特征點匹配.通過特征點匹配以及預先標定的攝像機內參數,就可以對圖像的運動進行估計.為規避著陸區近似平面場景引起的運動恢復不穩定以及單純圖像特征匹配跟蹤無法恢復運動大小的問題,需要由著陸器上的慣性測量單元與激光高度計給出著陸相機姿態變化和高度變化的初始值.這些初始運動信息比較粗略,達不到精確三維場景重建對圖像點匹配精度要求,但卻可為精確的運動信息恢復提供初始值.在運動優化中,將該初始值作為懲罰因子加入到目標函數中,可以保證優化結果位于初始值周圍,從而較穩定地恢復出圖像間的精確運動信息.
2)在精確運動恢復的基礎上稠密恢復圖像的深度信息.首先用一系列與著陸區近似平面平行的虛擬平面切分著陸區地形,如圖1所示.假設相機內參K保持不變,(R,t)為兩幅圖像間的運動關系,N為虛擬平面法向量,dk為第k個平面到高位置相機坐標系原點的距離,由每個虛擬平面誘導的單應性將低位置圖像變換到高位置圖像位置.則第k個平面誘導的單應矩陣為


圖1 虛擬平面誘導的單應性示意圖
當高位置圖像分別與誘導產生的一系列新圖像進行對應像素點的窗口匹配運算時,高位置圖像的每個像素點對應一系列相關性度量值.對任一像素點,只有其真實地形所在虛擬平面誘導產生的新圖像與高位置圖像匹配程度最高,因此只需要在一系列相關性度量值中尋找最相關值,此時該像素點真實地形位于最相關值對應虛擬平面上.對下降圖像重疊區域每一像素點進行上述處理,可實現逐像素稠密重建.
第1節算法成功的一個關鍵環節是所采用的系列虛擬平行平面要能包含整個地形起伏變化,并且有足夠的虛擬平面個數,使得虛擬平面誘導產生的單應圖像有足夠的差異進行區分.但系列平面的個數又應該盡量地少,因為每個平面都會產生誘導變換單應圖像,每個單應變換圖像都要與參考圖像進行匹配運算,平面數過多會導致大量的多余運算,影響地形重建的速度.因此虛擬平面的方向、個數、地形高度差異成為影響地形重建的重要參數.
第3節實驗部分顯示了不同地形高度差異和不同切分平面個數對沙坑中放置石塊場景地形重建效果,可以明顯看到重建參數對重建效果的影響.
在上述實驗中,虛擬平面的方向、地形高度差異以及切分平面的個數都是由人根據實驗條件或觀察經驗設定的.在實際下降著陸中,地形的實際差異以及虛擬平面的法向方向并不預先可知,通過實驗反復嘗試來設定效率不高.如能自適應生成上述重建參數,則會提高重建算法的效率.
1)切分平面法向方向的確定.
首先,需要確定系列平行虛擬平面法向量.通過匹配特征點對確定的空間點,可以擬合出地形近似平面.假設特征點在圖像上分散較均勻,匹配特征點對應空間點在該擬合平面的法向方向的變化量最小,因此利用與該擬合平面平行的一系列虛擬平面切分地形,可以盡量減少虛擬平面劃分層數,從而減少計算量,并達到最佳重建效果.
以高位置攝像機坐標系為世界坐標系,假設擬合空間平面π表示為

則第i個特征點對對應的空間點Si(xi,yi,zi)到平面π的距離可表示為

假設空間點對個數為m,則最佳擬合平面π需滿足:

從而求得平面法向量:

2)地形高度差異的自動計算.
確定虛擬平面法向量后,還需確定地形高度差異.分析算法原理可知,當地形高度差異給定值小于真實值,處于地形差異范圍以外的重建點將無法搜索到正確匹配點,產生誤匹配,從而造成深度恢復錯誤.而當地形高度差異給定值略大于真實值時,對恢復結果幾乎沒有影響,只是在最低和最高平面附近的幾層內沒有對應點,包含少數多余平面.當地形高度差異給定值過大時,會極大地增加計算量,在噪聲影響下甚至會造成誤匹配.因此,為達到更好的重建效果,可適當增大地形高度差異給定值,使其大于等于真實值.
由于相機內參和圖像之間的相對運動已知,可確定下降圖像的匹配SIFT特征點對對應的空間點位置.在地形近似平面兩側,分別計算特征點對應空間點到地形近似平面最大距離,用Δd1和Δd2表示.其中,Δd1表示與坐標原點異側的最大距離.由于真實地形高度差異必大于等于Δd1與Δd2之和,為保證地形高度差異給定值略大于真實值,給出一個差異系數λ(一般取值范圍為1.2<λ<1.5).

則高位置攝像機到最遠虛擬平面距離dZ0為

其中d由式(4)計算得到.
3)切分平面個數的自適應確定.
確定地形高度差異后,還需要進一步得到切分平面個數.圖2為實驗下降圖像中某一重建點的相關性曲線隨切分平面個數變化的曲線,該曲線的最大值點代表相關性最強位置.當切分平面個數過少時,圖像點所在位置與最接近虛擬平面之間距離較大,造成相關性曲線最大值較小,曲線波動范圍較小,不利于后續深度匹配,從而影響重建效果.因此,需要增加切分平面個數以提高計算準確性.但切分平面個數過多,又會增加不必要的計算量,因而需要選取適當的切分平面個數.
由圖2可得,隨著切分平面個數的增加,相關系數值曲線形狀趨于穩定.綜合考慮算法準確性和復雜度,需要選取曲線保持穩定條件下的最小切分平面個數.
一般情況下,當相機拍攝位置保持不變時,地形起伏越大,所需切分平面個數越多;當地形高度差異保持不變時,相機拍攝高度越高,地形深度差異相對相機拍攝高度而言越小,因而所需切分平面個數越少.
綜上所述,切分平面個數受地形高度差異和相機拍攝高度兩個因素影響.考慮到切分平面個數過少時會造成重建失真,還需要設置切分平面個數最小值,以達到更好的重建效果.

圖2 相關性曲線隨切分平面個數n變化示意圖

式中,n0為最小虛擬平面劃分層數;θ為比例系數,根據經驗確定后可保持不變;dZ0為高位置攝像機到最遠虛擬平面的距離,由式(7)計算得到.
最終推導得出

為驗證算法的有效性,采用月面模擬圖像和沙坑石塊圖像進行驗證.
在月面模擬實驗中,將打印的月面圖像彎折成拱形,并將相機裝在機械臂上,相機豎直向下放置.拍攝時控制機械臂沿光軸運動,分別在距離地面950 mm和550 mm處拍攝兩幅圖像,如圖3所示.自適應算法得到的地形高度差異為119 mm,切分平面個數為43.

圖3 不同高度月表模擬圖像
在沙坑石塊實驗中,以同樣的方式安裝并控制相機,分別在距離地面1 100 mm和550 mm處拍攝兩幅圖像,如圖4所示.自適應算法得到的地形高度差異為109 mm,切分平面個數為39.

圖4 不同高度沙坑石塊圖像
在月面模擬實驗中,將切分平面個數固定為43,地形高度差異設定值在80~140 mm之間變化,重建結果如圖5所示.在沙坑石塊實驗中,將切分平面個數固定為39,地形高度差異設定值在80~140 mm之間變化,重建結果如圖6所示.對比所示重建結果可知,當地形高度差異設定值小于真實值時,深度大于設定范圍的位置重建結果嚴重失真;當地形高度差異設定值接近或略大于真實值時,深度恢復結果較為理想.

圖5 不同地形高度差異下的月表模擬圖像重建深度圖

圖6 不同地形高度差異下的沙坑石塊圖像重建深度圖
在月面模擬實驗中,將地形高度差異設定值固定為119 mm,切分平面個數從10~60變化,重建結果如圖7所示.在沙坑石塊實驗中,將地形高度差異設定值固定為109 mm,切分平面個數從10~60變化,重建結果如圖8所示.從重建結果中可以看出,當切分平面個數過少時,重建結果嚴重失真;當切分平面個數較少時,重建地形的階梯效應較明顯;當切分平面個數較多時,隨著平面個數增加,重建效果不再出現明顯變化.

圖7 不同切分平面個數下月面模擬圖像重建深度圖

圖8 不同切分平面個數下沙坑石塊圖像重建深度圖
從實驗結果可以看出,本文提出的參數自適應生成算法計算出的重建參數下可以得到較好的重建效果,并將重建計算量控制在較小的范圍內.但是,本算法還存在一些問題.地形高度差異設定值很大程度上受到SIFT匹配點的限制.當SIFT特征點中包含位于深度最大和最小區域的重建點時,才能完成準確估計,否則可能造成重建結果失真.
本文提出一種自適應參數生成算法,并比較了不同重建參數下的重建結果,從實驗結果及分析可知:
1)重建參數對基于單應性的下降圖像深度恢復影響較大.
2)著陸區為近似平緩地形,本文利用特征點重建三維點,并進一步擬合平面作為著陸區近似平面,在具有紋理特征并且分布相對離散情況下適用;如果地形紋理特征點過于稀疏,則擬合平面距真實近似平面誤差較大.
3)虛擬切分平面稀疏,重建結果不準確;虛擬切分平面個數過多,造成冗余計算,對提升結果準備度沒有實際貢獻;根據預估地形起伏度以及距離相機距離,自動計算虛擬切分平面個數,可在準確重建前提下減少計算量.
References)
[1]Matthies L,Olson C,Tharp G,et al.Visual localization methods for Mars rovers using lander,rover,and descent imagery[C]//Proceedings of International Symposium on Artificial Intelligence,Robotics,and Automation in Space.Tokyo: [s.n.],1997:413-418
[2]Matthies L,Maimone M,Johnson A,et al.Computer vision on Mars[J].International Journal of Computer Vision,2007,75(1):67-92
[3]佟帥,徐曉剛,易成濤,等.基于視覺的三維重建技術綜述[J].計算機應用研究,2011,28(7):2411 -2417
Tong Shuai,Xu Xiaogang,Yi Chengtao,et al.Overview on visionbased 3D reconstruction[J].Application Research of Computers,2011,28(7):2411 -2417(in Chinese)
[4]Olson C F,Abi-Rached H,Ye M,et al.Wide-baseline stereo vision for Mars rovers[C]//2003 IEEE/RSJ International Conference on Intelligent Robots and Systems.Las Vegas,NV:IEEE,2003,2:1302 -1307
[5]王煒強,徐進,杜歆,等.基于寬基線立體視覺的遠距離三維重建[J].浙江大學學報:工學版,2010,44(6):1073 -1078
Wang Weiqiang,Xu Jin,Du Xin,et al.Long-range 3D reconstruction based on wide-baseline stereo vision[J].Journal of Zhejiang University:Engineering Science,2010,44(6):1073 -1078(in Chinese)
[6]Oliensis J,Genc Y.Fast algorithms for projective multi-frame structure from motion[C]//IEEE International Conference on Computer Vision.Piscataway,NJ:IEEE,1999:536 -543
[7]Soatto S,Perona P.Reducing“structure from motion”:a general framework for dynamic vision.1.modeling[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,1998,20(9):933-942
[8]Tomasi C,Kanade T.Shape and motion from image streams under orthography:a factorization method[J].International Journal of Computer Vision,1992,9(2):137 -154
[9]Sturm P,Triggs B.A factorization based algorithm for multi-image projective structure and motion[C]//Computer Vision—ECCV’96.Heidelberg,Berlin:Springer,1996:709 -720
[10]Xue X,Meng C,Jia Y.An improved method for terrain mapping from descent images[C]//Foundations of Intelligent Systems.Heidelberg,Berlin:Springer,2012:547 -555
[11]Li R,Ma F,Xu F,et al.Mars rover localization using descent and rover imagery-result of the field test at Silver Lake,CA[C/CD]//ASPRS Annual Conference.Washington DC:ASPRS,2000:22-26
[12]Ma F,Di K,Li R,et al.Incremental mars rover localization using descent and rover imagery[C/CD]//ASPRS Annual Conference,St.Louis,Mo:ASPRS,2001:25 -27
[13]Xiong Y,Olson C F,Matthies L H.Computing depth maps from descent images[J].Machine Vision and Applications,2005,16(3):139-147
[14]裴明濤,賈云德.攝像機沿光軸運動下的場景三維重建[J].計算機輔助設計與圖形學學報,2005,17(3):534-539
Pei Mingtao,Jia Yunde.3d reconstruction under camera motion along optic axis[J].Journal of Computer Aided Design and Computer Graphics,2005,17(3):534 -539(in Chinese)
[15]張大志,王勇濤,田金文,等.基于單目視覺系統的遠距離場景重建算法研究[J].宇航學報,2008,29(1):289 -294
Zhang Dazhi,Wang Yongtao,Tian Jinwen,et al.Efficient 3D reconstruction using monocular vision[J].Journal of Astronautics 2008,29(1):289 -294(in Chinese)
[16]Meng C,Zhou N,Xue X,et al.Homography-based depth recovery with descent images[J].Machine Vision and Applications,2013,24(5):1093 -1106