影音先锋影av色资源网_国产一区内射最近更新_善良的妽妽8在线观看_亚洲色婷婷一区二区三区 久久久久人妻一区精品伊人_亚洲精品无码成人区久久_亚洲日本一区二区_亚洲啪精品视频网站免费

多種視覺SLAM方案對(duì)比(選擇SLAM方案四大要點(diǎn))

在SLAM研究中,我們通常需要在各數(shù)據(jù)集上測(cè)試各個(gè)方案的性能情況。如下主要對(duì)表1中6個(gè)視覺SLAM方案進(jìn)行相關(guān)測(cè)試,測(cè)試其在不同場(chǎng)景、要求下的精度和魯棒性,并給出最終方案選型。

【由于時(shí)間、場(chǎng)地等原因,整合前人測(cè)試結(jié)果,在此附上鏈接,謝謝大神的分享!】

**

開源SLAM方案選型:

**

多種視覺SLAM方案對(duì)比

**

數(shù)據(jù)集:

**

多種視覺SLAM方案對(duì)比

一、ORB-SLAM2

檢測(cè)流程:Kinect生成地圖【地圖主要可見的有關(guān)鍵幀(包括相機(jī)的pose,相機(jī)的內(nèi)參,ORB特征),3D的地圖點(diǎn)( 空間中3D位置,法線方向,ORB的描述子),詞袋向量,共視圖等】 → 保存地圖 → 加載地圖和重定位

缺點(diǎn):1、不能解決實(shí)際問題。它基于特征點(diǎn)法,建的圖是稀疏的,只能滿足定位需求,而無法提供導(dǎo)航、避障、交互等諸多功能。而且目前還沒有開放存儲(chǔ)和讀取地圖后重新定位的功能。

2、受光照和車輛、行人等動(dòng)態(tài)物體的影響太大

后續(xù)工作:對(duì)前端數(shù)據(jù)進(jìn)行軌跡的優(yōu)化和回環(huán),稠密建圖

【自我備注:1、保存稀疏地圖的MapPoint和KeyFrame成.bin格式 ;2、如果保存成pcd格式,那么關(guān)鍵幀與關(guān)鍵點(diǎn)之間的關(guān)系沒有辦法保存。。。即pcd保存的地圖信息并不完整】

二、VINS MONO

參考博文:https://blog.csdn.net/Darlingqiang/article/details/80689123

實(shí)現(xiàn)原理:用緊耦合方法實(shí)現(xiàn)的,通過單目+IMU恢復(fù)出尺度

目標(biāo):AR

整體框架:

1、Measurement Preprocessing:觀測(cè)值數(shù)據(jù)預(yù)處理,包含圖像數(shù)據(jù)跟蹤IMU數(shù)據(jù)預(yù)積分;

2、Initialization:初始化,包含單純的視覺初始化和視覺慣性聯(lián)合初始化;

3、Local Visual-Inertia BA and Relocalization:局部BA聯(lián)合優(yōu)化和重定位,包含一個(gè)基于滑動(dòng)窗口的BA優(yōu)化模型;

4、 Loop detection and Global Pose Graph Optimization:回環(huán)檢測(cè);全局圖優(yōu)化,只對(duì)全局的位姿進(jìn)行優(yōu)化;

多種視覺SLAM方案對(duì)比

代碼解讀:

VINS代碼主要包含在兩個(gè)文件中:

1、feature_tracker 接收?qǐng)D像,使用KLT光流算法跟蹤

2、vins_estimate 包含相機(jī)和IMU數(shù)據(jù)的前端預(yù)處理(也就是預(yù)積分過程)、單目慣性聯(lián)合初始化(在線的標(biāo)定過程)、基于滑動(dòng)窗口的BA聯(lián)合優(yōu)化、全局的圖優(yōu)化和回環(huán)檢測(cè)

vins主要就是兩個(gè)節(jié)點(diǎn):

1、一個(gè)節(jié)點(diǎn)算前端,為feature_tracker_node.cpp

2、另一個(gè)節(jié)點(diǎn)算后端,為estimator_node.cpp

多種視覺SLAM方案對(duì)比

三、ORB_SLAM2、VI ORB SLAM2 、 VINS Mono對(duì)比實(shí)驗(yàn)

參考鏈接:http://www.liuxiao.org/2018/02/vi-orb-slam2-與-vins-對(duì)比實(shí)驗(yàn)/

主要指標(biāo):均方根誤差

多種視覺SLAM方案對(duì)比

實(shí)驗(yàn)結(jié)果:

1、ORB 與 VI ORB 對(duì)比

多種視覺SLAM方案對(duì)比

由表可以看出:

1)雙目 VIO 比單目 VIO 效果要更好也更穩(wěn)定;

2)原始 VO 的優(yōu)化已經(jīng)比較徹底,IMU 誤差項(xiàng)的加入給優(yōu)化結(jié)果造成了更多的不穩(wěn)定性,加入 IMU 的版本均不如原始雙目版本的精度。

2、VI ORB 與 VINS Mono 對(duì)比(開啟閉環(huán))

多種視覺SLAM方案對(duì)比

由表可以看出:

1)VINS Mono 精度與VIORB Mono/Stereo比,精度要高一些;

2)VI ORB 是不能完全跑過所有測(cè)試集的,特別是快速運(yùn)動(dòng)的 V2_03_difficult 測(cè)試集結(jié)尾階段會(huì)跟丟;而vins mono采用的光流跟蹤,不易跟丟。

3、VI ORB 與 VINS Mono 對(duì)比(關(guān)閉閉環(huán))

多種視覺SLAM方案對(duì)比

由表可以看出:

VINS Mono 對(duì)閉環(huán)依賴較大,在關(guān)閉閉環(huán)后,VINS Mono 的性能下降較多。

4、實(shí)驗(yàn)小結(jié)

1)在沒有閉環(huán)情況下,VINS Mono 精度略低于 VIORB;而在有閉環(huán)情況下,二者精度差距不大。

2)由于開源 VIORB 版本并非官方實(shí)現(xiàn),與官方版本有很多不同之處,沒有辦法測(cè)試真實(shí)官方 VIORB 的性能;但基本可以看出對(duì)于VI ORB SLAM2 框架,IMU 的引入主要是在快速運(yùn)動(dòng)時(shí)能夠減少一些丟失,而精度上與 VO 相近或略有下降;

3)以光流作為前端的 VINS Mono 比描述子作為前端的 VIORB 具有更好的魯棒性,在快速運(yùn)動(dòng)時(shí)更不容易丟失。因此在類似于無人機(jī)這樣的場(chǎng)景,VINS 應(yīng)該是比 VIORB 更好的選擇;而對(duì)于精度要求較高、場(chǎng)景更大而運(yùn)動(dòng)較慢的場(chǎng)景,VIORB /ORB仍然更合適;

4)不論是否引入 IMU,雙目對(duì)于精度和魯棒性都會(huì)有一定的提升,VINS Fusion相比于vins mono,性能有所提升;{精度——慢速,雙目;魯棒——快速}

5)除前端差別較大外(比如光流與ORB、滑窗與局部地圖),雖然都是預(yù)積分,二者后端算法與實(shí)現(xiàn)亦有較大不同(李代數(shù)與四元數(shù)參數(shù)化不同、積分方式不同、g2o與ceres實(shí)現(xiàn)差別等),因此造成性能差異的原因較復(fù)雜。

5、 VI ORB-SLAM初始化與VINS初始化對(duì)比(將vi orb-slam初始化方法移植到vins中)

四、VIO:飛行機(jī)器人單目VIO算法測(cè)評(píng)

參考鏈接:https://blog.csdn.net/u012348774/article/details/81414264

核心思想:

全面的比較了各種公開的單目VIO算法(MSCKF、OKVIS、ROVIO、VINS-Mono、SVO+MSF和SVO+GTSAM);

在多個(gè)嵌入式平臺(tái)上(Laptop,Intel NUC,UP Board,ODROID)測(cè)試了各種單目VIO算法,并分析了算法的表現(xiàn);

3.選用EuRoC MAV數(shù)據(jù)集。

結(jié)論:SVO+MSF是計(jì)算效率最高的算法,而VINS-Mono是狀態(tài)估計(jì)精度最高的算法,ROVIO則處于兩者之間

五、VINS FUSION

推薦鏈接:https://blog.csdn.net/huanghaihui_123/article/details/86518880

發(fā)布信息:港科大 2019年1月12號(hào)

版本:

(1)單目+imu

(2)純雙目

(3)雙目+imu

(4)雙目+imu+GPS

和vins mono相比:

對(duì)比于VINS Mono,主要增加了global_fusion包,用來融合GPS以及視覺IMU定位的結(jié)果。代碼結(jié)構(gòu),之前的pose_graph節(jié)點(diǎn)更名為loop_fusion,之前的feature_track節(jié)點(diǎn)融合進(jìn)vins_estimator內(nèi)部。vins_estimator中的factor殘差項(xiàng)增加了很多,主要是視覺的殘差項(xiàng)增加。

優(yōu)勢(shì):可以靜止進(jìn)行初始化;尺度信息不一定完全依靠IMU(有雙目),不會(huì)造成尺度不可關(guān)的情況;魯棒性上,雙目明顯優(yōu)于單目;

劣勢(shì):由于視覺誤匹配等各種原因,雙目的精度會(huì)比單目差一點(diǎn)。

【自我備注:使用vinsfusion閉環(huán)跑KITTI的純雙目數(shù)據(jù)集,跑出來的output結(jié)果有vio.txt位姿文件,但這個(gè)沒有閉環(huán),閉環(huán)的數(shù)據(jù)在單獨(dú)的vio_loop.csv文件里,這個(gè)文件里的數(shù)據(jù)只有閉環(huán)幀,而且數(shù)據(jù)格式和真實(shí)軌跡不一樣,不是12列。如何將閉環(huán)的vio_loop.csv數(shù)據(jù)融合到未閉環(huán)的vio.txt數(shù)據(jù)里,然后畫出閉環(huán)后的整體軌跡估計(jì)?】

六、RTAB-MAP

概述:與其他視覺slam方案不同在于提供了一個(gè)與時(shí)間和尺度無關(guān)的基于外觀的定位與構(gòu)圖解決方案,優(yōu)化了大型環(huán)境的在線閉環(huán)檢測(cè)問題,主要是利用計(jì)算權(quán)重使得只利用有限數(shù)量的定位點(diǎn)參與閉環(huán)檢測(cè),但是若需要也可以訪問全局的定位點(diǎn)。

流程:開始->特征提取和匹配->求兩兩幀的視覺里程計(jì)->優(yōu)化php的結(jié)果->局部地圖->運(yùn)動(dòng)狀態(tài)估計(jì)->運(yùn)動(dòng)狀態(tài)估計(jì)->位姿圖->詞袋模型->相似度計(jì)算->結(jié)束

特征點(diǎn):使用詞袋法創(chuàng)建圖像的簽名,基于opencv從圖像中提取SURF特征來得到視覺單詞。

建圖方式:1.Octomap(3d占用柵格地圖)

2.稠密點(diǎn)云地圖

3.2d占用柵格地圖

ROS節(jié)點(diǎn):輸入:1.TF(傳感器相對(duì)于機(jī)器人底座的位置)

2.里程計(jì)

3.相機(jī)輸入以及帶有校準(zhǔn)的信息

輸出:1.Map Data和Graph

優(yōu)點(diǎn):1.適用于長期和大規(guī)模環(huán)境在線建圖的要求

2.里程計(jì)魯棒性較好好且低漂移

3.定位魯棒性較好

4.地圖生成開發(fā)實(shí)用且簡(jiǎn)便

5.提供軟件包

缺點(diǎn):1.方案偏向于商品化,二次開發(fā)難

參考:https://blog.51cto.com/remyspot/1784914

七、RGBD-SLAM V2

概述:系統(tǒng)前端為視覺里程計(jì),從每一幀的RGB提取特征,計(jì)算描述符,RANSAC+ICP計(jì)算兩幀之間的運(yùn)動(dòng)估計(jì),并提出了一個(gè)EMM(環(huán)境測(cè)量模型)判斷運(yùn)動(dòng)估計(jì)是否可以接受,后端回環(huán)檢測(cè)基于G2O的位姿圖優(yōu)化

特征點(diǎn):1.SIFT by GPU(綜合表現(xiàn)最好)

2.SURF by CPU(OPENCV)

3.ORB by CPU (OPENCV)(準(zhǔn)確率,實(shí)時(shí)性更加好)

建圖方式:八叉樹地圖octomap(利于導(dǎo)航 ; 易于更新 ;存儲(chǔ)方式比較省空間)

優(yōu)點(diǎn):1.二次開發(fā)較容易,可以在其基礎(chǔ)上繼續(xù)開發(fā)

缺點(diǎn):1.實(shí)時(shí)性相對(duì)較差,相機(jī)要慢速運(yùn)動(dòng)

參考:http://www.cnblogs.com/voyagee/p/7027076.html

八、RTAB-MAP和RGBD-SLAM V2的對(duì)比

系統(tǒng)構(gòu)建:

1、RGBD_SLAM V2是一個(gè)非常全面優(yōu)秀的系統(tǒng),將SLAM領(lǐng)域的圖像特征、優(yōu)化、閉環(huán)檢測(cè)、點(diǎn)云、octomap等技術(shù)融為一體,

2、RTAB-Map是當(dāng)前最優(yōu)秀的RGBD SLAM

開發(fā):RGBD_SLAM2適合RGBD SLAM初學(xué)者,也可以在其基礎(chǔ)上繼續(xù)開發(fā)。

RTAB-MAP二次開發(fā)難度較高(著名的Google Tango(見如何評(píng)價(jià)Google 的 Project Tango和Google Project Tango 有哪些黑科技)就是使用RTAB-Map做SLAM,)

實(shí)時(shí)性:RGBD_SLAM2的缺點(diǎn)是其算法實(shí)時(shí)性不好,相機(jī)必須慢速運(yùn)動(dòng),

RTABMAP 通過STM/WM/LTM的內(nèi)存管理機(jī)制,減少圖優(yōu)化和閉環(huán)檢測(cè)中需要用到的結(jié)點(diǎn)數(shù),保證實(shí)時(shí)性以及閉環(huán)檢測(cè)的準(zhǔn)確性,能夠在超大場(chǎng)景中運(yùn)行。

回環(huán)檢測(cè):RGBDSLAMV2:相機(jī)較快運(yùn)動(dòng)時(shí),會(huì)出現(xiàn)很大的地圖重疊。

RTABMAP:穩(wěn)定性相對(duì)較好,但是也不穩(wěn)定。

個(gè)人:實(shí)際運(yùn)行中RGBD SLAM V2用點(diǎn)云表達(dá),點(diǎn)云表達(dá)方式耗費(fèi)內(nèi)存,時(shí)間較長后,三維空間中的點(diǎn)云數(shù)量增多,畫面出現(xiàn)明顯的卡頓,但采集得結(jié)果細(xì)節(jié)表現(xiàn)得很好

RTAB-MAP實(shí)際運(yùn)行過程中,畫面比較流暢,但是是使用3d柵格占用地圖表現(xiàn)的,細(xì)節(jié)表現(xiàn)得也不錯(cuò)。

九、RTAB-MAP和ORB-SLAM的對(duì)比

系統(tǒng)構(gòu)建:RTAB-MAP:框架較全面,支持聯(lián)合建圖,建立的地圖包括三維稠密點(diǎn)云和二維柵格地圖(可以直接從ros獲取二進(jìn)制程序)

ORB-SLAM:只滿足了定位的需求,無法提供導(dǎo)航,避障,交互等諸多功能 。

代碼可讀性:RTAB-MAP:差,基本上封裝了。

ORB-SLAM:可讀性好。

應(yīng)用:RTAB-MAP:適合作為slam應(yīng)用

ORB-SLAM:適合研究使用

計(jì)算量:RTAB-MAP:內(nèi)存管理方法計(jì)算量相對(duì)較小

ORB-SLAM:三線程結(jié)構(gòu),必須對(duì)每幅圖像計(jì)算一遍orb特征,耗時(shí)和計(jì)算量大

回環(huán)檢測(cè):RTAB-MAP:回環(huán)檢測(cè)只訪問有限數(shù)量的定位點(diǎn)

ORB-SLAM:優(yōu)秀的回環(huán)檢測(cè)算法保證了ORB-SLAM2有效地防止累積誤差,并且在丟失之后還能迅速找回,這一點(diǎn)許多現(xiàn)有的SLAM系統(tǒng)都不夠完善。為此,ORB-SLAM2在運(yùn)行之前必須加載一個(gè)很大的ORB字典 。

十、SLAM算法對(duì)比:

一:視覺和IMU前端數(shù)據(jù)處理

對(duì)于視覺前端做法基本分為三種:

①特征點(diǎn)提取(feature detection)+根據(jù)描述子匹配特征點(diǎn)

orbslam, okvis

優(yōu)點(diǎn):因?yàn)橛忻枋鲎?,因此?duì)地圖的維護(hù)很方便(包括重定位,閉環(huán),全局優(yōu)化)

尤其是對(duì)室內(nèi)環(huán)境,當(dāng)視覺上共視關(guān)系較多的時(shí)候,這種方法能很大提高定位精度和局部的穩(wěn)定性。室內(nèi)移動(dòng)機(jī)器人建議使用這種方法

缺點(diǎn):每幀圖像都要提取特征點(diǎn)數(shù)量的描述子,浪費(fèi)時(shí)間;在tracking過程中,如果運(yùn)動(dòng)過快(圖像出現(xiàn)模糊)比較容易tracking failed,而光流要好一些

②特征點(diǎn)提取+光流跟蹤

vins,svo的初始化

優(yōu)點(diǎn):簡(jiǎn)單高效,tracking要魯棒一些

缺點(diǎn):不容易構(gòu)建全局map,視覺約束只靠滑窗里面的關(guān)鍵幀。

比如vins的閉環(huán)和重定位是需要另外再提取特征點(diǎn)和描述子的;但后端做得好

③直接法

lsdslam,dso

優(yōu)點(diǎn):在弱紋理下,魯棒性好

缺點(diǎn):不容易維護(hù)全局地圖,對(duì)光照影響較大,高精度地圖中無法使用等。

對(duì)于IMU前端:

IMU前端基本都是使用預(yù)積分的方式,和積分的區(qū)別(預(yù)積分把重力考慮進(jìn)去了)。imu預(yù)積分主要是在兩幀圖像之間更新imu的5個(gè)狀態(tài)變量(p, v, q, ba, bg)的Jacobian和covariance。

PS:為了使得非線性優(yōu)化中,不用每次改變位姿后,積分需要重新計(jì)算的問題。

現(xiàn)在改變位姿(速度,位移,旋轉(zhuǎn)四元數(shù)關(guān)于世界坐標(biāo)系的),預(yù)積分內(nèi)的項(xiàng)保持不變。

改變ba,bg(加速度和陀螺儀偏移)后,預(yù)積分的項(xiàng)可以通過泰勒一階展開來進(jìn)行更新。

jacobian是單位矩陣,主要是為了求一階近似的p, v,q;covariance是零矩陣,主要是為了求imu誤差項(xiàng)的權(quán)重

IMU初值確定:一般結(jié)合vins mono 等的視覺信息來求

二:后端優(yōu)化

濾波:不需要做邊緣化,重定位難。因?yàn)椴恍枰?,速度略快?/p>

**優(yōu)化:**需要邊緣化(比較耗時(shí)間),重定位容易。迭代優(yōu)化,速度略慢。

VINS-Mono與OKVIS類似,是基于非線性優(yōu)化器優(yōu)化一個(gè)滑窗內(nèi)的關(guān)鍵幀,幀間通過魯棒的角點(diǎn)關(guān)聯(lián)。在系統(tǒng)初始化階段,通過松耦合的方式融合多種傳感器;在重定位階段,則通過緊耦合的方式融合傳感器。在優(yōu)化之前,也通過IMU預(yù)積分減少計(jì)算量。除此至外,VINS還提供了基于4DoF的位姿圖優(yōu)化和回環(huán)檢測(cè)。

十一、實(shí)體測(cè)試

多種視覺SLAM方案對(duì)比

十二、方案選型(個(gè)人觀點(diǎn),不喜勿噴)

通過上述調(diào)研,出于資源等的考慮,初步將ORB_SLAM2、 VINS FUSION、RTAB MAP 和LSD SLAM列入后期調(diào)研中,擬再花兩周進(jìn)行相機(jī)選型和實(shí)體場(chǎng)景測(cè)試,先給出現(xiàn)階段調(diào)研結(jié)果,希望大家相互學(xué)習(xí),共同進(jìn)步!

作者為CSDN博主「lark_ying」

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至2161241530@qq.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。如若轉(zhuǎn)載,請(qǐng)注明出處:http://www.sdanke.com/uncategorized/40746/

(0)

相關(guān)推薦

發(fā)表評(píng)論

登錄后才能評(píng)論