如何在距离已知距离设置的两个摄像机给出两个图像的情况下测量到物体的距离

Its*_*sik 3 c++ open-source computer-vision

我正在寻找一个开源项目或库(c ++,c),可以给我一个方法来计算图像中某个对象(像素)的距离,假设我有关于摄像机的所有信息 - 视图,焦距,相机之间的距离等.

sel*_*tze 10

我正在寻找一个开源项目或库(c ++,c),可以给我一个方法来计算图像中某个对象(像素)的距离,假设我有关于摄像机的所有信息 - 视图,焦距,相机之间的距离等.

根据究竟是什么"等",解决方案介于简单和不可能之间.

如果你有完全校准的摄像机(内部参数+相对外部参数),计算距离是计算和交叉两条视线的问题.视线直接跟随所有已知参数和像素位置.相交它们是用4个方程和3个未知数求解线性最小二乘问题的问题.

如果您只有内在的摄像机参数(最多五个自由度,通常是上三角形3x3矩阵)和摄像机之间的距离,则需要首先为两个摄像机的相对姿势重建剩余的5个自由度.这可以通过计算一组点对应的"基本矩阵"F并将其除以已知的kamera矩阵来完成,这样就可以得到"基本矩阵"E.这个矩阵可以进一步考虑到旋转和交叉积矩阵中.这将告诉您第二台摄像机相对于第一台摄像机的位置.将此与摄像机之间的已知距离相结合,您将能够计算"您看到"的事物的度量重建.

如果您甚至不知道所有内在参数,则无法计算度量重建,而只能计算某种"投影重建".但那不是你想要的.

推荐阅读:Hartley和Zisserman的多视图几何