博客專欄

        EEPW首頁 > 博客 > CVPR2021:推廣到開放世界的在線自適應深度視覺里程計

        CVPR2021:推廣到開放世界的在線自適應深度視覺里程計

        發布人:計算機視覺工坊 時間:2021-04-12 來源:工程師 發布文章

        Generalizing to the Open World Deep Visual Odometry with Online Adaptation

        CVPR2021:推廣到開放世界的在線自適應深度視覺里程計

        【摘要】

        近些年,基于學習的視覺里程計已經展現出了較為可觀的結果,但預訓練網絡在未知環境中很容易失效。在這篇論文中,提出一個用于深度VO的在線自適應網絡(借助場景不可知的幾何計算和貝葉斯推理的輔助)。與基于學習的位姿估計不同,論文的蘇阿女法從深度和光流中解算出位姿,同時通過在線學習新觀測的不確定性不斷提高單證圖像的深度估計。另外,通過差分高斯牛頓層,一種在線學習光度不確定性算法也被用于進一步的深度和位姿估計。論文提出的算法在KITTI室外數據集和TUM室內數據集上得到了驗證,實驗證明,我們的算法在自監督VO算法中實現了最佳的泛化能力(泛化能力:機器學習算法對新樣本的適應能力)。

        1.png

        【主要內容】

        經典的SLAM/VO算法由于依賴底層特征因此在弱紋理、動態環境下表現性差,而深度神經網絡可以提取高級特征和并通過學習進行端到端的推斷,許多基于學習的VO算法已打破了經典VO的限制。在這些算法中,自監督VO算法能通過最小化光度誤差同時學習相機位姿、深度和光流。然而基于學習的VO當遇到與預訓練環境不同的場景時,表現性能較差,因此預訓練網絡需要以自監督的方式實現在線自適應。

        為提高未知場景下VO的在線自適應能力,論文提出了一種自監督的架構,結合了深度學習和幾何計算的優點。

        主要貢獻:

        提出一個泛化的深度VO,其使用場景未知幾何公式和貝葉斯推斷來加速自監督在線自適應性;

        估計的深度不斷被貝葉斯融合網絡優化,后續用于訓練深度和光流

        引入在線學習的深度和光流不確定度以實現精度更高的深度估計和差分高斯牛頓優化。

        【整體結構】

        2.png

        系統框架圖

        首先,FlowNet網絡估計關鍵幀和當前幀之間的稠密光流,同時估計光流不確定度映射。另外,使用DepthNet網絡估計關鍵幀的深度均值和不確定度(為當前場景幾何提供先驗)。通過本質矩陣或PNP從被選擇的匹配圖像中求解位姿。在線自適應階段,首先通過可微三角化算法重建了的稀疏深度。然后先驗關鍵幀深度通過貝葉斯更新網絡的深度估計得到進一步的提高。接著,差分高斯牛頓層最小化了和的光度損失。最后,優化后的深度和光流作為偽真值來監督DepthNet和FlowNet的在線學習。

        【從光流中進行位姿恢復】

        使用RAFT學習關鍵幀和當前幀之間的稠密光流,關鍵幀和上一幀之間的光流作為先驗來初始化當前光流估計。選擇魯棒的對應關系(),設定這個對應關系有較好的前后光流一致性和適度的流動幅度:

        3.png

        通過用RANSAC算法求解本質矩陣來計算關鍵幀和當前幀之間的位姿:

        4.png

        通過PNP算法,最小化重投影位姿來計算相機的位姿:

        5.png

        【深度模型】

        論文提出在一個統一的貝葉斯網絡中建模深度估計和更新。由于逆深度遵循高斯分布且比目標距離更具有魯棒性,因此使用逆深度進行建模。將好的逆深度測量值建模為圍繞真值的高斯分布,而不好的逆深度視為觀測噪聲,均勻分布于:

        6.png

        在線推導階段,我們在每個時間戳上尋找的最大后驗估計,可用的高斯分布和貝塔分布來近似:

        7.png

        DepthNet中關鍵幀的深度通過單張圖像估計和逆深度的不確定度來進行初始化:

        8.png

        在自適應過程中,DeepNet在線學習新的場景幾何的先驗知識。此外,學習到的不確定性還可以用來衡量概率深度融合的可靠性。

        【在線深度優化】

        關鍵幀的深度估計可進一步通過雙視圖三角化進行計算:

        9.png

        其中,dis()表示距離。中點三角化是差分的,是的我們的VO架構可以實現端到端的在線學習。

        在線自適應過程中,用于更新先驗深度估計從而獲得MAP估計,如下圖:

        10.png

        【學習不確定度的光度誤差】

        已知估計的位姿和優化后的深度,可通過轉換到來合成:

        11.png

        然而視場合成是建立在光度一致性假設下,實際中可能并不適用。為了緩解這種情況,我們將這種情況視為觀測噪聲并使用深度神經網絡來對每個RGB像素估計一個后驗概率分布。通過將觀測噪聲設想為拉普拉斯形式,在線學習過程可以被建模為最小化負對數,從而來轉換光度損失:

        12.png

        【差分高斯牛頓優化】

        進一步,論文提出使用差分高斯牛頓層來最小化,從而實現優化深度和位姿。計算兩個關鍵幀中每一個像素的權重光度損失:

        13.png

        計算關于和的一階偏導:

        14.png

        得到當前估計的增量:

        15.png

        高斯-牛頓算法是自然可微的,我們實現它作為一個層的神經網絡。在實踐中,我們發現它只在3次迭代內收斂

        【損失函數】

        論文提出使用下列的損失函數來以自監督的形式在線學習DepthNet和FlowNet。

        Smoothness loss

        為了加強局部平滑,我們引入了深度和光流的邊緣感知損失:

        16.png

        Depth Loss

        17.png

        Flow Loss

        優化后的深度和位姿可用于合成光流,在在線自適應過程使用來監督FlowNet:

        18.png

        Photometric Loss

        在之前定義過光度損失,因此總的損失函數為:

        19.png

        【實驗】

        對于DepthNet網絡,使用與Monodepth同樣的架構,并在輸出時增加一個5*5的卷積層來估計深度不確定度映射;

        光流網絡是基于RAFT的,在輸出時增加了一個5*5的卷積層和Sigmoid層來估計光流不確定度。

        FlowNet和DepthNet先以自監督的方式進行進行預訓練,Adam優化器使用的參數。

        在在線自適應階段,我們在每一個時間戳進行兩次迭代重新訓練FlowNet和DepthNet。

        20.png

        論文的實驗方面,是在Cityscapes數據集上進行預訓練的,在KITTI數據集上進行測試。比較了當前較好的自監督VO:GeoNet, Vid2Depth, Zhan, SAVO, Li以及經典算法ORB-SLAM2和VISO2。另外對比了Zhao和DF-VO,這兩種算法都結合了預訓練網絡和經典的VO過程。

        21.png

        上圖是在KITTI數據集上測試的深度估計結果,得益于論文提出的三角化過程和多幀深度優化,算法在邊緣估計上得到了較好的表現能力。

        【結論】

        在本文中,我們提出了一個基于場景不可知幾何計算和貝葉斯推理的深度VO在線自適應框架。利用貝葉斯深度濾波器對觀測數據進行改進,得到了預測的單視圖深度。同時,為了處理觀測噪聲,我們對深度和光度的不確定性進行了顯式建模。利用可微高斯-牛頓層優化的位姿、深度和光流進行在線自我監監督。大量的環境變化實驗表明,我們的方法比目前最先進的基于學習的VO方法有更好的泛化能力。

        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。

        接地電阻相關文章:接地電阻測試方法




        關鍵詞:

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 历史| 凯里市| 淮安市| 太湖县| 陇川县| 维西| 凤山县| 台中市| 炎陵县| 武山县| 丹阳市| 独山县| 志丹县| 皋兰县| 文山县| 云龙县| 攀枝花市| 察隅县| 宽甸| 广平县| 太原市| 彭阳县| 渭南市| 远安县| 安图县| 尼勒克县| 札达县| 嘉兴市| 锦州市| 民乐县| 东阿县| 隆子县| 泉州市| 日土县| 襄垣县| 云霄县| 深圳市| 工布江达县| 通江县| 罗甸县| 临潭县|