1. 程式人生 > >淺析服務機器人自主定位導航技術(二)

淺析服務機器人自主定位導航技術(二)

      SLAM主要解決機器人實時定位與自動建圖問題,那麼,在實際應用時,SLAM究竟是如何實現的呢?在實現過程中有哪些難點?

  這是一個完整的SLAM和導航系統的主要架構圖:

  其中,SLAM核心過程包括3個步驟,第一步稱為預處理。我們知道,鐳射雷達和其他雷達裝置一樣,某一個時刻只能獲取它所在位置的環境資訊。

  這就是我們所說的點雲,它只能反映機器人所在環境中的一個部分。第一步預處理就是對鐳射雷達原始資料進行優化,剔除一些有問題的資料,或者進行濾波。

  第二步是匹配,也就是說把當前這一個區域性環境的點雲資料在已經建立地圖上尋找到對應的位置,這個步驟非常關鍵。

  這個是ICP的點雲匹配演算法,用於實現匹配。說這個過程關鍵,就是因為它的好壞,直接影響了SLAM構建地圖的精度。這個過程和我們玩拼圖遊戲有點類似,就是在已經拼好的畫面中找到相似之處,確定新的一個拼圖該放在哪裡。

  在SLAM過程中,需要將鐳射雷達當前採集的點雲(紅色部分)匹配拼接到原有地圖中。

  如果不進行匹配過程,所構建的地圖可能就亂成一團,變成這樣。

  在這個部分完畢以後,就進行第三步,地圖融合,也就是將這一輪來自鐳射雷達的新資料拼接到原始地圖當中,最終完成地圖的更新。

  就像這個圖一樣,這個過程是永遠伴隨SLAM過程的。

  資料融合和簡單的貼圖是有很大的差異的。因為實際上感測器描繪的世界存在一定的誤差,或者正巧在這個時間環境有了變化,例如機器人旁邊闖入了一隻小貓。

  因此,實際要進行的過程會更加複雜,需要用很多概率演算法,並採用濾波的方式進行融合。將上述這個過程逐次執行,就最終產生了我們看到的柵格地圖。

  這個過程聽起來其實並不複雜,但是要處理好有很大難度。

  這裡舉幾個例子,比如叫做loop closure(迴環)的問題。如果匹配演算法不足夠優秀,或者環境中存在很不巧的干擾,當機器人繞著環境一圈後,就會發現原本是應該閉合的一個環形走廊斷開了。

  比如正常地圖應該這樣:

  如果處理不好,實際地圖就成這樣:

  對於環境比較大的場景,迴環問題是不得不面對的,但現實總是不完美的,即使是鐳射雷達這種高精度感測器,也難免存在誤差。而回環問題的難點恰恰在於在一開始出現少許誤差的時候,並不會被發覺,直到機器人繞著環路一圈,隨著誤差的累加,發現環路已經無法閉合時,此時已經釀成大錯,一般很難迴天。

  當然這個問題並不是無解,一個好的商用化SLAM系統,迴環問題是否能很好的解決,就成為評判這個系統實力的指標了。

  這是前兩天在我們辦公室進行的測試,當機器人已經繞場一週後,ROS構建的地圖出現了中斷,而Slamware構建的地圖是一個完美的閉環,它與我們辦公室的設計圖完美重合。

  除了演算法層面的迴環問題,SLAM實際應用中還有很多這種坑,比如走廊問題與外界干擾問題。

  以外界干擾問題來說,通常,鐳射雷達作為機器人的眼睛,一般是安裝在底盤上的,它能看到的視野很有限。當受到外界干擾(人類或者寵物等等)後,機器人很容易丟失定位精度,無法正常完成後續的建圖工作。

  當機器人安裝SLAMWARE後,機器人受到干擾,可以完全不受影響,照樣能夠正常工作。

  目前,SLAM的開源實現代表多為學術界,實際應用有很多corner case要處理,需要感測器、系統引數、其他輔助裝置的聯合調優。

  一般來說,上述的SLAM過程對於運算消耗是巨大的,雖然並沒有達到像訓練神經網路動用伺服器叢集那種地步,但傳統上需要PC級別的處理器。

  除配備鐳射雷達外,還需要機器人具有IMU(慣性測量單元)、里程計來為鐳射雷達提供輔助資料,否則SLAM系統也難以得到執行。總的來說,SLAM演算法本身是一個對於外部系統有著多種依賴的演算法,這是一個切實的工程問題。我們知道很多機器人,比如掃地機是不可能裝一個PC進去的。為了讓SLAM能在這類裝置裡執行,除了解決鐳射雷達成本外,還要對SLAM演算法做出很好的優化。

  這也是我們思嵐科技SLAMTEC主要的努力方向,一方面在SLAM演算法上我們這7年多很好的解決了各類實際演算法難點,另一方面,我們把SLAM這個複雜的系統做了很大的優化,可以放到一個硬幣那麼大的模組內部,降低尺寸功耗。此外,還集成了IMU等配套感測器,力求做到對於SLAM的使用的便捷性。

  那麼,機器人利用SLAM技術得到了有效的空間資訊後,它是怎樣實現路徑規劃的?SLAM和路徑規劃之間關係是怎樣的?下期,我們再見。

相關推薦

淺析服務機器人自主定位導航技術

      SLAM主要解決機器人實時定位與自動建圖問題,那麼,在實際應用時,SLAM究竟是如何實現的呢?在實現過程中有哪些難點?   這是一個完整的SLAM和導航系統的主要架構圖:   其中,SLAM核心過程包括3個步驟,第一步稱為預處理。我們知道,鐳射雷達和其

淺析服務機器人自主定位導航技術

       我們先來看看SLAM與路徑規劃的關係。   實際上,SLAM演算法本身只是完成了機器人的定位和地圖構建兩件事情,與我們說的導航定位並不是完全等價的。這裡的導航,其實是SLAM演算法做不了的。它在業內叫做運動規劃(Motion Planning)。  

思嵐綻放“2018日本機器人周” 引領機器人自主定位導航未來

10月17日-19日,為期3天的日本機器人周在東京有明國際展覽中心已圓滿落下帷幕,這是目前日本規模最大的服務機器人及機器人相關技術展會,國內機器人自主定位導航領導品牌的思嵐科技,應邀攜帶智慧行走導航方案及核心感測器出席了本次盛會。作為在國內外已有較高知名度的品牌,思嵐科技在展會現場可是賺足了人氣。

SLAM≠機器人自主定位導航

SLAM技術作為機器人自主移動的關鍵技術,讓很多人都誤解為:SLAM=機器人自主定位導航。   其實,SLAM≠機器人自主定位導航 ,不解決行動問題。     SLAM如其名一樣,主要解決的是機器人的地圖構建和即時定位問題,而自主導航

機器人自主定位導航中那些不得不跨的坑

機器人自主定位導航聽起來簡單,地圖資料+演算法的結合,實則挑戰巨大。在落地實踐的過程中,需要解決各種各樣的問題,越過各式各樣的坑,才能最終完美應用。   首先從地圖的呈現方式開始說起。   挑戰一:使用者心理預期地圖的問題   鐳射雷達充當著機器

機器人自主定位導航面臨的3大問題及應對方案

未來,智慧機器人很有可能成為繼PC和智慧手機之後的新一代殺手鐗級別產品,極大的為我們的生活提供便利,但機器人產品的理想落地,需要行業各個技術環節的一起努力,自主定位導航作為機器人自主行走最為核心的技術之一,在落地實踐過程中,也面臨過多項挑戰,最終實現完美應用。 環境多變情況下機器人的可靠定位 在實際的應用

室內定位技術——競爭對手分析

公司專利數定位方式及特點谷歌2+篩選使用者活動資料推斷使用者位置微軟5+無線接入點、無線電信標、裝置移動來確定手機位置RIM8+Wi-Fi熱點和蜂窩天線訊號的定位技術諾基亞10+利用藍芽信標定位高通8+

照相機技術

nac ddc dmi nbsp stop eas 大小 aced htm 1 //定制拍照: 2 public class MainActivity extends Activity { 3 private Camera mCamera; 4

10.2-全棧Java筆記:最全面的IO技術

java上節我們聊到「IO技術概念及入門」這節我們繼續聊一下IO技術的分類。Java中流的概念細分按流的方向分類:輸入流:數據流向是數據源到程序(InputStream、Reader結尾的流)輸出流:數據流向是程序到目的地(OutPutStream、Writer結尾的流)按處理的數據單元:字節流:按照字節讀取

Windows 文件服務器升級&跨林遷移

windows 文件遷移文件服務器登陸到ADMT遷移服務器上,打開ADMT管理控制臺,郵件點擊AD遷移工具,選擇"計算機遷移向導"點擊下一步選擇源域為舊的控,目標域為新域控,點擊下一步從域中選擇計算機,點擊下一步添加文件服務器,把新文件服務器(windows server 2012)添加到列表中,點擊下一步選

深度學習的異構加速技術:螺獅殼裏做道場

篩選 分享 intel 支持 get 更多 wid efficient 優勢 作者簡介:kevinxiaoyu,高級研究員,隸屬騰訊TEG-架構平臺部,主要研究方向為深度學習異構計算與硬件加速、FPGA雲、高速視覺感知等方向的構架設計和優化。“深度學習的異構加速技術”系列

兩種開源聊天機器人的性能測試——基於tensorflow的chatbot

drive 找到 環境配置 gpu版本 hat dict 終端 開源 fontsize http://blog.csdn.net/hfutdog/article/details/78155676 開源項目鏈接:https://github.com/dennybritz/c

KVM虛擬化技術

LinuxKVMvirt-instaKVM虛擬化技術(二)===============================================================================概述:============================================

中小型網絡最全的VLAN技術

vlan access trunkAccess 與trunk鏈路案例詳解: 如圖所示:#當圖示所用的交換機口都采用access模式#且sw1上1口和24口屬於vlan14,sw2上4口和24口默認屬於vlan1#則可實現PC1與pc4的通信——表明vlan14和vlan1胡通,出現網絡故障

服務架構的優勢與不足

頁面 中間 ima 直接 docke 連接 包含 後臺服務 駕駛 微處理架構——處理復雜事物   許多公司,比如Amazon、eBay和NetFlix,通過采用微處理結構模式解決了上述問題。其思路不是開發一個巨大的單體式的應用,而是將應用分解為小的、互相連接的微服務。   

「iOS開發」關於一對一視訊聊天直播系統技術處理

針對視訊直播的實時流網路 LiveNet 和完整的直播雲解決方案,很多開發者對這個網路和解決方案的細節和使用場景非常感興趣。 結合實時流網路 LiveNet 和直播雲解決方案的實踐,我們將用一系列文章,更系統化地介紹當下大熱的視訊直播各環節的關鍵技術,幫助視訊直播創業者們更全面、深入地瞭解視訊直播技術,更好

「iOS開發」關於一對一視頻聊天直播系統技術處理

包含 live 能力 white 檢測 google 深入 防盜 視頻內容 針對視頻直播的實時流網絡 LiveNet 和完整的直播雲解決方案,很多開發者對這個網絡和解決方案的細節和使用場景非常感興趣。 結合實時流網絡 LiveNet 和直播雲解決方案的實踐,我們將用一系列文

Docker核心技術

Docker核心技術 Docker的常用命令 幫助命令 映象命令 docker images docker search docker pull 容器命令 1.拉取映象

PDF技術-Java實現Txt轉PDF檔案

TxT轉PDF可以直接使用IText就可以了,IText在pdf領域可以說暫時是最好的方案了。通過直接讀取txt檔案,然後生成pdf,再新增文字就可以了。 1)使用IText實現轉換 原理: 使用IText建立pdf,新增文字。 優點: 速度快。 缺點: 具體實現:

服務Springcloud超詳細教程+實戰

如在文件中遇到什麼問題請聯絡作者 QQ:1172796094 本人正在找深圳Java實習工作,求大佬帶飛 —————————————————————————————————————— 遠端呼叫方式 無論是微服務還是分散式服務(都是SOA,都是面向服務程式設計),都面臨著服務間的遠端呼