SLAM中的非線性優化-2D圖優化之零空間(十五)

? ? ? ? 這節在進行講解SLAM中一個重要概念,零空間,講它有啥用呢?因為SLAM中零空間的存在,才需要FEJ或固定約束存在,本節內容不屬于2D圖優化獨有,先看看什么是零空間概念;零空間是一個核心概念,它深刻揭示了SLAM問題的內在結構和優化過程中的關鍵特性。簡單來說,零空間指的是對系統狀態(機器人的位姿和地圖點的位置)進行某種整體變換時,不會改變傳感器觀測值(例如圖像特征點重投影誤差、激光點云匹配誤差)的變換方向所構成的空間。

一、核心概念解析

  1. 不可觀測的自由度:

    ? ? SLAM的目標是同時估計機器人的運動軌跡(位姿序列)和環境地圖(點云或特征點位置)。然而,僅憑機器人自身的運動傳感器(IMU、輪速計)和外部環境觀測傳感器(相機、激光雷達)的相對測量,無法確定整個系統在全局坐標系中的絕對位置和朝向。想象一下:你閉著眼睛在一個未知的房間里走動,通過觸摸墻壁和家具來構建房間地圖并確定自己的位置。你構建的地圖和你的路徑在房間內的絕對位置和朝向是未知的(你不知道地圖的“北”在哪里,也不知道起點在地球上的經緯度),但地圖本身的結構和你路徑的相對形狀是正確的。
  2. 數學表達:

    ? ? ? 大多數SLAM后端(無論是基于濾波的如EKF-SLAM,還是基于優化的如Bundle Adjustment)最終都歸結為一個最小二乘問題:最小化預測的觀測值與實際觀測值之間的誤差。目標函數通常寫作:?min Σ ||h?(X) - z?||2,其中?X?是整個狀態向量(包含所有位姿和地圖點),h?(X)?是基于狀態預測的第?i?個觀測值,z??是實際的第?i?個觀測值。求解通常需要計算目標函數關于狀態?X?的導數(雅可比矩陣?J)和海森矩陣近似?H ≈ J?J零空間就體現在海森矩陣?H?上:H?是一個對稱半正定矩陣,但它不是滿秩的。H?存在特征值為零(或非常接近零)的特征向量。這些特征向量對應的方向,就是系統的零空間方向。
  3. 零空間變換:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ??假設存在一個變換?T(例如,對整個地圖和所有機器人位姿同時施加一個剛體變換——平移和旋轉)。如果對這個變換后的狀態?T(X)?進行觀測預測?h?(T(X)),其結果與對原始狀態?X?的觀測預測?h?(X)?完全相等,那么?T?所對應的增量方向?ΔX?就位于海森矩陣?H?的零空間中。數學上:?J * ΔX = 0?這意味著在這個方向?ΔX?上移動狀態,觀測誤差的一階變化為零。H * ΔX = J?J * ΔX = J? * (J * ΔX) = J? * 0 = 0

  4. 維度:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?三維空間?中,一個自由漂浮的SLAM系統(沒有固定到全局坐標系的錨點)的零空間維度是?6:3個自由度:全局旋轉 (roll,?pitch,?yaw);3個自由度:全局平移 (x,?y,?z)。在?二維空間?中,零空間維度是?3:1個自由度:全局旋轉 (yaw);2個自由度:全局平移 (x,?y)。

零空間帶來的影響和挑戰

  1. 解的不唯一性:

    ? ? ? ?由于存在零空間,最小二乘問題有無數個解。所有這些解只相差一個全局的剛體變換(零空間變換)。從觀測誤差的角度看,它們都是等價的“最優解”。后果:?如果優化算法不加約束,理論上最終解會漂移在零空間定義的流形上。數值計算中,由于噪聲和線性化誤差,解可能會在這個流形上緩慢漂移。
  2. 數值不穩定性:

    ? ? ? ? 海森矩陣?H?是奇異的(或病態的,條件數很大),因為它有零特征值。這使得在求解線性方程?H * ΔX = -b?(高斯-牛頓/列文伯格-馬夸爾特算法的核心步驟) 時變得困難。后果:?直接求逆或使用不穩定的線性求解器會導致數值溢出、解振蕩或不收斂。

實踐中如何處理零空間

SLAM算法必須顯式或隱式地處理零空間問題:

  1. 固定先驗(錨定):最常見的方法?固定第一個(或前幾個)機器人位姿的6個自由度(或3個在2D中)。例如,設置?T0 = [I | 0]?(單位旋轉矩陣,零平移向量)。作用:?這相當于給系統添加了一個絕對的參考系,移除了零空間對應的自由度,使?H?矩陣變得滿秩正定。優化問題有唯一解(在噪聲范圍內)。實現:?在優化問題中添加一個強先驗因子(Prior Factor),將?T0?牢牢地“釘”在原點。

  2. 添加偽觀測值:引入一些微弱的絕對測量(即使現實中不存在),比如一個非常弱的GPS先驗(方差很大),或者一個假設的地圖點固定在原點。作用:?這些微弱的觀測理論上消除了零空間,使?H?變得正定(但可能條件數仍然很大)。數值穩定性提高,解被輕微地約束在原點附近,但允許在觀測證據很強時發生輕微漂移。比固定先驗更“軟”一些。

  3. 使用特殊的線性求解器:使用能夠處理奇異或病態矩陣的求解器,例如:(1)QR 分解:?數值穩定性較好。(2)Cholesky 分解(帶阻尼/正則化):?列文伯格-馬夸爾特算法本身就通過添加?λI?項對?H?進行正則化 (H + λI),使矩陣正定,間接處理了零空間問題。λ?控制阻尼強度。(3)SVD(奇異值分解):?可以顯式識別并丟棄(或阻尼)對應于零奇異值(零空間)的方向。作用:?這些方法不直接移除零空間自由度,而是在求解步驟中穩健地處理奇異性,找到一個有效的解(通常對應于某種最小范數解)。

  4. 流形優化:機器人位姿(旋轉)本身存在于非歐幾里得空間(流形)上(如SO(3)/SE(3))。現代優化庫(g2o, Ceres Solver, GTSAM)通常直接在流形上進行狀態更新。作用:?這確保了位姿在優化過程中始終保持在有效的流形上,提高了數值穩定性和收斂性。雖然不直接解決零空間問題,但它是處理旋轉相關數值問題的必要基礎。

  5. 忽略(在特定算法中):在某些基于濾波的方法(如EKF)中,初始協方差矩陣可能設置得足夠大以包含零空間不確定性。隨著過程噪聲和觀測更新,協方差矩陣中與零空間對應的部分可能會增長(如果沒有任何絕對觀測),但算法通常仍能給出相對一致的軌跡和地圖(協方差反映了這種全局不確定性)。然而,數值問題仍然需要小心處理。

為什么零空間不影響SLAM的核心功能

? ? ? ?關鍵在于?相對關系:(1)雖然整個軌跡和地圖的絕對位置和朝向(零空間)無法確定,但軌跡的形狀(機器人從一個位姿移動到下一個位姿的相對變換)和地圖的結構(點與點之間的相對位置)是唯一確定的(在觀測噪聲范圍內)。(2)SLAM的核心目標——讓機器人在自己構建的地圖中實現定位(知道自己在哪)和導航(知道怎么去目的地)——完全依賴于這些精確的相對關系。絕對的經緯度坐標對于機器人在其自身地圖中行動通常不是必需的(除非需要與外部絕對坐標系對齊)。

總結:(1)零空間是SLAM問題的固有屬性:?它源于僅依靠相對測量無法確定全局參考系(6個自由度);(2)體現為奇異性:?優化問題的海森矩陣?H?不滿秩,存在特征值為零的方向(零空間變換方向);(3)導致解不唯一和數值困難:?解在零空間定義的流形上不唯一,數值求解不穩定。(4)必須處理:?常用方法包括固定第一個位姿(錨定)、添加弱先驗、使用魯棒的線性求解器(SVD, 帶阻尼的Cholesky)以及在流形上進行優化。(5)不影響核心功能:?SLAM提供的精確的相對軌跡和地圖結構足以支持定位和導航。

二、SLAM 中的零空間(Null Space)數學解釋

? ? ? ? 在 SLAM(Simultaneous Localization and Mapping)問題中,零空間(Null Space)描述了系統狀態(機器人位姿和地圖點)的某些變換不會影響觀測誤差(如重投影誤差、點云匹配誤差)。這些變換對應的方向在優化問題的 Hessian 矩陣中是?零特征值方向,導致系統無法唯一確定全局參考系。

1. SLAM優化的數學模型

1.1 線性化與Gauss-Newton優化

2.1 零空間的數學定義

2.1 零空間(Null Space)的定義

2.2 SLAM 零空間的物理意義

3.?Hessian矩陣的奇異性

4.?數學示例

  • 零空間是 SLAM 固有的自由度,對應全局剛體變換(平移+旋轉)。

  • Hessian 矩陣奇異,導致優化問題有無窮多解(相差一個全局變換)。

  • 解決方法

    • 固定先驗(Gauge Fixing)。

    • 使用偽逆或阻尼(LM 方法)。

    • 流形優化(確保位姿在?SE(3) 上更新)。

?數學上,零空間的存在反映了 SLAM 問題的?相對觀測無法確定絕對參考系,但?不影響內部一致性(軌跡和地圖的相對關系仍然正確)。

?

? ? ? ?在 SLAM(Simultaneous Localization and Mapping)中,觀測模型?hij(Ti,pj)hij?(Ti?,pj?)?通常描述的是?相對測量(如相機觀測到的地圖點像素坐標、激光雷達匹配的點云距離等)。這些測量僅依賴于?機器人與環境之間的相對幾何關系,而不是它們的絕對全局位置。

三、FEJ的數學解釋

? ? ? ?用數學來解釋 FEJ 的核心思想及其解決的問題;關鍵在于理解?線性化點不一致如何破壞系統的零空間(不可觀自由度)?。

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

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

相關文章

如何解決本地DNS解析失敗問題?以連接AWS ElastiCache Redis為例

在云服務開發中,DNS解析問題常常成為困擾開發者的隱形障礙。本文將通過AWS ElastiCache Redis連接失敗的實際案例,詳細介紹如何診斷和解決DNS解析問題,幫助你快速恢復服務連接。 引言 在使用 telnet 或 redis-cli 連接 AWS ElastiCache Redis 時,有時會遇到類似以下錯誤:…

探索釘釘生態中的宜搭:創建與分享應用的新視界

在當今快速發展的數字化時代,企業對于高效協作和信息管理的需求日益增長。作為阿里巴巴集團旗下的智能工作平臺,釘釘不僅為企業提供了強大的溝通工具,其開放的生態系統也為用戶帶來了無限可能。其中,宜搭(YiDa&#xf…

深入理解事務和MVCC

文章目錄 事務定義并發事務代碼實現 MVCC定義核心機制 事務 定義 什么是事務? 事務是指一組操作要么全部成功,要么全部失敗的執行單位。 在數據庫中,一個事務通常包含一組SQL語句,系統保證這些語句作為一個整體執行。 為什么引…

用 Python 繪制精美雷達圖:多維度材料屬性對比可視化全指南

🌟 為什么選擇雷達圖?從材料科學到多維數據對比的可視化利器 在科研和數據分析領域,當我們需要同時展示多個維度的數據對比時,傳統的柱狀圖或折線圖往往顯得力不從心。這時候,雷達圖(Radar Chart&#xff…

Excel學習03

超級表與圖表 Excel中具有超級表的功能。所謂超級表(官方名稱為“表格”,快捷鍵CtrlT)是Excel中一個強大的數據管理工具,它將普通的數據區域轉換為具有只能功能的交互式表格。 這就是表格變為超級表的樣子。超級表默認具備凍結窗…

Netflix 網飛的架構演進過程、Java在網飛中的應用|圖解

寫在前面 上一篇文章中,我們講解了網飛當前的架構,但網飛的架構并不是一開始就是這樣的,而是不斷演進發展才是當前的樣子。 這篇文章我們就來講講網飛架構的演進過程。 第一階段:Zuul Gateway REST API 使用 Zuul 作為API網關…

使用ros2服務實現人臉檢測2-人臉檢測功能實現(適合0基礎小白)

文章目錄 一、用到的庫二、使用步驟1.引入庫2.獲取圖片真實路徑3.檢測人臉4.繪制人臉5.顯示結果6.更改setup.py7.完整代碼 三、結果展示 一、用到的庫 face_recognition:實現在圖片中檢測人臉。 cv2:顯示圖片,并且可以在圖像中展示檢測結果。…

中國農村統計年鑒-Excel版(1985-2024年)

《中國農村統計年鑒》系統收錄了全國和各省農村社會經濟統計數據,以及近年全國農村主要統計數據,是一部全面反映我國農村社會經濟情況的資料性年刊。年鑒內容覆蓋農村人口結構、農業產值、主要農產品產量、市場物價、進出口貿易以及收入消費水平等社會經…

golang pprof性能調試工具

簡介 pprof是性能調試工具,可以生成類似火焰圖、堆棧圖,內存分析圖等。 整個分析的過程分為兩步:1. 導出數據,2. 分析數據。

PPIO × 302.AI:三分鐘搭建可共享的聊天機器人

最近,各主流模型廠商頻頻發布新模型,有一如既往強大的DeepSeek-R1-0528,擅長長輸入推理的MiniMax-M1-80k…… 好用的AI大模型這么多,如何才能集成在一個應用自由使用呢?302.AI作為企業級AI應用平臺支持各主流模型調用&…

怎么樣在自己的網站/獨立站中添加視頻?

文章目錄 **前言** 一、視頻在網站/獨立站的好處二、視頻嵌入網站的原理三、如何簡易地把視頻嵌入到獨立站中? 前言 在信息傳播形式日益多元化的當下,靜態文字與圖片早已無法滿足用戶對沉浸式瀏覽體驗的需求。視頻以其動態畫面、聲音及文字相結合的特性…

【圖像處理基石】什么是攝影的數碼味?

“數碼味”是一個攝影術語,通常指照片看起來不自然,有過度處理的痕跡,比如色彩過于鮮艷、對比度偏高、高光過曝、陰影死黑,或者有明顯的銳化痕跡和噪點。這種現象在手機攝影中尤為常見,因為手機相機的自動算法往往會為…

報表控件stimulsoft教程:在報表、儀表板和 PDF 表單自動生成縮略圖

了解縮略圖的工作原理在使用Stimulsoft Demo、Stimulsoft Server和Stimulsoft Cloud時非常有用。例如,您可以在此處查看縮略圖的實際效果 - 當側邊欄折疊時,將顯示縮略圖而不是資源列表。在本文中,我們將探討 Stimulsoft 產品中報表、儀表板和…

變分自編碼器(VAE)

1. 從自編碼器(AE)到變分自編碼器(VAE) 自編碼器(AutoEncoder, AE) 基本結構: 自編碼器是一種無監督學習模型,通常由兩個部分組成: 編碼器(Encoder)&…

ChatboxAI 搭載 GPT 與 DeepSeek,引領科研與知識庫管理變革

文章摘要:本文深入探討 ChatboxAI 在科研領域的應用優勢。ChatboxAI 集成多模型,支持全平臺,能高效管理科研知識,助力文獻檢索、實驗設計與論文撰寫,提升科研效率與質量,同時保障數據安全。其知識庫功能可整…

【無刷電機FOC進階基礎準備】【04 clark變換、park變換、等幅值變換】

目錄 clark變換park變換等幅值變換 其實我不太記得住什么是clark變換、park變換,我每次要用到這個名詞的時候都會上網查一下,因為這就是兩個名詞而已,但是我能記住的是他們背后的含義。 經過【從零開始實現stm32無刷電機FOC】系列后應該對cla…

Sentinel的流控策略

在 Sentinel 中,流控策略(Flow Control Strategy)用于定義如何處理請求的流量,并決定在流量達到某個閾值時采取的行動。流控策略是實現系統穩定性和高可用性的核心機制,尤其在高并發環境中,確保服務不會因過…

Ubuntu Extension Manager 插件卸載

Ubuntu 上使用Extension Manager 安裝插件,但目前無法在Extension Manager 中卸載。 卸載方式可以通過 gnome-extensions 命令進行卸載: Usage:gnome-extensions COMMAND [ARGS…]Commands:help Print helpversion Print versionenable Enabl…

深度學習中Embedding原理講解

我們用最直白的方式來理解深度學習中 Embedding(嵌入) 的概念。 核心思想一句話: Embedding 就是把一些復雜、離散的東西(比如文字、類別、ID)轉換成計算機更容易理解和計算的“數字密碼”,這些“數字密碼…

(3)Java+Playwright自動化測試-啟動瀏覽器

1.簡介 前邊兩章文章已經將環境搭建好了,今天就在Java項目搭建環境中簡單地實踐一下: 啟動兩大瀏覽器。 接下來我們在Windows系統中啟動瀏覽器即可,其他平臺系統的瀏覽器類似的啟動方法,照貓畫虎就可以了。 但是在實踐過程中&am…