Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用OpenCV校正立体图像_Opencv_Stereo 3d - Fatal编程技术网

使用OpenCV校正立体图像

使用OpenCV校正立体图像,opencv,stereo-3d,Opencv,Stereo 3d,我打算制作一个程序,用一台相机拍摄立体对图像,然后对它们进行校正和裁剪,这样当用平行或交叉眼睛的方法并排观看图像时,就能获得最佳的3D效果。左侧图像将是参考图像,右侧图像将被修改以进行校正。我相信OpenCV将是实现这些目标的最佳软件。到目前为止,我相信处理过程将如下所示: 更正图像之间的旋转 校正y轴偏移 我想这样做会导致右图上方和下方出现不规则的黑色边框,因此: 将两个图像裁剪到相同高度以删除边框 计算立体对应/视差 计算最佳视差 校正图像以获得最佳视差 好的,这就是我对需要做什么和

我打算制作一个程序,用一台相机拍摄立体对图像,然后对它们进行校正和裁剪,这样当用平行或交叉眼睛的方法并排观看图像时,就能获得最佳的3D效果。左侧图像将是参考图像,右侧图像将被修改以进行校正。我相信OpenCV将是实现这些目标的最佳软件。到目前为止,我相信处理过程将如下所示:

  • 更正图像之间的旋转
  • 校正y轴偏移
我想这样做会导致右图上方和下方出现不规则的黑色边框,因此:

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

好的,这就是我对需要做什么和它发生的顺序的看法,我要问的是,这似乎是对的,有没有什么我遗漏了的,有没有错误的顺序等等。还有,我需要使用OpenCV的哪些特定功能来完成这个项目的所有必要步骤?还是说OpenCV不是一条出路?非常感谢。

OpenCV非常适合这一点

这本书有整整一章:

这本书中的所有示例代码都附带了opencv发行版

编辑:大致步骤如下:

  • 重新映射每个图像以消除镜头扭曲,并将视图旋转/平移到图像中心

  • 裁剪未在两个视图中显示的像素(可选)

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

  • 将视差图重新投影到三维模型中


  • OpenCV在这方面非常好

    这本书有整整一章:

    这本书中的所有示例代码都附带了opencv发行版

    编辑:大致步骤如下:

  • 重新映射每个图像以消除镜头扭曲,并将视图旋转/平移到图像中心

  • 裁剪未在两个视图中显示的像素(可选)

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

  • 将视差图重新投影到三维模型中


  • 事实上,我正在努力阅读这本书,但是有人对我对这个过程的想法有什么评论吗?Amirite?我实际上正在阅读那本书,但是有人对我的过程想法有什么评论吗?阿米丽特?