如何从立体摄像机获取密集点云?


12

我正在尝试使用立体声相机进行场景重建,但是通常只能获得稀疏点云(即,超过一半的图像没有任何适当的深度信息)。

我意识到,立体处理算法依赖于图像中纹理的存在,并且可以调整一些参数以获得更好的结果,例如视差范围或相关窗口大小。但是,尽管我调整了这些参数,但我永远无法获得甚至与使用Kinect等有源传感器所获得的结果几乎遥不可及的结果。

我之所以想要这样做,是因为与相邻区域相对应的点云经常没有足够的重叠空间来使我获得匹配,因此严重损害了重建。

我向计算机视觉专家提出的问题如下:我应该怎么做才能获得更密集的点云(无需随意修改办公室环境)?


这是一个很好的问题,但是我认为需要更多细节。您尝试过什么算法来计算匹配?您能否阐明“相邻区域”和“重叠”的含义?
乔什·范德·胡克

当我说“相邻区域”时,我指的是物理空间中不相等但具有非空交集的部分,我称其为“重叠”。也就是说,将生成可以在ICP算法中进行匹配和缝合的点云的区域类型。
georgebrindeiro 2012年

关于该算法,我仍在使用可能找到的最简单的解决方案:stereo_image_proc ROS节点,该节点应用了OpenCV中可用的全局块匹配算法。我对听到可能无法通过ROS节点或已知能提供更好结果的其他算法直接访问的参数设置很有兴趣。
georgebrindeiro

Answers:


4

您可以尝试跳过显着点检测,而仅在图像上密集采样(如网格等),并在每个采样点处计算特征描述符。您甚至可以为每个像素计算一个描述符。

您可能会失去比例不变性,但是我认为这对于立体视觉不会造成太大的伤害,因为在两个图像中物体的比例大致相同。

另一种方法可能是结合多个显着点检测算法:拐角,边缘,斑点等。然后,您必须对所有检测到的点使用相同的特征描述符算法,但是后一部分的实现可能有些棘手。


2

因此,我过去使用的立体图像处理算法是逐像素实现的。我们只是使用了针孔相机模型,并用卷尺进行了一些老式的测量,直到我们的深度估算值与真实情况相符。

一对并行摄像机的方程式为:

  • d=摄像机之间距离的一半
  • f=摄像机的焦距(假设相同)
  • 坐标系:
    • x,y,z=摄像机之间的坐标框架(即摄像机基本框架)
    • uR,vR从机器人的角度来看在右摄像机中的摄像机坐标(u是水平的,v是垂直的)
    • uL,vL摄像机在左摄像机中的坐标
    • 注意:相机坐标的原点位于相机之间的坐标系中(即u轴面向相反的方向)

uL=f(xd)zuR=f(x+d)z

zuR=f(x+d)zuL=f(xd)

z(uRuL)=2df

z=2dfuRuL

y=vLz+dff

x=uLz+dff

使用这些方程式,您可以计算出密集的立体云。相机上的每个像素一个。


感谢您的努力,但是我对立体建模很熟悉。问题通常恰好是左右摄像机中(u,v)坐标之间的对应关系。muksie提出了一些有关如何处理该问题的想法,而sylvain.joyeux指出了一个很棒的立体声库,可以带来更好的结果,但是……
georgebrindeiro 2012年

1

当您说“一半以上的图像没有适当的深度信息”时,哪一半呢?

我们遇到的一个问题是,如果到物体的距离与基线(通常与非常广角的摄像头相关)处于相同的数量级,那么“标准”密集立体声算法就不能很好地工作。我们一直在使用libelas库,其开发人员告诉我们这被称为“大型基准立体声”,这是另一个问题。


当我说一半的图像没有任何适当的深度信息时,我的意思是,在所有像素中,只有大约一半具有计算出的视差(不一定形成一个连续区域)。我与您提到的距离对象/基线比率没有相同的问题,但是听到有关该库的消息非常有趣,这可能是个问题。谢谢!
georgebrindeiro 2012年

1
无论哪种方式,我都会尝试libelas,因为我找到了它的ROS包装器
georgebrindeiro

0

看看KITTI立体声基准测试领导者。此基准会对算法造成不利影响,因为算法在任何给定的点都不会产生差异,因此,表现最佳的人员会产生密集的输出(即使他们在很多点上没有足够的估计依据)。某些方法具有链接的公共可用代码,您可以尝试一下。

请注意,它们不会花费很长时间,因此许多方法会花费每个图像几分钟的时间,并且可能不适合您的应用程序。尽管引入了许多基于CNN的方法,但效果很好,但仍在不到一秒钟的时间内(在GPU上)运行。这些(CRL)中至少有一个具有公共代码。

如果您仍然没有在图像上获得像样的深度估计,那么您可能只是看到了可见方法的可行性极限。从根本上讲,该区域必须具有独特的纹理,以便能够很好地匹配点,或者您需要在无纹理的区域中进行一些有力的假设(例如,平滑度)的基础。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.