2
我是OpenCV的新手。我正在使用2个摄像头开展立体项目。我可以将摄像头捕捉显示在左侧和右侧视频中。我想要做以下事情:当我点击左边框架上的任意一点时,我想在右边的图像上找到匹配点(有点使用块匹配或任何其他算法投影第二个视图上的点)。所以我可以计算差距。我怎样才能做到这一点?提前致谢。OpenCV立体匹配
我是OpenCV的新手。我正在使用2个摄像头开展立体项目。我可以将摄像头捕捉显示在左侧和右侧视频中。我想要做以下事情:当我点击左边框架上的任意一点时,我想在右边的图像上找到匹配点(有点使用块匹配或任何其他算法投影第二个视图上的点)。所以我可以计算差距。我怎样才能做到这一点?提前致谢。OpenCV立体匹配
OpenCV的StereoVar
对象可能是一个很好的起点。
你可以这样创建一个StereoVar
对象:
StereoVar myStereoVar(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);
然后匹配的图像对这样的:
// disp will hold correspondences for each pixel in your pair of images.
myStereoVar(InputArray left, InputArray right, OutputArray disp);
您可能需要改变你的cv::Mat
成InputArray
,但是这应该是很简单。
至于点击像素来查看对应关系,我敢打赌这是可能的,但是让我们在通信计算启动并运行之后担心这一点。