openCV如何使用对象点和图像点估算焦距

问题描述

我正在尝试使用openCV,openGL显示3D棋盘图像(涉及旋转,平移),如matlab的相机校准工具框。

为此,我正在研究相机校准,均质性等。 我的问题是函数calibrateCamera(),我不知道openCV如何仅使用棋盘角的对象点(vec3),图像点(vec2)计算(估算)焦距。

请告诉我任何方程式或原理。

对不起我的英语不好谢谢

解决方法

您要查找的一组方程式称为共线性方程式。这些“将传感器平面(二维)中的坐标与对象坐标(三维)相关联。这些等式源自对象点通过相机的光学中心到传感器平面上图像的中心投影。 ” (wikipedia.com)

可以在here中找到OpenCV中使用的这些方程式的确切形式。对于不同类型的相机,存在不同类型的模型(例如,针孔模型,鱼眼模型,仅对径向变形进行建模)。