91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ORB SLAM中涉及的一些基礎(chǔ)概念

新機器視覺 ? 來源:深藍(lán)學(xué)院 ? 作者:深藍(lán)學(xué)院 ? 2022-10-28 14:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文總結(jié)于上交感知與導(dǎo)航研究所科研助理——劉國慶關(guān)于【視覺SLAM開源算法ORB-SLAM3 原理與代碼解析】的公開課。

ORB-SLAM最早的版本在2014年的RSS上發(fā)布,在2016年作者又發(fā)布了ORB-SLAM2,接著在去年(2020年)發(fā)布了ORB-SLAM 3。ORB-SLAM1只能針對單目相機數(shù)據(jù)進行處理;ORB-SLAM 2 增加了對于雙目和RGB-D相機的處理,在回環(huán)檢測模塊增加了Full Global BA的處理;ORB-SLAM 3則增加了對于IMU融合的支持,兼容魚眼相機模型,并且增加了Altas多地圖的支持;同時,回環(huán)檢測為了支持多地圖的模式,提供了一種叫Welding BA的優(yōu)化方式。ORB -SLAM的作者將上述提到的各版本項目都開源了,為學(xué)術(shù)研究還是工程落地都提供了很好的參考。

1

首先來介紹一下ORB SLAM中涉及的一些基礎(chǔ)概念。

幀&關(guān)鍵幀:視覺SLAM都是對一個圖像序列進行處理,每一張圖像被稱為幀,而關(guān)鍵幀則是通過一定篩選機制得到的、具有一定代表性的圖像幀。

地圖點/路標(biāo)點:將圖像上被觀察到的特征點通過三角化等方式進行深度恢復(fù),我們就可以得到其對應(yīng)的在三維空間的位置,同時包含幀的觀測信息,這種點就被稱為地圖點或路標(biāo)點。

共視:當(dāng)一個地圖點被多幀觀察到時,我們就可以稱這幾幀有基于該地圖點的共視關(guān)系。

共視圖&本質(zhì)圖:我們可以把共視關(guān)系作用邊表示,關(guān)鍵幀用節(jié)點表示,就可以建立共視圖,而本質(zhì)圖在共視圖基礎(chǔ)上只保留具有較強共視關(guān)系的邊。

19664f5c-5680-11ed-a3b6-dac502259ad0.png

Altas(地圖集):ORB-SLAM 3提供了多地圖的存儲和拼接功能,在跟蹤丟失后可以嘗試將現(xiàn)有地圖和歷史地圖進行匹配、融合,并更新當(dāng)前的活躍地圖(Active Map)

數(shù)據(jù)關(guān)聯(lián):在語義SLAM中,第k幀檢測到物體Obj1、Obj2,第k+1幀檢測到物體Obj3、Obj4,確定Obj1和Obj3、Obj4中的哪一個是對真實世界中同一個物體的多次觀測,這是數(shù)據(jù)關(guān)聯(lián)的一個直觀例子。在間接法(特征法)SLAM中,表現(xiàn)為不同幀中的特征,哪些是對應(yīng)于同一個空間路標(biāo)點/地圖點的。在ORB3中考慮到的數(shù)據(jù)關(guān)聯(lián)包括短期內(nèi)滑動窗口中關(guān)鍵幀觀測到的路標(biāo)點和圖像特征的數(shù)據(jù)關(guān)聯(lián);中期的數(shù)據(jù)關(guān)聯(lián)是指圖像特征與局部地圖點的關(guān)聯(lián);長期的數(shù)據(jù)關(guān)聯(lián)包括利用場景識別技術(shù)和詞袋模型,在回環(huán)檢測、重定位等過程中的數(shù)據(jù)關(guān)聯(lián);而多地圖的數(shù)據(jù)關(guān)聯(lián)還可以實現(xiàn)地圖之間地圖點的匹配和融合。

ORB-SLAM 3的基本流程和此前的ORB版本沒有顯著的改變,只是也增加了部分新特性?;谠~袋模型的關(guān)鍵幀數(shù)據(jù)和之前差不多,每一個關(guān)鍵幀均會被存入數(shù)據(jù)庫用于回環(huán)檢測。地圖結(jié)構(gòu)上進行了改進,ORB-SLAM3使用Altas地圖集的結(jié)構(gòu),地圖中包含一個Active Map和若干個Non-active Map,每個Map均包括地圖點,關(guān)鍵幀,共視圖,Spanning Tree等信息。跟蹤線程添加了IMU的積分,并且和以前一樣進行關(guān)鍵幀的判斷和構(gòu)造;在LocalMapping線程中中執(zhí)行IMU的初始化,以及和之前相同的冗余關(guān)鍵幀和地圖點剔除、新地圖點的創(chuàng)建等工作;在回環(huán)檢測部分主要添加了多地圖的融合。

198b1c38-5680-11ed-a3b6-dac502259ad0.png

ORB-SLAM 3框架

總結(jié)一下,ORB-SLAM3的貢獻包括:

1、提供了一個單雙目VI-SLAM的系統(tǒng);

2、改善召回率的場景識別技術(shù);

3、多地圖機制;

4、抽象的相機表示。

2

抽象相機模型介紹

為什么ORB-SLAM3需要一個抽象的相機模型呢?

相比于傳統(tǒng)相機,魚眼相機超過180度的廣視角可以獲取更多的信息,但是因為它不符合針孔模型數(shù)學(xué)建模的假設(shè),導(dǎo)致uniform reprojection error的假設(shè)失效;如果對于圖像直接進行裁剪,將會導(dǎo)致外圍圖像丟失,反而喪失了魚眼相機大視角的優(yōu)勢。在ORB-SLAM3中,相機成像模型提供投影、反投影和相關(guān)的雅克比計算等函數(shù),并且將此前系統(tǒng)中的EPNP更換為MAP-PNP, 從而實現(xiàn)了相機成像模型與SLAM部分的解耦,還可以擴展,能將相同的SLAM pipeline用于大部分類型的相機。

此外,針對雙目相機模型,ORB-SLAM3也提供了一定的改善。ORB-SLAM2假設(shè)我們針對雙目相機預(yù)先進行了極線矯正,但是很多時候由于無法保證左右目相機光軸的絕對平行,極線糾正的效果也往往不好;而有些時候,我們需要使用兩個參數(shù)不同的相機進行觀測,而ORB-SLAM2無法兼容這類雙目相機,如類似RGB-D相機中焦距、分辨率相差巨大的彩色相機+近紅外相機,如果將彩色圖像和近紅外圖像組成雙目圖像,ORB-SLAM2無法綜合利用這對圖像估計相機位姿。在ORB-SLAM3中將左右兩目相機視作為具有固定位姿變換的兩臺單目相機使用,并且也不再限制兩臺相機必須具有足夠面積的、重疊的共視區(qū)域,解決了這個問題。

3

VISLAM實現(xiàn)和IMU初始化

ORB-SLAM3中VI-SLAM在ORB-SLAM-VI上進行了改進,包括:提供快速,準(zhǔn)確的IMU初始化;支持單雙目VI-SLAM;支持針孔/魚眼相機模型。在視覺和IMU融合方面,ORB-SLAM3在位姿求解時所建立優(yōu)化問題的殘差項,包括所有關(guān)鍵幀和上一幀IMU估計的殘差項,以及所有路標(biāo)點觀測的視覺誤差項。其中針對視覺路標(biāo)點的觀測,為了避免錯誤匹配造成的極端值的影響,嵌套了魯棒核函數(shù)。

IMU初始化的目的是為了得到Body系速度、重力方向和IMU偏置。ORB-SLAM3中初始化流程的設(shè)計建立在作者的幾點思考上:

1、ORB-SLAM純單目已經(jīng)可以初始化得到精確的地圖,尺度信息可以通過IMU得到;雙目圖像輸入下則尺度客觀,可以不考慮尺度信息的問題;

2、如果將尺度單獨作為優(yōu)化變量進行表示和優(yōu)化,效果比在BA中的隱式表達收斂更快;

3、IMU初始化過程中必須考慮傳感器的不確定性,否則會產(chǎn)生難以預(yù)測的巨大誤差。

接下來的討論IMU初始化問題時,均指單目輸入時的初始化。ORB3中IMU初始化的步驟包含三步,第一步是純視覺最大后驗估計(MAP),第二步是純慣性MAP,第三步是視覺+慣性MAP。針對純視覺MAP,我們提取初始化后2s內(nèi)10幀圖像進行純視覺BA,從而得到?jīng)]有尺度信息的相機位姿和路標(biāo)點位置。接下來我們進行只有IMU參與的初始化,最終得到的優(yōu)化結(jié)果是:幀位姿、速度和地圖點,并都具有正確的尺度;Body系Z軸將被旋轉(zhuǎn)到和重力方向一致;IMU的偏置被更新。第三步是視覺IMU聯(lián)合后驗估計,ORB-SLAM3只需要2秒就可以完成尺度的初始化,誤差在5%左右,此外,ORB-SLAM3還將進行只包含尺度因子和重力方向的優(yōu)化,10秒一次,用于避免傳感器運動緩慢時IMU激勵不夠的情況。

ORB-SLAM3中的跟蹤和建圖和ORB-SLAM-VI類似,在短期跟丟后,在滿足一定條件時會嘗試?yán)肐MU積分得到的位姿信息進行重定位;當(dāng)丟失持續(xù)一定時間后,將會重新初始化,創(chuàng)建新的Active map。

4

改進的回環(huán)檢測與多地圖融合

這一部分的內(nèi)容很大程度上和ORB-SLAM2是相同的,我們首先來回顧一下基本概念。

準(zhǔn)確率(PrecisionRate):檢測到的回環(huán)中正確的比率。

召回率(RecallRate):檢測到的回環(huán)占總真實回環(huán)數(shù)的比率。

在ORB-SLAM1/2中,僅通過DBoW詞袋數(shù)據(jù)庫就可實現(xiàn)50%~80%的準(zhǔn)確率和召回率。在回環(huán)時,通過增加幾何一致性和時間一致性檢驗,犧牲召回率來增加準(zhǔn)確率。ORB-SLAM3改進了回環(huán)檢測的速度,提高了召回率,并且增加了多地圖的部分。

尋找閉環(huán)幀的過程可以分為六步:

1.針對每一個新關(guān)鍵幀,在數(shù)據(jù)庫中查詢到三個最相似的關(guān)鍵幀;

2.嘗試對新關(guān)鍵幀及其共視關(guān)鍵幀,和候選關(guān)鍵幀及其共視關(guān)鍵幀進行數(shù)據(jù)關(guān)聯(lián);

3.利用匹配的特征點和地圖點求解位姿轉(zhuǎn)換;

4.利用位姿變換的初始估計,進行點云重投影尋找新的匹配,并且進行位姿的優(yōu)化求精

5.對時間一致性的檢驗,此前的步驟相對復(fù)雜,在ORB-SLAM3中局部地圖里面已有關(guān)鍵幀的共視信息進行判斷;

6.利用重力方向?qū)τ诨丨h(huán)結(jié)果進行檢查。

回環(huán)檢測后是進行回環(huán)還是地圖合并,取決于當(dāng)前關(guān)鍵幀檢測到的回環(huán)關(guān)鍵幀是在當(dāng)前的active map還是在其他map。當(dāng)對non-active map和active map進行融合時,共視圖和本質(zhì)圖同步更新,active map中的信息被追加到歷史地圖中,匹配到的non-active map變成新的map。

5

總結(jié)

總體來說,ORB-SLAM3的流程和ORB-SLAM1/2非常相似,對于ORB-SLAM系列熟悉的同學(xué)應(yīng)該很容易上手;相機模型的抽象處理,使得SLAM位姿求解過程和相機成像模型解耦,理論上支持絕大多數(shù)成像模型的相機;通過對于IMU的支持,ORB-SLAM系列加入了VI-SLAM的大家庭,也表明多傳感器融合的SLAM是目前一大發(fā)展趨勢;多地圖的機制有利于跟丟后保留盡可能多的信息用于后續(xù)補救,也為后續(xù)實現(xiàn)多機器協(xié)同的SLAM提供了工作基礎(chǔ)。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4708

    瀏覽量

    95314
  • SLAM
    +關(guān)注

    關(guān)注

    24

    文章

    440

    瀏覽量

    32485
  • orb
    orb
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    10034

原文標(biāo)題:視覺SLAM開源算法ORB-SLAM3 原理與代碼解析

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    在低功耗藍(lán)牙產(chǎn)品開發(fā)的過程,會涉及一些參數(shù)的選擇和設(shè)定,這些參數(shù)是什么意思,該如何設(shè)定呢?(藍(lán)牙廣播)

    在低功耗藍(lán)牙產(chǎn)品開發(fā)的過程,會涉及一些參數(shù)的選擇和設(shè)定,這些參數(shù)是什么意思,該如何設(shè)定呢?在此介紹一些: 藍(lán)牙的廣播類型(Advertising Type) 可連接廣播(ADV_I
    發(fā)表于 06-25 18:25

    Debian和Ubuntu哪個好一些?

    兼容性對比Debian和Ubuntu哪個好一些,并為您揭示如何通過RAKsmart服務(wù)器釋放Linux系統(tǒng)的最大潛能。
    的頭像 發(fā)表于 05-07 10:58 ?322次閱讀

    樹莓派在自動化控制項目中的一些潛在應(yīng)用

    自動化控制項目中的一些潛在應(yīng)用。之前,我們已經(jīng)為Arduino平臺探討了相同的話題。我們確定Arduino是個出色的教育工具,但由于一些限制,它無法在工業(yè)環(huán)境完全
    的頭像 發(fā)表于 03-25 09:45 ?206次閱讀
    樹莓派在自動化控制項目中的<b class='flag-5'>一些</b>潛在應(yīng)用

    種基于點、線和消失點特征的單目SLAM系統(tǒng)設(shè)計

    本文提出了種穩(wěn)健的單目視覺SLAM系統(tǒng),該系統(tǒng)同時利用點、線和消失點特征來進行精確的相機位姿估計和地圖構(gòu)建,有效解決了傳統(tǒng)基于點特征的SLAM的局限性。
    的頭像 發(fā)表于 03-21 17:07 ?445次閱讀
    <b class='flag-5'>一</b>種基于點、線和消失點特征的單目<b class='flag-5'>SLAM</b>系統(tǒng)設(shè)計

    獨立服務(wù)器和云服務(wù)器哪個快一些?

    獨立服務(wù)器和云服務(wù)器哪個快一些?在數(shù)字服務(wù)部署,獨立服務(wù)器與云服務(wù)器的速度差異并非絕對,需結(jié)合資源配置與應(yīng)用場景綜合判斷。以下是UU云對獨立服務(wù)器和云服務(wù)器的核心維度對比分析:
    的頭像 發(fā)表于 02-05 10:08 ?400次閱讀

    AN29-關(guān)于DC-DC轉(zhuǎn)換器的一些想法

    電子發(fā)燒友網(wǎng)站提供《AN29-關(guān)于DC-DC轉(zhuǎn)換器的一些想法.pdf》資料免費下載
    發(fā)表于 01-08 13:57 ?0次下載
    AN29-關(guān)于DC-DC轉(zhuǎn)換器的<b class='flag-5'>一些</b>想法

    利用VLM和MLLMs實現(xiàn)SLAM語義增強

    語義同步定位與建圖(SLAM)系統(tǒng)在對鄰近的語義相似物體進行建圖時面臨困境,特別是在復(fù)雜的室內(nèi)環(huán)境。本文提出了種面向?qū)ο?b class='flag-5'>SLAM的語義增強(SEO-
    的頭像 發(fā)表于 12-05 10:00 ?1331次閱讀
    利用VLM和MLLMs實現(xiàn)<b class='flag-5'>SLAM</b>語義增強

    一些常見的動態(tài)電路

    無論是模電還是數(shù)電,理論知識相對來說還是比較枯燥,各種電路原理理解清楚不算容易,換種生動形象的方式或許會增加一些趣味性,也更容易理解這些知識。下面整理了一些常見的電路,以動態(tài)圖形的方式展示。 整流
    的頭像 發(fā)表于 11-16 09:26 ?1114次閱讀
    <b class='flag-5'>一些</b>常見的動態(tài)電路

    分享一些常見的電路

    理解模電和數(shù)電的電路原理對于初學(xué)者來說可能比較困難,但通過一些生動的教學(xué)方法和資源,可以有效地提高學(xué)習(xí)興趣和理解能力。 下面整理了一些常見的電路,以動態(tài)圖形的方式展示。 整流電路 單相橋式整流
    的頭像 發(fā)表于 11-13 09:28 ?819次閱讀
    分享<b class='flag-5'>一些</b>常見的電路

    激光雷達在SLAM算法的應(yīng)用綜述

    、文章概述 1.1 摘 要 即時定位與地圖構(gòu)建(simultaneous localization and mapping,SLAM)是自主移動機器人和自動駕駛的關(guān)鍵 技術(shù)之,而激光雷達則是支撐
    的頭像 發(fā)表于 11-12 10:30 ?2507次閱讀
    激光雷達在<b class='flag-5'>SLAM</b>算法<b class='flag-5'>中</b>的應(yīng)用綜述

    MG-SLAM:融合結(jié)構(gòu)化線特征優(yōu)化高斯SLAM算法

    同步定位與地圖構(gòu)建 (SLAM) 是計算機視覺個基本問題,旨在在同時跟蹤相機姿勢的同時對環(huán)境進行地圖構(gòu)建?;趯W(xué)習(xí)的密集 SLAM 方法,尤其是神經(jīng)輻射場 (NeRF) 方法,在
    的頭像 發(fā)表于 11-11 16:17 ?872次閱讀
    MG-<b class='flag-5'>SLAM</b>:融合結(jié)構(gòu)化線特征優(yōu)化高斯<b class='flag-5'>SLAM</b>算法

    Linux應(yīng)用編程的基本概念

    Linux應(yīng)用編程涉及到在Linux環(huán)境下開發(fā)和運行應(yīng)用程序的系列概念。以下是一些涵蓋Linux應(yīng)用編程的基本概念。
    的頭像 發(fā)表于 10-24 17:19 ?642次閱讀

    從算法角度看 SLAM(第 2 部分)

    ,分別是基于濾波器的 SLAM、基于圖形的 SLAM 和基于深度學(xué)習(xí)的 SLAM。 基于濾波器的 SLAMSLAM 視為狀態(tài)估計問題。
    的頭像 發(fā)表于 10-02 16:39 ?780次閱讀
    從算法角度看 <b class='flag-5'>SLAM</b>(第 2 部分)

    LED驅(qū)動器應(yīng)用的一些指南和技巧

    電子發(fā)燒友網(wǎng)站提供《LED驅(qū)動器應(yīng)用的一些指南和技巧.pdf》資料免費下載
    發(fā)表于 09-25 11:35 ?0次下載
    LED驅(qū)動器應(yīng)用的<b class='flag-5'>一些</b>指南和技巧
    主站蜘蛛池模板: 视频h在线 | 噜噜噜色噜噜噜久久 | 国产精品久久久久久久久免费hd | 国产色婷婷精品综合在线 | 国产精品福利午夜一级毛片 | 日本在线观看一区 | 欧美 ed2k| 亚洲青青草原 | 中国成熟xxx视频 | 久在草影院 | 免费高清在线爱做视频 | 五月丁香啪啪 | 免费看国产一级片 | 国产在线观看网址你懂得 | 欧美一级片网址 | 大香伊在人线免费 | 国产资源网 | 久久综合狠狠综合久久综合88 | 激情福利网 | 亚洲啪啪| 日本黄色免费在线观看 | www.久久在线 | 精品国内视频 | xxⅹ丰满妇女与善交 | 8050网午夜一级毛片免费不卡 | 男女免费视频 | 国产精品自线在线播放 | 视频一区 在线 | xxxx性×xx| seba51久久精品 | 国产亚洲精品久久久久久午夜 | 五月天婷婷免费视频观看 | 一级黄色片在线看 | 欧美一级视频免费观看 | 欧洲妇女成人淫片aaa视频 | 四虎影音在线观看 | 国产精品午夜国产小视频 | 就去色播 | 久久综合久久久 | 久久亚洲国产成人精品性色 | 天天干天天舔天天操 |