pcl::vfh\cvfh\ourcvfh使用方法
加载点云loadpcdfile
法线估计pcl::NormalEstimation<pcl::PointXYZ, pcl::Normal> ne;
添加搜索方法pcl::search::KdTreepcl::PointXYZ::Ptr tree(new pcl::search::KdTree<pcl::PointXYZ);
ne.setInputCloud、setSearchMethod、setRadiuSearch
输出法线描述
pcl::PointCloudpcl::Normal::Ptr normals(new pcl::PointCloudpcl::Normal);
计算法线ne.compute(normals);
1.vfh
创建VFH估计对象vfh
pcl::VFHEstimation(pcl::PointXYZ, pcl::Normal, pcl::VFHSignature308) vfh;
vfh.setInputCloud(cloud);
vfh.setInputNormals(normals);
创建空的kd树对象tree2
vfh.setSearchMethod(tree2);
vfh特征
pcl::PointCloudpcl::VFHSignature308::Ptr vfh_ptr(new pcl::PointCloudpcl::VFHSignature308 );
计算
vfh.compute(*vfh_ptr)
最后可视化直方图
pcl::visualization::PCLPlotter plot;
plot.addFeatureHistogram(*vfh_ptr,308);
plot.plot();
即可绘制成功。
2.cvfh
大致同上,仅在创建估计对象处更改
CVFHEstimation
3.ourcvfh:
OURCVFHEstimation
其他均一致