PCL法线

1、计算法线

#include  <pcl/features/normal_3d.h> 头文件

pcl::NormalEstimation<pcl::PointXYZ,pcl::Normal> nor;

pcl::PointCloud<pcl::Normal>::Ptr  normals(new pcl::PointCloud<pcl::PointXYZ>);

pcl::search::KdTree<pcl::PointXYZ>::Ptr  tree(new pcl::search::KdTree<pcl::PointXYZ>);

tree->setInputCloud(cloud);

nor.setInputCloud(cloud);

nor.setSearchMethod(tree);

nor.setKSearch(30);   /  nor.setRadiusSearch(0.03);

nor.compute(*normals);


2、将点云数据与法向信息拼接 xyz normal_x  normal_y normal_z curvature

pcl::PointCloud<pcl::PointNormal>::Ptr cloud_with_normals(new pcl::PointCloud<pcl::PointNormal>);

pcl::concatenateFields(*cloud,*normals,*cloud_with_normals);


3、显示法线

viewer->addPointCloudNormals<pcl::PointXYZ,pcl::Normal> (cloud,normals);


猜你喜欢

转载自blog.csdn.net/Mmagic1/article/details/80946269
pcl
今日推荐