1. 程式人生 > 實用技巧 >基於多平面先驗的高效VIO工作開源

基於多平面先驗的高效VIO工作開源

點選上方“3D視覺工坊”,選擇“星標”

乾貨第一時間送達

簡介

SLAM是增強現實(AR)的關鍵基礎技術。要保證在移動裝置上長時間的良好AR體驗,SLAM的功耗需要儘可能低。特別是對於某些AR應用來說,並不需要一個完整的SLAM系統,即往往不需要回路閉合和重定位功能,而只需要一個輕量級的視覺慣性里程計(VIO)即可。然而要保證VIO在實際場景中能魯棒執行是一個很有挑戰性的問題。在人造環境中,通常都會有平面結構,如果這些平面資訊能夠被有效地利用起來,將有助於提升VIO的魯棒性。為此,我們提出了一個基於多平面先驗資訊的高效魯棒的輕量級VIO系統PVIO。在這個工作中,我們提出了一個新穎的視覺-慣性-平面PnP演算法

來實現快速的定位,同時基於重投影一致性來可靠地擴充套件平面,從而增強在深度高度不確定情況下的跟蹤魯棒性。此外,在滑動視窗優化模組中提出了一個無結構的平面距離約束項,以及相應的邊緣化和滑窗策略,可以有效降低計算複雜度,同時保證良好的精度。EuRoC和TUM-VI兩個資料集上的實驗結果表明,PVIO在跟蹤精度上跟現在的前沿VI-SLAM系統VINS-Mono相當,但只需要單執行緒執行,效率上具有明顯的優勢。

PVIO執行效果

系統框架

PVIO系統框架

PVIO系統框架如上圖所示。根據輸入的線上影象幀和對應的IMU測量資料,系統進行特徵跟蹤和IMU的預積分,並使用視覺-慣性-平面PnP演算法來實時輸出當前幀的位姿。在這之後,當前幀將被送入到滑動視窗。如果滑動視窗的最後一幀被判定為關鍵幀,系統就會使用重投影一致性

來擴充套件平面,並且在執行滑窗優化時,使用無結構的平面距離約束項來約束平面上的三維點。在完成優化後,系統將會進行平面檢測,擴充已有的平面地圖。

平面檢測與擴充套件

在平面檢測步驟,我們使用3點的RANSAC法,並且在內點個數超過一定閾值時新增平面。在平面擴充套件步驟,由於單目VIO在視差不足時,三角化的深度誤差仍然比較大,因此我們使用了重投影一致性檢查來作為擴充套件條件。如果一個三維點投射到平面之後的重投影誤差仍然小於給定的閾值或者相比原先的重投影誤差沒有明顯的增大,那麼就認為這個點歸屬於這個平面,這不會影響優化的穩定性。

平面約束

平面約束主要分為兩個部分:視覺-慣性-平面PnP和無結構的平面距離約束項。

VIP-PnP(視覺-慣性-平面PnP)

在每幀PnP求解中,我們使用了視覺、慣性和平面的三重約束。對於隸屬於平面的三維點,我們直接將其投影到使得重投影誤差最小的一個平面上;在解算BA時,我們假設這個點是完美地位於平面上,以此來提升PnP解算的穩定性。

Structureless Plane-Distance Error(無結構的平面距離約束項)

在VIO的滑動視窗優化部分,我們利用了無結構的平面距離約束項。在對極幾何裡面,我們已知了一個點在多個位置的觀測,可以使用三角化的方法求解出其三維點座標。但是當觀測或視差不足時,這個方程的約束會變得不夠充分。我們對其增廣,把平面的約束也加入到這個Ax=b的結構中,最後再用正規方程得到三維點,並構建點到平面的距離的誤差項。

常規的平面約束項,都是在原有的重投影誤差項之外,額外再新增一個點到平面的距離誤差項,而我們的方法可以把兩者合二為一,替代原來的重投影誤差項。對於每個在平面上的三維點(Planar landmark)而言,它的m個重投影誤差項可以合併為1個無結構的誤差項。由於這些平面三維點的狀態不再參與到這一誤差項中,我們在邊緣化時也可以直接跳過這部分點。經實測,該方法對計算效率也有一定的提升。

實驗結果

下圖展現了PVIO、VINS-Mono和DSO在TUM-VI資料集Outdoors1序列(有2.7公里長)的軌跡恢復結果。從結果上看,PVIO的累積誤差比VINS-Mono更小,而DSO則無法正常恢復軌跡。

TUM-VI資料集Outdoors1序列的軌跡恢復結果對比

在整體精度上面,PVIO也優於一些先進的開源演算法,定位的均方根誤差RMSE(m)如下表所示,其中,“+/-Loop”表示開啟或者關閉迴路閉合;對於SVO2,“E+P”和“BA”表示使用Edgelet+Prior和集束調整;對於PVIO,“+/- Plane”表示開啟或者關閉平面約束;數值放置在括號中,表示軌跡完整性在80%以下;數值為×,表示軌跡完整性在50%以下(跟蹤丟失)。

EuRoC和TUM-VI資料集上的精度測試

下面的視訊展示了PVIO在EuRoC和TUM-VI資料集上實時恢復的相機運動軌跡。

PVIO的執行速度很快,可以在iPhone7上單執行緒實時執行。下圖展現了基於PVIO的AR效果,其中,一個虛擬的膝上型電腦放置在真實的膝上型電腦旁邊。

在智慧手機上的AR效果

論文:

Jinyu Li, Bangbang Yang, Kai Huang, Guofeng Zhang, and Hujun Bao*. Robust and Efficient Visual-Inertial Odometry with Multi-plane Priors. PRCV 2019, LNCS 11859, pp. 283–295, 2019.

下載連結:

http://www.cad.zju.edu.cn/home/gfzhang/projects/prcv2019-planeVIO.pdf

程式碼倉庫:

https://www.github.com/zju3dv/PVIO

點選原文開啟程式碼倉庫

本文僅做學術分享,如有侵權,請聯絡刪文。

下載1

在「3D視覺工坊」公眾號後臺回覆:3D視覺即可下載 3D視覺相關資料乾貨,涉及相機標定、三維重建、立體視覺、SLAM、深度學習、點雲後處理、多檢視幾何等方向。

下載2

在「3D視覺工坊」公眾號後臺回覆:3D視覺github資源彙總即可下載包括結構光、標定原始碼、缺陷檢測原始碼、深度估計與深度補全原始碼、點雲處理相關原始碼、立體匹配原始碼、單目、雙目3D檢測、基於點雲的3D檢測、6D姿態估計原始碼彙總等。

下載3

在「3D視覺工坊」公眾號後臺回覆:相機標定即可下載獨家相機標定學習課件與視訊網址;後臺回覆:立體匹配即可下載獨家立體匹配學習課件與視訊網址。

重磅!3DCVer-學術論文寫作投稿交流群已成立

掃碼新增小助手微信,可申請加入3D視覺工坊-學術論文寫作與投稿微信交流群,旨在交流頂會、頂刊、SCI、EI等寫作與投稿事宜。

同時也可申請加入我們的細分方向交流群,目前主要有3D視覺CV&深度學習SLAM三維重建點雲後處理自動駕駛、CV入門、三維測量、VR/AR、3D人臉識別、醫療影像、缺陷檢測、行人重識別、目標跟蹤、視覺產品落地、視覺競賽、車牌識別、硬體選型、學術交流、求職交流等微信群。

一定要備註:研究方向+學校/公司+暱稱,例如:”3D視覺+ 上海交大 + 靜靜“。請按照格式備註,可快速被通過且邀請進群。原創投稿也請聯絡。

▲長按加微信群或投稿

▲長按關注公眾號

3D視覺從入門到精通知識星球:針對3D視覺領域的知識點彙總、入門進階學習路線、最新paper分享、疑問解答四個方面進行深耕,更有各類大廠的演算法工程人員進行技術指導。與此同時,星球將聯合知名企業釋出3D視覺相關演算法開發崗位以及專案對接資訊,打造成集技術與就業為一體的鐵桿粉絲聚集區,近2000星球成員為創造更好的AI世界共同進步,知識星球入口:

學習3D視覺核心技術,掃描檢視介紹,3天內無條件退款

圈裡有高質量教程資料、可答疑解惑、助你高效解決問題

覺得有用,麻煩給個贊和在看~