複製鏈接
請複製以下鏈接發送給好友

ICP算法

鎖定
ICP算法是基於數據配準法,利用最近點搜索法,從而解決基於自由形態曲面的一種算法。
中文名
ICP算法
外文名
Iterative Closest Point
搜索方法
最近點搜索法
變換關係式
(0-1)
算法步驟
7步
主要用於
解決基於自由形態曲面
屬    性
算法

ICP算法迭代就近法

在20世紀80年代中期,很多學者開始對點集數據的配準進行了大量研究。1987年,Horn[1]、Arun[2]等人用四元數法提出點集對點集配準方法。這種點集與點集座標系匹配算法通過實踐證明是一個解決複雜配準問題的關鍵方法。1992年,計算機視覺研究者Besl和Mckay[3]介紹了一種高層次的基於自由形態曲面的配準方法,也稱為迭代就近點法ICP(Iterative Closest Point)。以點集對點集(PSTPS)配準方法為基礎,他們闡述了一種曲面擬合算法,該算法是基於四元數的點集到點集配準方法。從測量點集中確定其對應的就近點點集後,運用Faugera和Hebert提出的方法計算新的就近點點集。用該方法進行迭代計算,直到殘差平方和所構成的目標函數值不變,結束迭代過程。ICP配準法主要用於解決基於自由形態曲面的配準問題。
迭代就近點法ICP就近點法經過十幾年的發展,不斷地得到了完善和補充。Chen和Medioni[4]及Bergevin等人[5]提出了point-to-plane搜索就近點的精確配準方法。Rusinkiewicz和Levoy提出了point-to-p rojection搜索就近點的快速配準方法。Soon-Yong和Murali提出了Contractive-projection-point搜索就近點的配準方法。此外,Andrew和Sing[6]提取了基於彩色三維掃描數據點紋理信息的數據配準方法,主要在ICP算法中考慮三維掃描點的紋理色彩信息進行搜索就近點。Natasha等人[7]分析了ICP算法中的點雲數據配準質量問題。
基本原理
運算公式 運算公式
三維空間R3存在兩組含有n個座標點的點集,分別為: PL和PR。三維空間點集PL中各點經過三維空間變換後與點集PR中點一一對應,其單點變換關係式為:
(0-1)
上式中,R為三維旋轉矩陣,t為平移向量。
在ICP配準方法中,空間變換參數向量X可表示為[9] 。
參數向量中四元數參數滿足約束條件為:
(0-2)
根據迭代的初值X0,由式(0-1)計算新點集Pi為:
(0-3)
式中,P表示原始未修改過的點集,Pi的下標i表示迭代次數,參數向量X的初始值X0為 。
根據以上數據處理方法,ICP配准算法可以概括為以下七個步驟:
1、根據點集Plk中的點座標,在曲面S上搜索相應就近點點集Prk;
2、計算兩個點集的重心位置座標,並進行點集中心化生成新的點集;
3、由新的點集計算正定矩陣N,並計算N的最大特徵值及其最大特徵向量
4、由於最大特徵向量等價於殘差平方和最小時的旋轉四元數,將四元數轉換為旋轉矩陣R;
5、在旋轉矩陣R被確定後,由平移向量t僅僅是兩個點集的重心差異,可以通過兩個座標系中的重心點和旋轉矩陣確定;
6、根據式(0-3),由點集Plk計算旋轉後的點集P’lk。通過Plk與P’lk計算距離平方和值為fk+1。以連續兩次距離平方和之差絕對值 作為迭代判斷數值;
7、當時,ICP配准算法就停止迭代,否則重複1至6步,直到滿足條件後停止迭代。

ICP算法ICP搜索法

ICP搜索就近點的主要方法
1. Point to Point就近點搜索法
Point to Point就近點搜索法是ICP算法中最經典的一種方法。Point to Point法根據源曲面上的一個點p,在目標曲面上找出對應於p點距離最近的q點。在這個方法中通常運用kd-tree的方法實現就近點搜索。pi是源曲面點雲數據中的一個點,Vi是生成目標曲面點雲數據中距Pi最近的點。根據Vi點搜索出在曲面上與Vi點相鄰的點構成三角形格網,計算pi點投影到每個三角形平面上的投影點qi的座標。對於每個三角形來説,當投影點qi位於三角形內部,則距離最近點是搜索的最近點,當投影點qi位於三角形外部,搜索的就近點應位於三角形的兩條邊界上,Vi是該三角形到pi點的就近距離點。將每個三角形確定的就近距離點進行比較可獲得一個最近點。
2. Point to Plane就近點搜索算法
Point to Plane法是根據源曲面上的一個點p,在目標曲面上找出對應於p點一個最近的q點。搜索算法是根據源曲面上p點的切平面法線,確定發現於目標曲面的交點q’。根據目標曲面上q’點求出的過q’點切平面,然後求源曲面上p點到過q’點切平面的垂線的交點q。
3. Point to Projection就近點搜索算法
Point to Projection就近點搜索法是一種快速的配準方法。Oq是掃描目標曲面的透視點的位置。Point to Projection法是根據源曲面上的一個點p和透視點Oq,在目標曲面上找出q點作為對應於p點的就近點。通過確定Oq點向p點方向的投影線與目標曲面的交點q,作為搜索的就近點。

ICP算法就近點搜圖

[1]Horn B K P. Closed-form solution of absolute orientation using unit quaternions[J]. Journal of the Optical Society of America A, 1987, 4(4):629-642.
[2] K. S. Arun, T. S Huang, S. D. Blostein. Least-squares fitting of two 3-D point sets[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1987. 9(5): 698-700.
[3] Paul J. Besl, Neil D. McKay. A method for registration of 3-D shapes[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1992. 14(2): 239-256.
[4] Y. Chen, G. Medioni. Object Modeling by Registration of Multiple Range Images[J]. Image and Vision Computing, 1992. 10: 145-155.
[5] R. Bergevin, M Soucy, H. Gagnon, et al. Towards a general multi-view registration technique[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1996. 18(5): 540-547.
[6] Andrew Edie Johnson, Sing Bing Kang. Registration and Integration of Textured 3D Data[J]. Image and Vision Computing, 1999. 17: 135-147.
[7] Natasha Gelfand, Leslie Ikemoto, Szymon Rusinkiewicz, et al. Geometrically Stable Sampling for the ICP Algorithm[A]//. Proceedings of Fourth International Conference on 3-D Digital Imaging and Modeling[C]. Stanford University, CA, USA, 2003: 260-267.
[8] 鄭德華. ICP算法及其在建築物掃描點雲數據配準中的應用[J].測繪科學, 2007. 32(2).
[9] P.J. Besl, H.D. McKay. A Method for Registration of 3D Shape[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1992. 14(2): 239-256.

ICP算法三維點雲法

三維激光掃描技術的快速發展,使其在各個領域得到廣泛應用。由於物理上的一些限制,一次三維激光掃描不能獲取掃描物體的全部數據,因此要對掃描點雲進行拼接。首先,對最常用的ICP算法進行一系列研究,ICP算法的前提條件是具有一個良好的配準初值,文中在配準初值的選取上採用主成分分析法,為後續ICP算法的工作提供一個良好前提條件,增加點集預處理,點對查找上增加各種限制,採用kd-tree加速查找,以此對算法進行改進,並通過實例來驗證本算法的有效性合理性 [1] 
參考資料