立体对应和特定对象的3D位置(ROI)

时间:2013-01-15 01:36:48

标签: c++ opencv

我感兴趣的是获取特定对象的3D位置(使用立体视觉),只要在左图像中获取其位置和ROI,此外还可以获得其在右图中的位置。

我在网上找到的是如何使用(StereoBM :: operator()/ cvFindStereoCorrespondenceBM)获取视差图。

方法是什么?如何获得该对象的差异?在获得视差图后是否有直接的方法可以做到这一点,或者我应该先在右图中匹配对象以获得差异?

你能建议一个匹配对象的好算法吗?请在答案中包含代码。

1 个答案:

答案 0 :(得分:1)

您的任务包括以下步骤:

1)摄像机校准
2)提取特征(手动或通过算法。例如 - SURF,SIFT);
3)匹配功能(由您决定.OpenCV有一个强力匹配器)
4)基本和单应矩阵估计
5)整流(OpenCV立体匹配器仅适用于经过校正的图像)
6)视差图
7)基于相机型号的三角测量(可能不是针孔)

这些书籍提供了很好的解释,代码如下:
1)RobertLaganière的OpenCV 2计算机视觉应用程序设计手册 2)由Gary Bradski学习OpenCV 3)3D计算机视觉技术和算法简介 Boguslaw Cyganek和J. Paul Siebert

希望它有所帮助! =)