如果给出两个相机的 4 x 4 校准矩阵,是否有可能计算两个相机的基线值?基线值将以米还是毫米计算?
希望有人能帮助我吗?TT
减去平移向量时,请注意不要混淆参考框架。如果你的外在矩阵是,取和[R | t]
之间的欧几里得距离不会给你基线。这是因为是世界原点在相机坐标上的位置,并且每个相机的参考系都不同。用不同的参考帧减去向量是无效的操作。t1
t2
t
您想要的是两个相机在世界坐标中的中心之间的差异,即|c1 - c2|
where c = -R't
。
外在矩阵中的这些参考框架问题可能很微妙且令人困惑。有关该主题的更长讨论,请查看我去年写的这个博客。它包括一个交互式演示,说明了如何t
和c
不同。
您需要指定您拥有什么样的校准矩阵。如果您说您只有内部(或内在)校准参数,那么答案是否定的 - 校准矩阵只是定义像素与世界之间的关系,而不是相机之间的关系。立体系统中两个摄像机之间的关系由外部参数定义,外部参数定义了摄像机在世界中的旋转和平移。这里有一个很好的参考,我建议你阅读。
编辑:如果您有外部参数,您将在我给出的链接中看到它们由转换矩阵 K 表示:
K = [ R_11 R_12 R_13 t_1 ]
[ R_21 R_22 R_23 t_2 ]
[ R_31 R_32 R_33 t_3 ]
[ 0 0 0 1 ]
因此,您可以直接从中提取平移向量t
,这将为您提供相机之间的距离。我不能告诉你它们是以米还是毫米为单位,这取决于你从哪里得到矩阵。它应该告诉你它是否是按比例缩放的。