[論文學習]Online Temporal Calibration for Monocular Visual-Inertial Systems

題目:Online Temporal Calibration for Monocular Visual-Inertial Systems

作者:秦通 沈邵劼

摘要:精確狀態估計是機器人導航、自主駕駛、虛擬現實和增強現實等多種智能應用的基礎模塊。視覺與慣性融合是近年來發展起來的一種六自由度狀態估計技術。不同傳感器測量數據記錄的時間瞬間對系統的魯棒性和準確性至關重要。在實踐中,每個傳感器的時間戳通常會受到觸發和傳輸延遲的影響,導致不同傳感器之間的時間失調(時間偏移)。這種時間偏移極大地影響了傳感器融合的性能。爲此,我們提出了一種在線校準視覺和慣性測量之間的時間偏移量的方法。該方法通過對SLAM系統中時間偏移量、相機狀態、IMU狀態以及特徵位置的聯合優化,實現了時間偏移量的標定。此外,該方法是一個通用模型,可方便地應用於多個基於特徵的優化框架工作中。仿真和實驗結果表明,與其他先進的離線工具相比,我們的校準方法具有較高的精度。VIO與其他方法的比較表明,在線時間標定對視覺慣性系統有明顯的好處。時間校準的源代碼集成到我們的開源項目,VINS_MONO。


目錄

1.簡介

2.研究現狀

3.算法

A.時間偏移量

B.圖像平面上的特徵速度

C.視覺因素與時間偏移

D.帶有時間偏移的優化

E.時間偏移補償

4.實驗結果

A.實現細節

B.時間校準結果

5.結論


1.簡介

在過去的幾十年裏,狀態估計一直是機器人和計算機視覺領域的一個基礎研究課題。機器人導航、自主駕駛、虛擬現實(VR)和增強現實(AR)等各種應用都高度依賴於精確的狀態估計。我們特別感興趣的狀態估計解決方案,只涉及一個相機,因爲它的體積小,功耗低,和簡單的機械配置。在單目純視覺技術中,[1]-[7]已經取得了很好的結果,它計算出了精確的攝像機運動和符合尺度的環境結構。爲了解決已知的尺度模糊問題,多傳感器融合方法受到越來越多的關注。利用慣性測量單元(IMU)對[8]-[17]相機進行了大量的研究,在6自由度SLAM(同步定位和映射)中取得了令人矚目的性能。一方面,慣性測量使俯仰和滾轉角,以及比例,可觀察到。另一方面,慣性測量通過消除視覺跟蹤失敗時的間隙來改善運動跟蹤性能。

爲了融合來自不同傳感器的數據,必須精確地知道記錄測量值的時間瞬間。實際上,每個傳感器的時間戳通常會受到觸發和傳輸延遲的影響,導致不同傳感器流之間的時間失調(時間偏移)。因此,傳感器的時間同步問題可能成爲多傳感器系統的關鍵問題。對於視覺慣性系統,相機與IMU之間的時間偏移量對系統的魯棒性和精度有很大的影響。大多數視覺慣性方法[13,14,16,17]假定測量的時間戳在單個時鐘下是精確的。因此,這些方法可以與一些嚴格的硬件同步傳感器很好地工作。對於大多數低成本和自組裝的傳感器集,硬件同步是不可用的。由於觸發延遲和傳輸延遲,相機與IMU之間總是存在瞬態偏移(時間偏移)。時間偏移量通常從幾毫秒到數百毫秒不等。幾十毫秒將導致IMU序列與圖像流完全不對齊,從而極大地影響視覺慣性系統的性能。

爲此,提出了一種在線標定視慣性系統時間偏移量的方法。我們假設時間偏移量是一個常數但未知的變量。我們通過在線估計相機和IMU狀態,以及SLAM系統中的特徵位置來校準它。我們的標定方法是一個通用的因素,可以很容易地應用於其他基於特徵的視覺慣性優化框架。雖然我們使用單目傳感器套件來展示我們的方法,但該方法可以很容易地應用於多攝像機視覺慣性系統。我們強調我們的貢獻如下:

(1)我們提出了一種在線標定視覺慣性系統中攝像機與IMU之間時間偏移量的方法。

(2)我們通過模擬和真實世界的經驗,展示了在線時間計算的重要性。

(3)將開源代碼集成到公共項目中。

本文其餘部分的結構如下。第二節討論了相關文獻。第三節詳細介紹了該算法。第四節給出了實現細節和實驗評價。最後,第五節對本文進行了總結。

2.研究現狀

在過去的幾十年裏,視覺慣性測程技術已經有了大量的研究,其目的是高精度地計算相機的運動和環境結構。目前流行的技術有基於過濾的框架[9]-[12,17]或批處理優化[13]-[16,18]。大多數視覺慣性算法都是通過提取魯棒稀疏特徵來處理圖像,而不是對稠密圖像進行處理。其中[9,10,18]採用無結構視覺因子,通過將視覺殘差投影到零空間來消除特徵。他們更注重估計相機或IMU的運動,而不是特徵位置。[13, 14, 16]選擇性地將關鍵幀和特徵保存在一個包中,從而優化了相機的運動和特徵。所有這些方法都假定IMU和攝像機是精確同步的,沒有時間錯位。

在低成本和自組裝設備中,IMU和相機之間的時間錯位是一個典型的問題。由於時鐘不同步、觸發延遲和傳輸延遲,測量的時間戳與實際採樣時間瞬間不一致。這個時間偏移是未知的,需要校準。有幾項研究集中在校準它。Mair[19]提出了一種時間和空間校準的初始化方法,該方法使用了互相關或相位一致性。該方法以一種新穎獨特的視角制定了標定程序。它將校準的變量與其他未知變量(姿態、特徵位置)分離開來。因此,它可以在不受其他變量影響的情況下提供良好的先驗。進一步,方法建模的時間偏移在一個更精確的公式。Kelly[20]對準相機與IMU的旋轉曲線,校準時間偏移。它利用ICP(迭代最接近點)方法的一種變體來逐步匹配兩條旋轉曲線。利用Furgale[21]中的Kalibr算法,對連續批優化過程中相機與IMU之間的時間偏移量、相機運動以及外部參數進行了估計。Kalibr取得了令人印象深刻的性能,併成爲一個受歡迎的工具箱。但是,這兩種方法都是離線操作,使用固定的平面模式(例如棋盤)。該標定模式具有較強的特徵跟蹤和關聯能力,並具有較高的三維定位精度。此外,李還針對[22]中攝像機- imu系統提出了一種具有在線時間標定的運動估計方法。在多狀態約束EKF框架下對時間偏移量進行了標定。該方法在計算複雜度上具有明顯的優勢,可用於便攜式移動設備。與他的方法相比,我們的基於優化的算法在精度上要優於他的方法,因爲我們可以在一個大的包中迭代優化大量的變量,而不是早期修復線性化誤差。

3.算法

在本節中,我們將在一個視覺因子中建模時間偏移量,並在一個基於優化的VIO框架中在線計算它以及特性、IMU和相機狀態。

A.時間偏移量

對於低成本和自組裝的視覺慣性傳感器,相機和IMU沒有嚴格的時間同步。由於觸發延遲、傳輸延遲和時鐘不同步,生成的時間戳不等於測量採樣的時間瞬間。因此,不同的測量值之間通常存在時間偏移。一般情況下,傳感器之間的時間偏移量是一個常數,但未知值。在一些更糟糕的情況下,傳感器是用不同的時鐘收集的,時間偏移量隨時間漂移。這種傳感器不適用於傳感器融合。在本文中,我們考慮一般情況,其中時間偏移td是一個常數,但未知的值。

圖1 相機和IMU流之間的時間偏差(時間偏移)的說明。上面的圖表示採樣瞬間。下面的圖顯示了時間戳的瞬間。由於觸發延遲、傳輸延遲和時鐘不同步,生成的時間戳不等於實際採樣時間,導致相機和IMU之間的時間失調。時間偏移量td是我們移動相機時間戳的時間量,以便相機和IMU數據流在時間上保持一致。

圖1描述了一幅說明時間偏移的圖片。在圖中,上面的圖表示採樣瞬間。下面的圖顯示了時間戳的瞬間。由於觸發時延、傳輸時延、時鐘不同步等原因,產生的時間戳不等於實際採樣時間,導致相機與IMU的時間錯位。具體地,我們定義td爲,

tIMU = tcam+td

時間偏移量td是我們應該移動相機時間戳的時間量,以便相機和IMU數據流在時間上保持一致。td可以是正的,也可以是負的。如果攝像機序列的延遲比IMU序列長,則td爲負值。否則,td爲正值。

B.圖像平面上的特徵速度

爲了使相機和IMU數據流在時間上保持一致,相機序列應該根據td前後移動。我們不是移動整個相機或IMU序列,而是在時間軸上移動特性的觀察值。爲此,我們引入了特徵速度來建模和補償時間偏差。在很短的時間內(幾毫秒),相機的運動可以看作是勻速運動。因此,特徵在短時間內以近似恆定的速度在像面上運動。在此基礎上,計算了該特徵在圖像平面上的速度。

圖3 再投影過程的說明。虛線表示沒有時間偏移建模的傳統重投影過程。該實線提出了一種考慮時間偏移的重投影算法。黃色線表示IMU約束。IMU約束與傳統的重投影約束不一致。通過對td的優化,可以得到與IMU約束相匹配的最優相機姿態和特徵在時間域內的觀測值。

C.視覺因素與時間偏移

在經典的稀疏視覺SLAM算法中,視覺需求被表示爲代價函數中的投影誤差。我們通過添加一個新的變量,時間偏移量來修正經典的投影誤差。特性有兩種典型的參數化。一些算法將特徵參數化爲其在全局幀中的三維位置,而另一些算法則將特徵參數化爲相對於特定圖像幀的深度或反深度。下面,我們分別用這兩種參數化方法將時間偏移量建模爲視覺因子。

(1)三維位置參數化:特徵在全局幀中被參數化爲三維位置。傳統的視覺測量公式爲投影誤差

(2)深度參數化:該特徵還可以細化爲與圖像幀相關的深度或反深度

圖3描述了重投影過程。虛線代表了傳統的不需要時間偏移建模的重投影過程。實線表示考慮時間偏移的建議重投影。黃線表示IMU約束。IMU約束與傳統的重投影約束不一致。通過對td的優化,可以在符合IMU約束的時域內找到最優的攝像機姿態和特徵觀測。

D.帶有時間偏移的優化

利用上述視覺因素,我們可以很容易地將時間校準功能添加到典型的基於視覺慣性優化的框架中,如[13,16,23]。在這些框架中,視慣性定位和映射被表述爲一個非線性優化問題,將視覺和慣性測量緊密耦合在一起。如圖4所示,幾個相機框架和IMU設備被保存在一個包中。捆綁包的大小通常受限於綁定計算複雜度。本地包調整(BA)聯合優化相機和IMU狀態,以及功能位置。

E.時間偏移補償

每次優化後,我們通過移動後續視頻流的時間戳來補償時間偏移量,如t0cam = tcam + td則系統估計滿足視覺測量和慣性測量在下面。δtd將在隨後的迭代優化的數據流,將收斂於零。時間間隔的減少δtd,我們的基本假設(功能以一個恆定的速度移動圖像平面上在短時間間隔)越來越合理。即使一開始有很大的時間偏移(比如幾百毫秒),這個過程也會逐漸從粗到細進行補償。

圖4 視覺慣性定位與映射問題的一個實例。我們在一個包中維護多個攝像機幀和IMU測量值。束的大小通常是有限的,以減少計算複雜度。局部束調整(BA)聯合優化相機和IMU狀態,以及特徵位置。

4.實驗結果

在本節中,我們首先演示了瞬變電磁法孔隙率校準的準確性,然後我們展示了通過時間校準提高的整體VIO性能。利用仿真數據和實際傳感器集,給出了系統的標定實驗結果。通過公共數據集和實際實驗,給出了系統的整體VIO性能。在每一部分中,我們將提出的算法與其他常用方法進行了比較。

A.實現細節

我們採用了在[23]中提出的視覺慣性優化框架。我們只將時間偏移量添加到狀態向量中,並使用建議的視覺因子(III-C節)。特徵檢測採用Shi-Tomasi角探測器[24],跟蹤採用KLT跟蹤器[25],IMU測量採用局部集成。在局部束調整中,優化了多個關鍵幀的姿態、速度、IMU偏置以及特徵位置。只有包含足夠特徵視差的關鍵幀纔會暫時保存在本地窗口中。爲了限制計算複雜度,將以前的關鍵幀邊緣化。Ceres求解器[26]用於求解這一非線性問題。整個系統採用Intel i7-3770 CPU實時運行。

圖5 Intel Realsense camera ZR300,其中包含一個fisheye全球快門相機與100◦×133◦FOV和IMU(陀螺和Acc)

B.時間校準結果

1)仿真:在60m x 60m x 60m空間中隨機生成500個特徵點。功能位置未知。在零均值高斯噪聲下,以0.5像素的標準分辨率將可見特徵投影到虛擬相機上。慣性測量也受零均值高斯噪聲的影響,加速度計和陀螺儀的標準偏差分別爲0.01m/s 2和0.001rad/s,無偏置。慣性測量速率爲100hz,攝像機幀頻爲10hz。相機和IMU以足夠的加速和旋轉運動一起移動。整個軌跡持續30秒。我們將時間偏移量設置爲5ms、15ms和30ms。每次偏移量進行100次模擬試驗。標定結果如表所示。

我們的算法能夠在較低均方根誤差的情況下,成功地校準模擬數據中的時間偏移量。

真實傳感:我們使用Intel Realsense camera ZR300 2,其中配置了一個fisheye global shutter camera,配置了100◦×133◦FOV和IMU (Gyro & Acc),如圖5所示。製造商聲稱傳感器是同步的。在實際應用中,我們發現魚眼相機與默認SDK獲得的IMU之間存在明顯的時間偏移,這與曝光時間有關。由於無法獲得地面真實值,我們使用了最先進的時間校準工具箱Kalibr[21]進行比較。離線批量優化框架中Kalibr校準時間偏移量,需要添加校準模式(棋盤)。

圖6所示。估計的時間偏移從提出的方法和Kalibr相對於不同的曝光時間

我們設置了5次曝光時間,從20毫秒到30毫秒。每次曝光時間,我們通過將傳感器移到校準棋盤前40秒來收集15個數據集。實際上,Kalibr依賴於一個校準模式,而我們的算法不依賴。爲了使校準完全可見,我們確保在所有數據集上有足夠的旋轉和加速運動。時間標定結果如圖6所示。我們可以看到時間偏移量隨曝光時間呈線性變化,斜率在0.5左右。這是因爲曝光時間的中間部分被視爲時間戳圖像的最佳點。因此,時間偏移包括固定通信和觸發延遲加上一半曝光時間。所提出的方法和Kalibr都滿足這種情況。由於地面真相是不可用的,我們以Kalibr的結果作爲參考。我們的結果與Kalibr的結果非常接近。在標準推導方面,該方法實現了[0.095,0.071,0.14,0.16,0.15],小於Kalibr的標準推導[0.27,0.16,0.13,0.18,0.20]。該方法在一致性方面優於Kalibr。注意,Kalibr是一種離線批處理優化,它消耗的資源是建議方法的幾十倍。此外,Kalibr依賴於校準模式。因此,該方法在效率和實用性方面也優於Kalibr。

C. VIO整體性能

1)數據集:我們使用EuRoC MAV視覺慣性數據集[27]對提出的方法進行了評估。數據集收集在微型飛行器上,包括立體圖像(Aptina MT9V034全球快門,WVGA單色,20 FPS),同步IMU測量(ADIS16448, 200赫茲)和地面真實狀態(VICON和Leica MS50)。我們只使用左邊相機的圖像。衆所周知,圖像和IMU測量在這個數據集中是嚴格同步的。爲了演示時間校準的能力,我們通過手動移動IMU時間戳來設置時間偏移量。具體來說,我們爲IMU時間戳添加一個固定的毫秒值,這樣IMU和相機之間就有一個固定的時間偏移量。我們製作了時間移位序列,並用它們來測試所提出的算法和其他方法。首先研究了時間偏移對視覺慣性測程的影響。我們將時間偏移量設置在- 40到40ms之間,並分別用vs - mono[23]和所提出的方法對這些時間偏置序列進行測試。

圖7 相對於MH03序列中的時間偏移的RMSE。x軸顯示預定義的時間偏移量,y軸顯示RMSE(均方根誤差)[28]。藍色的線表示的是VINSMono[23]的結果,這是本文提出的方法的基礎框架。紅線表示所提方法的結果,具有時間偏移校正能力。

圖8所示。相對位姿誤差[29]與V101序列中OKVIS的比較,時間偏移量分別爲5ms和30ms。在兩種不同的時間偏移量(黑色和藍色)下,該方法的相對位姿誤差基本相同。但是,隨着時間偏移量的增加,OKVIS的相對位姿誤差增加了很多(粉色和紅色的曲線)。

圖9所示。V101序列的時間偏移估計,時間偏移量分別爲5ms、15ms和30ms。估計偏移量在幾秒鐘內迅速收斂到穩定值

VINS-Mono是我們構建系統的基礎框架。VINS- Mono沒有時間偏移校準功能,因此它明顯受到時間失調的影響。結果如圖7所示。x軸顯示預定義的時間偏移量,y軸顯示RMSE(均方根誤差),如[28]中建議的那樣。測試數據是MH03序列,其IMU時間戳被移動。藍線表示vs - mono的結果。我們可以看到RMSE隨着vs - mono時間偏移量的拋物線變化。當時間偏移量增加時,性能急劇下降。容忍間隔僅在6毫秒內。這說明進行時間偏移校正是必要的。紅線表示該方法的結果,該方法校準了時間偏移量。可以看出,不同時間偏移量下的RMSEs是相同的,這證明了我們的標定程序是非常有效的。

下面,我們將OKVIS[16]算法與另一種沒有時間標定能力的先進視慣性測程算法進行比較。利用時間偏置序列對提出的方法和OKVIS進行了檢驗。結果如表所示。利用RMSE對彈道進行了評估。對於OKVIS,隨着時間偏移量的增加,性能下降(RMSE越來越大)。在某些序列中(如MH 03, V1 03),當時間偏移量達到30ms時,RMSE顯著增加。這樣的時間偏移使系統發散。然而,對於所提出的方法,性能不受時間偏移量的影響。在不同的時間偏移量下,rmse在一個序列上幾乎是相同的,因爲該方法可以正確地校準時間偏移量。表中還列出了校準結果。該方法能準確標定預定的時間偏移量。當時間偏移量大於10ms時,該方法的性能明顯優於OKVIS。具體而言,所提方法與OKVIS的相對位姿誤差[29]比較如圖8所示。圖中V101序列在5ms和30ms時間偏移量下進行。我們可以看到,在兩種不同的時間偏移量(黑色和藍色圖)下,該方法的相對位姿誤差基本相同。但是,當時間偏移量增加時,OKVIS的相對位姿誤差增加很多(粉色和紅色的曲線)。時間偏移估計過程如圖9所示。可以看出,估計的偏移量僅在幾秒內迅速收斂到穩定值。在線temporal校準顯著提高了整體性能。

2)真實實驗:我們進行了一個真實的實驗來驗證所提出的系統。傳感器組與第IV-B節相同。2、英特爾Realsense攝像頭,如圖5所示。圖像速率爲30Hz,慣性測量速率爲350Hz。我們用手拿着傳感器,在房間裏以正常的速度循環行走。我們將結果與OKVIS[16]進行了比較。同時,將OptiTrack 3的結果作爲ground truth處理。我們拿着傳感器走了五圈。軌跡如圖10所示。在x軸、y軸和z軸上的詳細平移如圖11所示。偏航、俯仰和橫搖的詳細旋轉情況如圖12所示。在平移和旋轉比較中,我們可以看到OKVIS的結果隨着時間的推移而明顯漂移。該方法與OKVIS的相對位姿誤差[29]比較如圖13所示。OKVIS的相對位姿誤差大於該方法。此外,相對位姿誤差的增長速度快於該方法。顯然,由於在線時間校準,該方法在平移和旋轉兩方面都優於OKVIS。該方法校準的時間偏移量爲12.74ms,在沒有有效校準和補償的情況下,將對VIO的長期性能產生顯著影響。

5.結論

本文提出了一種在線計算IMU與相機之間cali- brate時間偏移量的方法。我們的方法是一個通用模型,可以很容易地用於基於優化的視覺慣性框架。時間偏移量與IMU、相機狀態以及功能共同優化。仿真和實驗結果表明,與其他離線方法相比,該方法在時間偏移校正和系統運動估計兩方面均具有較高的精度。雖然我們使用單目傳感器套件來展示我們的方法在本文中,但所提出的方法可以很容易地推廣到多攝像機視覺慣性系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章