導航:首頁 > 源碼編譯 > 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相關的資料

熱點內容
gcc編譯器是幹啥的 瀏覽:808
int在java中的長度 瀏覽:132
電腦必備的五個神仙軟體程序員 瀏覽:212
什麼系統屬於安卓 瀏覽:359
有什麼游戲安卓oppo可以玩 瀏覽:721
microchip編程 瀏覽:872
數控車床宏程序編程入門 瀏覽:651
如何查伺服器上的密碼 瀏覽:874
手機alipay文件夾刪除 瀏覽:801
浩辰cad命令行 瀏覽:351
移動加密思路 瀏覽:970
php手冊pdf 瀏覽:752
安卓手機推薦什麼鍵位 瀏覽:112
android登錄驗證碼 瀏覽:476
聯通雲伺服器管理賬號 瀏覽:309
蘋果7加密晶元壞了 瀏覽:516
壓縮包2g解壓後有多大 瀏覽:956
php人才管理系統 瀏覽:21
宏命令結構 瀏覽:900
為什麼安卓手機開淘寶會卡 瀏覽:938