LIO-Livox

用單臺Livox Horizon (含內置IMU) 實現高魯棒性的激光-慣性里程計,可在各類極端場景下魯棒運行,并達到高精度的定位和建圖效果。(城區擁堵、高速公路、幽暗隧道)

:該系統主要面向大型室外環境中的汽車平臺設計。用戶可以使用 Livox Horizon 或 HAP LiDAR 輕松運行該系統。在室內環境中系統同樣表現穩定,我們目前也支持面向機器人設計的 Mid-360 雷達。

1.系統框架

該系統由兩個 ROS 節點組成:ScanRegistration PoseEstimation

ScanRegistration 節點中的類 “LidarFeatureExtractor” 從原始點云中提取角點特征、平面特征和不規則特征。

PoseEstimation 節點中,主線程用于估計傳感器位姿,而類 “Estimator” 中的另一個線程則利用 “MapManager” 類構建和管理特征地圖。

2.?配置文件

在啟動文件中包含以下參數:

IMU_Mode:用于選擇 IMU 信息融合策略,有三種模式可選:

  • 0:不使用 IMU 信息,純激光里程計,使用勻速模型進行運動畸變補償;

  • 1:使用 IMU 預積分進行運動畸變補償;

  • 2:將 IMU 與激光信息進行緊耦合融合。

Extrinsic_Tlb:激光雷達與 IMU 之間的外參,使用 SE3 形式表示。如果使用的是外部 IMU,則需要自行完成傳感器標定,并將該參數設置為您系統中的外參值。

Used_Line:HAP和Horizon等效為6線,MID360等效為4線。

Use_seg:選擇動態物體濾除的分割方式,有兩種模式可選:

  • 0:不使用分割方法,如果數據中幾乎沒有動態物體,可以選擇該模式;

  • 1:使用分割方法來剔除動態物體。

3. ScanRegistration

系統從節點 “ScanRegistration” 開始運行,該節點負責提取特征點。在特征提取之前,會先從原始點云中剔除動態物體,因為在城市場景中通常存在大量動態物體,這些動態物體會影響系統的魯棒性和精度。為了過濾動態物體,采用了一種快速的點云分割方法。首先應用歐幾里得聚類將點云劃分為多個聚類,然后將原始點云分為地面點、背景點和前景點。前景點被視為動態物體,從特征提取過程中排除。通過動態物體濾除模塊,系統在動態場景中獲得了較高的魯棒性。

使用歐式聚類方法將原始點云聚類為地面點(藍色),背景點(綠色),和前景點(黃色),如下圖所示。其中前景點(黃色)被視為動態物體,并在特征提取過程中去除。去除之后,系統在動態場景中可保持很高的魯棒性,即便激光雷達的大部分視場角被動態物體遮擋,也可以準確地定位和建圖。

:具體實現在函數AbvGndSeg()的標記背景點SegBG()和SegObjects()中,這部分代碼沒有使用PCL提供的相關聚類方法(在DoSeg()函數最開始的降采樣也是自己實現的,這部分內容以后可以借鑒)。還有一個是每個點地面在KD樹找到相鄰點后,對鄰近點進行PCA分析,計算這些點的特征值和特征向量,求平均得到地面的法向量 CalGndPos_cor()。

在開闊場景中,通常只能提取較少的特征點,容易導致某些自由度上的退化。為了解決這個問題,設計了一套特征提取流程,使得特征點在空間中分布更廣泛且更加均勻。分布廣泛且均勻的特征點可以在六個自由度上提供更多約束,有助于消除退化問題。此外,在特征稀疏的場景中,一些不規則點也能提供有用的信息,因此將不規則點也作為一個類別提取,用于點云配準。

根據局部幾何屬性,特征點被分為三類:角點特征、平面特征和不規則特征。我們首先在每條掃描線上提取曲率較大且孤立的點作為角點特征,然后使用主成分分析(PCA)對其余點進行分類,劃分為平面特征和不規則特征,如下圖所示。針對不同距離的點,設置不同的閾值,以盡可能保證特征點在空間中的分布均勻。

4.?PoseEstimation

在 “PoseEstimation” 節點中,系統首先通過 IMU 預積分或勻速模型對點云的運動畸變進行補償。隨后進入 IMU 初始化模塊。如果初始化成功,系統將切換至 LIO(激光慣性里程計)模式;否則,將以 LO(激光里程計)模式運行,并進行 IMU 狀態初始化。

在 LO 模式下,系統采用幀到模型(frame-to-model)的點云配準方法來估計傳感器位姿。受 ORB-SLAM3 啟發,系統引入了一種最大后驗(MAP)估計方法,用于聯合初始化 IMU 的偏置、速度和重力方向。該方法不依賴繁瑣的初始化流程,支持任意運動軌跡下的初始化,同時考慮了傳感器的不確定性,從而在最大后驗概率意義下獲得最優解,具備高效、魯棒和高精度的特點。

完成初始化后,系統將運行一個基于滑動窗口的緊耦合傳感器融合模塊,估計滑動窗口內的 IMU 位姿、偏置和速度。同時,另一個線程并行地構建和維護全局地圖。

參考:覽沃 LIO-Livox 算法開源 一個魯棒的激光-慣性里程計

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/904349.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/904349.shtml
英文地址,請注明出處:http://en.pswp.cn/news/904349.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

day18-API(常見API,對象克隆)

課程目標 能夠熟練使用Math類中的常見方法 能夠熟練使用System類中的常見方法 能夠理解Object類的常見方法作用 能夠熟練使用Objects類的常見方法 能夠熟練使用BigInteger類的常見方法 能夠熟練使用BigDecimal類的常見方法 1 Math類 1.1 概述 tips:了解內容…

用OMS從MySQL遷移到OceanBase,字符集utf8與utf8mb4的差異

一、問題背景 在一次從MySQL數據庫遷移到OceanBase的MySQL租戶過程中,出現了一個轉換提示: [WARN][CONVER] he table charset:utf8->utf8mb4, 你可能會擔心這種轉換可能導致字符集不兼容的問題。但通過查閱相關資料可知,utf8m…

MATLAB中tabulate函數——先驗概率的簡單估計

load fisheriris X meas(:,1:2); Y species; labels unique(Y); tabulate(Y)ValueCountPercentsetosa5033.33%versicolor5033.33%virginica5033.33%

《Python星球日記》第28天:數據獲取與可視化(綜合項目)

名人說:路漫漫其修遠兮,吾將上下而求索。—— 屈原《離騷》 創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder??) 專欄:《Python星球日記》,限時特價訂閱中ing 目錄 一、項目概述二、數據獲取1. 準備工作2. 使用 `requests` 獲取網頁內容3. 使用 `BeautifulSoup`…

基于深度學習的圖像識別技術:從原理到應用

前言 在當今數字化時代,圖像識別技術已經滲透到我們生活的方方面面,從智能手機的人臉解鎖功能到自動駕駛汽車對交通標志的識別,再到醫療影像診斷中的病變檢測,圖像識別技術正以其強大的功能和廣泛的應用前景,改變著我們…

限免開關實施版本保護措施,保證項目灰度發布安全

迭代用戶限免權限校驗業務 新增限免開關實現普通用戶權益更新,實施版本保護措施,保證項目灰度發布安全; // 是否展示限免標識 func (t *BasePrivilegeService) IsPromotionFree(p consumParams) bool {// 限免開關isFreeUseOpen : p.cfg.Vip…

從 AWS Marketplace 開始使用 AssemblyAI 的語音轉文本模型構建語音智能

語音智能和語音轉文本 (STT) 技術已變得至關重要,因為組織每天收集數千小時的電話、會議和客戶互動。僅靠原始音頻并不能推動決策 - 組織需要智能來大規模地從語音數據中提取價值。語音智能結合了語音識別、自然語言處理 (NLP&…

Android組件化 -> Debug模式下,本地構建module模塊的AAR和APK

本地構建module模塊的AAR gradle.properties isCommonApp false模塊的build.gradle apply plugin: com.android.library:module模塊編譯manifest.srcFile src/main/AndroidManifest.xml:讀取沒有啟動App和Activity的配置文件 if (isCommonApp.toBoo…

FlexibleButton:一個輕巧靈活的按鍵處理庫,讓你的按鍵處理更簡單

在嵌入式系統開發中,按鍵輸入處理是一個常見且重要的環節。然而,許多開發者在處理按鍵時,往往會遇到按鍵消抖、組合按鍵、長按/短按等功能實現的復雜性。如何在保證系統高效運行的同時,簡化按鍵事件的處理呢? 今天&…

探索程序員薪資背后的秘密與未來:智能化工具如何助力職場發展

最新接入DeepSeek-V3模型,點擊下載最新版本InsCode AI IDE 探索程序員薪資背后的秘密與未來:智能化工具如何助力職場發展 引言 在當今數字化時代,程序員作為科技發展的核心力量,其職業前景和薪資水平備受關注。隨著人工智能和自…

【STM32單片機】#14 PWR電源控制

主要參考學習資料: B站江協科技 STM32入門教程-2023版 細致講解 中文字幕 開發資料下載鏈接:https://pan.baidu.com/s/1h_UjuQKDX9IpP-U1Effbsw?pwddspb 單片機套裝:STM32F103C8T6開發板單片機C6T6核心板 實驗板最小系統板套件科協 目錄 PWR…

第十五屆藍橋杯單片機國賽-串口解析

串口通信像是藍橋杯單片機組國賽中一個若隱若現的秘境,總在不經意間為勇者們敞開大門。然而,初次探索這片領域的冒險者,常常會被其神秘莫測的特性所震懾,黯然退場(編不下去了,直接進入正題)。 附…

深入探索 51 單片機:從入門到實踐的全面指南

深入探索 51 單片機:從入門到實踐的全面指南 一、引言 在嵌入式系統發展的漫長歷程中,51 單片機猶如一顆璀璨的明星,雖然誕生已有數十年,但至今仍在眾多領域發揮著重要作用。它以結構簡單、易于學習、成本低廉等優勢&#xff0c…

GD32F470+CH395Q

第一步:資料下載 以太網協議棧芯片 CH395 - 南京沁恒微電子股份有限公司 第二步:準備工程 (1) 首先準備一個編譯無報錯、可以正常打印和延時的工程文件,官方例程采用STM32F1芯片,但本文采用GD32F470芯片 …

Linux 怎么使用局域網內電腦的網絡訪問外部

一次性 export http_proxy"http://192.168.0.188:7890" export https_proxy"http://192.168.0.188:7890"一直生效 寫入 ~/.bashrc(或 ~/.bash_profile) nano ~/.bashrc加入這一行: export http_proxy"http://19…

Mysql進階篇1_存儲引擎、索引、SQL性能分析指令

文章目錄 1.存儲引擎InnoDBMyISAMMemory存儲引擎選擇和對比 2.索引索引結構索引分類索引語法索引使用(建議看完第3節后觀看)!!!mysql如何使用索引查詢數據(個人理解) 3.SQL性能分析SQL執行頻率慢…

LeetCode 熱題 100 118. 楊輝三角

LeetCode 熱題 100 | 118. 楊輝三角 大家好,今天我們來解決一道經典的算法題——楊輝三角。這道題在 LeetCode 上被標記為簡單難度,要求生成楊輝三角的前 numRows 行。楊輝三角是一個經典的組合數學問題,每一行的數字都是其正上方和正左上方…

修改或禁用Cursor的全局搜索默認快捷鍵

在 Cursor 中,默認情況下 雙擊 Shift 會打開 全局搜索(Quick Open),類似于 VS Code 的 CtrlP 功能。如果你想修改或禁用這個快捷鍵,可以按照以下步驟操作: 1. 打開快捷鍵設置 方法 1:按下 Ctrl…

HarmonyOS Device Connector(hdc)

它是為開發人員提供的用于調試的命令行工具,通過該工具可以在windows/linux/mac系統上與設備進行交互。 hdc分為三部分: client:運行在電腦端的進程,開發者在執行hdc命令時啟動該進程,命令結束后進程退出。 server&…

開源PDF解析工具Marker深度解析

開源PDF解析工具Marker深度解析 檢索增強生成(RAG)系統的第一步就是做 pdf 解析,從復雜多樣的 pdf 中提取出干凈準確的文本內容。現有的最優秀的開源工具有兩個:Marker 和 MinerU。因為 Marker 是個人開發者做的,文檔…