ICP 全称为vtkIterativeClosestPointTransform,也是vtk经典配准算法之一,输入为vtkdataset,需指定迭代次数,配准效果优于Landmark配准,但效率低于landmark。该配准算法是一个迭代的过程,每次迭代中对于源数据点P找到目标点集Q中的最近点,然后基于最小二乘原理求解当前的变换T 。通过不断迭代直至收敛,即完成了点集的配准。
示例代码如下:
vtkSmartPointer<vtkIterativeClosestPointTransform> icpTransform =
vtkSmartPointer<vtkIterativeClosestPointTransform>::New();
icpTransform->SetSource(sourceDataSet);//源点集
icpTransform->SetTarget(targetDataSet);//目标点集
icpTransform->GetLandmarkTransform()->SetModeToRigidBody();//指定刚性变换
icpTransform->SetMaximumNumberOfIterations(nIterationNum);//迭代次数
icpTransform->Modified();
icpTransform->Update();
对sourceDataSet做icpTransform变换后即为配准结果。
转:https://blog.csdn.net/Zzhouzhou237/article/details/75271425
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。



