CVPR 2021 | SquareRootBA:大場景中的平方根集束調(diào)整
來源丨h(huán)ttps://zhuanlan.zhihu.com/p/479818521編輯丨3D視覺工坊標(biāo)題:Square Root Bundle Adjustment for Large-Scale Reconstruction
作者:Nikolaus Demmel, Christiane Sommer, Daniel Cremers, Vladyslav Usenko來源:CVPR 2021今天我們要精讀的文章事來自TUM的Square Root Bundle Adjustment for Large-Scale Reconstruction。這篇工作針對Bundle Adjustment中邊緣化問題,提出了對待優(yōu)化地圖點做QR分解的方法,來加速BA, 并且可以達(dá)到與傳統(tǒng)舒爾補(bǔ)方法相當(dāng)?shù)木冉Y(jié)果. 本文方法對在資源受限的嵌入式設(shè)備上運行大規(guī)模BA有一定的借鑒意義.
本文提出一種新的Bundle Adjustment的公式模型, 在地圖點邊緣化過程中引入QR分解, 以此來達(dá)到減少bundle adjustment計算量的目的, 我們稱之為square root BA, 代數(shù)上等價于平時使用的Schur complement, 但是本文方法可以使用單精度浮點運算解決大場景下的bundle adjustment問題. 在真實數(shù)據(jù)上的實驗結(jié)果表明, square root BA可以得到和Schur complemnet一樣精度,而且運行速度更快.主要貢獻(xiàn):1.本文提出一種零空間投影的邊緣化方法,替代傳統(tǒng)的舒爾補(bǔ), 實驗證明了本文方法與舒爾補(bǔ)在代數(shù)上是等價的;2.針對BA問題的特殊結(jié)構(gòu), 本文實現(xiàn)了高效的零空間投影邊緣化;3.本文方法可以很好的并行化, 并且可以支持單精度浮點運算;4.本文方法在大場景的BA數(shù)據(jù)集上做了大量測試, 并且與sota的ceres優(yōu)化框架做了對比, 證明本文方法的可行性;
算法流程1. Square root bundle adjustment4.1 Least squares problem
我們一般采用Levenberg-Marquardt算法求解公式(5), LM算法的基本思想是把殘差線性化, 把最小二乘問題轉(zhuǎn)換為一個帶阻尼的線性問題:
4.2 Schur complement4.3 Nullspace marginalization
至此,公式(6)定義的優(yōu)化問題變成了優(yōu)化目標(biāo)公式(17), 目標(biāo)函數(shù)的參數(shù)數(shù)量大大減少, 而且不需要像舒爾補(bǔ)那樣顯式構(gòu)建Hessian矩陣.
2.Implement details使用共軛梯度線性求解器.系統(tǒng)可以對每個地圖點的landmark block獨立的處理線性化、邊緣化、兩步求解工作, 所以可以直接并行化計算.
實驗對比實驗中的幾項對比對象:
Performance profiles內(nèi)存占用情況: 每個landmark block的存儲大小與觀測到該地圖點的相機(jī)數(shù)量成平方增長.
本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。