PCL编程->ICP匹配

来源:互联网 发布:营改增晨曦预算软件 编辑:程序博客网 时间:2024/06/05 15:26

ICP封装函数如下:

pcl::PointCloud<pcl::PointXYZ>::Ptr ICP_test(pcl::PointCloud<pcl::PointXYZ>::Ptr target, pcl::PointCloud<pcl::PointXYZ>::Ptr source,int i){pcl::PointCloud<pcl::PointXYZ>::Ptr source_to_target(new pcl::PointCloud<pcl::PointXYZ>);pcl::IterativeClosestPoint<pcl::PointXYZ, pcl::PointXYZ> icp;pcl::PointCloud<pcl::PointXYZ> Final;             //存储经过配准变换源点云后的点云icp.setInputSource(source);icp.setInputTarget(target);icp.setMaxCorrespondenceDistance(100);icp.setEuclideanFitnessEpsilon(1e-3);icp.setMaximumIterations(i);icp.align(Final);                                   //执行配准存储变换后的源点云到FinalEigen::Matrix4f transformation = icp.getFinalTransformation();std::cout << icp.getFinalTransformation() << std::endl; //打印输出最终估计的变换矩阵pcl::transformPointCloud(*source, *source_to_target, transformation);return source_to_target;}


原创粉丝点击