<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          導(dǎo)師給我的課題是激光SLAM,應(yīng)該如何入門?

          共 5658字,需瀏覽 12分鐘

           ·

          2021-10-20 23:41

          點(diǎn)擊下方卡片,關(guān)注“新機(jī)器視覺”公眾號(hào)

          視覺/圖像重磅干貨,第一時(shí)間送達(dá)

          本文由深話AI整理,僅作為學(xué)術(shù)分享,侵刪。
          原文鏈接:
          https://www.zhihu.com/question/52634751

          小虎哥哥愛學(xué)習(xí):

          鑒于題主是激光SLAM入門,就以下面這樣一個(gè)思路來答一下吧。
          1.SLAM與ROS的關(guān)系
          1.1.關(guān)于SLAM
          1.2.關(guān)于ROS
          1.3.SLAM與ROS的關(guān)系 2.ROS移動(dòng)機(jī)器人的整體構(gòu)造
          2.1.硬件構(gòu)造解析
          2.2.電機(jī)解析
          2.3.電機(jī)驅(qū)動(dòng)板解析
          2.4.底盤驅(qū)動(dòng)方式的解析
          2.5.IMU模塊解析
          2.6.激光雷達(dá)解析
          2.7.ROS主機(jī)解析
          2.8.攝像頭解析 3.商業(yè)應(yīng)用ROS機(jī)器人
          3.1.SLAM建圖導(dǎo)航的應(yīng)用案例
          3.2.商業(yè)ROS機(jī)器人相關(guān)公司
          3.3.商業(yè)ROS機(jī)器人兩大發(fā)展思路 4.科研學(xué)習(xí)ROS機(jī)器人
          4.1.科研學(xué)習(xí)ROS機(jī)器人與商業(yè)應(yīng)用ROS機(jī)器人的區(qū)別
          4.2.淘寶上科研學(xué)習(xí)ROS機(jī)器人相關(guān)產(chǎn)品
          4.3.選購ROS機(jī)器人入門指南
          ---------------分割線-----------------

          1.SLAM與ROS的關(guān)系

          1.1.關(guān)于SLAM

          在了解SLAM之前,需要先對(duì)機(jī)器人有一個(gè)整體的認(rèn)識(shí)。一個(gè)典型的機(jī)器人的模樣,執(zhí)行機(jī)構(gòu):輪式運(yùn)動(dòng)底盤、機(jī)械手臂、音響和顯示屏,感知機(jī)構(gòu):激光雷達(dá)、聲吶、攝像頭、IMU、輪式里程計(jì)編碼盤、麥克風(fēng)、觸摸感應(yīng),決策機(jī)構(gòu):自我認(rèn)知、環(huán)境認(rèn)知、思想。
          機(jī)器人通常借助感知裝置持續(xù)跟外部環(huán)境進(jìn)行交互,從而來獲取機(jī)器人的狀態(tài)和環(huán)境的狀態(tài),我們可以簡(jiǎn)單的把機(jī)器人獲取自身狀態(tài)的行為叫做自我認(rèn)知,把機(jī)器人獲取環(huán)境狀態(tài)的行為叫做環(huán)境認(rèn)知。由于目前的機(jī)器人智能還比較低級(jí),所以這里講到的機(jī)器人認(rèn)知也是低級(jí)別的,例如人臉識(shí)別、語音識(shí)別、機(jī)器人定位、環(huán)境障礙物探測(cè)。有了認(rèn)知,機(jī)器人就可以幫人類完成很多工作了,例如搬運(yùn)貨物、照看小孩、陪伴閑聊、幫忙管理家里的智能設(shè)備、查詢天氣交通新聞資訊等等。我們可以把機(jī)器人幫助人類完成的這些個(gè)工作叫做機(jī)器人的技能,機(jī)器人擁有的這些個(gè)技能我們可以簡(jiǎn)單的理解為機(jī)器人低級(jí)別的思想。機(jī)器人的軀殼+機(jī)器人的認(rèn)知+機(jī)器人的思想,基本上就是機(jī)器人該有的模樣了。

          圖1.1.1 一個(gè)典型機(jī)器人的模樣
          咋一看機(jī)器人是個(gè)超級(jí)復(fù)雜的東東,但是作為機(jī)器人開發(fā)人員來說就那么幾個(gè)關(guān)鍵技術(shù)。其實(shí),學(xué)界和工業(yè)界熱門的研究和開發(fā)也是圍繞這幾個(gè)關(guān)鍵技術(shù)展開的。
          關(guān)鍵技術(shù)1:機(jī)器人移動(dòng)底盤
          關(guān)鍵技術(shù)2:機(jī)械手臂
          關(guān)鍵技術(shù)3:SLAM導(dǎo)航
          關(guān)鍵技術(shù)4:語音交互
          關(guān)鍵技術(shù)5:物體識(shí)別
          本人在這里總結(jié)歸納了機(jī)器人上的5大關(guān)鍵技術(shù),由于個(gè)人能力和篇幅限制原因,接下來的內(nèi)容將主要涉足機(jī)器人SLAM導(dǎo)航領(lǐng)域的相關(guān)技術(shù)。大家別以為SLAM是一個(gè)很新的技術(shù),只是最近借著人工智能的風(fēng)突然就火了起來。其實(shí)SLAM研究已經(jīng)有幾十年的歷史了,SLAM最早是出現(xiàn)在軍事應(yīng)用中,比如勇氣號(hào)火星探測(cè)車,在不能實(shí)時(shí)遙控的未知環(huán)境行星上的探測(cè)車為了執(zhí)行任務(wù),需要借助SLAM技術(shù)來導(dǎo)航和避障。后來慢慢的SLAM技術(shù)就從軍用轉(zhuǎn)民用了,有了我們現(xiàn)在看到的小到家里的掃地機(jī)器人大到無人駕駛汽車的各種SLAM應(yīng)用,還有各種AR和VR應(yīng)用很多也用到了SLAM技術(shù)。
          SLAM是用來解決同時(shí)建圖和定位問題的,單獨(dú)的定位技術(shù)已經(jīng)在日常生活很多見了(比如GPS定位技術(shù)、wifi定位技術(shù)、磁條導(dǎo)軌定位技術(shù)),單獨(dú)的環(huán)境建圖技術(shù)也很成熟了(比如學(xué)中的CT、電影制作特效、隧道勘探測(cè)繪等)。
          但是面對(duì)機(jī)器人這樣一個(gè)復(fù)雜的應(yīng)用,單獨(dú)的定位技術(shù)和單獨(dú)的環(huán)境建圖技術(shù)都不能很好的解決問題,于是結(jié)合了定位與建圖的SLAM技術(shù)就出現(xiàn)了。接下來,簡(jiǎn)單的梳理一下定位、建圖、SLAM同時(shí)定位于建圖、SLAM導(dǎo)航技術(shù)的理論發(fā)展過程。

          (1)機(jī)器人中的不確定性

          機(jī)器人所處的環(huán)境存在大量不可預(yù)測(cè)性,傳感器測(cè)量誤差、電機(jī)控制的不穩(wěn)定性、軟件方面的近似處理。。。簡(jiǎn)單點(diǎn)說,就是通過對(duì)機(jī)器人的概率建模,可以對(duì)機(jī)器人的不確定性進(jìn)行明確的可計(jì)算性的表示。

          (2)機(jī)器人中的狀態(tài)估計(jì)

          處理機(jī)器人中的這種不確定性的概率技術(shù)我們稱之為概率機(jī)器人技術(shù),其核心是用傳感器數(shù)據(jù)來估計(jì)狀態(tài)的思路。

          圖1.1.2 機(jī)器人與環(huán)境交互這就是機(jī)器人與環(huán)境交互的一個(gè)過程,傳感器負(fù)責(zé)從環(huán)境測(cè)量信息,控制機(jī)構(gòu)負(fù)責(zé)用來作用于環(huán)境。用概率模型來表示這個(gè)交互過程,就是大名鼎鼎的貝葉斯迭代網(wǎng)絡(luò)。

          圖1.1.3 貝葉斯迭代網(wǎng)絡(luò)

          (3)貝葉斯濾波及其各種實(shí)現(xiàn)算法

          通過對(duì)機(jī)器人中狀態(tài)估計(jì)的了解,我們知道了貝葉斯概率法則起著重要的作用,而且大部分計(jì)算置信度的通用算法都是由貝葉斯算法給出的。算法其實(shí)就是兩個(gè)步驟預(yù)測(cè)和更新。貝葉斯濾波的具體實(shí)現(xiàn)算法可以分為參數(shù)化實(shí)現(xiàn)算法和非參數(shù)化實(shí)現(xiàn)算法兩種,由于貝葉斯濾波理論及各種具體實(shí)現(xiàn)算法涉及到大量深?yuàn)W的數(shù)學(xué)知識(shí),由于篇幅和個(gè)人能力受限,就不展開了,有興趣的朋友可以參閱《概率機(jī)器人》這本書。

          圖1.1.4 貝葉斯濾波及各種具體實(shí)現(xiàn)算法

          (4)機(jī)器人中的運(yùn)動(dòng)與測(cè)量概率

          模型了解了機(jī)器人中的狀態(tài)估計(jì)及各種濾波概率算法后,我們發(fā)現(xiàn)機(jī)器人的運(yùn)動(dòng)和測(cè)量概率模型對(duì)算法中的預(yù)測(cè)和更新步驟起著至關(guān)重要的作用。

          圖1.1.10 機(jī)器人的運(yùn)動(dòng)概率模型

          圖1.1.11 機(jī)器人的測(cè)量概率模型

          (5)移動(dòng)機(jī)器人定位與建圖

          透過貝葉斯迭代網(wǎng)絡(luò),不難發(fā)現(xiàn),進(jìn)行機(jī)器人位姿估計(jì),求解位姿置信度分布的過程其實(shí)就是機(jī)器人的定位問題;進(jìn)行環(huán)境狀態(tài)估計(jì),求解地圖置信度分布的過程就會(huì)機(jī)器人的建圖問題。

          (6)SLAM同時(shí)定位與建圖

          上面已經(jīng)單獨(dú)的提出了機(jī)器人定位與機(jī)器人建圖的方法,但是獨(dú)立的定位問題是建立在地圖已知的情況下的,單獨(dú)的建圖問題也是建立在定位已知的情況下的。當(dāng)機(jī)器人不能得到環(huán)境地圖,也不知道自身位姿的時(shí)候,SLAM問題就出現(xiàn)了。也就是說SLAM要同時(shí)的進(jìn)行機(jī)器人定位和建圖,這個(gè)問題比單獨(dú)的定位和單獨(dú)的建圖都要難得多。

          圖1.1.13 在線SLAM問題和全SLAM問題
          在線SLAM算法的代表是EKF SLAM,歷史上最早并可能是最有影響力的SLAM算法,可以說是SLAM研究的元老級(jí)算法。EKF SLAM中的地圖是基于特征的,地圖由點(diǎn)地標(biāo)組成。除了估計(jì)機(jī)器人當(dāng)前的位姿,EKF SLAM算法還估計(jì)路徑上遇到的所有地標(biāo)的坐標(biāo),也就是機(jī)器人位姿和地圖地標(biāo)點(diǎn)包含進(jìn)聯(lián)合狀態(tài)矢量里,算法對(duì)該聯(lián)合狀態(tài)矢量進(jìn)行估計(jì)。
          全SLAM算法的代表是GraphSLAM,該算法將機(jī)器人的運(yùn)動(dòng)路徑和測(cè)量組件成一個(gè)軟約束的圖,利用圖論中的優(yōu)化算法對(duì)整個(gè)圖中的軌跡點(diǎn)和測(cè)量點(diǎn)進(jìn)行估計(jì)。由于圖的稀疏性特點(diǎn),可以大大加快計(jì)算。
          EKF SLAM和GraphSLAM是兩個(gè)極端。EKF SLAM需要取得每一時(shí)刻的信息,把信息分解為概率分布,因此每一步的計(jì)算代價(jià)都非常昂貴。而GraphSLAM剛好相反,只是簡(jiǎn)單的積累每一時(shí)刻的信息,也就是簡(jiǎn)單的將收到的信息存儲(chǔ)下來,然后可以離線的進(jìn)行推理的步驟,加之存儲(chǔ)下來的信息的稀疏性,因此GraphSLAM計(jì)算的開銷是比較小的,但是隨著地圖規(guī)模擴(kuò)大算法會(huì)消耗越來越多的內(nèi)存直至崩潰。面對(duì)這兩個(gè)極端問題,當(dāng)然就會(huì)有介于EKF SLAM和GraphSLAM是兩個(gè)極端之間的折中的方法,就是SEIF SLAM。SEIF SLAM算法繼承了EKF SLAM信息表示的高效性,也保留了GraphSLAM計(jì)算代價(jià)小的優(yōu)點(diǎn),可以說SEIF SLAM是高效和可實(shí)現(xiàn)的SLAM算法。還有另外一種高效和可實(shí)現(xiàn)的SLAM算法,就是FastSLAM,該算法使用粒子濾波估計(jì)機(jī)器人的路徑,我們都知道粒子濾波和眾多基于參數(shù)化的濾波算法相比存在計(jì)算開銷小和便于處理非線性模型的優(yōu)勢(shì),基于FastSLAM的多個(gè)變種算法在機(jī)器人已經(jīng)得到廣泛的應(yīng)用了,比如gmapping等等,由于篇幅限制就不展開了。

          (7)現(xiàn)今主流的SLAM算法

          現(xiàn)今在機(jī)器人上使用最廣泛的應(yīng)該算激光SLAM了,在掃地機(jī)器人、服務(wù)機(jī)器人、AGV智能車上普遍搭載了單線激光雷達(dá)SLAM算法,像無人駕駛汽車、戶外機(jī)器人則普遍搭載了多線激光雷達(dá)SLAM。另一種熱門的研究是視覺SLAM,視覺SLAM有配備單目、雙目、深度相機(jī)的多種形態(tài),并且根據(jù)采用視覺特征點(diǎn)的區(qū)別還有直接法、半直接法、稀疏法之分。然后還有就是各種復(fù)合式的SLAM算法,比如激光與視覺融合的SLAM、融合了IMU的視覺SLAM。最后,就是一些最新穎的SLAM算法,比如用深度學(xué)習(xí)來做的端到端的SLAM、基于物體識(shí)別的語義SLAM。由于本文的重點(diǎn)不是SLAM綜述,所以具體的算法性能比較就不展開了,有興趣的朋友可以參閱相關(guān)SLAM綜述文章。

          圖1.1.16現(xiàn)今主流的SLAM算法

          (8)機(jī)器人自主導(dǎo)航與動(dòng)態(tài)避障

          機(jī)器人用SLAM構(gòu)建出了環(huán)境的地圖,在已知了環(huán)境地圖的情況下,可以用SLAM的重定位功能或者單獨(dú)的基于已知地圖的定位算法比如AMCL來進(jìn)行機(jī)器人的定位。環(huán)境地圖和機(jī)器人位姿都有了,就可以開始來做自主導(dǎo)航和避障了。機(jī)器人自主導(dǎo)航可以分成兩個(gè)實(shí)現(xiàn)部分,第一個(gè)部分就是路徑規(guī)劃,第二個(gè)部分就是控制策略。路徑規(guī)劃利用地圖信息尋找一條能到達(dá)目標(biāo)的全局路徑,全局路徑在機(jī)器人導(dǎo)航過程中起到全局戰(zhàn)略性的指導(dǎo)。理想情況是,機(jī)器人完全按照全局路徑移動(dòng)到目標(biāo),但是實(shí)際環(huán)境往往是多變和復(fù)雜的,而且機(jī)器人實(shí)際控制也會(huì)存在偏差,所以機(jī)器人的實(shí)際運(yùn)動(dòng)控制需要有一套控制策略來最終實(shí)現(xiàn)。控制策略需要盡量逼近全局路徑、盡量遠(yuǎn)離障礙物、最快時(shí)間到達(dá)目標(biāo)等因素,這些因素可以用一個(gè)回報(bào)函數(shù)來評(píng)價(jià),尋找最佳控制策略的過程中遞歸的計(jì)算每一次行動(dòng)的回報(bào)函數(shù)值。這樣控制策略在回報(bào)函數(shù)的指引下,就可以給出最佳的控制策略,控制策略控制機(jī)器人完成實(shí)際的移動(dòng)。

          圖1.1.17 主流路徑規(guī)劃算法

          1.2.關(guān)于ROS

          大家一聽到ROS機(jī)器人操作系統(tǒng),就被操作系統(tǒng)幾個(gè)字給嚇到了。其實(shí),ROS就是一個(gè)分布式的通信機(jī)制,幫助程序進(jìn)程之間更方便的通信。搞懂了ROS的通信機(jī)制后,機(jī)器人的各種算法的開發(fā)還是基于我們常見的C++和Python的。

          圖1.2.2 ROS網(wǎng)絡(luò)通信的架構(gòu)

          1.3.SLAM與ROS的關(guān)系

          SLAM最核心的地方在算法,側(cè)重點(diǎn)在于如何構(gòu)建出效果好的地圖,并為機(jī)器人導(dǎo)航提供更好的數(shù)據(jù)保障。ROS幫忙解決傳感器驅(qū)動(dòng)、顯示、各種核心算法間的溝通協(xié)調(diào)問題。如果做商用產(chǎn)品就另當(dāng)別論了,商業(yè)的產(chǎn)品一般會(huì)專門開發(fā)自己的一套驅(qū)動(dòng)、調(diào)度、顯示的系統(tǒng),或者拿ROS系統(tǒng)來裁剪以保障穩(wěn)定性和效率。

          2.ROS移動(dòng)機(jī)器人的整體構(gòu)造

          圖2.1.1 一個(gè)典型的ROS移動(dòng)機(jī)器人的硬件構(gòu)造這個(gè)就是一個(gè)典型的ROS移動(dòng)機(jī)器人的硬件構(gòu)造,由于篇幅限制,就不具體展開了,有興趣的朋友可以去我的專欄閱讀更詳細(xì)的文章:SLAM導(dǎo)航+語音交互機(jī)器人DIY

          3.商業(yè)應(yīng)用ROS機(jī)器人

          為了增加學(xué)習(xí)動(dòng)力,還是有必要了解下商業(yè)上都有什么具體的用途。這里就舉幾個(gè)有趣的例子吧。
          (1)智慧農(nóng)業(yè)自動(dòng)噴藥機(jī)器人
          (2)智慧餐廳送餐機(jī)器人
          (3)樓宇送快遞機(jī)器人
          (4)大型機(jī)房智能巡檢機(jī)器人
          當(dāng)然也有很多做的很不錯(cuò)的機(jī)器人公司,也可以了解一下他們的最新動(dòng)態(tài)。
          (1)日本軟銀集團(tuán)pepper
          (2)北京進(jìn)化者機(jī)器人公司的小胖
          (3)上海思嵐科技的ZEUS
          (4)上海高仙機(jī)器人公司的室外機(jī)器人
          (5)云跡科技的大潤(rùn)機(jī)器人
          (6)交通銀行大堂機(jī)器人嬌嬌
          最后談一談創(chuàng)業(yè)公司都是怎么來下手做機(jī)器人的,主要介紹兩種發(fā)展思路:核心部件和系統(tǒng)集成。
          (1)核心部件
          就是集中力量研究機(jī)器人上的一項(xiàng)關(guān)鍵技術(shù),比如激光雷達(dá)、底盤、SLAM導(dǎo)航主板方案。
          (2)系統(tǒng)集成
          及時(shí)自己本身沒有特別的核心技術(shù),購買各種別人的機(jī)器人零部件,然后自己集成成整機(jī),主要精力是解決用戶的實(shí)際應(yīng)用場(chǎng)景的需求。

          4.科研學(xué)習(xí)ROS機(jī)器人

          4.1.科研學(xué)習(xí)ROS機(jī)器人與商業(yè)應(yīng)用ROS機(jī)器人的區(qū)別

          商業(yè)ROS機(jī)器人都是面向具體的產(chǎn)品落地,設(shè)計(jì)上考慮的是緊湊耦合和降低成本,最求軟件的精簡(jiǎn)和穩(wěn)定。
          科研學(xué)習(xí)ROS機(jī)器人正是為了學(xué)習(xí)開發(fā)者而設(shè)計(jì)的,當(dāng)然是硬件模塊化設(shè)計(jì),軟件和硬件接口盡量開放出來。

          4.2.淘寶上科研學(xué)習(xí)ROS機(jī)器人相關(guān)產(chǎn)品

          (1)Pioneer先鋒機(jī)器人(2)Turtlebot海龜機(jī)器人(3)EAI移動(dòng)底盤(4)miiboo語音交互移動(dòng)機(jī)器人(5)淘寶上眼花繚亂的ROS機(jī)器人

          4.3.選購ROS機(jī)器人入門指南

          (1)提供系統(tǒng)的開發(fā)和使用教程的重要性
          (2)外形結(jié)構(gòu)可擴(kuò)展的重要性
          (3)硬件模塊化的重要性
          (4)別太迷信軟件開源
          (5)技術(shù)支持的重要性
          ---------------分割線-----------------

          fly qq:

          知乎用戶:

          激光SLAM入門視頻,by Cyrill Stachniss
          鏈接:https://http://pan.baidu.com/s/1gn2SG57Zgqo2f9jILOVn8g 密碼:ax0qSLAM 藍(lán)寶書 《Probabilistic Robotics》 Sebastian Thrun et al. (2005)
          《Robotic Mapping and exploration》Cyrill Stachniss
          接下來建議結(jié)合一個(gè)激光SLAM的算法實(shí)例進(jìn)行學(xué)習(xí),比如GMapping、HectorSLAM。可以在http://www.openslam.org 找到相關(guān)的源碼。Google開源的Cartographer,目前來看還是非常成熟和完善的激光SLAM系統(tǒng),可以作為重點(diǎn)進(jìn)行學(xué)習(xí)。

          —版權(quán)聲明—

          僅用于學(xué)術(shù)分享,版權(quán)屬于原作者。

          若有侵權(quán),請(qǐng)聯(lián)系微信號(hào):yiyang-sy 刪除或修改!


          —THE END—
          瀏覽 34
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美日本在线播放 | 久久久久国产欧美久久久aaa | 在线你懂的| 97色色色 | 黄色的一级的操逼的 |