【问题标题】:OpenCV stereo camera, detect object distanceOpenCV立体相机,检测物距
【发布时间】:2012-12-30 22:19:42
【问题描述】:

我是 OpenCV 的新手,我已经构建了 openCV 并安装了 Qt 以成功运行示例 http://code.google.com/p/opencvstereovision/source/checkout。结果是左右网络摄像头捕获,并在校准后为两者和深度图校正图像。我想做以下事情。我将单击一个对象以聚焦于这些左侧或右侧图像中的任何一个。然后我想检测另一张图像中的相应像素并计算到这个物体的距离。我不知道现在该做什么,我需要指导。也许如果我先计算对应点,我可能会解决剩下的问题。我该怎么做?

【问题讨论】:

    标签: opencv distance stereo-3d stereoscopy


    【解决方案1】:

    您似乎很清楚需要什么。这有点像一罐蠕虫-因此,我一如既往地建议您获取著名的 Hartley & Zisserman 书籍以获得规范的解释。这是相关章节的link

    但简而言之……

    我没有直接使用 opencvstereovision 包装类,但听起来它已经解决了校准问题(相机内在和外在),并通过平面几何的单应矩阵 (H) 或基本矩阵计算了校正(F) 用于更复杂的对极几何形状。

    可能类似于这个原始的post

    这个修正意味着它已经建立了每个图像中相同点之间的数学映射。

    在之前的answer(来自我)中,您可以通过使用基本矩阵执行三角测量来进行数学运算 - 即计算距离。

    但请注意,此距离仅在图像坐标系中(即以像素为单位)。

    执行“真实世界”测量(即实际物理距离)实际需要的是计算基本矩阵 (E),它结合了基本矩阵和相机内在函数 (K) ,如果你愿意,将距离投射到现实世界中。

    【讨论】:

    • 谢谢伙计。我提到的链接是第 12 章的确切实现,并在书中进行了详细解释。我猜想 cvComputeCorrespondEpilines,在第 427 页也提到过,是需要的吗?我将传递一张图像中的像素,它应该在另一张图像上找到对应的像素???
    【解决方案2】:
    class StereoVar
    {
    StereoVar();
    StereoVar(    int levels, double pyrScale,
                                    int nIt, int minDisp, int maxDisp,
                                    int poly_n, double poly_sigma, float fi,
                                    float lambda, int penalization, int cycle,
                                    int flags);
    virtual ~StereoVar();
    
    virtual void operator()(InputArray left, InputArray right, OutputArray disp);
    
    int        levels;
    double    pyrScale;
    int        nIt;
    int        minDisp;
    int        maxDisp;
    int        poly_n;
    double    poly_sigma;
    float    fi;
    float    lambda;
    int        penalization;
    int        cycle;
    int        flags;
    
    ...
    };
    

    参考:http://docs.opencv.org/modules/contrib/doc/stereo.html

    【讨论】:

    • 你能分享任何示例代码来制作disparty地图吗?看到了stereo_match.cpp示例代码..但是没有解释,所以真的听懂了
    猜你喜欢
    • 2013-12-23
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-07
    • 2012-07-06
    • 2021-09-01
    相关资源
    最近更新 更多