0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种有效将3D点云分割成平面组件的多分辨率方法

3D视觉工坊 来源:3D视觉工坊 2023-01-09 11:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

摘要

本文提出了一种有效的多分辨率方法将 3D 点云分割成平面组件。为了提高效率,本文从粗到精的 3D 分辨率中迭代处理大点云,在每个分辨率下,快速提取表面法线来描述表面元素(面元),将无法与来自较粗分辨率的平面关联的面元分组为具有霍夫变换的共面簇。然后提取这些集群上的连接组件,并通过 RANSAC 确定最佳平面拟合。最后,合并平面片段并在最佳分辨率上细化分割。在实验中,展示了该方法的效率和质量,并将其与其他最先进的方法进行了比较。

简介

我们将 Hough 变换与 RANSAC 相结合以稳健地提取来自 3D 点云的平面片段(图 1)。为了提高效率,我们采用由粗到细的策略:以多种分辨率提取局部表面法线来描述表面元素(面元)。我们使用八叉树实现了一种高效的多分辨率法线方法估计。在每个分辨率下,我们确定哪些面元可以用较粗分辨率上拟合的平面来解释。在剩余的面元上,我们应用霍夫变换将场景预分割为共面面元。为了提高准确性和鲁棒性,我们使用 RANSAC 拟合平面段。在最佳分辨率下,我们合并共面连接的平面段并分配剩余的点。

f1f03ca0-8fcb-11ed-bfe3-dac502259ad0.png

图1

1、通过多种分辨率进行有效的法线估计

我们用八叉树表示点云。八叉树由分支节点和叶节点组成,每个分支节点和叶节点都覆盖一个 3D 体积。树的根跨越感兴趣的完整 3D 体积。每个分支节点在其中心位置将其体积分成八个大小相等的立方体(称为八分圆)。对于它的每个八分圆,该节点都包含一个子节点,该子节点本身是一个分支节点,或者是树中的一片叶子。 八叉树可以用于以与树的不同深度中节点的体积大小相对应的采样分辨率采样点云。对于采样深度 d,我们确定采样深度的所有节点或较粗分辨率的所有叶节点。此外,八叉树允许有效地计算节点体积中的积分值:在每个节点中,我们维护位于节点体积内的点值的积分。在树的构建过程中,我们将一个点的值分配给该点访问的所有节点,同时将它从根递归传递到它的最终叶节点。

poYBAGO7ifuAVotEAAA1Auq3t3g920.jpg

f2187486-8fcb-11ed-bfe3-dac502259ad0.png

poYBAGO7ig-AO0XzAABRkL05Bjc189.jpg

f241c4da-8fcb-11ed-bfe3-dac502259ad0.png

图2

pYYBAGO7ik2AXyj4AAIBlNs0XjU286.jpg

在第二阶段,我们从平行面元簇中确定共面面元。每个面元投票决定平面到坐标系原点(例如,视点)的距离。与方向直方图类似,我们将选票分配到具有线性衰减的相邻箱中。

我们在距离直方图的最大值处再次找到共面面元簇。图 3 显示了示例场景中此预分割步骤的结果。为了使这个过程高效,我们保持直方图的粗分辨率,并将模型参数的准确估计推迟到后期处理阶段。然而,距离直方图的分辨率随着面元的分辨率而增加。

f3f7bca8-8fcb-11ed-bfe3-dac502259ad0.png

图3

3、分割成连通域

霍夫变换不考虑面元的空间连通性。因此,我们从共面元组中提取连通分量。图 4 举例说明了这一点。我们在对应于面元的霍夫空间最大值的平面上覆盖一个网格。网格的分辨率是根据面元的分辨率来选择的。我们将每个面元位置投射到网格中并标记占用的网格单元。区域增长产生连接的组件,当组件不受最小数量的面元(在我们的实现中设置为 3)支持时,我们将丢弃这些组件。

f5253128-8fcb-11ed-bfe3-dac502259ad0.png

图4

4、通过 RANSAC 进行精确分割

我们进一步改进了与共面面元的连接组件的平面拟合。由于方向和距离直方图的粗分辨率,霍夫变换的平面估计只是对真实底层平面的粗略估计。因此,我们将 RANSAC 直接应用于面元表示的点。图 5 显示了异常值检测的示例。

f58c1c58-8fcb-11ed-bfe3-dac502259ad0.png

图5 RANSAC 从一组随机的三点样本中估计平面参数。在固定的迭代次数内,我们确定面元的所有点支持的最好的平面估计。当点到平面的距离低于某个阈值时,点被接受为平面拟合的内点。我们根据面元的分辨率调整此阈值。我们只接受大部分面元点支持的平面拟合。我们还要求提取的平面与霍夫变换确定的初始拟合相似。当平面拟合被接受时,我们重新确定线段的连通分量。

5、由粗到细的分割

在前面的部分中,我们详细介绍了如何在单一分辨率上分割平面。然而,我们建议使用由粗到细的策略来分割场景。通过这种方式,可以仅从几个面元中有效地检测到大平面段。此外,我们的方法固有地适应场景中平面的范围。它使用尽可能多的上下文来决定共面性。 我们从粗分辨率到精细分辨率处理场景。当在分辨率上找不到更多的平面段时,我们过渡到下一个更精细的分辨率。为了改进已经找到的平面片段的分割,我们将更精细分辨率的面元重新分配到片段上。我们测试面元方向和位置是否适合每个平面段,以及它是否位于其连接组件的边界内或边界处。 最终,我们还调整了连接的组件。为此,我们根据新的分辨率增加了占用图的采样率。我们将面元投影到平面段中并标记相应的单元格被占用。但是,我们保留了前几层的较粗略的占用决策。请注意,虽然平面段可能会在此过程中扩展,但不会合并一起增长的段。我们在最后的处理步骤中合并共面连接的段。

6、后处理

在处理完所有分辨率后,我们改进了最精细分辨率的分割。首先,我们合并连接的共面平面段。然后我们在不使用法线信息的情况下将节点分布到平面段上。对于每个节点,我们确定一个平面段候选列表,这些候选平面段与节点体积内的点的均值距离很小。此外,节点需要落在连接的组件内或每个候选节点的边界。

pYYBAGO7iniAfH6rAABuZTENwX0113.jpg

当平面段的重心位于该平面的不同侧时,我们相应地将点分布在等距平面的两侧。否则,我们只是将这些点关联到最近的平面。

实验结果

30 幅 ABW 测试图像的分辨率为 512× 512 像素。该数据集还结合评估工具提供了地面实况分割。表 1 显示了我们的方法在 SegComp ABW 测试图像上的结果,对于与地面实况的重叠具有 80% 的容忍度。

f5fe0d4a-8fcb-11ed-bfe3-dac502259ad0.png

表1

虽然我们的方法不是专门为深度图像设计的,但其分割质量和平面拟合精度位于该数据集结果的上限范围内。请注意,最好的分割结果是通过利用图像结构中编码的连接信息的方法获得的。这也将这些方法限制在处理单视图深度图像。此外,距离图像包含深度离散化效应形式的强系统噪声,这对于仅由少数点组成的小片段很难处理。

为了评估我们算法各个阶段的贡献,我们对几个变体进行了测试。RansacOnly 方法使用贪心法来检测平面(使用点云库 PCL 实现)。它在不使用法线信息的情况下迭代地找到适合尚未归因的点的最佳支持平面。它只能达到平均性能,其运行时间在很大程度上取决于场景的复杂性。HoughOnly 基于我们的多分辨率方法,但不执行 RANSAC 来改进初始 Hough 分割。且与我们的方法相比,HoughOnly 方法分割场景的准确性较低。 图 6展示了我们的方法在不同重叠公差 SegComp ABW 测试图像上的结果。

可以看出,我们的方法中的错误在很大程度上是由于缺少平面段造成的。对于高噪声,某些点可能未分配给平面或边界可能无法正确解析。由于我们的方法不考虑图像邻域,因此很难达到 90% 的重叠。图 5展示了 ABW 数据集的两个示例性分割。在左图中,我们的算法遗漏了多个平面片段。我们将一些未命中归因于八叉树的离散化。这个问题可以通过在不同的离散化中重新处理未分段的部分来解决。

f6196400-8fcb-11ed-bfe3-dac502259ad0.png

图6

总结与展望

本文,我们提出了一种从 3D 点云中提取平面的有效方法。我们将 Hough 变换与RANSAC 相结合,以在多种分辨率下拟合平面。通过使用由粗到精的策略,我们可以有效地利用可用数据。它允许考虑最大可能的上下文来做出共面性的决定。这也使我们的方法数据高效。

在实验中,将改方法与使用 SegComp 数据库的最先进方法进行了比较。实验结果表明,我们以高帧率和高质量处理 3D 激光和深度传感器(例如 Kinect)的 3D 点云。 在未来的工作中,我们将提取更多类型的几何形状图元,例如圆柱体和球体。我们还计划调整我们的方法来顺序处理来自 Kinect 等高帧率传感器的深度图像。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2577

    文章

    55440

    浏览量

    793721
  • PCL
    PCL
    +关注

    关注

    1

    文章

    38

    浏览量

    14243
  • RANSAC
    +关注

    关注

    0

    文章

    10

    浏览量

    8086

原文标题:3D点云中高效的多分辨率平面分割方法

文章出处:【微信号:3D视觉工坊,微信公众号:3D视觉工坊】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    PLC平面光波导的图形凹槽深度测量-3D白光干涉仪应用

    ,过深会破坏波导芯层完整性,过浅则无法实现光信号的有效约束与隔离,直接影响器件性能。传统凹槽深度测量方法存在测量范围有限、易损伤器件表面等缺陷,难以满足PLC高精度检测需求。3D白光干涉仪凭借非接触测量特性、纳米级
    的头像 发表于 02-02 09:32 417次阅读
    PLC<b class='flag-5'>平面</b>光波导的图形凹槽深度测量-<b class='flag-5'>3D</b>白光干涉仪应用

    浅谈扫描电镜的分辨率概念

    扫描电镜(SEM)的分辨率是指其能够分辨样品表面两之间的最小距离,是衡量其成像能力的关键指标。
    的头像 发表于 01-14 16:55 1533次阅读
    浅谈扫描电镜的<b class='flag-5'>分辨率</b>概念

    iDS iToF Nion 3D相机,开启高性价比3D视觉新纪元!

    、友思特新品 友思特 iDS uEye Nion iTof 3D相机 120 万像素的卓越空间分辨率与可靠的深度精度相结合—即使在极具挑战性的环境中也能确保获取精细的
    的头像 发表于 12-15 14:59 534次阅读
    iDS iToF Nion <b class='flag-5'>3D</b>相机,开启高性价比<b class='flag-5'>3D</b>视觉新纪元!

    红外焦平面探测器的分辨率有哪些?高分辨率有哪些优势?

    分辨率是我们选购红外探测器时的个关键参数,它代表了热成像像素的数量。分辨率越高,像素就越多,图像就越清晰,观测的距离也越远。红外热成像
    的头像 发表于 12-10 16:12 1401次阅读
    红外焦<b class='flag-5'>平面</b>探测器的<b class='flag-5'>分辨率</b>有哪些?高<b class='flag-5'>分辨率</b>有哪些优势?

    ADC分辨率与精度的区别是什么

    简单点说,“精度”是用来描述物理量的准确程度的,而“分辨率”是 用来描述刻度划分的。从定义上看,这两个量应该是风马牛不相及的。(是不是有朋友感到愕然^_^)。 很多卖传感器的JS就是利用这一点
    发表于 12-05 06:24

    镜头分辨率如何匹配工业相机的分辨率

    能被分辨开来的两个物之间的最小距离,就是镜头的物方分辨率。单位为µm。这只是单纯镜头本身的参数,只反映镜头的解析能力,而和工业相机多少像素无关!它直接反映了,个理想物
    的头像 发表于 11-21 15:43 489次阅读
    镜头<b class='flag-5'>分辨率</b>如何匹配工业相机的<b class='flag-5'>分辨率</b>

    提高电能质量在线监测装置的暂态记录分辨率方法有哪些?

      提高电能质量在线监测装置暂态记录分辨率,核心是从 硬件升级、算法优化、数据处理、校准同步 四个维度突破,同时平衡 “分辨率提升” 与 “成本、功耗、稳定性”,具体方法可落地为以下 6 类关键措施
    的头像 发表于 11-14 16:12 2190次阅读

    相机分辨率:融合探测器与光学性能

    取决于光学模糊直径和探测器的尺寸。Schade这两者结合起来,创建了个等效分辨率,该分辨率与 Fλ/d 有关,其中 F 是焦比,λ 是平
    的头像 发表于 11-11 07:58 583次阅读
    相机<b class='flag-5'>分辨率</b>:融合探测器与光学性能

    iTOF技术,多样化的3D视觉应用

    。 ◆ 应用2—机舱内的 3D 传感 应用3—自主移动机器人 (AMR) 在室外(~150,000 勒克斯)和黑暗环境中进行障碍物检测。 高分辨率能力,可准确检测细长物体,例如椅腿。 低抖动和低误差
    发表于 09-05 07:24

    Zivid3D相机安装使用教程

    Zivid3D相机小巧便携,重量轻,分辨率高,速度快,适合高反光透明物体。本文介绍Zivid 3D相机的操作流程,帮助用户掌握其功能。从硬件连接、软件安装到参数设置,重点涵盖
    的头像 发表于 08-26 15:34 772次阅读
    Zivid<b class='flag-5'>3D</b>相机安装使用教程

    智多晶多分辨率HDMI传输Demo概述

    FPGA在图像传输领域扮演着非常重要的角色,FPGA的SerDes在图像传输领域是实现高速串行通信的核心技术,尤其在处理高分辨率、大带宽图像数据时发挥了关键作用,SerDes可提供高达3Gbps、6Gbps、10Gbps等的线速率通信。
    的头像 发表于 07-22 11:37 1467次阅读
    智多晶<b class='flag-5'>多分辨率</b>HDMI传输Demo概述

    分辨率 vs 噪声 —— ADC的挑战

    设计者常用高分辨率 ADC 以降低最低可量测单位(LSB),提高检测精度。 比如个 16 位 ADC 在 5V 范围内, LSB ≈ 76 μV ;理想情况下可以检测到微弱电信号。 问题是: 若
    的头像 发表于 06-23 07:38 2315次阅读
    <b class='flag-5'>分辨率</b> vs 噪声 —— ADC的挑战

    如何计算存储示波器的垂直分辨率

    存储示波器的垂直分辨率是指示波器能够分辨的最小电压变化量,它反映了示波器对信号幅度细节的测量能力,通常用位数(bit)来表示,也可通过相关公式换算为具体的电压值。以下为你详细介绍其计算方法:了解关键
    发表于 05-30 14:03

    FX3板是否兼容2k和4k分辨率的视频数据流?

    ,实现了 1920 * 1080 @ 60 fps 的设计,但现在我想检查与上述更高分辨率的兼容性。 关于这一点,我有几个问题 1.FX3 板是否兼容 2k 和 4k 分辨率的视频数据
    发表于 05-23 06:35

    CX3上的AR0245传感器的探头控制分辨率错误怎么解决?

    你好。我正在开发款使用 AR0234CS 传感器和 CX3( CYUSB3065-BZXI )芯片的相机,并努力获得正确的视频流分辨率。 该传感器能够以 120 fps 提供 1920 x
    发表于 05-12 07:02