PCL Octree之双缓冲机制

PCL 中的Octree来管理空间中无序的点云,从而加快查找速度 。

八叉树的原理已经后很多文章进行过描述,主要就是将一个正方体分成八块或者不切分,一层一层构造成树的结构, 我在这里不进行赘述,本文主要讨论八叉树的双缓冲机制,查找了很多资料对此都没有详细的描述。

简介:

八叉树的双缓冲机制简单来说就是在内存空间中开辟两块缓冲区来进行存储,

Octree在动态检测使用中的原理:

1、 Pcl的Octree中,通过点云建立一棵树,这棵树只会存在于其中一个点云之中。

    octree.setInputCloud (cloudA);
    octree.addPointsFromInputCloud (); 

如上,clouda只会存在于一个缓冲区。

2、 我们通过交换缓冲区,此时就会得到一个新的缓冲区:

    octree.switchBuffers ();

而且此时 刚在建立的CloudA八叉树仍然存在内存当中。

3、 重新建立一个新Octree

    //添加 cloudB到八叉树
    octree.setInputCloud (cloudB);
    octree.addPointsFromInputCloud ();

此时,我们使用CLoudB建立了一个新树,按我的理解,CloudA和CloudB两颗树此时存在于不同的缓冲区。

4、两棵树进行相似度检查,这个过程就是去筛选出在CLoudA中出现,而没有在CloudB中出现的点云。

vector<int>newPoint
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值