HSfM Hybrid Structure-from-Motion《學習筆記》


HSfM: Hybrid Structure-from-Motion

Abstract

為了估計初始的相機位姿,SFM方法可以被概括為增量式或全局式。

雖然增量系統在魯棒性和准確性方面都有所進步,在效率上仍是其主要的挑戰。

為了解決這個問題,全局重建系統通過對極幾何圖中同時估計所有相機的位姿,但它對外點很敏感。在這個工作里,我們提出了一個混合式sfm方法在統一的框架下解決效率,准確性和魯棒性的問題。

進一步來說,我們提出一種社區化的自適應的平均方法,首先以全局方式估計相機旋轉,然后基於這些估計的攝像機旋轉,以增量式的方法去計算相機中心。

大量的實驗表明,在計算效率方面,我們的混合方法的執行效果與許多最新的全局SfM方法相似或更好,同時與其他兩種最新的狀態相比,實現了相似的重構精度和魯棒性漸進的SfM方法。

Introduction

SFM技術是指通過一系列圖片估計三維場景結構和相機位姿。它通常包含三個模塊,特征提取和匹配,初始相機位姿估計和BA。根據初始相機姿勢的估算方式不同,sfm可以被籠統的分為兩類:增量式和全局式。

對於增量式方法,一種方法是選擇一些種子圖像進行初始重建,然后重復添加新圖像。另一種方法是首先將圖像聚集成原子模型,然后重建每個原子模型,然后逐步合並它們。

可以說,增量方式是3D重建最流行的策略。然而,這種方法對初始種子模型重建和模型生成方式很敏感。

另外,重建誤差隨着迭代的進行而累積。對於大規模的場景重建,重建的結構可能會發生場景漂移。

此外,反復執行耗時的捆綁調整BA,這大大降低了系統的穩定性和效率。

為了解決這些不足,全局sfm方法在近些年變得更加流行。

對於全局式方法,初始相機的位姿同時從對極幾何圖像(EG)估計,圖的頂點對應圖像,邊鏈接匹配的圖像對,BA只執行一次,這在系統效率和可擴展性方面帶來了更大的潛力。

全局攝像機位姿估計的通用pipeline包括兩個步驟:旋轉平均和位移平均。

對於旋轉平均,它的准確性主要依賴於兩個因素:EG的結構和成對對極幾何的准確性。目前許多文獻僅使對極邊緣的殘差最小化。作為結果,當攝像機分布不佳時,例如Internet數據這些方法有時候效果並不好。

對於位移平均,由於對極幾何僅編碼成對平移的方向(缺少尺度),對於計算相機位置是很困難的。此外,位移估計對特征匹配的外點更加敏感。相比之下,增量式sfm受益於RANSAC方法,可以消除不良的幾何形狀。

因此,我們期望使用增量式和全局式兩者方法的優點。

Contribution

  1. 我們提出了一種新的混合SfM方法,以在統一框架中解決效率,魯棒性和准確性問題。
  2. 提出了一種基於社區的旋轉平均方法,該方法同時考慮了EG的結構和成對幾何的准確性。
  3. 基於估計的攝像機旋轉量,以增量方式估計攝像機中心。對於每次添加的攝像機,攝像機旋轉和固有參數均保持不變,而攝像機中心和場景結構則通過修改后的束調整進行調整。

在我們的hybrid SFM,全局平均旋轉降低了場景漂移的風險以及增量中心估計可提高對嘈雜數據的魯棒性。在已知攝像機旋轉的情況下,僅需兩個場景點即可完成攝像機中心注冊。因此RANSAC方法使我們的方法對異常值十分魯棒。並且在每個攝像機添加的步驟中可以校准更多攝像機。另外,由於在添加的每個攝像機中場景結構和攝像機中心都得到了改進,因此我們的混合工作中的BA比傳統攝像機快的多。

在實驗中,我們評估了混合SfM系統在連續和無序圖像數據。就重構攝像機的數量而言,我們的方法優於許多最新的全局SfM方法,這表明我們的方法對外點更魯棒。

在重建效率方面,我們的方法的性能與全局SfM方法相似或更好,但其速度比Bundler的並行版本快13倍,比Theia的並行版本快5倍。

增量式SFM

一種重建場景的方法是從二或三張種子視圖開始,然后逐步將新視圖添加到系統中以初始化最終BA。這樣的方法對種子選擇標准很敏感,並且累積的錯誤可能會導致場景漂移。 為了降低累積錯誤,VSFM和COLMAP都建議在圖像添加過程中重新划分軌跡。

另一種方法是先創建原子3D模型,然后合並不同的模型。這種分層方法對原子模型的選擇和模型的增長方案很敏感。

對於大型圖像集合,由於重復激活BA,所有增量方法都會遇到場景漂移和繁重的計算負荷的情況。

全局式SFM

全局式SFM方法同時估計所有相機的位姿,只使用BA一次。相機位姿估計過程主要包括兩個部分:旋轉平均和位移平均。

旋轉平均:

旋轉平均可以同時從成對的相對旋轉估計所有攝像機旋轉,這在許多文獻中都得到了很好的研究。

  • A. Chatterjee and V. M. Govindu. Efficient and robust large- scale rotation averaging. In ICCV, pages 521–528. IEEE, 2013.
  • V. M. Govindu. Lie-algebraic averaging for globally consis- tent motion estimation. In CVPR, pages 1–8. IEEE, 2004.
  • R. Hartley, J. Trumpf, Y. Dai, and H. Li. Rotation averaging. International Journal of Computer Vision (IJCV), 103:267– 305, 2013.
  • D. Martinec and T. Pajdla. Robust rotation and translation estimation in multiview reconstruction. In CVPR, pages 1– 8. IEEE, 2007.
  • K. Wilson, D. Bindel, and N. Snavely. When is rotations averaging hard ? In ECCV, pages 255–270. Springer, 2016.

Martinec建議根據Frobenius范數解決此問題,而Govindu建議將旋轉平均問題轉換為李代數平均。

在此基礎上,結合魯棒的L1優化可獲得更好的結果。

最近,威爾遜發現了兩個影響旋轉估計精度的因素,一個是EG結構,另一個是對極幾何精度,並且建議將它們均勻分布時首先聚集在一起。但是,他們沒有描述基於此理論如何有效地對圖像進行分組和合並。 受此理論分析的啟發,我們提出了一種基於社區的輪換平均方法,該方法可自動確定何時以及如何進行聚類,然后進行貪婪的合並步驟。

位移平均:

許多線性方法提出了通過矩陣分解來求解攝像機位置的方法。 盡管有效,但這些方法對極線幾何外點值敏感。 因此,許多全局式sfm方法首先仔細的過濾了錯誤的邊緣。Zach提出通過循環一致性檢查來過濾邊緣,Wilson提出了一種類似於哈希的方法,稱為1DSfM。然而這種方法需要大量的成對關聯\((O(n^2))\),比起濾波,某些方法通過局部BA或多視點軌跡一致性來細化對極關系。

其他方法可以同時解決場景點和相機中心。 這樣,不僅解決了共線運動問題,而且將所有攝像機融合到相連的平行剛度圖中。

另外,有些方法融合了輔助成像信息以獲得相機中心。盡管它們高效且可擴展,但它們嚴重依賴於輔助信息。

Overview of Hybrid SFM

image-20200924105651648

考慮到增量方法通常是由於通過BA進行了反復優化,因此更加魯棒和准確,但是如果圖像數據集很大,其計算量就很大,而全局方法則適合於估計所有旋轉,但在攝像機中心估計時由於外點的存在容易出現錯誤,我們在此利用增量方案和全局方案的優勢來提出一個混合SfM。

正如上圖中所顯示的,我們的系統的輸入是對極幾何圖像(EG),其中包括每個對極邊上的成對匹配,以及從本質矩陣分解估計的相應成對幾何。

例如,本質矩陣的邊緣\(edge(i,j)\)對相對旋轉\(R_{ij}\)和相對位移方向\(t_{ij}\)(注意這里只有方向,沒有尺度),並受以下公式的約束。

\[\begin{eqnarray} R_{ij} &=& R_jR_i^T\\ \lambda_{ij}t_{ij} &=& R_j(C_i-C_j) \end{eqnarray} \]

其中\(C_i\)\(R_i\)對應於相機中心和圖像\(i\)的旋轉。

全局攝像機旋轉和相對旋轉之間的方程式可以首先轉換為李代數空間,然后使用L1優化來求解,但是,全局旋轉平均的精度對EG的結構和成對幾何的精度均敏感。

因此在圖中,我們的混合SfM的第一個模塊中,我們提出了一種基於社區的旋轉平均方法來考慮這兩個因素。

對於相機中心估計,因為比例因子\(\lambda_{ij}\)未知,所以很難直接估計攝像頭中心。

論文《O. Ozyesil and A. Singer. Robust camera location estimation by convex programming. In CVPR, pages 2674–2683. IEEE, 2015.》 證明基本矩陣只能確定平行剛性圖中的攝像機位置。

另外,位移估計對錯誤的特征匹配很敏感,因此在圖中的第二個模塊中,我們使用了一種增量方式,它可以從RANSAC方法中受益,以排除錯誤的特征匹配,從而估計攝像機的中心。當無法再添加攝像機時,將執行最終的BA,以完善所有攝像機的固有參數,攝像機的姿勢和場景結構。

Global Rotation Estimation

對於順序圖像,連接通常均勻分布。

但是對於無序圖像,例如來自Internet的大量圖像,攝像機的分布通常是不均勻的,例如 感興趣的地方通常會受到更多關注。結果是,如果場景中有許多感興趣的建築物,則建築物之間的整體連接會變得稀疏,而每座建築物的連接都更加密集。

為了解決攝像機分布不均的問題,我們提出了一種受復雜網絡分析技術啟發的自動分組方法。 然后,對每個社區執行旋轉平均,然后執行對齊步驟以將它們融合為一個統一的坐標系。

社區發現

社區發現已被廣泛用於復雜網絡分析,旨在將圖分為內部密集連接和外部稀疏連接的組。

\(A_{ij}\)為對極幾何圖形(EG)相鄰矩陣的元素。

如果攝像機i和攝像機j之間存在邊,則\(A_{ij} = 1\),否則\(A_{ij} = -1\)

EG中的節點i的度數是與其連接的攝像機的數量,表示為\(d_i = \sum\limits_jA_{ij}\)。讓\(m = \frac{1}{2}\sum\limits_{ij}A_{ij}\),作為EG中邊的總數。

如果EG被隨機化而沒有社區結構,那么相機i和相機j之間存在邊的概率為\(\frac{d_id_j}{2m}\),要測量EG與隨機圖之間的社區內連接分數的差異,我們使用《A. Clauset, M. E. Newman, and C. Moore. Finding com- munity structure in very large networks. Physical Review E, 70(6 Pt 2):264–277, 2005.》中提出的模塊化指標Q。

假設攝像機i屬於社區\(S_p\),攝像機j屬於社區\(S_q\),那么Q可以被定義為:

\[Q= \frac{1}{2m}\sum\limits_{ij}(A_{ij}-\frac{d_id_j}{2m})\delta(S_p,S_q) \]

如果\(S_p = S_q\),則\(\delta(S_p,S_q) = 1\),否則\(\delta(S_p,S_q)= 0\)

為了增強具有更多匹配項的良好邊緣的影響,我們使用相鄰矩陣的權重和邊緣權重\(A_{ij}\)被設定為\(\sqrt{N_{ij}}\)

\(N_{ij}\)是相機i和相機j之間的特征匹配內線數(feature match inliers)。

RANSAC算法的基本假設是樣本中包含正確數據(inliers,可以被模型描述的數據),也包含異常數據(outliers,偏離正常范圍很遠、無法適應數學模型的數據),即數據集中含有噪聲。

為了划分EG,我們假設每個節點首先屬於一個單獨的社區,然后迭代地加入各個單獨的社區,這些社區的合並導致Q值的最大增長。模塊化在整個樹狀圖的生成過程中具有單個峰\(Q_{max}\),這表明最重要的社區結構。

在實踐中,我們發現\(Q_{max}> 0.4\)表示EG具有顯着的社區結構。因此,當峰值大於0.4時,我們將得出分區結果。

否則,當\(Q_{max} <0.4\)時,所有攝像機都被視為一個社區。

旋轉平均

對於每個社區,《A. Chatterjee and V. M. Govindu. Efficient and robust large- scale rotation averaging. In ICCV, pages 521–528. IEEE, 2013.》中提出的全局旋轉平均方法用於旋轉平均。結果是,每個社區的估計旋轉都在不同的坐標系下。 當我們有兩個或更多個社區時,應進行對齊以將它們置於統一的坐標系中。

任意一對社區之間的變換(transformation)都是SO(3)中的旋轉矩陣,但是在原始對極幾何圖中,兩個社區之間通常有很多邊。因此,我們提出了一種投票方案,以找到每對社區的最佳變換,對於兩個社區之間的每個邊緣,我們都有一個可能的旋轉變換候選,然后,基於該候選旋轉,計算這對社區之間其他邊緣的殘差。

最好的變換是具有最多inliers的變換,其中inliers定義為殘角小於15度的邊。(這里沒明白)

在獲得連接社區之間的所有轉換后,原始對極圖被簡化為加權社區圖,其中節點對應於社區,並且邊沿將社區與連接聯系起來,每個邊上的權重定義為對應的最佳變換的inliers的比率。

我們將參考坐標系設置為度數最大的節點,並為此對齊方式構建該社區圖的最大生成樹(MST)。 基於MST,其他社區的旋轉與參考社區保持一致。

下圖展示了我們在Gendarmenmarkt數據集上基於社區的旋轉平均結果,其中每條曲線表示全球相機旋轉誤差的累積分布函數(CDF)。

image-20200924193137683

根據L1RA的結果,該結果對應於所有攝像機都被視為唯一社區的情況,我們可以看到其旋轉估計是錯誤的。但是,將其划分為四個社區后,每個社區的估計輪換變得更加准確。我們的最終結果以紅色顯示,這大大提高了相機的旋轉精度。

Incremental Centers Estimation

一旦實現了每個攝像機的旋轉,出於穩定性考慮,我們將以遞增(Incremental)的方式估算攝像機的中心。隨着估計過程的進行,場景結構也被重建。

在接下來的內容中,我們介紹了三個約束條件,以便首先選擇一對好的攝像機進行初始重建。然后,基於估計的場景結構和跨圖像的軌跡之間的對應關系,通過修改后的BA來迭代估計和優化攝像機中心。

初始相機選擇和重建

為了獲得良好的初始重建效果,一對攝像機應滿足三個約束:更多的特征匹配,更寬的基線和准確的攝像機姿勢。

EG中的所有邊緣都可以視為我們最初選擇相機對的候選對象。 因此,我們通過用這三個約束標記每個邊緣來增強EG。

首先,每個邊上的特征匹配的內部數量記錄了由5點算法驗證過的EG中的值。

然后,在已知旋轉的情況下,攝像機i和攝像機j之間的成對歸一化特征匹配\((pi,pj)\)的角度可通過以下公式計算:

\[acos(R_i^T,p_i,R_j^T,p_j) \]

對於EG中的每個邊緣,我們計算與其特征匹配相對應的所有角度,並記錄中間值以指示基線的長度。

由於不知道地面真實鏡頭的位姿,因此我們無法找到具有最佳相機位置的圖像對。然而每個社區中的平均旋轉可以看作是為每個攝像機找到最佳的攝像機旋轉,從而將其連接的邊緣的中間殘差最小化,這意味着攝像機連接的邊緣越多,估計的旋轉可能越准確。

\(n_i\)是EG中相機i的鄰居數,相機i和相機j之間的一條邊的相機位姿准確性表示為:

\[\sqrt{(n_i^2+n_j^2)/2} \]

基於每個邊緣上的這三個指標,我們提出了一種級聯方案(cascaded scheme)來選擇初始攝像機對。我們認為攝像機的位姿精度首先是為了獲得准確的初始重建。

但是,即使使用精確的相機位姿,如果基線很小,則重建仍然會受到影響。因此,針對場景結構問題,我們選擇具有第二優先權的基線因子。

最后,我們考慮匹配內線的數量。

在實踐中,首先將位姿精度指標以降序排序,我們僅選擇前\(\alpha_1\)個邊(在我們的工作中,\(\alpha_1\)設置為60%)。 然后,在初始攝像機選擇中舍棄中間角度小於10度的邊緣,以避免純旋轉問題。最后,對於所有其余邊緣,我們選擇圖像匹配數量最大的邊緣。

對於選定的初始對相機i和相機j,我們重新計算其相對旋轉\(R_{ij} = R_jR_i^T\),其中\(R_i\)\(R_j\)是旋轉平均的結果。

然后,通過固定這個新的相對旋轉,通過求解線性系統\(p_j^T[t_{ij}]_{\times}R_{ij}p_i = 0\)來定義相應的相對平移\(t_{ij}\)。這個式子需要兩個點來求解。

基於RANSAC方法,\(t_{ij}\)被細化,然后通過從圖像點到其心新的極線的距離重新評估此圖像對之間的特征匹配。驗證之后,特征匹配的內部區域由修改后的BA進行三角剖分和改善( triangulated and refined),該BA僅改善相機中心和當前重建的場景結構。

相機注冊

基於已知的相機旋轉,相機的中心可以僅僅通過兩個場景點估計出來,原因是對於具有已知旋轉及其兩個場景點的攝像機,來自場景點的兩條投影射線都穿過攝像機中心。

例如:相機i和場景里的可見點\(X_j = \{X_{jx},X_{jy},x_{jz}\}\)及其對應的圖像坐標\(x_{ij}\),投影方程可以轉換為

\[X_j - C_i = \lambda R_i^TK_i^{-1}x_{ij} \]

\(h_i = \{h_{ix},h_{iy},h_{iz}\} = R_i^TK_i^{-1}x_{ij}\),相機中心\(C_i = \{C_{ix},C_{iy},C_{iz}\}\),然后我們得到以下兩個獨立方程:

\[(X_{jx} - C_{ix})h_{iz} = (X_{jz}-C_{iz})h_{ix}\\ (X_{jy} - C_{iy})h_{iz} = (X_{jz} - C_{iz})h_{iy} \]

由於相機中心的自由度為3,我們至少需要兩個點。對於每個觀察到兩個以上場景點的攝像機,我們使用RANSAC技術找到最佳的攝像機中心,該中心的可見場景點像素的數量最多,其投影誤差小於\(\gamma_1\)像素。

然后,進一步檢查兩個約束條件:內線數應大於\(\beta_1\),相應的內線比應大於\(\beta_2\)

如果兩個條件都滿足,我們認為攝像機中心估計成功。(在我們的工作里,\(\beta_1 = 16,\beta_2 = 60\%\)

有些時候可見點的數量很大(例如多於30個),估計的攝像機中心仍然是錯誤的,因為某些估計的攝像機旋轉可能不夠准確。在這種情況下,我們使用P3P的方法找到一個合適的相機位姿。同樣,如果inliers的數量和比率仍然滿足上述兩個約束,我們將更新相應的相機旋轉和中心。

請注意,由於攝像機旋轉是通過場景點估算的,因此它仍處於原始旋轉坐標系中。

三角測量

在將一些新攝像機添加到SfM系統后,所有具有2個以上已校准攝像機的軌道均被三角測量。 在這里,我們使用基於RANSAC的三角測量方法。 對於每次迭代,我們隨機選擇兩個可見的視圖,然后檢查兩個投影射線之間的角度。如果該角度大於3度,則認為當前條件良好,並使用DLT方法進行三角剖分。然后,在獲得場景點三角測量后,將同時檢查其一致的測量次數和相應的視圖cheirality 。

cheirality是多視圖幾何中代表着3D點的正景深約束

假設存在一個3D點\(X_w\),一個相機\(C\),如果\(X_w\) 能被\(C\)觀測到,也就是說該點的景深相對於這個相機是正的(如果相機z軸定義為和相機朝向相同),那就說明這個點滿足cheirality constraint

cheirality constraint一般可以用來判斷匹配點對是否正確,並經常用於從本質矩陣\(E\)的四組分解中篩選出正確的一組\(R,t\)

相關論文

請注意,軌道中所有校准攝像機的cheirality應為正,如果相應的重投影誤差小於\(\gamma_1\)像素,則軌道中的測量值被認為與當前場景點估計一致。

對於每個軌道,我們找到具有最多一致測量值的最佳場景點。

優化相機中心和場景結構

為了減少累積錯誤的影響,我們在每個攝像機添加和三角測量過程之后進行BA。

為了解決潛在的異常值,我們的BA中將Huber函數用作損失函數。

為了確保在相機添加過程中固定相機旋轉坐標系,我們僅通過保持固有參數和相機旋轉不變來微調相機中心並重建場景結構。 因此,修改后的BA公式為:

\[\mathop{minimize}\limits_{C_i,X_j} \sum\limits_{i=1}^N \sum\limits_{j=1}^M \delta_{ij}||x_{ij} - \gamma(K_i,R_i,C_i,X_i)||_{huber} \]

  • 如果相機i可以觀察到點j,則\(\delta_{ij} = 1\),否則\(\delta_{ij} = 0\)
  • \(K_i,R_i,C_i\)分別表示相機的內參矩陣和相機i的中心
  • \(\gamma(K_i,R_i,C_i,X_i)\)是投影函數
  • \(x_{ij}\)表示測量的2D圖像點位置。

與VSFM和COLMAP相似,我們對軌道重新三角化以減少累積的誤差,因為在BA后攝像機中心變得更加准確。

使用通過重新三角測量計算的新場景結構,我們執行另一個BA以獲得更准確的相機位姿。 在此BA之后,再次執行重新三角測量步驟,並對具有大投影誤差的軌道進行濾波。

實驗

實驗ceres solver進行BA調整,將用於內部判斷的錯誤閾值\(\gamma_1\)設置為16個像素。

順序圖像數據評估

許多全局式sfm方法會使用三約束同時估算初始相機位姿,因此它們對漂移誤差具有魯棒性,但是通常會留下一些未經校准的圖像。

增量SfM方法對異常值具有魯棒性,並且不依賴於圖像三元組,但是無法避免累積的錯誤。

image-20200925145000689

從建築的結果來看,里面比較干凈。通過對極幾何,我們可以看到,所有比較方法都可以成功地重建場景。

但是,對於數據集Campus來說,有很多樹,並且相機軌跡是一個循環。 該數據集的成對幾何估計被污染,並且由於匹配的樹,很容易出現許多異常軌跡。 從上圖第二行的結果中,我們可以看到COLMAP和Theia有明顯的漂移誤差,使得無法獲得閉環。 在

另外,由於攝像機的軌跡近似為線性運動,並且成對的幾何體稀疏,因此基於平移的方法LUD在該數據集上失敗了。

相比之下,我們的結果實現了閉環並且對共線攝像機運動有效。

無序圖像數據評估

為了演示我們的混合SfM

我們使用數據集包含十二組中規模數據,兩個大型數據:Piccadilly和Trafalgar,以及具有對稱架構的具有挑戰性的數據集Gendarmenmarkt。 我們還在數據集Temple上進行測試,該數據集包含許多對稱結構和場景中的樹木。

我們將我們的方法與四個最先進的全球方法進行比較。

我們可以看到,在大多數情況下,我們的混合SfM方法可重構最多數量的相機,這表明我們的方法對異常值更為魯棒。 對於校准精度,我們的方法可達到與這些最新方法相似或更好的精度。並且我們可以看到我們的方法比最新的增量方法要快得多,並且其效果與全局方法相似或更好。

考慮到准確性和時間成本,我們可以得出結論,雖然我們的混合SfM繼承了增量方式的魯棒性,但它也具有全局方式的速度優勢。

image-20200925150910748


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM