1:C++搭配PCL显示一个点云
时间:2021-06-30 17:51:50
收藏:0
阅读:0
- 本文内容:显示一个点云文件。
- 平台:vs2017+PCL1.8
1 #pragma warning(disable:4996) 2 #include <pcl/registration/ia_ransac.h>//采样一致性 3 #include <pcl/point_types.h> 4 #include <pcl/point_cloud.h> 5 #include <pcl/features/normal_3d.h> 6 #include <pcl/features/fpfh.h> 7 #include <pcl/search/kdtree.h> 8 #include <pcl/io/pcd_io.h> 9 #include <pcl/io/ply_io.h> 10 #include <pcl/filters/voxel_grid.h>// 11 #include <pcl/filters/filter.h>// 12 #include <pcl/registration/icp.h>//icp配准 13 #include <pcl/visualization/pcl_visualizer.h>//可视化 14 #include <time.h>//时间 15 16 typedef pcl::PointXYZ PointT; //改个别名,用起来方便,具体可百度typedef c++用法 17 typedef pcl::PointCloud<PointT> PointCloud; 18 int main() 19 { 20 21 //加载点云文件 22 PointCloud::Ptr cloud_src_o(new PointCloud);//原点云,待配准 //定义一个点云指针文件, 点云指针为cloud_src_o 23 pcl::io::loadPLYFile("bun000.ply", *cloud_src_o);//将读取的“”里的文件的内容,给了cloud_src_o所指向的地址,*给指针取内容 24 25 26 pcl::visualization::PCLVisualizer viewer("registration Viewer"); //定义一个显示器 27 28 pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ> src_h(cloud_src_o, 0, 255, 0); //给点云定义一个颜色 RGB模式 为全G 绿色 29 30 viewer.setBackgroundColor(255, 255, 255); //设置背景颜色 255,255,255就是白色 31 viewer.addPointCloud(cloud_src_o, src_h, "source cloud"); //把点云加入到显示器里 32 33 // 等待直到可视化窗口关闭 34 while (!viewer.wasStopped()) 35 { 36 viewer.spinOnce(100); 37 boost::this_thread::sleep(boost::posix_time::microseconds(100000)); 38 } 39 40 41 42 return (0); 43 }
评论(0)