初始化 | SVO 論文與代碼分析分講 這是我們 SLAM 組同事高洪臣寫的文章,感謝分享??????~ 論文: SVO: Fast Semi-Direct Monocular Visual Odometry 代碼(注釋版):cggos/svo_cg SVO 結合了直接法和特徵點法,稱為 半直接單目視覺里程計。 初始化 獲取第一關鍵幀和第二關鍵幀的相對位姿,並建立初始地圖,代碼主要在 initialization.cpp 中。1)處理第一幀FrameHandlerMono::processFirstFrame 第一幀位姿為單位陣 new_frame_->T_f_w_ = SE3(Matrix3d::Identity(), Vector3d::Zero()) addFirstFrame detectFeatures: 獲取 Shi-Tomas得分較高 且 均勻分佈 的 FAST 角點,並創建 Features 初始化 px_vec(Coordinates in pixels on pyramid level 0) 和 f_vec(Unit-bearing vector of the feature) 將當前幀設置為關鍵幀,並檢測 5 個對應的關鍵點 添加關鍵幀到地圖 map_.addKeyframe(new_frame_); 2)處理第二幀 FrameHandlerMono::processSecondFrame addSecondFrame 光流跟蹤trackKlt 計算 單應性矩陣(假設局部平面場景),估計相對位姿T_cur_from_ref_ 創建初始地圖 BA 優化 ba::twoViewBA 添加關鍵幀到地圖 map_.addKeyframe(new_frame_); 添加關鍵幀到深度濾波器 depth_filter_->addKeyframe 更多學習筆記:小覓智能:乾貨 | 一起快速上手 VINS-Fusion?zhuanlan.zhihu.com點贊??和分享??是對我們的最大鼓勵呀~?????? 推薦閱讀: 相關文章 {{#data}} {{title}} {{/data}}