一步一步分割出杯子模型

分割杯子模型,主要组合如下的接口:

1.  PassThrough 直通滤波,保留感兴趣区

2.  NormalEstimation 法线估计

3.  SACSegmentationFromNormals 法线方向的模型拟合分割

原始点云如下:

使用pcd_viewer查看点云 

第一步,读取点云:

 读取点云

第二步,提取感兴趣部分:

 使用 直通滤波,设置 z = 0~1.5之间

第三步, 估计法线、进行平面拟合分割:

提取平面,然后就只剩下 杯子的点云,对应的标号3的位置 

第四步,使用 圆柱拟合提取杯子模型:

 在第三步的剩下的点云里继续拟合分割,得到杯子点云和模型参数

整个步骤比较清晰,一步一步实现了杯子的拟合。

编写核心的 拟合代码插件如下:

struct SegSacModelWithNormals
{
    bool random = false;
    int model = 0; //所提取目标模型的属性(平面、球、圆柱等等)
	int method = 0; // SAC_RANSAC  = 0; SAC_LMEDS = 1; SAC_MSAC = 2; SAC_RRANSAC = 3; SAC_RMSAC = 4; SAC_MLESAC
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值