SFM:BA Jacobian矩陣推導
來自專欄 SLAM學習9 人贊了文章
SFM演算法是一種基於各種收集到的無序圖片進行三維重建的離線演算法。在進行核心的演算法structure-from-motion之前需要一些準備工作,挑選出合適的圖片。
從運動到結構流程
首先從圖片中提取焦距信息(之後初始化BA需要),然後利用SIFT等特徵提取演算法去提取圖像特徵,用kd-tree模型去計算兩張圖片特徵點之間的歐式距離進行特徵點的匹配,從而找到特徵點匹配個數達到要求的圖像對。對於每一個圖像匹配對,計算對極幾何,估計F矩陣並通過ransac演算法優化改善匹配對。這樣子如果有特徵點可以在這樣的匹配對中鏈式地傳遞下去,一直被檢測到,那麼就可以形成軌跡。
之後進入structure-from-motion部分,關鍵的第一步就是選擇好的圖像對去初始化整個BA過程。首先對初始化選擇的兩幅圖片進行第一次BA,然後循環添加新的圖片進行新的BA,最後直到沒有可以繼續添加的合適的圖片,BA結束。得到相機估計參數和場景幾何信息,即稀疏的3D點雲。
BA求解
捆綁調整(Bundle Adjustment)過程是無約束非線性最小化問題,優化演算法可以選擇最速下降法、牛頓法或者Levenberg-Marquardt演算法,Levenberg-Marquardt由其簡單實現性和阻尼策略(這樣就能使其從初始假設值很快converge到穩定狀態)成為最常用的方法。
使用L-M演算法時,涉及到Jacobian矩陣。在深藍學院『基於圖像的三維重建』課程中,對於BA中的Jacobian矩陣做了詳細推導,文檔部分截圖如下所示:
Jacobian矩陣推導文檔
添加深藍學院-書哲微信(shenlanflying),備註「BA」領取完整版文檔。
推薦閱讀:
TAG:運動推斷結構SfM | 同時定位和地圖構建SLAM | 計算機視覺 |