【问题标题】:How to take stereo images using single camera?如何使用单相机拍摄立体图像?
【发布时间】:2014-04-04 09:16:45
【问题描述】:

我想找到立体图像的深度图。目前我正在研究互联网图像,我想拍摄立体图像,以便我可以自己处理。如何在没有太多噪音的情况下拍摄最好的立体图像.我只有一个摄像头。需要整改吗?摄像头之间必须保持多少距离?

【问题讨论】:

  • 你也许可以用一个使用镜子的相机获得两张图像。

标签: image-processing computer-vision stereo-3d stereoscopy disparity-mapping


【解决方案1】:

不确定我是否正确理解了您的问题 - 无论如何都会尝试

我猜你目前正在处理来自middlebury 或类似的图像。如果您想使用类似的算法,您必须纠正您的图像,因为它们是基于相应像素在所有图像中位于同一行的假设。如果您确实想要深度图像(!= 视差图像),您还需要获取相机外部参数。

您的设置应该有两个摄像头,并且您必须确保它们不会在那里改变相对位置/方向 - 否则您的校正将会崩溃。在第一步中,您必须校准您的系统以获得内部和外部相机参数。为此,您可以使用某些工具或使用(例如)OpenCV (calib-module) 自行开发。打印出校准板来校准您的系统。之后,您可以拍摄图像并使用校准来校正图像。

关于色噪:
您可以使光圈非常小并使用高曝光时间。在我自己看来,这是没有用的,因为现实世界的情况无论如何都必须处理这些事情。

【讨论】:

    【解决方案2】:

    简而言之,互联网上有很多立体图像已经被纠正。如果您想拍摄自己的立体图像,您必须遵循以下三个步骤:

    • 到对象的距离 z (mm) 与像素 D 的视差之间的关系是相反的:z=fb/D,其中 f 是以像素为单位的焦距,b 是以 mm 为单位的相机间距。选择 b 以使您至少有几个像素的视差;
    • 如果您知道相机固有矩阵并补偿了径向畸变,您仍然需要校正图像以确保匹配位于同一行中。为此,您需要找到一个基本矩阵、恢复基本矩阵、应用校正单应性并更新您的内在相机参数......或使用来自互联网的立体对。
    • 明亮的场景、大光圈、大像素尺寸等有助于降低相机图像中的噪点;但是,根据您的设置,您仍然可能会得到一张非常嘈杂的视差图。减少这种噪声的方法是权衡准确性并使用更大的相关窗口。清理视差图的另一种方法是使用各种验证技术,例如
    • 错误验证;
    • 唯一性验证或反向强制验证
    • 斑点噪声抑制等

    【讨论】:

      【解决方案3】:

      根据我的经验:
      -我做了校正,所以我必须获得基本矩阵,这对于某些图像对可能不正确。
      - 更好的相机分辨率更适合匹配,我使用 OpenCV,它有一个 BRISK 描述符的实现,这对我很有用。
      - 尽量覆盖同一区域,尽量不要做不必要的旋转。
      - 一旦你理解了这个理论,OpenCV 就是一个好朋友。这是一些结果,但我仍在努力:

      深度图:

      校正图像:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-10
        • 2019-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-13
        • 2011-07-15
        相关资源
        最近更新 更多