相互反射产生的波纹现象

问题

由于点云中的波纹或波浪图案,物体形状显得扭曲失真。

波纹

没有波纹

For very shiny bins, ripples can occur due to interreflections from the bin wall onto the bin floor and objects.

The ripples on the bin floor are suppressed with the Gaussian filter (sigma value of 2 is used in this case).

潜在原因

相互反射

Zivid 相机的投影仪光线旨在直接从工件反射回相机。然而,光线也会从闪亮的箱壁或附近的物体上反射,产生干扰直接信号的额外反射。这种现象称为相互反射,可能导致点云中出现波纹或波浪。

环境光干扰

点云中的波纹也可能是由环境光干扰引起的;请参阅如何处理 环境光干扰产生的波纹

潜在解决方案

  1. 确定问题

    检查 2D 图像是否有光反射的迹象,尤其是从闪亮的箱壁反射到物体上的光反射。例如,在下图中,光线清楚地从箱壁反射到箱底的信封上。这种相互反射会产生涟漪效果;请参见左上角的图像。

    ../_images/ripple-suppression-shiny-bin.png
  2. 选择正确的视觉引擎

    • Stripe EngineSage EngineOmni Engine :这些引擎本身会减少波纹干扰,因此可能不需要进一步抑制。

    • Phase Engine :如果速度是优先考虑因素,请使用此引擎,但更容易出现波纹干扰,如果仍出现干扰,请按照下面步骤进行抑制处理。

  3. 调整平滑滤波器

  4. 评估对物体形状的影响

    应用过滤器后,仔细评估平滑对场景中的边缘和形状的影响。下图说明了此场景中的平滑效果。

    • 确保对象保持完整且可供应用程序识别。例如,确定拾取姿势或执行基于 CAD 的匹配的算法依赖于清晰的边缘和准确的形状。如果平滑会扭曲边缘或使形状变形过多,请减少高斯过滤器 sigma 或关闭噪声过滤器 Suppression 以找到平衡。

    • 此过滤器对于保留高对比度物体(例如闪亮的金属圆柱体)的形状至关重要,这些物体容易产生 对比度失真伪影 。在这种情况下,请保持启用该过滤器。对于没有对比度失真问题的场景,请禁用此滤镜以最大限度地减少不必要的平滑。

    edge

    edge_gaussian

    edge_contrast_dist

    An example of an edge where there are data points on both the upper surface and adjacent surfaces.

    This type of edge is smoothed when the Gaussian filter is used for ripple suppression.

    The edge is more smoothed when the Gaussian filter and the contrast distortion filter are combined.

    edge_2

    edge_2_gaussian

    An example of an edge where there are only data points on the top surface due to its position relative to the projector.

    This type of edge is minimally smoothed when the Gaussian filter is used for ripple suppression.