这个问题已经被以不同的方式问了很多次,很多人以不同的方式来处理这个问题。这就是为什么我不确定我的方法,如果有人能告诉我如果我做得对的话,那就好了。
我遵循的步骤是-
立体声摄像机pair.
calibrateCamera
stereoCalibrate
stereoRectify
triangulatePoints求出均匀coordinates.中的三维点。
我遵循的步骤正确吗?我在OpenCV文档方面一直有问题,所以我花了一段时间来制定步骤,深入了解文档。人们在OpenCV中以不同的方式来处理这个问题,有些人甚至用OpenCV文档中的一些助手函数构造了基本的和基本的矩阵,但是我认为stereoCalibrate和stereoRectify自己使用这些辅助函数。
发布于 2020-04-22 15:11:50
就像你说的,每个人都有自己的方式。我尝试的方法是,前4个步骤是相同的,但是在计算3d点时,我使用了OpenCV中存在的立体匹配算法。像StereoBM、StereoSGBM这样的算法是在OpenCV中实现的,它提供了一个易于使用的API。
因此,一旦从立体匹配函数中得到视差图,就可以利用reprojectImageTo3D函数得到三维坐标。它需要视差图和Q矩阵作为输入。
发布于 2020-04-09 00:25:05
这些步骤在理论上是正确的。使用它们不会有任何好的结果。
我的建议是买一台现成的立体声相机(ZED或RealSense ),它已经具备了你所需要的一切,所以你不需要校准或计算,只需使用它们的库就可以得到一些结果。这并不完美,但它会给你一个好的开始。
一旦你玩够了立体声摄像机,你就会更好地理解哪里是最大的问题,以及如何接近它们。
https://stackoverflow.com/questions/61111435
复制相似问题