我正在为 wp8 开发增强现实应用程序,并且需要知道相机 fov 以准确结合 3d 渲染模型和相机流,同时考虑距离。有人知道如何以编程方式获取相机 fov 甚至获取任何硬件相机信息,即传感器的大小和焦距吗?
问问题
925 次
1 回答
0
要获得相机 FOV,您可以校准相机以找到其内在参数(焦距、主点、偏斜因子和可选的失真参数等)。
这样做的流行库是 OpenCV:
用您的照相手机截取一些屏幕截图(最好以与您的相机预览模式相同的分辨率)并将此数据集导入您的 PC 以在其上运行校准过程。
谷歌或在 stackoverflow 上查看有关该主题的其他教程,关键字:相机校准,opencv。
之后有一个简单的公式可以将焦距转换为 FOV(针孔相机模型)。为了让您的 AR 应用程序获得更好的精度,最好将此透视矩阵(内在参数)从 OpenCV 格式转换为 OpenGL 透视格式(或 DirectX)。仅使用 FOV 会在您的配准过程中引入错误(例如,理想中心与测量的主点、偏斜因子等)。
于 2013-05-15T13:33:59.513 回答