我将设置一些设备来执行实时 3D 运动跟踪。我这样做的第一个想法是使用一对相机拍摄立体图像并计算深度图以获得我需要的 3D 数据。
是否有任何好的开源库 (C/C++) 可用并且足够快用于实时(~12-24fps)?我在 SourceForge 中找到了使用 Stereo Vision和EStereo的 3D Reconstruction ,有人尝试过吗?
或者我可以实施的任何算法建议?
我将设置一些设备来执行实时 3D 运动跟踪。我这样做的第一个想法是使用一对相机拍摄立体图像并计算深度图以获得我需要的 3D 数据。
是否有任何好的开源库 (C/C++) 可用并且足够快用于实时(~12-24fps)?我在 SourceForge 中找到了使用 Stereo Vision和EStereo的 3D Reconstruction ,有人尝试过吗?
或者我可以实施的任何算法建议?
在开始之前,请考虑立体视觉不仅仅是一个软件问题这一事实。一对相机的校准对于深度图的准确性至关重要。为获得最佳效果,您需要两个完全相同的相机指向完全平行,两个相机上的镜头完全相同,相机的 CCD 位于 3D 空间中的一个平面上。仅使用任何随机的一对相机都很难实现这一点。特别是如果它们来自更便宜的部分。
如果您只对使用 3D 深度图进行 3D 运动跟踪感兴趣,那么您可以购买预先校准的立体相机,这些相机通常附带允许您直接提取 3D 地图的软件。我对Point Gray Research 的 Bumblebee 相机有很好的体验,但可能还有其他好的系统。这将使您能够专注于 3D 跟踪。否则,仅从一对相机中获取可用的深度图会占用您很多时间。
Opencv 对此有一整节,请参阅Learning Opencv的第 12 章