点云拼接-将局部扫描设备拼接到完整点云地图

点云拼接-将局部扫描设备拼接到完整点云地图

目录

一、适用场景

二、算法步骤

三、实验结果 

 四、结语


一、适用场景

        对某一场景已经有一幅完整的点云地图,但是该场景局部发生了变化,如新增加了一个设备,于是对该设备周围进行扫描,得到一幅局部扫描点云,希望将该设备点云增加到原来的完整点云地图中。如下图所示:

        红色点云是局部扫描地图,绿色点云是完整点云地图。 


二、算法步骤

        因为现在两幅点云的位姿有较大偏差,所以整体算法分成点云配准和点云融合两步。

(1)点云配准

        在实际配准过程中,地面的点云占比比较大,却没有带太多的特征信息,会对配准造成干扰,所以配准前先进行地面去除,去除效果如下:

        地面去除后开始配准,这里配准我尝试了FPFH+ICP和Super4pcs算法,其中FPFH+ICP算法的配准结果不理想,Super4pcs算法的效果挺好的,而且很经过Super4pcs配准后,ICP算法已经没有多大的精度改进了。效果如下:

(2)点云融合 

        仔细观察配准后的点云地图,发现局部点云地图部分点存在严重飘逸的情况,如下图所示这部分点云如果融合到完整地图中,则会给完整地图带来错误信息,所以接下来需要对局部点云地图进行分割筛选。

        首先通过欧式距离判断重叠区域,结果如下面左图蓝色点云为分割出的重叠区域,绿色点云为完整点云地图,然后再对重叠区域和完整点云地图进行加权融合,实验中选择的权值是各0.5,结果如下面中间图,红色点云为重叠区域这部分融合后的点云。对于非重叠区域,通过聚类进行分割,筛选出我们需要的设备点云,结果如下面右图,然后添加进最终的完整点云地图。


三、实验结果 

        实验结果如下图,场景中新增的设备成功添加进了完整点云地图中。(左图为原始完整点云地图,右图为更新后的点云地图)


 四、结语

         整体思路比较简单,学习过程中做个记录,欢迎大家提出意见,一起讨论进步。如果有需要源码的可以私聊(虽然代码也很简单),人多的话我就整理上传到网站。

  • 19
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 59
    评论
点云拼接是将多个点云数据集合并成一个整体的过程。而RANSAC(随机抽样一致性算法)是一种经典的模型估计方法,可以用于点云拼接。下面我用300字详细解释一下点云拼接RANSAC的原理和步骤。 首先,点云拼接RANSAC的目标是找到多个点云之间的共同几何关系。这个几何关系通常是由旋转、平移和缩放等变换描述的。 RANSAC算法的步骤如下: 1. 随机从点云中选择一个点作为起始点,并将其作为一个模型的一部分; 2. 从剩余的点云中随机选择一些点,构成一个能够满足当前模型的假设集合; 3. 使用这个假设集合来估计一个模型,通常使用最小二乘法等方法; 4. 计算当前模型对于所有点的拟合误差; 5. 如果误差小于设定的阈值,将这个模型认为是一个好模型; 6. 重复2-5的步骤若干次,选择拟合误差最小的模型; 7. 使用所有被认为是好模型的点云对应的变换,将点云进行拼接。 在点云拼接中,RANSAC算法的关键是通过选择随机的点来构建一组假设集合。然后使用这个假设集合来估计一个模型,并计算拟合误差。根据误差的大小,可以判断该模型是否是一个好模型。通过多次重复这个过程,并选择拟合误差最小的模型,就可以得到最好的点云拼接结果。 总结来说,点云拼接RANSAC是一种通过随机抽样和拟合误差计算来估计点云之间共同几何关系的方法。它可以有效地将多个点云数据拼接成一个整体,用于实现点云拼接和重建等应用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值