我正在使用立体相机进行3d图像重建。我从opencv 3.2和Visual Studio开始。我无法正确地从两个场景正确地注册两个点云。因此,我对通过相机校准过程获得的Q矩阵感到怀疑。因此,我使用matlab校准器应用进行了相机校准。我想根据从matlab获得的校准参数手动创建Q矩阵,然后在opencv中使用它。我从this post发现了如何创建Q矩阵。现在的问题是我不知道该矩阵应使用的焦距。 Matlab在stereoparam 对象中提供校准参数,该对象分别包含两个相机传感器的相机参数。所以我有来自camera1的fx和fy以及来自camera2的fx和fy。那么,如何获得立体相机的单焦距呢?
答案 0 :(得分:0)
据here报道, fx 和 fy 以像素表示。
F ,世界单位的焦距(通常以毫米为单位)可以计算为
F = fx * px 或 F = fy * py ,
其中 px 和 py 分别是沿x和y的像素大小。
尤其是
px =图像宽度[像素] /图像传感器宽度[mm]
py =图像高度[像素] /图像传感器高度[mm]。
答案 1 :(得分:0)