https://github.com/intel-isl/Open3D
http://ais.informatik.uni-freiburg.de/teaching/ss13/robotics/slides/18-icp.pdf
带有RGB的ICP
http://vladlen.info/papers/colored-point-cloud-registration.pdf
http://www.open3d.org/docs/release/tutorial/Advanced/colored_pointcloud_registration.html
POINT_CLOUD_REGISTER_POINT_STRUCT
http://docs.pointclouds.org/1.8.1/group__registration.html#ga846fa69df3418046ae2ea54887ea092e
http://docs.pointclouds.org/1.8.1/gicp6d_8h_source.html
使用了
http://docs.pointclouds.org/1.8.1/classpcl_1_1_generalized_iterative_closest_point.html#details
PCL-1.9.1-非master 不然会出一个bug,暂时没解决
原来的
//pcl::transformPointCloud (*cloud_in_48, *cloud_icp, transformation_matrix);改为:
pcl::transformPointCloudWithNormals (*cloud_in_48, *cloud_icp, transformation_matrix);再使用IterativeClosestPointWithNormals
带有向量的ICP-normals
http://docs.pointclouds.org/trunk/classpcl_1_1_iterative_closest_point_with_normals.html
https://blog.csdn.net/zhazhiqiang/article/details/52439576
pcl::IterativeClosestPointWithNormals<PointT, PointT> icp; icp.setMaximumIterations (iterations); icp.setMaxCorrespondenceDistance(5); icp.setInputSource (cloud_icp); icp.setInputTarget (cloud_in); icp.align (*cloud_icp); icp.setMaximumIterations (1); // We set this variable to 1 for the next time we will call .align () function
icp.setMaxCorrespondenceDistance(5);