A.SLAM激光匹配算法
1、ICP迭代最近點:PLICP、MBICP、IDL
參考文章http://www.cnblogs.com/yhlx125/p/4955337.html太一吾魚水
Iterative Closest Point (ICP) [1][2][3] is an algorithm employed to minimize the difference between two clouds of points.
點雲匹配分類法(1)
Salvi, J. (2007). "A review of recent range image registration methods with accuracy evaluation." Image and Vision Computing 25(5): 578-596.
Mellado, N. and D. Aiger (2014). "SUPER 4PCS Fast Global Point cloud Registration via Smart Indexing."
點雲匹配分類法(2)
Coarse to fine registration粗-精過程
粗配的目的:提供剛體變換初始估計
Salvi, J., et al. (2007).
改進ICP算法
Besl, P. J. and N. D. Mckay (1992). "A Method for Registration of 3-D Shapes." IEEE Transactions on Pattern Analysis and Machine Intelligence 14(2): 239-256.
Siegwart, R., et al. (2015). "A Review of Point Cloud Registration Algorithms for Mobile Robotics." Foundations and Trends in Robotics.
ICP算法求解
問題
解決方法
Bergström, P. and O. Edlund (2014). "Robust registration of point sets using iteratively reweighted least squares."
H. Pottmann, S. Leopoldseder, and M. Hofer. Simultaneous registration of multiple views of a 3D object. ISPRS Archives 34/3A (2002), 265-270.
Andreas Nüchter(2008).3D Robotic Mapping-The Simultaneous Localization and Mapping Problem with Six Degrees of Freedom
標准ICP
標准ICP算法是最早提出的基於點-點距離的算法,另外一種是基於點-面的算法,由chen提出,好多文獻所說的惡Chen's Method。
標准的ICP算法需要粗配,滿足距離足夠近這一條件之后才能進行精確配准。
IDC
The idc algorithm does a point-to-point correspondence for calculating the scan alignment. The correspondence problem is solved by two heuristics: the closest point rule and the matching range rule. Furthermore, a formula is provided for calculating an error covariance matrix of the scan matching
Trimmed ICP
在每次迭代的過程中,根據距離殘差排序,按照重疊率計算保留的點數。根據保留的點進行計算變換。該方法可以很好的處理部分重疊問題。CC中采用該方法實現,作者的原文還提到了一種自適應計算重疊率的方法。推薦!
Chetverikov, D., et al., The Trimmed Iterative Closest Point algorithm. 2002. 3: p. 545-548.
穩健ICP
由於Outliner的存在,即觀測誤差和離群點存在,以及部分重疊問題,粗配之后的數據再進行精配的過程中仍然存在不穩健的問題(Robust問題),因此提出了穩健ICP方法。如SICP,IRLSICP
MBICP
GICP 泛化的ICP,或者叫Plane to Plane ICP
EM-ICP
NICP
GO-ICP
...
一般的ICP算法(上述的)是局部優化算法,還存在全局優化的問題,即不需要單獨粗配,直接一步到位。很多的ICP算法都是穩健的方法,但是並不是全局的優化方法。全局的方法有Super4PCS、三點Ransac等。
http://www.mathworks.com/matlabcentral/fileexchange/12627-iterative-closest-point-method
http://www.mathworks.com/matlabcentral/fileexchange/27804-iterative-closest-point
http://projects.asl.ethz.ch/datasets/doku.php?id=laserregistration:laserregistration
2、PSM極坐標匹配
3、遺傳匹配
4、統計學匹配
B.指紋匹配算法
C.圖像處理匹配算法
1、德國MVTec公司開發的HALCON機器視覺開發軟件
Develop開發環境中提供的匹配的方法主要有三種,即Component-Based、Gray-Value-Based、Shape-Based,分別是基於組件(或成分、元素)的匹配,基於灰度值的匹配和基於形狀的匹配
2、圖像匹配得到精確的旋轉角度思考
來源:https://blog.csdn.net/lsh_2013/article/details/47657461 作者:hao_09
當對平面物體進行視覺定位時,往往采用圖像模板匹配的方式,然而當目標含有一定角度的旋轉時,如何精確估算出旋轉角度成了一個難題。下面是博主根據自己的理解所做的一個小的總結,也能算糾結,歡迎高手圍觀。
1 基於灰度的模板匹配(NCC等)
用灰度模板進行模板匹配,往往耗時,並且要匹配含有旋轉的目標,就需要建立多角度的模板。如果目標的角度范圍是(-30°,30°),以1°為步幅,則需要60個模板,如果要把精度提高到0.1°,那至少要600個模板。顯然是不太理想的方式。
2 圖像主軸角的旋轉匹配
當圖像噪聲較大、形狀對比度不鮮明時,主軸角不准確,進而估算出的旋轉角度誤差較大。
3 點模式匹配
通過分別提取模板和目標圖像中的特征點,建立對應關系,求得仿射變換參數。這種方式只對一定的目標適用,如果圖像噪聲大,並且形狀是圓等,就很難提取出合適的角點。
4 sift(仿射無關特征變換)
這種方式也是可以的,只是對於噪聲較大的圖像還是不行,計算量大,提出的特征點往往很多,工業上對時間有較大要求,sift還是多用於立體匹配,用在平面檢測中還是有點大材小用了。
5 邊緣幾何特征旋轉角度估計
這種方法顯然非常依賴邊緣,如果目標含有缺陷,估算出的角度精度仍然不足。能夠使得精度達到1°已經很不錯了。
7 矩方法
這種方法進行模板匹配,估算位置和角度,當圖像噪聲大,難以二值化時,就不好辦了。
8 廣義霍夫變換
第一比較依賴邊緣提取精度,然后就是耗時的問題。
9 梯度直方圖
建立梯度直方圖,角度精度也很難到達0.2°甚至更高。
在平面模板匹配方面,Halcon已經做的很好了,而且算法很通用,速度精度都能達到工業要求,只是商業軟件的核心思想很難摸透。
要想通過模板匹配快速估算出精確的旋轉角度,最終還是要插值或者擬合。
對於含有噪聲的多目標匹配定位,還是有很多需要研究的地方,希望高手能提供寶貴建議!
