[SLAM]2D鐳射掃描匹配方法
1.Beam Model
Beam Model我將它叫做測量光束模型。個人理解,它是一種完全的物理模型,只針對鐳射發出的測量光束建模。將一次測量誤差分解為四個誤差。
$ph_{hit}$,測量本身產生的誤差,符合高斯分佈。
$ph_{xx}$,由於存在運動物體產生的誤差。
...
2.Likehood field
似然場模型,和測量光束模型相比,考慮了地圖的因素。不再是對鐳射的掃描線物理建模,而是考慮測量到的物體的因素。
似然比模型本身是一個感測器觀測模型,之所以可以實現掃描匹配,是通過劃分柵格,步進的方式求的最大的Score,將此作為最佳的位姿。
for k=1:size(zt,1) if zt(k,2)>0 d = -grid_dim/2; else d = grid_dim/2; end phi = pi_to_pi(zt(k,2) + x(3)); if zt(k,1) ~= Z_max ppx = [x(1),x(1) + zt(k,1)*cos(phi) + d]; ppy = [x(2),x(2) + zt(k,1)*sin(phi) + d]; end_points = [end_points;ppx(2),ppy(2)]; wm = likelihood_field_range_finder_model(X(j,:)',xsensor,... zt(k,:)',nearest_wall, grid_dim, std_hit,Z_weights,Z_max);W(j) = W(j) * wm; else dist = Z_max + std_hit*randn(1); ppx = [x(1),x(1) + dist*cos(phi) + d]; ppy = [x(2),x(2) + dist*sin(phi) + d]; missed_points = [missed_points;ppx(2),ppy(2)]; end set(handle_sensor_ray(k),'XData', ppx, 'YData', ppy) end
function q = likelihood_field_range_finder_model(X,x_sensor,zt,N,dim,std_hit,Zw,z_max) % retorna probabilidad de medida range finder :) % X col, zt col, xsen col [n,m] = size(N); % Robot global position and orientation theta = X(3); % Beam global angle theta_sen = zt(2); phi = pi_to_pi(theta + theta_sen); %Tranf matrix in case sensor has relative position respecto to robot's CG rotS = [cos(theta),-sin(theta);sin(theta),cos(theta)]; % Prob. distros parameters sigmaR = std_hit; zhit = Zw(1); zrand = Zw(2); zmax = Zw(3); % Actual algo q = 1; if zt(1) ~= z_max % get global pos of end point of measument xz = X(1:2) + rotS*x_sensor + zt(1)*[cos(phi); sin(phi)]; xi = floor(xz(1)/dim) + 1; yi = floor(xz(2)/dim) + 1; % if end point doesn't lay inside map: unknown if xi<1 || xi>n || yi<1 || yi>m q = 1.0/z_max; % all measurements equally likely, uniform in range [0-zmax] return end dist2 = N(xi,yi); gd = gauss_1D(0,sigmaR,dist2); q = zhit*gd + zrand/zmax; end end
3.Correlation based sensor models相關分析模型
XX提出了一種用相關函式表達馬爾科夫過程的掃描匹配方法。
互相關方法Cross-Correlation,另外相關分析在進行匹配時也可以應用,比如對角度直方圖進行互相關分析,計算變換矩陣。
參考文獻:A Map Based On Laser scans without geometric interpretation
circular Cross-Correlation的Matlab實現
1 % Computes the circular cross-correlation between two sequences 2 % 3 % a,b the two sequences 4 % normalize if true, normalize in [0,1] 5 % 6 function c = circularCrossCorrelation(a,b,normalize) 7 8 for k=1:length(a) 9 c(k)=a*b'; 10 b=[b(end),b(1:end-1)]; % circular shift 11 end 12 13 if normalize 14 minimum = min(c); 15 maximum = max(c); 16 c = (c - minimum) / (maximum-minimum); 17 end
4.MCL
蒙特卡洛方法
5.AngleHistogram
角度直方圖
6.ICP/PLICP/MBICP/IDL
屬於ICP系列,經典ICP方法,點到線距離ICP,
7.NDT
正態分佈變換
8.pIC
結合概率的方法
9.線特徵
目前應用線段進行匹配的試驗始終不理想:因為線對應容易產生錯誤,而且累積誤差似乎也很明顯!
相關推薦
[SLAM]2D鐳射掃描匹配方法
1.Beam Model Beam Model我將它叫做測量光束模型。個人理解,它是一種完全的物理模型,只針對鐳射發出的測量光束建模。將一次測量誤差分解為四個誤差。 $ph_{hit}$,測量本身產生的誤差,符合高斯分佈。 $ph_{xx}$,由於存在運動物體產生的誤差。 ... 2.Likeho
[SLAM]2D鐳射線特徵提取
Nguyen, V., et al. (2007)."A comparison of line extraction algorithms using 2D range data for indoor mobile robotics." Autonomous Robots 23(2): 97-111. 論文
2D鐳射SLAM演算法比較+cartographer
Hector slam: Hector slam利用高斯牛頓方法解決scan-matching問題,對感測器要求較高。 缺點:需要雷達(LRS)的更新頻率較高,測量噪聲小。所以在製圖過程中,需要robot速度控制在比較低的情況下,建圖效果才會比較理想,這也是它沒有迴環(l
正則匹配方法
blank csdn 關於 expr 取ip地址 數值 換ip 表達式 java 這裏是幾個主要非英文語系字符範圍(google上找到的): 2E80~33FFh:中日韓符號區。收容康熙字典部首、中日韓輔助部首、註音符號、日本假名、韓文音符,中日韓的符號、標點、帶圈或帶括
特征檢測和特征匹配方法
.com comment 場景 原則 它的 自帶 相同 for 視覺 一幅圖像中總存在著其獨特的像素點,這些點我們可以認為就是這幅圖像的特征,成為特征點。計算機視覺領域中的很重要的圖像特征匹配就是一特征點為基礎而進行的,所以,如何定義和找出一幅圖像中的特征點就非常重要。這
SSM-Spring-12:Spring中NameMatchMethodPointcutAdvisor名稱匹配方法切入點顧問
cep con ram -c intercept cts str framework 所有 ------------吾亦無他,唯手熟爾,謙卑若愚,好學若饑------------- advice 是通知advisor 是顧問 顧問(Advisor)
解決HP網絡打印機不能掃描的方法
9.png ima 其中 ado 應用程序 borde 網上 png title 公司有N多的網絡打印機,都是HP的,包括HP 1213、1216、1536、226、227、435等型號,打印一切正常。去年公司搬遷後,IP地址變更,導致大批量的用戶無法使用掃描儀掃描,報錯如
如何計算用戶在某個車站上下車,地圖匹配方法
list hash ror err traffic == %s url 使用 具體需求基於電信的位置融合數據,分析用戶是否通過火車出行,以及火車出行的相關信息,如乘車車次、上車站、下車站等。 數據描述1、用戶定位數據手機號碼業務開始時間城市編碼經緯度基站標識網格號業務類型事
Struts xml中Action的method與路徑的三種匹配方法
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
金蝶盤點機PDA倉庫條碼管理家電類序列號掃描操作方法-採購入庫單
1.1. 採購入庫單 傳統的進銷存管理軟體需要人工識別商品品種,清點商品數量,然後再去人工手工在電腦上一行行的錄入採購入庫單。錄單效率低,誤差大。 如果使用漢碼盤點機PDA,入庫時,倉管員只需要手持PDA去入庫現場,將需要入庫的商品按照順序掃描條碼,即可自動生成採購入庫單,從而提高工作效率和資
2D鐳射雷達如何實現3D應用?
2D鐳射雷達除了實現定位、建圖、多點觸控等應用外,還能用來做3D建模與環境掃描。肯定會有人好奇,2D鐳射雷達掃描出來的影象應該是平面圖,怎麼將2D平面圖變為三維的立體圖呢? 目前市面上實現這種效果的方式主要有兩種: 一種是採用現狀鐳射器,將原先的一個點變成一條線型光,如下圖的效果:  
Linux系統防止黑客NMAP掃描的方法
許多網路服務使用的是Linux系統,安裝了Apache伺服器軟體。容易受到黑客用NMAP來掃描web網站,現分享一個防範經驗。 我樣可以通過設定,讓Linux對NMAP掃描不理彩。即用iptables工具來過濾網路資訊,讓系統無法迴應掃描請求的資訊。以 此來提高伺服
[Linux]:Bash Shell的字串匹配方法
Bash的字串匹配共有6種形式: 1. ${variable#pattern} 如果pattern匹配variable的開始部分,從variable的開始處刪除字元直到第一個匹配的位置,包括匹配部分,返回剩餘部分。 2. ${variable##pattern} 如果pa
正則表示式(RegExp)的方法和字串的模式匹配方法
都能夠測試字串中是否存在指定格式的字元。兩種方法主要的區別在於,呼叫方法的物件和傳遞的引數,正則表示式的方法呼叫方法的物件是正則表示式,傳輸的引數是字串,而字串的模式匹配呼叫方法的物件是字串,傳遞的引數是正則表示式。 RegExp物件的方法: exec()
Matasploit掃描漏洞方法
Metasploit是一款開源的安全漏洞檢測工具,可以幫助安全和IT專業人士識別安全性問題,驗證漏洞的緩解措施,並管理專家驅動的安全性進行評估,提供真正的安全風險情報。這些功能包括智慧開發,密碼審計,Web應用程式掃描,社會工程。Metasploit可以安裝在
多型&動態繫結&方法匹配&方法繫結
1)多型:父型別的變數,可以引用子型別的物件 class A{ } class B extends A{ }那麼可以 A a = new B(); 其中這裡的A叫做宣告型別,B叫做實際型別 那麼這裡的a就可以呼叫B中的方法(如果有的話),那麼是不是什麼方法都能呼叫呢?
solr 搜尋 的 完全匹配方法
最近是用 solr 做搜尋引擎,但是由於搜尋特殊性,不需要分詞後的檢索結果,比如 搜 “汪翰翔” 會出來包含汪,翰,翔三中詞的結果,但是需求只需要 完全匹配 “汪翰翔” 的結果, 其方法是 在 將關鍵字 用 雙引號 包起來。
SLAM學習筆記4: ORB-SLAM中BOW特徵匹配
通常估計兩幀之間的運動, 我們需要分別計算兩幀中的所有特徵點, 然後計算特徵點之間的匹配關係. 再通過對應特徵點的移動情況來估計兩幀之間的攝像機運動. 這中間會涉及好很多問題, 至今未能得到有效解決: 提取特徵點的型別: 眾所周知, 對於自然場景影象, S
SLAM之鐳射雷達Velodyne vlp-16使用
https://blog.csdn.net/weixin_37239947/article/details/75097145 簡介: VLP-16鐳射雷達是Velodyne公司出品的最小型的3維鐳射雷達,保留了電機轉速
聊天機器人中對話模板的高效匹配方法
/*.*/ author: 張俊林,黃通文,薛會萍儘管深度學習目前在研發聊天機器人方面進行的如火如荼,但是這些技術距離真正實用還有不短的距離,在市面上你能看到的非常多的聊天