陳 曦,張曉林
(中國科學(xué)院 上海微系統(tǒng)與信息技術(shù)研究所,上海200050)
基于雙目立體視覺的三維拼接和融合方法
陳 曦,張曉林
(中國科學(xué)院 上海微系統(tǒng)與信息技術(shù)研究所,上海200050)
為了獲得更為全面的三維信息,本文提出了基于雙目立體視覺圖像的三維拼接和融合的解決方法,并且完成了算法的實現(xiàn)。本方法僅使用雙目圖像作為輸入,完成了高效的空間轉(zhuǎn)換,并側(cè)重于利用重投影融合和場景信息建模的方法對空間開銷的控制,提高了處理的效率。同時,為了方便三維信息的觀察和效果顯示,對三維數(shù)據(jù)進(jìn)行了可視化。經(jīng)實驗證明,本方法不僅能夠用于拼接和融合三維數(shù)據(jù),更能較好地用于顯示三維數(shù)據(jù)。
三維數(shù)據(jù);拼接;融合;立體視覺
目前,在計算機視覺領(lǐng)域,越來越多的高精度三維重建方法以及實時定位和地圖構(gòu)建(SLAM)[1]算法正在被提出用來對三維世界進(jìn)行描述和分析。在計算機圖形領(lǐng)域,快速和精細(xì)的三維建模與逼真的人機交互使得三維模型帶給人超越真實的感受。自動駕駛[2]、機器人自主行走[3]、虛擬現(xiàn)實[4]和增強現(xiàn)實等應(yīng)用場景中[5-6],三維數(shù)據(jù)被廣泛地用來滿足各種需求。三維數(shù)據(jù)的拼接與融合是對三維數(shù)據(jù)進(jìn)行處理和建模抽象的重要步驟。通過三維數(shù)據(jù)的拼接與融合,局部三維數(shù)據(jù)得以整合,可以得到全面反應(yīng)采集對象特征的全局模型。
三維數(shù)據(jù)的獲取方式有很多,包括主動式的方式,如激光[7]、紅外測量[8];也包括被動式的方式,如視覺系統(tǒng)測量。主動式的方式通常可以獲得較為準(zhǔn)確的深度信息。然而,由于缺乏被測量對象的紋理信息,在三維拼接和融合中難以借助紋理信息對深度信息進(jìn)行更好的處理。被動式的方式中,尤其是針對于視覺系統(tǒng)的三維拼接與融合,可以有效的利用紋理信息對拼接和融合進(jìn)行促進(jìn)。在自動駕駛,機器人自主行走領(lǐng)域,使用視覺系統(tǒng)對地圖信息進(jìn)行重建,利用三維拼接和融合技術(shù)得到信息更為全面的地圖,可以為后續(xù)的場景識別與定位,障礙物判斷提供基礎(chǔ)。
在能夠重建三維信息的視覺系統(tǒng)中,雙目立體視覺系統(tǒng)[9]了很廣泛研究和應(yīng)用。獲取景物的三維信息的方法是使用兩個視點觀察同一景物,以獲取在不同視角下的圖像,通過計算兩幅圖像的對應(yīng)像素的位置偏差(即視差)配合三角測量原理[10]。在獲取三維信息后就可以利用本文的方法進(jìn)行高效地、低空間開銷地三維數(shù)據(jù)的拼接和融合。
三維數(shù)據(jù)的拼接是將獲取到的三維數(shù)據(jù)進(jìn)行空間轉(zhuǎn)換,統(tǒng)一到相同的空間內(nèi)的過程。對于三維數(shù)據(jù)的獲取,在文中采用了基于雙目立體視覺的大規(guī)模有效立體匹配方法獲得局部的三維信息[11]。在拼接時,結(jié)合雙目視覺系統(tǒng)的特性,利用圖像的特征,文中采用幀間的運動估計的策略[12]來計算相機的運動從而得到空間轉(zhuǎn)換的關(guān)系,能夠達(dá)到準(zhǔn)實時處理速度。具體如下:
第一步,使用角點和區(qū)域特征雙目圖像進(jìn)行特征提取,并用sobel算子作為前后左右?guī)奶卣髅枋鲎?,進(jìn)行特征的匹配。
第二步,對匹配好的特征進(jìn)行聚合,使其數(shù)目減少,并盡量均勻分布在整幅圖像上。使用立體視覺的標(biāo)定的相機內(nèi)參,假設(shè)沒有畸變,構(gòu)建出如公式(1)所示的三維模型。
其中,(u v 1)T是當(dāng)前圖像的齊次坐標(biāo),f是焦距,(cu,cv)為主點的坐標(biāo),R(r)=Rx(rx)Ry(ry)Rz(rz)旋轉(zhuǎn)矩陣,t=(txtytz)T為平移向量,前序三維點坐標(biāo)X=(x y z)T,s為以左攝像機為基準(zhǔn)的基線長度。
現(xiàn)設(shè) π(l)(X;r,t):R3→R2是由(1)建立的映射,將一個三維點X映射為一個左圖像平面上的一個像素x(l)i∈R2。 同理,令 π(r)(X;r,t)為到右圖像上的一個映射。使用高斯-牛頓優(yōu)化,針對于空間轉(zhuǎn)換參數(shù)(r,t),迭代最小化公式(2)。
第三步,使用一個標(biāo)準(zhǔn)卡爾曼濾波器,并做了連續(xù)加速假設(shè)。我們首先獲得了速度向量v=(r t)T/Δt,Δt為幀間時間。狀態(tài)方程由下給出:
因為可以直接觀測ν,輸出方程化為:
這里,a代表加速度,I為一個6階的單位陣。ε和ν各自代表高斯過程的測量誤差。
通過迭代優(yōu)化,通過方程1可以得到相機的運動的旋轉(zhuǎn)平移矩陣(R(r)t)。 在齊次坐標(biāo)下,此矩陣可以表示為
相機是三維數(shù)據(jù)的局部坐標(biāo),得到局部坐標(biāo)轉(zhuǎn)換關(guān)系后Hc,可以得到坐標(biāo)中的三維數(shù)據(jù)的對應(yīng)的轉(zhuǎn)換關(guān)系Hp為:
通過三維數(shù)據(jù)的對應(yīng)轉(zhuǎn)換關(guān)系Hp,可以將三維數(shù)據(jù)統(tǒng)一到初始相機所在的坐標(biāo)系中。
記初始幀為第0幀。用基于運動估計的方法計算出空間轉(zhuǎn)換矩陣如表1所示。
表1 空間轉(zhuǎn)換結(jié)果示例
在對三維數(shù)據(jù)進(jìn)行了空間轉(zhuǎn)換后,所有三維數(shù)據(jù)都處在世界坐標(biāo)為初始相機坐標(biāo)的坐標(biāo)系下。三維數(shù)據(jù)需要進(jìn)行融合以達(dá)到重疊部分?jǐn)?shù)據(jù)冗余去除并且光滑平順的目的。最常用的方法是光束平差法(Bundle adjust)[14]。光束平差法后續(xù)需要解決優(yōu)化問題,因而在時間和空間上的開銷過大。在本方法中,相機模型和各幀之間的空間轉(zhuǎn)換都已求得,因此采用將前序三維信息投影至當(dāng)前幀所在的圖像平面進(jìn)行融合的算法。這種算法更為快速,而且可以消除一定程度上的隨機噪聲,非常適合于對實時性有所要求的三維數(shù)據(jù)融合。
首先,利用相機模型和空間轉(zhuǎn)換矩陣將前序三維數(shù)據(jù)投影至當(dāng)前圖像平面,即將三維數(shù)據(jù)降維成二維數(shù)據(jù)。在這里重寫三維數(shù)據(jù)到圖像平面的映射公式:
其中,(xprevyprevzprev1)T是之前幀中的三維點的齊次坐標(biāo),(up2n,vp2n)是重投影到當(dāng)前幀的圖像平面的坐標(biāo)。
第二步,投影后在視差圖D上找到對應(yīng)視差D(up2n,vp2n),作為三維信息是否有效的標(biāo)準(zhǔn),有效的三維點(xprev,yprev,zprev,1)T可以作為融合的備選點。
第三步, 對于有效的之前幀中的點(xprev,yprev,zprev,1)T,通過 D(up2n,vp2n)找到在對應(yīng)的當(dāng)前幀中的點(xprev,yprev,zprev,1)T,計算兩點間的歐式距離:
第四步,在某種距離范圍內(nèi)的點,即deu<dthreshold可以進(jìn)行融合,dthreshold是距離閾值。融合的策略是使用重疊點的平均值代替重疊點。如果距離較遠(yuǎn)就不進(jìn)行融合而作為新的數(shù)據(jù)加入當(dāng)前幀中,并從之前幀去除。
綜合精度和效率進(jìn)行融合之后,三維數(shù)據(jù)重疊部分的數(shù)據(jù)進(jìn)行了精簡。經(jīng)過對10幅圖像的實驗可以看到,在相鄰幀之間數(shù)據(jù)量平均減少了31.05%。記初始幀為第0幀,具體結(jié)果如表2所示。
表2 三維數(shù)據(jù)融合結(jié)果
融合的結(jié)果使用點云來對三維數(shù)據(jù)進(jìn)行可視化表達(dá)。其中融合前的三維數(shù)據(jù)如圖1中(a)所示,暗灰色為第0幀,亮灰色為第1幀。融合后的三維數(shù)據(jù)如圖1中(b)所示,可以看到點云變得更加光滑和平順。將紋理加入點云中,效果如圖3中(c)所示。經(jīng)融合并加入紋理的點云,已經(jīng)能夠較好的重建和表現(xiàn)場景了。
圖1 三維數(shù)據(jù)融合
融合后的三維數(shù)據(jù)可以對其中的場景信息進(jìn)行建模,用來減少冗余的三維數(shù)據(jù)和方便顯示和存儲。針對于室外道路場景,道路的特點包括:可以在一定程度上視為一個平面、道路邊緣大部分是可以近似看作為平行的線段等。目前,主要的道路檢測方法是從原始圖像信息中利用道路的幾何特點和紋理信息檢測方法[15]以及在視差圖中通過對視差圖處理構(gòu)建獲得道路的信息。由于本文的主要目的是減少平坦道路的數(shù)據(jù)開銷,所以主要側(cè)重于對較為平坦且邊緣近似為直線段的道路進(jìn)行處理與擬合。
首先,使用邊緣線段檢測形成二維道路描述子。文中基于概率霍夫變換對道路邊緣線段進(jìn)行了檢測,形成了一個多邊形道路描述子。(xp,yp)為二維道路描述子中的點,{P|P?R2}為二維描述子點集,包括多邊形內(nèi)部點{mp|mp?P}和多邊形邊緣點{np|np?P},多邊形頂點{k|k∈np}。二維道路描述子如圖2中(a)圖白色區(qū)域所示。
第二步,將二維的道路描述子使用三角測量法映射到三維空間中形成三維道路描述子 {Q|Q?R3}。此時三維道路描述子邊緣由兩部分組成:一部分是由二維道路描述子確定的邊界{nq|nq?Q};另一部分是二維描述子內(nèi)部點由于二維的道路描述子邊界視覺測量值缺失轉(zhuǎn)換而成邊界點 {nqa|nqa?Q},如圖2(b)所示。
第三步,確定三維道路描述子的頂點,用三角形網(wǎng)格進(jìn)行擬合。提取頂點策略如下:
1)二維描述子中的頂點k映射到三維后仍然存在的點{kq|kq∈nq};
圖2 道路描述子
2)在三維描述子邊緣進(jìn)行搜索,新的頂點{kqa|kqa∈nqa},將二維描述子的邊緣映射np到三維中得到點集 nq,則新的頂點{kqa|kqa∈nqa∩nq};
3)去除 1)和 2)中的重復(fù)頂點得到{kf|kf∈kqa∪kq}。
第四步,對后續(xù)圖像進(jìn)行描述子頂點進(jìn)行提取和處理。采用增量式方法,若后續(xù)頂點在之前頂點的范圍之內(nèi)就不進(jìn)行繪制,若后續(xù)頂點在之前頂點范圍外則進(jìn)行繪制,效果如圖3(a)(b)所示。加入拼接和融合的其他場景信息如圖3(c)所示。
圖3 路面網(wǎng)格擬合
文中基于雙目視覺系統(tǒng)的特點,提出了基于雙目圖像的拼接和融合的方法,對場景進(jìn)行了建模和重建。相比于傳統(tǒng)的三維拼接與融合方法,本方法更多的使用了圖像的特征,使得三維拼接與融合的過程更加可靠和穩(wěn)定。特別的,本方法利用重投影融合以及路面場景建模對空間開銷進(jìn)行了極大的縮減,有利于后續(xù)對于特大場景的重建和存儲,對于汽車自動駕駛和機器人自主行走的地圖建立奠定了基礎(chǔ)。
[1]Fuentes-Pacheco J,Ruiz-Ascencio J,Rendón-Mancha J M.Visual simultaneous localization and mapping:a survey [J].ArtificialIntelligence Review,2015,43(1):55-81.
[2]Fernandes L C,Souza J R,Shinzato P Y,et al.Intelligent robotic car for autonomous navigation:Platform and system architecture[C]//Critical EmbeddedSystems(CBSEC),2012SecondBrazilian Conference on.IEEE,2012:12-17.
[3]H?ne C,Zach C,Lim J,et al.Stereo depth map fusion for robot navigation[C]//Intelligent Robots and Systems(IROS),2011 IEEE/RSJ International Conference on.IEEE,2011:1618-1625.
[4]Westwood J D.Real-time 3D avatars for telerehabilitation in virtual reality[J].Medicine Meets Virtual Reality 18:NextMed,2011(163):290.
[5]Van Krevelen D W F,Poelman R.A survey of augmented reality technologies,applications and limitations [J].International Journal of Virtual Reality,2010,9(2):1.
[6]Benko H,Jota R,Wilson A.MirageTable:freehand interaction on a projected augmented reality tabletop[C]//Proceedings of the SIGCHI conference on human factors in computing systems.ACM,2012:199-208.
[7]陳田.激光測量點云的數(shù)據(jù)處理方法研究 [J].激光與光電子學(xué)進(jìn)展,2011,48(9):72-76.
[8]彭祎帆,陶毅陽,于超,等.基于紅外結(jié)構(gòu)光的三維顯示用交互裝置[J].光學(xué)學(xué)報,2013(4):108-114.
[9]羅桂娥.雙目立體視覺深度感知與三維重建若干問題研究[D].長沙:中南大學(xué),2012.
[10]靳盼盼.雙目立體視覺測距技術(shù)研究[D].西安:長安大學(xué),2014.
[11]Geiger A,Roser M,Urtasun R.Efficient Large-Scale Stereo Matching[C]//Asian Conference on Computer Vision.Springer-Verlag,2010:25-38.
[12]Fraundorfer F,Scaramuzza D.Visual odometry:Part i:The first 30 years and fundamentals[J].IEEE Robotics and Automation Magazine,2011,18(4):80-92.
[13]Fraundorfer F,Scaramuzza D.Visual odometry:Part II:Matching,robustness,optimization,and applications[J].Robotics&Automation Magazine,IEEE,2012,19(2):78-90.
[14]Salas-Moreno R,Newcombe R,Strasdat H,et al.
Slam++:Simultaneous localisation and mapping at the level of objects[C]//Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition,2013:1352-1359.
[15]Kong H,Audibert J Y,Ponce J.General road detection from a single image [J].Image Processing,IEEE Transactions on,2010,19(8):2211-2220.
3D registration and fusion based on binocular stereo system
CHEN Xi,ZHANG Xiao-lin
(Shanghai Institute of Microsystem and Information Technology,Shanghai 200050,China)
For getting more comprehensive 3D information,this paper presents a registration and fusion method based on binocular stereo vision and completes algorithm implementation This method uses only binocular image as input and completes efficient space transformation,focused on the use reprojection fusion and scene information modeling to control space cost as well as improving efficiency.Meanwhile,the method visualizes 3D data for the convenience of observation.The experiments show that this method can be used for 3D registration and fusion as well as display 3D data.
3D data; registration; fusion; stereo vision
TN919.82
:A
:1674-6236(2017)14-0119-04
2016-05-13稿件編號:201605132
中國科學(xué)院戰(zhàn)略性先導(dǎo)科技專項(B類)(XDB02080005);上海張江國家自主創(chuàng)新示范區(qū)專項"張江科技成果轉(zhuǎn)化集聚區(qū)"項目(Y55SYB1J01)
陳 曦(1990—),女,陜西寶雞人,碩士研究生。研究方向:計算機視覺、信號處理。