PCL点云处理MLS增采样(2023/8/28)

完整运行成功代码:


#include <pcl/point_types.h>
#include <pcl/io/pcd_io.h>
#include <pcl/kdtree/kdtree_flann.h>
#include <pcl/surface/mls.h> 
#include<pcl/search/impl/kdtree.hpp>



int main()
{
	pcl::PointCloud<PointXYZ>::Ptr cloud(new pcl::PointCloud<PointXYZ>);
	pcl::PointCloud<PointXYZ>::Ptr after_cloud(new pcl::PointCloud<PointXYZ>);
	//创建增采样对象
	pcl::MovingLeastSquares<pcl::PointXYZ, pcl::PointXYZ> filter;
	filter.setInputCloud(cloud);                     //设置输入点云
	pcl::search::KdTree<pcl::PointXYZ>::Ptr kdtree;  //定义搜索方法
	filter.setSearchMethod(kdtree);                  //设置搜索方法
	filter.setSearchRadius(0.03);    //设置搜索邻域的半径为3cm  
	//Upsampling 采样的方法还有 DISTINCT_CLOUD, RANDOM_UNIFORM_DENSITY
	filter.setUpsamplingMethod(pcl::MovingLeastSquares<pcl::PointXYZ, pcl::PointXYZ>::SAMPLE_LOCAL_PLANE);     //对点云进行上采样
	filter.setUpsamplingRadius(0.03);    //设置采样半径大小,3cm
	filter.setUpsamplingStepSize(0.02);  //设置采样步长大小,2cm
	filter.process(*after_cloud);      //执行采样操作

}


> https://blog.csdn.net/WXG1011/article/details/129777073

在运行引用后make发现终端报错:

error: ‘KdTree’ is not a member of ‘pcl::search’;
解决办法:加入头文件(可能由于PCL版本所引起)

#include<pcl/search/impl/kdtree.hpp>
``

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值