【问题标题】:OpenCV Stereo Reconstruction -- What is the difference between using the Q matrix and triangulation?OpenCV Stereo Reconstruction -- 使用 Q 矩阵和三角测量有什么区别?
【发布时间】:2014-06-23 06:19:57
【问题描述】:

我已经在 Matlab 中多次实现了立体管道,现在我正在尝试在 OpenCV 中实现一个。我一直在关注 Martin Peris 的重建:http://blog.martinperis.com/2012/01/3d-reconstruction-with-opencv-and-point.html

当使用 Matlab 实现时,我的管道是这样的:校准 -> 校正 -> 立体匹配 -> 取消校正/取消扭曲匹配 -> 三角匹配。

在 OpenCV 中,管道是这样的校准 -> 校正 -> 立体匹配 -> reprojectTo3D

这里有 reprojectTo3D 函数:http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html#void%20reprojectImageTo3D%28InputArray%20disparity,%20OutputArray%20_3dImage,%20InputArray%20Q,%20bool%20handleMissingValues,%20int%20ddepth%29

它不是在做三角测量吗?这怎么可能?是否假设相机处于规范设置并且已经平行?

【问题讨论】:

    标签: opencv triangulation stereo-3d 3d-reconstruction


    【解决方案1】:

    OpenCV 管道从立体匹配中获取用于三角测量的视差图,并从校准和校正步骤中获取相机的投影矩阵。您可以将triangualtePoints 与从两个相机观察到的点的位置及其来自stereoRectify 函数的投影矩阵一起使用。主要算法相同,只是中间产品略有不同。

    【讨论】:

    • 在我看来,答案存在小错误。您可以将 triangualtePoints 与从两个相机观察到的点的位置以及来自 stereoRectify 函数的投影矩阵(而不是它们的位置)一起使用。
    • 是的,你是对的。我认为投影矩阵包含有关相机位置的信息,但即使它是真的,也远不止这些。固定。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-20
    • 2023-04-10
    • 2020-07-11
    • 2013-04-11
    • 2011-10-14
    • 2011-06-16
    相关资源
    最近更新 更多