一文讀懂復(fù)雜的VIO初始化
作者:小飛飛?| 來源:3D視覺工坊
視覺慣性融合技術(shù)應(yīng)用于機(jī)器人和自動駕駛方面。單目相機(jī)和低成本IMU成為最佳選擇。因為VIO系統(tǒng)的高度非線性,初值對視覺慣性系統(tǒng)很重要,但很難獲得精確的初始狀態(tài)。VIO初始化的主要意義有:(1)對齊相機(jī)的世界坐標(biāo)系和慣性系,因此需要估計重力方向(2)為后續(xù)的VIO算法提供較為準(zhǔn)確的初始參數(shù)和狀態(tài)(尺度、IMU bias、初始速度),使得算法可以快速穩(wěn)定地進(jìn)入正常運行階段。良好的初始化對VIO算法的整體精度和魯棒性至關(guān)重要。本文旨在介紹主流的VIO初始化方案
1 前言
目前的初始化方法分為松耦合(Vins-Mono、ORBSLAM3)和緊耦合方案(OpenVINS),松耦合方案用的較多,并且表現(xiàn)更好。從求解方法上,有濾波、圖優(yōu)化、閉式解三種方法。但是,濾波會很早將狀態(tài)邊緣化,會失去最優(yōu)性。圖優(yōu)化由于計算復(fù)雜性高。大多數(shù)現(xiàn)有的初始化方法需要系統(tǒng)靜止或已知初始狀態(tài)。不能適應(yīng)動態(tài)運動、空中初始化。閉合式解法缺乏傳感器噪聲模型。本文主要介紹基于VINS-Mono的松耦合方案。
2 問題概述
已知:(1)IMU 和圖像時間戳已同步;(2)IMU 和相機(jī)外參數(shù)已知 求解:尺度、圖像幀的速度、重力方向、IMU bias
3 方法
3.1 進(jìn)行單目結(jié)構(gòu)重建(SFM),獲得up-to-scale的相機(jī)姿態(tài)和特征點位置
設(shè)定一定長度的滑動窗口,它維護(hù)了幾個空間分離的圖像幀??臻g幀由足夠的視差的圖像幀來選擇。選擇兩幀具有足夠特征視差的幀。然后使用五點法恢復(fù)這兩幀之間的相對旋轉(zhuǎn)和帶尺度的平移。然后任意設(shè)置尺度,對這兩幀中觀察到的所有特征進(jìn)行三角剖分。基于這些三角化特征,采用PnP方法估計窗口中其他幀的姿態(tài)。
3.2 對IMU測量進(jìn)行預(yù)積分,得到IMU的相對運動約束
預(yù)積分公式為:
3.3 視覺慣性對準(zhǔn)
我們已經(jīng)得到了視覺SFM和IMU預(yù)積分中獲得了相機(jī)姿勢。本節(jié)將介紹對齊這兩個軌跡的方法。
陀螺儀bias標(biāo)定
窗口中兩個連續(xù)的圖像幀bk和bk+1,我們有來自視覺結(jié)構(gòu)的相對旋轉(zhuǎn)以及來自IMU預(yù)積分的相對旋轉(zhuǎn)約束。通過最小化兩者之間的誤差來估計陀螺儀的bias:
估計速度、重力方向和尺度參數(shù)。
重力方向估計并強(qiáng)制其模長等于已知值。即需要估計的變量有
利用外參數(shù),得到相機(jī)坐標(biāo)系下的相機(jī)軌跡與預(yù)積分的關(guān)系:
將待估計變量放到方程右邊,有:
其中,
重力方向細(xì)化
上面的優(yōu)化中,并沒有約束重力的大小。通過約束重力矢量的大小,可以對前一步得到的重力矢量進(jìn)行細(xì)化。在大多數(shù)情況下,重力矢量的大小是已知的。但是,如果我們直接將這個范數(shù)約束加入到上面的優(yōu)化問題中,就會變得非線性,難以求解。在這里,VINS-Mono使用一種方法通過優(yōu)化其切線空間上的二維誤差狀態(tài)來強(qiáng)制執(zhí)行重力范數(shù)。
4 結(jié)論
此時,初始化過程完成,這些變量將被輸入到一個緊密耦合的非線性視覺慣性估計器,即VIO過程。還有幾點需要解釋:對于旋翼飛行器來說,直線運動或零加速度運動等簡并運動是不可避免的。這時候在SFM窗口內(nèi)的IMU測量可能無法使整個系統(tǒng)可見,我們可以通過檢查初始化過程中的預(yù)積分的值來拒絕小的加速度運動,初始化過程只有在IMU測量中包含足夠的激勵時才開始。在初始化過程中,加速度偏差很難標(biāo)定,因為加速度通常在小旋轉(zhuǎn)下與重力耦合。因此該方法不涉及加速度bias的標(biāo)定。忽略加速度偏差不會對初始化結(jié)果造成顯著的負(fù)面影響,可以在VIO過程中引入,這里不做介紹。
目前工坊已經(jīng)建立了3D視覺方向多個社群,包括SLAM、工業(yè)3D視覺、自動駕駛方向,細(xì)分群包括:[工業(yè)方向]三維點云、結(jié)構(gòu)光、機(jī)械臂、缺陷檢測、三維測量、TOF、相機(jī)標(biāo)定、綜合群;[SLAM方向]多傳感器融合、ORB-SLAM、激光SLAM、機(jī)器人導(dǎo)航、RTK|GPS|UWB等傳感器交流群、SLAM綜合討論群;[自動駕駛方向]深度估計、Transformer、毫米波|激光雷達(dá)|視覺攝像頭傳感器討論群、多傳感器標(biāo)定、自動駕駛綜合群等。[三維重建方向]NeRF、colmap、OpenMVS等。除了這些,還有求職、硬件選型、視覺產(chǎn)品落地等交流群。大家可以添加小助理微信: CV3d007,備注:加群+方向+學(xué)校|公司, 小助理會拉你入群。