HDR 色彩不一致
To fix color inconsistency between multi-acquisition HDR captures, configure 2D capture settings independently (SDK 2.14+), use HDR capture with UseFirstAcquisition Color Mode, or take an additional capture for the color image.
问题
如果 Color Mode(颜色模式) 设置为 ToneMapping 或 Automatic(默认设置),则多次采集的 HDR 捕获的彩色图像是应用了色调映射之后的结果。虽然色调映射解决了为特定捕获优化颜色的挑战性问题,但它也有一个缺点。由于它是针对整个场景的函数,会导致场景变化时颜色也变得不一致。下面的例子解释了这种现象。"
假设我们有一个相对较暗的场景(黑色表面上的梨)。我们找到了涵盖足够宽的动态范围的采集设置并执行了多次采集的 HDR 采集(左图)。然后我们在场景中添加了一个明亮的对象(香蕉),并使用相同的设置再次捕获(右图)。
让我们看看输出的彩色图像(右图),特别是场景中最初的深色对象(梨或黑色表面)。我们注意到这些对象的 RGB 值在将明亮对象(香蕉)添加到场景之前和之后是不同的。
RGB 值的变化对于某些应用来说可能是一个问题,例如,使用基于颜色信息对对象进行分类的算法的应用。原因是这些算法会期望 RGB 值在重复捕获时保持相同(一致)。
解决方案
独立配置 2D 捕获设置
如果您遇到 HDR 颜色不一致的问题,很可能是因为您没有配置 Settings::Color (在 SDK 2.14 中添加)。在这种情况下,Zivid 软件会从同一次多采集 HDR 捕获中生成点云和彩色图像。
要解决 HDR 的色彩不一致问题,请考虑以下几点。
首先,使用 Settings::Color 配置 2D 采集设置。我们建议从 2D 预设值 开始。如果需要进一步调整,请查看 优化彩色图像 。
小技巧
您可以在 Zivid Studio 中加载旧的 YML 文件,配置 2D 设置,并将设置导出到 YML 文件。
- 分别进行 2D 和 3D 捕获
使用
capture2D()进行 2D 捕获。使用
capture3D()进行 3D 捕获。小技巧
您可以对这两个捕获 API 使用相同的 YML 文件/设置对象。
- 一次性进行 2D 和 3D 捕获
使用
capture2D3D()执行结合了 2D 和 3D 捕获的单一操作。
如果必须使用已弃用的 camera.capture() API,请确保使用 Settings::Color 明确配置 2D 采集设置。这可确保根据指定的 2D 采集设置生成彩色图像。
These solutions require Zivid SDK 2.14 or later. If you must use an older SDK version, use HDR capture with UseFirstAcquisition Color Mode instead.
使用 UseFirstAcquisition 颜色模式进行 HDR 捕获
要克服 HDR 颜色不一致的问题,请确定 HDR 捕获的哪些采集能够提供最佳颜色。我们建议针对场景中最亮的物体优化采集以避免饱和。然后,将该采集设置为采集设置中的第一个。最后,使用 UseFirstAcquisition 颜色模式来捕获您的 HDR 图像。
我们将通过一个示例引导您完成整个过程。让我们假设我们有一个带有两次采集的 HDR。第一次采集针对深色物体(梨)进行了优化。第二次采集针对明亮物体(香蕉)进行了优化。使用 UseFirstAcquisition 颜色模式进行 HDR 捕获会得到以下结果。
两张图像中深色物体(梨)的颜色相同。颜色一致性得以保留。
然而,因为第一次采集是针对深色物体进行优化的,所以场景中最亮的物体(香蕉)是饱和的。饱和度可能会导致问题,例如,如果我们想根据颜色对对象进行分类。为了克服这个问题,我们可以重新排列采集设置。我们将为场景中最亮的物体(香蕉)优化的采集设置为第一次采集。第二个采集项则针对深色物体(梨)进行优化。现在,我们看到颜色的一致性通过一起和单独捕获的明亮的和深色的对象得以保留。而且最亮的物体(香蕉)没有饱和。
备注
有一个能够提供最佳颜色的单个采集项是最佳的状况。该采集项针对场景中最亮的物体进行了优化,因此在这些物体也具备非常好的 SNR。该采集可能已经是您的 HDR 采集设置的一部分,那么久不需要额外的采集来处理 HDR 中的颜色不一致的问
如果彩色图像显得太暗,可以使用 Gamma 进行设置。
小心
Capture Assistant 返回的第一个采集可能无法提供最佳的彩色图像。因此,如果使用 Capture Assistant 和 UseFirstAcquisition 彩色模式,您可能需要重新调整采集的顺序。
提示
在 Zivid Studio 的采集设置中依次点击 ... → Move to top 即可将选定的采集项移动到序列中的第一个位置。
额外捕获
备注
仅当您必须使用自动或色调映射颜色模式进行 HDR 捕获时,才应使用此解决方案。
克服 HDR 色彩不一致的替代解决方案是在主捕获之外进行单独捕获。这种方法假设用户使用主捕获来获取点云数据,并使用附加捕获来获取彩色图像。附加捕获可以是 2D 或 3D 捕获,如果使用 3D 捕获,则必须关闭色调映射(Color Mode 设置为 UseFirstAcquisition)。