将 3d 世界点投影到 VR 图像坐标的数学

信息处理 图像处理 计算机视觉 相机姿势 投影 电脑图像
2022-02-12 00:36:11

假设,我有一个 3d 世界点,我想将它投影到相机的图像平面上,我可以这样做 P

M=[Rt01]

p=KMP
其中是相机内在矩阵,给出了齐次坐标中的图像点。Kp

现在,我想对 VR 图像(360° 或 180° 度)做同样的事情。你能为我提供这里涉及的数学的任何链接吗?

我在此处附加了两个示例图像,其中相机向前移动。正如您所看到的,当相机在普通视频中向前移动时,帧的变化是不一样的。我相信它使用了其他一些坐标系(可能是球形的),而且图像在耳机上仔细观察时会产生 3d 的感觉。

框架1 框架2

1个回答

您的图像看起来像是用有角度的鱼眼投影拍摄的。此外,为了考虑立体图像的对极几何,您应该将基本矩阵包含到几何管道的变换引擎中。

要使用鱼眼相机在 OpenCV 中渲染 3D 场景,可以使用鱼眼相机模型。无论您使用的是哪种图形软件,您都可能会在 OpenCV 文档中找到对该模型数学运算的有用描述。

编辑:

当使用像Blender这样的应用程序时,您不需要构造矩阵和调用 API 方法。您只需为对话框控件选择值。例如,要选择鱼眼镜头,请按照以下参考进行操作: https ://docs.blender.org/manual/en/2.79/render/cycles/camera.html :

相机

. 镜片

. 类型:鱼眼

另请参阅https://www.veer.tv/blog/blender-tutorial-how-to-render-a-3d-vr-video-from-blender/