黃政
(四川大學計算機學院,成都 610065)
在當今很多應用場景中,平面像素信息特征往往難以滿足系統功能實現的需要。更多的研究人員把信息描述記錄向三維拓寬,在三維重建中,有許多方法基于視覺理論,結合圖像處理技術,用各類數字傳感器獲取物體的三維信息[1]?,F如今有不少三維重建技術,結合各類理論方法,計算實現立體視覺模型的建立。
立體視覺作為空間物體三維重建的一種方法,三維重建包括主動視覺和被動視覺[1]。傳感器相關技術實現的主動視覺除外,被動視覺中從相機數目上分為,單目視覺、雙目視覺和多目視覺法;根據匹配方法原理上,又分為基于區域的匹配、基于特征描述的匹配和基于規則代價估計的匹配方法等。SLAM技術也是立體視覺在一定條件情形下的發展較廣闊的應用場景。
單目視覺中,單視點的單幅圖像重建法,由于如今神經網絡技術的發展,通過二維特征信息(包括紋理、明暗度等信息)和周圍像素點信息之間的關聯性,也能在大部分的情境下能做出預測推斷[2]。單目視覺中的多幅圖可以通過對相機自標定,來滿足大規模的場景需求,但仍對源圖像信息的要求較大,同時匹配重建開銷較大[3]。
雙目視覺法則是通過對極幾何把問題轉化為三角測算問題上來,之后的三目視覺法,多目視覺法則是對于雙目視覺匹配中的差異性問題放大來看和極線矯正中邊緣畸變較大等問題做進一步改進修正。
在各類被動視覺體系中,基本包括基于特征點和特征區域的匹配,然后通過一定的規約完善策略來實現全局的最優匹配結果。對于特征點匹配來說,匹配效率較高,同時對于部分沒有細致紋理特征分布的區域來說需要通過擬合來實現深度預測,而對于區域來匹配的方法來說,則計算量往往較為龐大,在視差范圍內的區域均可作為候選區域。
對于各類匹配策略來看,如基于區域相似度匹配的方法,基于特征描述的匹配方法等,存在局部區域描述為非映射適應性的差異。本文的重心在于雙目視覺法系統中的匹配方法,給出有效的方法算法,來逐步減小各對應區域描述信息之間的差異,提高匹配率,同時,提升深度點云的細密度。
在雙目視覺體系中,較為重要的一個理論就是把對極幾何應用到場景中去。因而,在雙目視覺場景中把極線約束規約到左右視圖中的過程也是十分必要的。首先需要對左右視點相機做標定和校準。
首先,呈像平面到相機坐標系的關聯,可從圖1中表述。

圖1 呈像平面到相機坐標系
而相機內部的參數,往往由生產相機廠商在一定容差下產生的微小誤差,以及結合相機的焦距來實現計算估計的εx,εy。式(1)為呈像平面坐標到相機坐標的關系:

同時,單獨每個相機坐標系關聯世界坐標的關系又可以通過旋轉矩陣R和平移矩陣T來實現。R為3×3的旋轉矩陣,T為3維向量的平移矩陣。則相機坐標(xc,yc,zc)與世界坐標系(Xw,Yw,Zw)的關系即可由式(2)得出:

由于相機透鏡的結構特征,或多或少的會在呈像過程中引入成像畸變,仍然需要對相機的畸變影響做一定的校正。又由于透鏡中心是中心對稱的,所以在這里考慮一級和二級的徑向畸變k1(x2+y2)+k2(x2+y2)2,結合(1)式,可得到式(3)。通過對多組棋盤圖源數據的角點提取迭代計算誤差后,最小二乘法計算徑向畸變系數,能對相機進行畸變的矯正,以減少實驗過程中的偏差[4]。最后將從成像像素坐標到世界坐標的映射關系參數進行優化,最小化參數值[4]。通過該流程對雙目視覺系統中的兩個視點相機進行標定和校準,若兩相機相對位置有所固定,稍有不同的就是在標定過程中可以通過同一空間位置不同視點的角點提取來計算兩相機的相對Rltor,Tltor向量。這也是在極線矯正中可以用到的。


在經過相機的初步標定和校準過后,需要把雙目視覺的左右源圖矯正成同一方向的視圖,從而使用對極幾何中的理論,提供更多的信息以便匹配過程的使用。如圖2,在極線約束條件下,Pl,Pr,Er,El共面,Pl與Pr分別為世界坐標下P點在左右相機的成像點。即只需在另一面視圖找到源點對應的極線,在其上搜索匹配點。

圖2 雙目視覺系統
常見的雙目視覺中相機光軸往往存在一定角度,通常將相機視圖中的極線校正為平行以便處理,即對左右視圖均做一定的單應變換。這里采用Bouguet算法[5]作為極線矯正算法。這是一種使得投影次數最少,重疊面積比最大(或信息可用率最大)的求解方式。過程1,1,1中的左右相機標定中,雙目相機的相對位置Rltor,Tltor參數即可在此處使用。校正后的圖像具備以下兩個特征:
(1)對應的點的垂直坐標一致,這里即可保證在搜索區域或特征描述子的中心位置的點所在對應極線上的中心位置一致;
(2)由于左右相機的焦距有所差異,所以左右校正后圖像存在一定尺度差異。
對于1特征中的信息,即校正后圖像保證的信息是縱坐標一致,而坐標的差異用以計算深度信息,這即是本文引言中提及的類如特征區域方法和特征描述子方法中存在的由于物體表面深度信息差異帶來的非映射適應性解決方案,不少學者對其進行了一定程度的仿射變換修正,但和實物區域的曲面分布仍存在一定誤差[6-8]。對于2特征中的問題,不少論文結合尺度金字塔的建立對左右相機視圖做了一定尺度適應性處理[9]或在匹配過程中使用ASIFT諸類方法來實現。
基于特征區域的匹配也可以叫做基于灰度信息的匹配,是較為常用的匹配方法,原理基本是通過對圖像特征進行分析,計算獲取一定參數,然后對兩圖區域塊進行相似度的計算匹配,優化以達到最優。該方法由粗匹配到細匹配的過程到對區域進行塊分割,再到應對旋轉不變性,仿射不變性的區域灰度信息匹配。如圖3所示,當把左圖作為初始圖時,左圖中一點P(xl,yl)在右圖作為待匹配圖中在視差d(一定視差范圍內)找到對應匹配點(xr,yr),在極線校正后的圖中,可以確定左圖中區域框上下邊對應點仍然在右圖區域框上下邊對應極線上(不考慮極線矯正誤差)。初步的匹配過程中可以假設區域里的像素信息映射到左右視圖是對應的,利用m*n的區域和b的步長來計算。

圖3 基于區域灰度的左右極線矯正后圖的匹配
本文使用的是零均值歸一化互相關ZNCC算法,因為其對光照條件具有一定的魯棒性。式(4)位ZNCC算法相關度計算公式。當ZNCC取值范圍為[-1,1],極值點表示匹配度越佳。通過改進的二次曲面擬合亞像素匹配[10],可以計算左圖(xl,yl)中心位置映射相關的右圖區域中心位置(xr,yr)。

其中L,R分別為左右圖對應位置上的像素信息。
亞像素的匹配擬合計算得到的結果,如圖4所示。

圖4 亞像素匹配的區域視差信息(每個區域內對應的位置d+△d)
在第一次匹配完成后,記錄每個左圖初始圖計算獲得的ZNCC相關度極值和浮點精度視差d(xl,yl),并以此建立初步的深度信息圖(三維深度點云圖),當匹配完成后,可以根據左右視圖橫坐標的差異利用三角幾何計算深度距離Zc,在點云圖的基礎上進行過濾,平滑曲面,得到局部連續的三維曲面,同時可以確定左視圖中連續的圖割區域。同時得到進一步視差映射關系[xr,yr]=[F(xl,yl)l,G(xl,yl)l],其中關系F,G因深度圖像存在前后景差異使得映射不連續。因而考慮一定鄰域連續區域分段進行映射適應性曲面擬合計算Jacobi函數(即以映射前左圖的區域矩形為標準,需要矩形內的點映射到連續曲面上)。其中Jacobi函數為式(5)。

之后改進ZNCC相關度計算公式為式(6)重新計算相似度,重復上述過程,在亞像素的精度上繼續計算區域塊d視差精度上的細密視差差異,直到到達迭代次數。

在雙目視覺的極線矯正系統中,由于部分圖像的紋理信息較為疏散,導致物體表面對應位置的匹配綜合各類誤差效果,不能得到很好的效果。對于基于區域灰度的匹配策略和特征的匹配策略,往往選定的區域框選和特征描述子,在左右視圖中的映射關系由物體曲面特征關系,并不呈現放射變換,或在基于特征的匹配過程中,連續曲面的分布表達沒有有效地運用起來。通過加入映射適應性參數的調配,能夠有效地把每次的匹配結果表述給下一次迭代過程,讓物體紋理之間的深度預測分布更擬合物體曲面的紋理關系。
本文給出了基于區域匹配策略的雙目視覺中應對映射適應性分布曲面擬合方法,該算法對于實際預測物體的分布更真實的調用了真實物體紋理區域的信息,具有一定的理論意義和實際意義。