謝朝毅 田金文 張 鈞
基于序列圖像的三維表面重建是計算機視覺的一個重要的分支,在軍事、工業(yè)、航天、醫(yī)學等許多領域中具有廣泛的應用,比如航天方面的衛(wèi)星回收,軍事方面的打擊敵方重要軍事目標,工業(yè)領域中的無人機與無人駕駛汽車,醫(yī)學人體器官三維結構等。本文主要研究的是基于單目懸停相機的定軸慢旋空間非合作目標三維表面重建。下面是近年來國內外學者在三維重建領域中的研究與應用。
1992年卡內基梅隆大學的Tomasi和Kanada等[1]在假定相機正交投影的條件下通過仿射變換解算出物體三維結構和相機位姿,他們通過光流跟蹤法進行特征匹配,但是這一模型的前提是目標尺寸遠小于目標到相機的距離,光流法提取的特征點是稀疏點,所以重建結果整體感不強。1996年Debevec等[2]通過先驗的粗略目標幾何模型和相機運動參數,通過使得反投影像素誤差最小化得到目標的精確三維結構,并且通過相關的紋理技術增強了視覺效果,但是先驗的目標幾何模型和相機運動參數是它的不足之處。2003年Yi Ma等[14]出版了一本三維重建的書籍,詳細介紹了運動恢復結構算法(SFM)的各個過程;2015年Changchang Wu等[13]開發(fā)了一個名叫VisualSFM的軟件系統(tǒng),將SFM算法生成一個人機交互的軟件,在無需相機標定的情況下,即可對無序圖像進行三維重建,主要的不足之處在于耗時太長,算法的穩(wěn)定性不夠。2007年,SLAM(simultaneous localization and mapping)方向研究先驅A.J.Davison等[8]提出了基于EKF的實時性單目相機定位與地圖構建(MonoSLAM);其最大的優(yōu)點是基于視頻實時三維重建,不足之處是精度不高,且是稀疏點重建。2015年Artal等[10]提出了ORB-SLAM,是現代特征點SLAM的一個高峰,提取的是ORB點特征,并提出了回環(huán)檢測的環(huán)節(jié)提高了重建精度,但是ORB-SLAM是需要三個線程同時進行所以移植到嵌入式端有一定的困難,另一個不足之處就是建立的是稀疏三維點;2014年J.Engle等[10~11]提出了LSD-SLAM,標志著單目直接法在SLAM領域中的成功應用,作者有創(chuàng)見地提出了像素梯度與直接法的關系,以及像素梯度與極線方向在稠密重建中的角度關系,實現了半稠密化地圖重建。
本文的主要工作分為兩個部分:一是三維表面重建;二是重建精度分析。三維表面重建是根據運動恢復結構算法(SFM)解算相機位姿和重構自旋目標三維表面,然后根據解算的結果與真值之間進行比較,創(chuàng)新性地提出了邊緣完整度的概念,得到三維重建算法精度評判標準。
通過單目懸停相機對失穩(wěn)慢旋非合作目標(主要是不可控的衛(wèi)星等)拍攝的序列圖像,首先解算出該目標的運動狀態(tài),然后重建出目標的三維表面,要求運動狀態(tài)中旋轉角度的誤差不能超過0.5°,表面重建完整度達到80%以上。因為受到光照和運動噪聲等因素的影響,原始序列圖像首先需要進行預處理,這樣得到的圖像可以更精確、更多地提取到目標的特征信息用于三維重建。然后根據序列圖像的先后次序提取各圖像上的特征點,并進行相鄰圖像之間的兩兩匹配,通過基礎矩陣得到兩兩之間的相對運動關系并求解出相應的三維稀疏點。接著通過使得反投影誤差平方最小化迭代得到目標的稀疏點云與相機相對于目標的運動參數估計。最后通過點片面擴展模型(PMVS)獲得目標的稠密點云,然后通過PCL庫中泊松表面和貼紋理等技術得到目標的三維表面。本文的流程示意圖如圖1。
圖1 三維重建過程示意圖
圖像預處理主要包括圖像直方圖均衡化,圖像分割,圖像去噪等過程,本文采用局部直方圖均衡化增強圖像對比度,然后進行中值濾波去噪。
1999年David Lowe提出 SIFT(Scale Invariant Feature Transform)算法[13]。基于SIFT提取的特征點具有尺度不變性、旋轉不變性和光照條件不變性。SIFT算子首先利用尺度空間尋找極值點,并計算極值點的精確位置和所在的尺度。然后確定主方向,從而實現對尺度和旋轉的不變性。最后,利用梯度方向直方圖構造特征向量,從而保證光照條件不變性。當然SIFT直接匹配是需要消耗大量匹配時間的,所以選取的是k-dtree進行匹配,然后再利用周華兵博士提出的SIFT誤匹配消除方法[14]可用于SIFT特征點的篩選。
目標上一特征點P在t1時刻坐標為P1,其像點坐標為(u1,v1);目標上同一特征點P在t2時刻坐標為P2,其像點坐標為(u2,v2)。O為目標旋轉軸上的一定點,根據目標點繞自轉軸旋轉建立運動方程如下
其中z1,z2分別為目標上同一特征點P在t1和t2時刻相機坐標系下的Z軸坐標值;K為攝像機的內參數矩陣;R表示自旋目標從t1時刻到t2時刻繞旋轉軸的旋轉變換矩陣。
根據式(1)可以求解旋轉矩陣和旋轉軸上的不動點O,令
則式(1)可以轉化為
由式(2)可得:
令C=b?R,由于目標物上提取的n個特征點,再通過圖像匹配得到相應的一對對匹配點,然后可以得到如下方程:
其中LC表示將矩陣C按照行優(yōu)先拉伸為9×1的矩陣。
式(4)可以通過SVD分解得到相機的旋轉矩陣和平移向量,但是SVD得到的結果有二組解,所以需要通過統(tǒng)計三維點Z軸數值大于零的個數,最大的那組解為真解。
通過2.3的步驟,我們得到了一系列不同坐標系下的三維點和相機的位姿參數,現在需要做的是將這些三維點云融合在同一個坐標系下,我們采用的是反投影誤差最小化,優(yōu)化相機位姿參數和三維點坐標,然后根據修改后的三維點和相機位姿通過ICP算法進行三維點融合。最小化反投影誤差如下式所示:
其中m,n分別表示相機的個數和三維點總個數,uij表示第 j個點在第i個相機中的像點坐標,wij表示第 j個點在第i個相機中是否有投影點,有的話為 1,否則為 0,Ri,ti,Xj分別表示第 i個相機的相對于基礎坐標系(一般情況下以初始的圖像對中左圖相機為基礎坐標系)的旋轉矩陣和平移向量,第 j個三維點在基礎坐標系下的坐標值。令eij=uij-K(RiXj+ti),∑-1[ ]wij即所有的wij組成的m×n的矩陣,則式(5)可以改寫成:
對 eij利用李群李代數的知識,即eij=uij-K exp(ξi∧)Pj,求偏導,令 P′=(RiXj+ti),得到如下兩個等式:
然后這個迭代問題可以通過LM算法或者高斯牛頓法等迭代優(yōu)化算法求解。
本文通過第2章中的五個步驟得到的最終結果如圖2~3。
圖2 密集重建三維點云圖
圖3 密集重建后泊松表面三維重建圖
通過上述兩圖可以看出,該目標的三維表面可以說重建得非常好,不管是主體框架還是紋理等特征都與真實的物體相差不多。下面是對重建的結果進行定量分析的過程和結果。
自轉即空間中一點P繞著空間中任意一條轉軸A旋轉θ變成點P′。根據自旋理論,構建旋轉矩陣如下:
最終可得旋轉矩陣與旋轉角度的關系:1+2cosθ=tr(G)。
統(tǒng)計連續(xù)的前31張圖像,總共旋轉的角度為55°,可以知道相鄰兩幀圖像之間的旋轉角度實際值為1.83°。表1是所有參與解算的相機旋轉角度解算的結果。
根據圖像所給參數,圖像的尺寸大小為2592×1944(實際圖像為中心對稱裁剪,實際大小為1793×921),相機焦距為25mm,像元尺寸為2.2μm,相機到旋轉中心的距離為10.5m(理論上此時電池板應該平行于成像面)一個像元對應一個像素,因此一個像元對應的物體尺寸即為一個像素所表示的物理尺寸。根據三角關系。則一個像素所代表的物理尺寸為:D=d(f+L)f,代入上述數值,可計算出:D=0.00092422m。
假設點P1重建后的點為點P1′,點P2重建后對應的點為點P2′。首先統(tǒng)計原始圖像上直線P1P2上的所有像素點數sum1,然后統(tǒng)計重建點云圖中直線P1′P2′上的所有像素點數sum2。圖像上分辨率為 N m/像素。則重建前后像素點差為sum=sum2-sum1,重建前后的直線長度相差距離為:dis=sum×N,直線上每一像素點引起的距離誤差為:AveDis=dis/sum1;若重建后,兩直線上的像素點數相同,那么重建后像素點數相差sum=0.5。則通過計算得到三個方向上的重建精度:水平向:0.000055m;豎直向:0.00075m;距離向:0.000055m。
邊緣完整度是指重建后的邊緣上的點個數占實際圖像中邊緣上的像素總個數的百分比,我們通過Canny算法獲取圖像邊緣,然后統(tǒng)計某個矩形區(qū)域內目標邊緣點的像素個數,得到1089個邊緣點,而泊松表面重建后的圖Canny邊緣檢測在相同矩形區(qū)域的邊緣點個數為876,所以得到邊緣完整度為80.44%。
本文主要介紹了基于視覺的三維重建算法研究與評估。包括空間目標圖像分割與圖像增強的圖像預處理方法,介紹了穩(wěn)定的點特征提取與匹配跟蹤技術——SIFT和相應的誤匹配消除方法,最后得到了基于單目懸停相機的定軸慢旋目標三維深度解算及表面重建結果,并對三維表面重建的精度進行了評估。
[1]Carlo Tomasi,Takeo Kanade.Shape and motion from im?age streams under orthography:a factorization method[J].International Journal of Computer Vision.1992,9(2):137-154.
[2]Y.Gao,A.L.Yuille.Exploiting Symmetry and/or Manhattan Properties for 3D Object Structure Estimation from Single and Multiple Images[C]//In CVPR,2017:724-731.
[3]P.E.Debevec,C.J.Taylor,and J.Malik.Modeling and ren?dering architecture from photographs:A hybrid geometry?and image-based approach[C]//In SIGGRAPH96,Au?gust 1996:11-20.
[4]Y.Gao and A.L.Yuille.Symmetry non-rigid structure from motion for category-specific object structure estimation[J].In ECCV,2016,26(5):25-45.
[5]Olivier Faugeras,Luc Robert.3-D Reconstruction of Ur?ban Scenes from Image Sequences[J].Computer Vision and Image Understanding.1998,69(3):292-309.
[6]M.Pollefeys,D.Nister.Detailed Real-Time Urban 3D Re?construction from Video[J].International Journal of Com?puter Vision.2008,78(2):143-167.
[7]S.Vallerand.system withpositions.M.Kanbara,N.Yokoya.Binocular vision-based augmented realityan increased reg?istration depth using dynamic correction of feature Virtual Reality[C]//2003.Proceedings.IEEE,2003,271-272.
[8]A.Davison,I.Reid,N.Molton.Monoslam:Real-time sin?gle camera SLAM[J].IEEE Transactions on Pattern Anal?ysis and Machine Intelligence.2007,29(6):1052-1067.
[9] A.Krull,E.Brachmann,S.Nowozin.PoseAgent: Bud?get-Constrained 6D Object Pose Estimation via Reinforce?ment Learning[J].arXiv preprint arXiv:1612.03779,pag?es 1-9,2017.
[10]R.Mur-Artal,J.Montiel,and J.D.Tardos,Orb-slam:a versatile and accurate monocular slam system[J].IEEE Transactions on Robotics, 2017 ,31(5):1147-1163.
[11] J.Engel, T.Sch?ps, and D.Cremers,Lsd-slam:Large-scale direct monocular slam[M].Springer Interna?tional Publishing,2014,8690:834-849.
[12]J.Engel,J.Sturm,and D.Cremers,Semi-dense visual odometry for a monocular camera[C]//in Proceedings of the IEEE International Conference on Computer Vision,2013:1449-1456.
[13]Enliang Zheng,Changchang Wu,Structure from Motion using Structure-less Resection[C]//IEEE International Conference on Computer Vision ,2015:2075-2083.
[14]Yi Ma,Stefano Soatto.An Invitation to 3-D Vision From Images to Geometric Models[J].SpringerVer?lag,2003,19(108):415-416.
[15]R.Hartley and A.Zisserman,Multiple View Geometry in Computer Vision[J].Kybernetes,2003 ,30(9/10):1865-1872.
[16]D.Lowe.Distinctive image features from scale-invariant keypoints[J].International Journal of Computer Vision,2004,60:91-110.