趙洪田
(四川大學計算機學院,成都 610065)
多目立體視覺(Multiple View Stereo,MVS)三維重建的目的是通過多幅圖像恢復出場景的三維模型,它是計算機視覺領域中一個非常重要的研究課題,并已受到越來越多的關注。由文獻[1]知MVS算法可以分為4類:基于體素的方法[2],基于特征點擴展的方法[3],基于表面演化的方法[4]和基于深度圖融合的方法[5-6]。其中基于深度圖融合的三維重建算法,先計算單張圖片的深度圖,然后利用每幅圖像對應的攝像機參數還原三維模型,這類方法具有較高的靈活性,適合大多數場景的重建。
作為許多三維重建系統的重要組成部分,多視圖立體匹配受到越來越多的關注[7-8]。在多視圖立體匹配中優化方式可以分為局部優化、半全局優化和全局優化?;诰植康拇鷥r優化算法具有計算量小的優點,但往往是局部最優的,以致匹配結果精確度很低而不夠可靠;基于全局的優化算法往往是基于復雜計算的優化(如置信度傳播算法,圖割算法),雖然可以獲得比較理想的匹配結果、但是這些方法耗時、耗內存。文獻[9]中提出了一種半全局匹配優化算法(SGM),通過在待匹配像素點多個方向上作動態規劃來近似二維圖像全局優化,確定最終視差。在構建能量函數,SGM引入平滑約束以保證整體匹配結果一致性,同時逐像素匹配,可以得到密集可靠的匹配結果。因此,我們可將此方法應用在多視圖代價聚合中。另外,由于數據集存在規模巨大、尺度多變等特點,在進行多幅圖像立體匹配時會更加繁瑣,場景重建比較耗時。本文提出一種基于Plane Sweep框架的并行半全局深度圖計算和優化方法,能比較高效地生成深度圖以完成稠密三維重建。該系統輸入為標準圖像序列及該圖像集對應的Bundler[10]標定結果,輸出為3D模型稠密點云。
如圖1所示,給定兩幅圖像,參考圖P1和相關圖P2,對應的攝像機為C1和C2。掃描平面簇為C1坐標系下不同深度的投影平面。每一掃描平面和P2可定義一個單應矩陣H,H把源圖像P2平面的點集位置與成像儀平面的點集位置相關聯。文獻[11]將P1和P2對應攝像機參數分別定義為{K1,R1,C1}和{K2,R2,C2},并將C1所在的坐標定義為坐標系的原點,掃描平面法向量定義為nT={0,0,1},深度為d的掃描平面可表示為Dd={nT,d},可以得到:

由式(1)計算關于深度為d的掃描平面對應的單應矩陣Hd,P2上變換前的點xk經Hd變換到Dd上后記為yd,k,P1上相應位置上的點記為yk。

使用NCC來計算yd,k和yk間的相似度,并定義兩個像素間的匹配代價為:

在圖像集中為參考圖選擇多幅鄰居圖ρj(j=2,3,4,…,N),按照式(3)計算匹配代價得到ρj,最后定義在各掃描平面上像素匹配代價為:


圖1 掃描平面變換過程
一般基于點之間的匹配很容易受噪聲、光照變換等外部因素影響,且在以上計算時并沒考慮到相鄰像素間的制約關系,因此所得像素匹配代價精度并不高。故本方法接下來使用Semi-Global做優化。
(1)代價聚合
在待匹配像素p處沿著多個方向作動態規劃,采用多個方向匹配代價聚合,一般選擇8個或4個方向。由于是在不同的方向上進行搜索,相比較傳統的動態規劃方法,順序性約束一般難以滿足。因此,在此必須使用類似于掃描線最優算法,聚合方向如圖2所示。

圖2 聚合方向
由文獻[9]知,對于像素p,在r方向上的匹配代價可以定義為:

式(5)中Cost(p,d)為Dd在像素p點由式(4)得到的Cost,ψ1和ψ2分別為懲罰系數。最后一項為防止累積匹配過大而減去上一像素點的最小優化代價。最后將各個方向上的優化代價相加,作為該點最終代價,實現代價聚合。

(2)深度賦值
在計算完S(p,d)后,為了減少優化復雜度,我們直接采用 Winner takes all(WTA)算法來選擇最小深度值。

此外,在對匹配代價進行優化時,采取的是對每個像素單獨處理,因此,在本處實現時,利用了GPU并行對算法進行加速,計算效率得到提升。
上述優化在能量優化過程中沒有考慮異常值和遮擋問題,因此難以對遮擋區域賦予正確的深度值;同時不可避免的存在錯誤匹配值。針對上述存在的問題,我們可以通過中值濾波來過濾掉突變點;并通過圖像一致性來檢測遮擋和錯誤匹配,并將檢測出來的點設置為不可靠深度點,最后通過線性插值來填補這些漏洞,以實現后續優化過程。
所提出的方法已經用C++和CUDA實現,其中Plane Sweep框架使用C++在CPU上實現,Semi-Global優化以及濾波這兩個模塊使用CUDA在GPU上實現,其余部分使用C++實現;并且在配有Intel Core i5-7300HQ CPU和8G RAM、NVidia GTX1050 GPU的PC上測試。實驗中各參數設置分別為:掃描平面個數N=128,Semi-Global優化模塊中num(r)=8,ψ1=0.04,ψ2=0.5,濾波窗口為3×3。并在4組相關數據集中測試,它們是Seitz等提供的ET,Kermit和兩組戶外采集的數據lion-p30和lion123。
為了展示本文方法在速度性能上的優越性,將和文獻[6]中的同類深度圖計算方法作比較,統計兩種方法在相同條件下的重建耗時。圖3為對比結果圖,可以看出,本文方法在計算效率上表現出較大優勢。

圖3 本文方法和文獻[6]時間對比
效果作展示,所用數據集為以上四組數據集。

圖4 輸入圖像與對應的輸出點云
針對大場景三維重建中多視圖立體匹配的效率問題,提出了一種新的快速立體匹配方法。通過GPU并行處理解決了影響立體匹配速度的關鍵問題,并設計了一整套相關計算流程。通過和同類方法比較,驗證了該方法的有效性。
最后我們將通過所提多視圖立體匹配算法的重建
[1]Seitz S M,Curless B,Diebel J,et al.A Comparison and Evaluation of Multi-View Stereo Reconstruction Algorithms[C].Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.New York:IEEE Press,2006,1:519-528.
[2]Tabb A.Shape from Silhouette Probability Maps:Reconstruction of Thin Objects in the Presence of Silhouette Extraction and Calibration Error[C].Proceedings of 2013 IEEE Conference on Computer Vision and Pattern Recognition.Portland:IEEE Press,2013:161-168.
[3]Furukawa Y,Ponce J.Accurate,Dense,and Robust Multiview Stereopsis[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(8):1362-1376.
[4]Cremers D,Kolev K.Multiview Stereo and Silhouette Consistency Via Convex Functionals Over convex Domains[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2011,33(6):1161-1174.
[5]Shen Shuhan.Accurate Multiple View 3D Reconstruction Using Patch-Based Stereo for Large-Scale Scenes[J].IEEE Transactions on Image Processing,2013,22(5):1901-1914.
[6]劉怡光,易守林,吳鵬飛等.一種新的大場景三維重建算法[J].四川大學學報(工程科學版),2015,47(6):91-96.
[7]Furukawa Y,Ponce J.Accurate,Dense,and Robust Multiview Stereopsis[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(8):1362-1376.
[8]Bailer C,Finckh M,Lensch H P A.Scale Robust Multi View Stereo[C].European Conference on Computer Vision.Springer Berlin Heidelberg,2012:398-411.
[9]Hirschmuller H.Stereo Processing by Semiglobal Matching and Mutual Information[J].IEEE Transactions on Pattern Analysis and Machine intelligence,2008,30(2):328-341.
[10]Snavely N,Seitz S M,Szeliski R.Photo Tourism:Exploring Photo Collections in 3D[J].ACM Transactions on Graphics(TOG),2006,25(3):835-846.
[11]Shen Shuhan.Accurate Multiple View 3D Reconstruction Using Patch-Based Stereo for Large-Scale Scenes[J].IEEE Transactions on Image Processing,2013,22(5):1901-1914.