1

我打算制作一个程序,它将由单个相机拍摄的立体对图像,然后对其进行校正和裁剪,以便在使用平行或交叉眼方法并排查看图像时,将获得最佳的 3D 效果. 左侧图像将作为参考图像,右侧图像将被修改以进行校正。我相信 OpenCV 将是实现这些目的的最佳软件。到目前为止,我相信处理会发生这样的事情:

  • 更正图像之间的旋转。
  • 校正 y 轴偏移。

这样做我会想象会导致右图上方和下方出现不规则的黑色边框,因此:

  • 将两个图像裁剪到相同的高度以删除边框。
  • 计算立体对应/视差
  • 计算最佳视差
  • 校正图像以获得最佳视差

好的,这就是我对需要做什么以及它发生的顺序的看法,我要问的是,这看起来对吗,有什么我错过的,有什么错误的顺序等等。另外,哪些具体功能我需要使用 OpenCV 来完成这个项目的所有必要步骤吗?或者OpenCV不是要走的路?非常感谢。

4

1 回答 1

1

OpenCV 非常适合这个。

有一整章在:

在此处输入图像描述

本书中的所有示例代码都随 opencv 发行版一起提供

编辑:大致步骤是:

  1. 重新映射每个图像以消除镜头失真并将视图旋转/平移到图像中心。

  2. 裁剪两个视图中均未出现的像素(可选)

  3. 在每个视图中查找匹配对象(立体块匹配)创建视差图

  4. 将视差图重新投影到 3D 模型中

于 2011-03-28T18:58:15.483 回答