深度估计的准确性 - 立体视觉

Posted

技术标签:

【中文标题】深度估计的准确性 - 立体视觉【英文标题】:Accuracy in depth estimation - Stereo Vision 【发布时间】:2014-05-10 23:16:01 【问题描述】:

我正在研究立体视觉,我对这个问题中深度估计的准确性感兴趣。这取决于几个因素,例如:

正确的立体校准(旋转、平移和失真提取), 图像分辨率, 相机和镜头质量(失真更少,色彩捕捉正确), 两幅图像之间的匹配特征。

假设我们没有低成本的相机和镜头(没有廉价的网络摄像头等)。

我的问题是,我们在这个领域可以达到的深度估计精度是多少? 任何人都知道一个真正的立体视觉系统,它可以以一定的精度工作吗? 我们能达到 1 毫米的深度估计精度吗?

我的问题还针对在 opencv 中实现的系统。您设法达到了怎样的准确度?

【问题讨论】:

也许可以看看:A Comparison and Evaluation of Multi-View Stereo Reconstruction Algorithm 由 Seitz 等人撰写。 nyx-www.informatik.uni-bremen.de/1007/1/seitz_cvpr06.pdf 从他们的评估中他们看到精度约为 1 毫米。虽然他们不处理传统的双眼重建,但他们计划在以后发表有关这方面的研究。 感谢您的回复。虽然这不是我完全需要的,但就我而言,我更想知道行业中是否有可行的解决方案以及它的准确性。无论如何,我会更多地研究 3d 重建,也许它会对我的主题有所帮助。 【参考方案1】:

问。任何人都知道一个真正的立体视觉系统可以以一定的精度工作吗?我们能达到 1 mm 的深度估计精度吗?

是的,您绝对可以使用立体装置实现 1 毫米(甚至更好)的深度估计精度(哎呀,您可以使用一对显微镜进行立体侦察)。精度在 0.1 毫米范围内的基于立体的工业检测系统已在常规使用中,至少从 1990 年代初就开始使用。需要明确的是,“基于立体”是指使用 2 个或更多几何分离的传感器的 3D 重建系统,其中一个点的 3D 位置是通过对传感器中 3D 点的匹配图像进行三角测量来推断的。这样的系统可以使用结构光投影仪来帮助进行图像匹配,但是,与适当的“基于结构光的 3D 重建系统”不同,它不依赖于投影仪本身的校准几何。

但是,大多数(可能是所有)此类为高精度设计的立体系统要么使用某种形式的结构化照明,要么使用有关重建形状几何形状的一些先验信息(或两者的组合),以便 tightly 约束要三角剖分的点的匹配。原因是,一般来说,三角测量比匹配精度更高,因此匹配精度是重构精度的限制因素。

了解为什么会这样的一种直观方法是查看立体重建方程的简单形式:z = f b / d。这里的“f”(焦距)和“b”(基线)总结了装备的属性,它们是通过校准来估计的,而“d”(视差)表示同一 3D 点的两个图像的匹配。

现在,至关重要的是,校准参数是“全局”参数,它们是根据在感兴趣的视野和深度范围内进行的许多测量来估计的。因此,假设校准过程是无偏的并且系统是近似时不变的,则每个测量中的误差在参数估计中被平均化。因此,通过进行大量测量,并通过严格控制钻机光学、几何形状和环境(包括振动、温度和湿度变化等),可以非常准确地估计校准参数,即影响无偏估计值通过传感器分辨率或更好的分辨率的不确定性顺序,以便在钻机运行的已知空间体积内可以忽略它们剩余不准确性的影响。

然而,视差是逐点估计:一个状态是左图像中的点 p 匹配(可能)右图像中的点 q,并且视差中的任何错误d = (q - p) 出现在按 fb 缩放的 z 中。这是一击必杀的事情。更糟糕的是,在所有重要的情况下,视差的估计都受到被分析对象的(先验未知)几何和表面特性以及它们与照明的相互作用的影响。这些合谋 - 通过使用任何匹配算法 - 降低重建的实际准确性可以实现。结构化照明在这里有所帮助,因为它减少了这种匹配不确定性:基本思想是在图像中可以找到和匹配(通常具有亚像素精度)的对象上投射清晰、聚焦良好的边缘。结构光的方法太多了,这里就不赘述了。但我注意到,在这个领域,使用颜色和仔细选择投影仪的光学元件可以帮助很多

因此,与往常一样,您在实践中所能取得的成就取决于您愿意花多少钱(更好的光学器件、低噪音传感器、刚性材料和用于钻机机械装置的设计、受控照明),以及如何很好,您理解并可以限制您的特定重建问题。

【讨论】:

【参考方案2】:

我要补充一点,即使使用昂贵的相机,使用颜色也是一个坏主意 - 只需使用灰度强度的渐变即可。一些高端立体相机(例如 Point Grey)的生产商过去依赖颜色,然后转为灰色。还将偏差和方差视为立体匹配误差的两个组成部分。这很重要,因为使用相关立体,例如,具有较大的相关窗口将平均深度(即将世界建模为一堆正面平行的补丁)并在增加方差的同时减少偏差,反之亦然。所以总会有取舍。

除了您上面提到的因素之外,您的立体声音响的准确性还取决于算法的具体细节。验证深度(立体估计之后的重要步骤)并优雅地修补无纹理区域中的孔洞取决于算法。例如,考虑来回验证(匹配 R 到 L 应该产生与匹配 L 到 R 相同的候选)、去除斑点噪声(用connected component algorithm 去除立体匹配的典型非高斯噪声)、纹理验证(无效深度在纹理较弱的区域),唯一性验证(具有没有第二和第三强候选的单模匹配分数。这通常是来回验证的捷径)等。准确性还取决于传感器噪声和传感器的动态范围。

最后,您必须询问关于精度作为深度函数的问题,因为 d=f*B/z,其中 B 是相机之间的基线,f 是以像素为单位的焦距,z 是沿光轴的距离。因此,准确度对基线和距离有很强的依赖性。

Kinect 将提供 1mm 的精度(偏差),具有高达 1m 左右的相当大的差异。然后急剧下降。 Kinect 的盲区最大可达 50 厘米,因为近距离的两个摄像头没有足够的重叠。是的 - Kinect 是一种立体相机,其中一个相机由红外投影仪模拟。

我确信使用概率立体,例如马尔可夫随机场上的信念传播,可以实现更高的准确度。但是这些方法假设了一些关于物体表面光滑度或特定表面方向的强先验。见this for example, page 14。

【讨论】:

感谢您的有用建议。浏览您提供的信息需要一些时间,我想知道以下情况:假设我测量距离的物体对比度如此之高,以至于立体匹配问题几乎消失了。然后我们不必创建深度图,所以我们只关注校准和校正,最后应用深度 d=f*B/z 的函数。我想知道那个案子怎么办。另一方面,Kinect 示例很有希望,尽管在可能的情况下我有多达 60 厘米的空间。 尽管我通常发现弗拉德的答案通常非常准确,但他的上述答案存在一些不准确之处。具体来说: (a) 重建精度本身完全且完全取决于光学特性和校准精度。匹配算法只选择三角化的 3D,而不是三角化的精确度。然而,一般来说,重建比他们匹配的更准确。 (b) 使用颜色是一个绝妙的主意——如果你可以控制它,例如使用结构光投影仪。 (c) Kinect:结构光!=立体声 抱歉,弗朗切斯科,您在所有方面都错了。在匹配中,算法是关键,因为它经常产生影响重建精度的错误匹配。光学等所有其他问题都很容易解决。人们写论文比较不同算法的准确性。使用颜色是一个糟糕的主意,因为它比灰色更嘈杂,因为彩色像素得到的光更少。看看立体相机的历史。 Kinect 与结构光无关,尽管经常这样称呼它。它使用红外光来创建纹理,但总体上充当立体相机,其中一个相机是投影仪。 简要(见下面的答案):(a)严重错误的匹配只会影响偏见,否则同意。 (a2)人们也写论文(和专利)关于你所谓的“易于修复”(b)颜色:我确实说过“如果你能控制它”,对吗?如果必须使用 OTS 颜色传感器,像素上的光分布已经不均匀。然后扔掉颜色是愚蠢的,尤其是。如果您可以控制照明(想想随机颜色的图案)。 (c) 您可以随意使用您喜欢的术语,但在 CV 文献中,立体 == 多个摄像头和未知的照明+几何,而 Kinect 使用光模式的知识。【参考方案3】:

如果您不想进一步了解这些方法的准确性,请查看this site,虽然它不再非常活跃,但结果几乎是最先进的。考虑到那里提出的几篇论文是用来创建公司的。真正的立体视觉系统是什么意思?如果您的意思是商业的并不多,那么大多数商业重建系统都使用结构光或直接扫描仪。这是因为(您错过了列表中的一个重要因素),纹理是准确性的关键因素(甚至在正确性之前);除非添加纹理或结构光,否则无法通过立体系统重建白墙。然而,根据我自己的经验,涉及变分匹配的系统可能非常准确(图像空间中的亚像素精度),这通常无法通过概率方法实现。最后一点,相机之间的距离对准确性也很重要:非常近的相机会很快找到很多正确的匹配,但准确性会很低,更远的相机会找到更少的匹配,可能需要更长的时间,但结果可能是更准确的;在many books 中定义了一个最佳圆锥区域。 在所有这些废话之后,我可以告诉你,使用 opencv 可以做的最好的事情之一就是进行初始相机校准,使用 Brox 的光流来查找匹配并重建。

【讨论】:

是的,我指的是商业系统。我也在考虑使用结构光来降低立体匹配问题的难度。如果它可以帮助我解决问题,我将看看变分匹配。感谢您的回复。 还为最先进的技术提供了更多:vimeo.com/channels/465969(这家伙正在做 3D 重建) 这是更高级的,因为照明是模型的一部分(使用 BRDF),但是,这必须通过受控照明的工作室捕捉来完成。不过质量是一流的。

以上是关于深度估计的准确性 - 立体视觉的主要内容,如果未能解决你的问题,请参考以下文章

ECCV2020优秀论文汇总|涉及点云处理3D检测识别三维重建立体视觉姿态估计深度估计SFM等方向

IDA-3D 解读基于实例深度感知的自动驾驶立体视觉三维目标检测

IDA-3D 解读基于实例深度感知的自动驾驶立体视觉三维目标检测

如何使用立体视觉对室内环境进行准确的 3D 重建?

OpenCV - 立体视觉的倾斜相机和三角测量地标

双目立体视觉