SLAM 0 初識

0 初步認(rèn)知

知乎Live:暢談 SLAM 即時定位建圖技術(shù)
視覺SLAM漫淡

SLAM:simultaneous localization and mapping 即時定位與地圖構(gòu)建

  • SLAM分為視覺SLAM(用視覺信息)诵冒、激光SLAM(用激光信息)汽馋。區(qū)別只在于數(shù)據(jù)的來源,視覺SLAM用視覺里程計(jì)豹芯,而后端铁蹈、回環(huán)檢測、建圖并不在乎數(shù)據(jù)是從哪來的容诬。其實(shí)對于回環(huán)檢測來說沿腰,用視覺中比激光有效,因?yàn)橐曈X信息比激光信息更豐富习蓬,判斷這兩個圖像是同一個地方措嵌,比判斷兩個激光數(shù)據(jù)采自同一地點(diǎn),要容易押赊。
  • 本文專注于視覺SLAM
0.1 SLAM中四個問題
  • localization定位包斑、mapping建圖、navigation導(dǎo)航神帅、exploration探索
0.2 視覺SLAM的模塊
  • 傳感器:主要分為單目相機(jī)萌抵、雙目相機(jī)、RGB-D相機(jī)霎桅。
  • 前端:視覺里程計(jì)(與計(jì)算機(jī)視覺讨永、測量幾何相關(guān),分為基于特征點(diǎn)的視覺里程計(jì)揭糕、基于直接法的視覺里程計(jì)),由于用的是計(jì)算機(jī)視覺的方法著角,在運(yùn)動過程中會產(chǎn)生累積誤差,最后造成drift漂移奄容,故得到的是粗略的位置和幾何估計(jì)锨侯。
    · 基于特征點(diǎn)的視覺里程計(jì):以 (Oriented FAST and Rotated BRIEF) ORB-SLAM為代表。
    · 基于直接法的視覺里程計(jì):以 Large-Scale Direct (LSD) 大規(guī)模直接法Semi-Direct Monocular Visual Odometry (SVO) 半直接單目視覺里程計(jì) 為代表深滚,由光流法發(fā)展而來涣觉。
  • 后端:非線性優(yōu)化(現(xiàn)在主流的方法),優(yōu)化得到更精確的軌跡和地圖生兆。
    后端在很長一段時間使用以 Kalman Filter (KF) 卡爾曼濾波器Extended Kalman Filter (EKF) 擴(kuò)展卡爾曼濾波器 為代表的濾波器方法膝宁;近年來受到structure from motion 領(lǐng)域的影響,開始大規(guī)模使用非線性優(yōu)化來對軌跡和地圖進(jìn)行進(jìn)一步的優(yōu)化合蔽。
  • 回環(huán)檢測詞袋模型(主流方法)介返,檢測機(jī)器人什么時候回到了之前的位置,從而消除累積誤差刃宵。
  • 建圖:根據(jù)之前得到的相機(jī)軌跡和粗略地圖來估計(jì)更加精確的地圖徘公。

下面是各模塊中部分重要概念

1 前端 —— Visual Odometry 視覺里程計(jì)

大牛講堂|SLAM最終話:視覺里程計(jì)

1.1 基于特征點(diǎn)(稀疏)
  • 計(jì)算特征點(diǎn)步淹、特征點(diǎn)匹配诚撵、重構(gòu)寿烟。由于只重構(gòu)特征點(diǎn)辛燥,所以是稀疏的。
  • 缺點(diǎn):提取特征點(diǎn)過程中徘六,丟棄了大量的有用信息榴都,對于一張640x480的圖像,原本有30萬左右的像素竿音,但是我們只用了其中幾百個特征點(diǎn)而已拴驮;特征缺失問題,即我們無法保證對于每個圖宽气,都能提以足夠的潜沦、有效的特征點(diǎn),比如一面白墻窃判。
1.2 光流法
  • 以LK光流(稀疏)為例:計(jì)算關(guān)鍵點(diǎn)(沒有描述子)喇闸,根據(jù)這些點(diǎn)的運(yùn)動計(jì)算相機(jī)運(yùn)動
  • 缺點(diǎn):需要灰度不變假設(shè),不是只對于關(guān)鍵點(diǎn)這一個像素唆樊,而是比如4*4的區(qū)域在兩幀之間假設(shè)灰度不變刻蟹;并沒有考慮相機(jī)的旋轉(zhuǎn)和物體的縮放,也就是說如果相機(jī)發(fā)生旋轉(zhuǎn)或者物體發(fā)生了縮放片效,就不準(zhǔn)了;沒考慮相機(jī)的參數(shù)昙读,僅基于圖像去計(jì)算膨桥,但我倒覺得是好事,這樣不需要知道相機(jī)參數(shù)也是可以做的沮稚,但是可能這樣利用的信息比較少册舞。
1.3 基于直接法(稠密)

直接法

  • 直接法跳過了提取特征點(diǎn)的步驟,直接根據(jù)像素信息來估計(jì)相機(jī)的運(yùn)動囚似。所以是稠密的线得。
  • 缺點(diǎn):利用了所有信息之后贯钩,使得優(yōu)化問題規(guī)模遠(yuǎn)遠(yuǎn)大于使用特征點(diǎn)的規(guī)模办素,多需GPU加速才能達(dá)到實(shí)時;由于圖像的非凸性性穿,直接用像素計(jì)算極易陷入局部最優(yōu),且需要假設(shè)同一個點(diǎn)在不同視角下灰度相同(即灰度不變假設(shè)吗坚,然后解一個最小化光度誤差的優(yōu)化問題)商源,故只有在圖像足夠相似時(相機(jī)運(yùn)動連續(xù)、緩慢時)才有效牡彻。
  • 根據(jù)使用像素的多少出爹,分為稠密的(用所有像素)缎除、半稠密的(用像素梯度比較明顯的地方器罐,因?yàn)樘荻炔幻黠@的地方對優(yōu)化問題貢獻(xiàn)并不大)废菱、稀疏的(用關(guān)鍵點(diǎn),不需要特征描述衰倦,只是變化明顯的角點(diǎn)旁理、邊緣)直接法。其中稀疏的直接法是視覺里程計(jì)中最快的方式驻襟,一因?yàn)橄∈栌罂蓿驗(yàn)椴恍枰卣髅枋觥?/li>
  • 代表方法:早期的DBU,現(xiàn)在的LSD豌习、DSO拔疚、SVO。

2 后端 —— 非線性優(yōu)化

2.1 圖優(yōu)化

視覺SLAM漫淡(二):圖優(yōu)化理論與g2o的使用
構(gòu)造圖:

用誤差:
構(gòu)造需要優(yōu)化的目標(biāo)函數(shù)(構(gòu)造一個最小二乘問題栋艳,通過非線性優(yōu)化來求解吸占,是一種比較通用而且有效的方法):
然后對這個優(yōu)化問題求解旬昭。

3 Loop Closure Detection 回環(huán)檢測

回環(huán)檢測指機(jī)器人識別曾到達(dá)場景的能力菌湃,如果檢測成功,可以顯著地減小累積誤差骤坐。多用詞袋模型。

3.1 Bag of Words 詞袋模型

視覺SLAM漫談 (三): 研究點(diǎn)介紹

  • 詞袋模型用于檢測觀測數(shù)據(jù)的相似性蕾久。在詞袋模型中拌夏,我們提取每張圖片的特征,將特征向量聚類成不同類別(比如眼睛障簿、鼻子、嘴皆怕、耳朵西篓,其實(shí)在這里只是一些特定的邊緣、角等)虱黄。假設(shè)有10000類吮成,那么每張圖片可以用one-hot的10000維向量表示。通過比較向量,來比較圖片冗美。

4 建圖

4.1 地圖類型

視覺SLAM漫談 (三): 研究點(diǎn)介紹
經(jīng)典視覺SLAM框架
大致分為度量地圖和拓?fù)涞貓D:

  1. Metric Map 度量地圖:
  • Sparse稀疏型:即路標(biāo)地圖,由路標(biāo)組成节预。但對于導(dǎo)航來說只有路標(biāo)的地圖是不夠的属韧。
  • Dense稠密型:即點(diǎn)云圖系草,按照某分辨率,二維劃分為Grid小格子,三維劃分為Voxel小方塊(體素)拙泽,每個小塊有 占據(jù)、空閑泼疑、未知 三種狀態(tài)荷荤。但由于需要存儲每個小塊的狀態(tài),故耗費(fèi)大量存儲空間会油,且許多細(xì)節(jié)是無用的袱蚓;誤差易使地圖無效。
  1. Topological Map 拓?fù)涞貓D:
    是一種更稠密的地圖体斩,強(qiáng)調(diào)地圖元素之間的關(guān)系,將地圖抽象為圖論中的“節(jié)點(diǎn)”和“邊”絮吵,只考慮節(jié)點(diǎn)之間的連通性忱屑。但不擅長表達(dá)具有復(fù)雜結(jié)構(gòu)的地圖。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末伴嗡,一起剝皮案震驚了整個濱河市瘪校,隨后出現(xiàn)的幾起案子名段,更是在濱河造成了極大的恐慌,老刑警劉巖伸辟,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件信夫,死亡現(xiàn)場離奇詭異卡啰,居然都是意外死亡碎乃,警方通過查閱死者的電腦和手機(jī)惠奸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來梗掰,“玉大人嗅回,你說我怎么就攤上這事」÷剑” “怎么了娃豹?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鹃栽。 經(jīng)常有香客問我躯畴,道長,這世上最難降的妖魔是什么丰嘉? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任嚷缭,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘逼争。我一直安慰自己,他們只是感情好胆敞,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著移层,像睡著了一般。 火紅的嫁衣襯著肌膚如雪予借。 梳的紋絲不亂的頭發(fā)上频蛔,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天,我揣著相機(jī)與錄音瀑粥,去河邊找鬼三圆。 笑死,一個胖子當(dāng)著我的面吹牛修噪,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播割按,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼适荣,長吁一口氣:“原來是場噩夢啊……” “哼院领!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起比然,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤强法,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后饮怯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡库倘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了杆勇。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饱亿。...
    茶點(diǎn)故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖关霸,靈堂內(nèi)的尸體忽然破棺而出杰扫,到底是詐尸還是另有隱情,我是刑警寧澤章姓,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布凡伊,位于F島的核電站,受9級特大地震影響系忙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜银还,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一蛹疯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧捺弦,春花似錦、人聲如沸幽崩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凑耻。三九已至,卻和暖如春类缤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背邻吭。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工囱晴, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人畸写。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像论笔,于是被迫代替她去往敵國和親千所。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容