使用ORB在OpenCV中生成密集视差图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ORB在OpenCV中生成密集视差图相关的知识,希望对你有一定的参考价值。

我试图用OpenCV的ORB探测器生成一个密集的视差图。我跟随this tutorial并了解它如何生成其视差图。

但是,我不明白教程中的代码如何生成密集视差图,因为我找不到代码的任何部分来计算非关键点的像素差异。

通过使用Python复制教程中的代码,我得到了关键点上只有像素的精确视差图,但不是整个图像的密集视差图,任何人都可以解释教程如何找到密集的视差图。整个图像与代码?

答案

我希望这回答了你的问题。图像中的所有像素都是关键点。手动初始化关键点集以包含图像中的所有像素。这是通过从您引用的网站复制的以下行完成的:

for (int i = 0; i < img_left.cols; i++) {
    for (int j = 0; j < img_left.rows; j++) {
        kpl.push_back(KeyPoint(i,j,1));
        kpr.push_back(KeyPoint(i,j,1));
    }
}

以上是关于使用ORB在OpenCV中生成密集视差图的主要内容,如果未能解决你的问题,请参考以下文章

OpenCV - Python 断言错误:SAD 算法 - 立体相机视差图计算

视差图的 OpenCv 深度估计

Emgu (OpenCV for C#) - 使用 cvStereoRectify 构建视差图

使用立体相机从视差图进行深度重建

如何在 Python 中生成不同类型的图形?

利用视差图合成新视点