一、代码
C++
#include <pcl/registration/ia_fpcs.h> // 4PCS算法
#include <pcl/point_types.h>
#include <pcl/point_cloud.h>
#include <pcl/io/pcd_io.h>
#include <pcl/io/ply_io.h>
#include <boost/thread/thread.hpp>
#include <pcl/visualization/pcl_visualizer.h>
#include <pcl/keypoints/sift_keypoint.h>
using namespace std;
typedef pcl::PointXYZ PointT;
typedef pcl::PointCloud<PointT> PointCloud;
typedef pcl::VoxelGrid<PointT> VoxelG;
void voxel_subsampling(PointCloud::Ptr& cloud_o)
{float leaf = 0.015f;VoxelG::Ptr voxel_grid(new VoxelG);voxel_grid->setLeafSize(leaf, leaf, leaf);voxel_grid->setInputCloud(cloud_o);voxel_grid->filter(*cloud_o);}
void visualize_pcd(PointCloud::Ptr icp_result, PointCloud::Ptr cloud_target)
{//创建初始化目标pcl::visualization::PCLVisualizer viewer("registration Viewer");pcl::visualization::PointCloudColorHandlerCust