導航:首頁 > 源碼編譯 > lm演算法c

lm演算法c

發布時間:2024-10-28 09:54:13

㈠ Metropolis法和Metropolis-Hastings法有什麼區別嗎各自的優點是什麼呢感謝大神

原文鏈接:http://tecdat.cn/?p=19664

MCMC是從復雜概率模型中采樣的通用技術。

㈡ LOAM點雲匹配演算法解析與雅克比矩陣推導

LOAM點雲匹配部分是LOAM框架的核心,其運算速度快,精度高,自14年發布以來,直到現在仍然被廣泛使用。然而,在後續的推廣中仍然存在一些問題,本文將對其進行解析並記錄自己應用中的問題。

演算法解析:演算法具體解析的文章有很多,這里只簡單介紹相關流程和原理。大致流程如下:線/面特徵與線/面地圖的殘差與對應優化向量計算。

線/面特徵與線/面地圖的殘差與對應優化向量計算:讀過LOAM的都知道,點雲匹配部分是一個點到線ICP加一個點到面ICP。優化時可以理解為都是計算點到點的殘差,只不過一個是在對應線上找到目標點,一個是在對應面上找到目標點,然後分別計算源點到目標點的殘差,這樣兩種ICP的殘差計算方程就統一了。後續計算雅克比矩陣時需要用到源點到目標點的距離(即殘差)以及源點到目標點的單向量,具體為什麼需要它們會在雅克比推導中給出。

LM演算法推導:後面的過程要了解下LM演算法才能繼續。

LM演算法的推導參考了LOAM-LM方法,雅克比推導參考了LeGO-LOAM中的數學公式推導,這里重新捋了一遍,並且推導了基於Tait-Bryan xyz extrinsic rotations的歐拉角的雅克比矩陣,原版LOAM中雅克比為基於Tait-Bryan zyx extrinsic rotations的歐拉角。

主體部分推導:重點在於每個點的殘差計算方程以及它對系統狀態偏導數,其中指每個點到線/面對應點的殘差計算方程,指當前系統狀態,即當前求解的位姿,由旋轉R和平移T構成,表示為,ROS中,歐拉角為Tait-Bryan xyz extrinsic rotations類型,即繞固定軸,先繞x軸,再繞y軸,最後繞z軸旋轉roll,pitch,yaw角度的方式,首先定義的形式,我們先去掉i,就以單一一個點來推導:

其中為兩點間距離,為當前幀的點在局部坐標系下坐標,為當前幀的點在世界坐標系下坐標,為對應線/面上目標點在世界坐標系的坐標。開始計算偏導:

其中:可以看到,這個V就是兩點間方向的單位向量,求殘差時已經得到了。偏導剩餘部分要分為對平移量T的求導和對歐拉角的求導兩部分,先看平移部分:

旋轉部分比較麻煩,以對roll的求導來看,我們用ex代替roll、ey代替pitch、ez代替yaw簡化表示:

實際上就是求旋轉矩陣分別對roll、pitch、yaw的偏導。

基於Tait-Bryan xyz extrinsic rotations的雅克比推導:不同類型的歐拉角表達方式其對應的旋轉矩陣是不同的,可以參考Euler angles,中給出的結,這里直接貼出Tait-Bryan xyz extrinsic rotations的歐拉角對應的旋轉矩陣

123對應ZYX,c為cos,s為sin,那麼偏導就容易了:

於是:

至此,雅克比就被求解了,剩下的套LM公式就好。

代碼剖析:代碼太多了,而且很多文字都對應剖析了,這里就提下雅克比部分就好:

閱讀全文

與lm演算法c相關的資料

熱點內容
python課設製作年歷 瀏覽:402
明文在pdf 瀏覽:746
鄭永令pdf 瀏覽:120
cad命令行坐標輸入 瀏覽:781
編譯原理csdn博客 瀏覽:192
想在深圳買房關注哪個app 瀏覽:911
國際體驗服為什麼伺服器載入失敗 瀏覽:688
php介面用處 瀏覽:392
想推廣app去哪裡找 瀏覽:258
phpcmysql 瀏覽:121
安卓手機的百度carlife怎麼連接車 瀏覽:136
編譯安裝py 瀏覽:160
pythonchar轉int 瀏覽:218
基於單片機的多組密碼鎖設計論文 瀏覽:106
華為雲如何升級雲伺服器 瀏覽:211
生活垃圾壓縮直運站 瀏覽:749
加密通道加密數據 瀏覽:820
次肋梁需要加密嗎 瀏覽:744
安徽蚌埠社保卡號用哪個app 瀏覽:217
php手冊下載哪個好 瀏覽:163