我正在研究相机校准和 3D 重建问题。
OpenCV 或任何其他 Python 包中是否有将点从 2D 投影到 3D 给定的方法
- R - 一个旋转矩阵,
- T - 平移矩阵,
- 焦距 (
f_x, f_y
) 和光学中心 (c_x, c_y
)。
我正在研究相机校准和 3D 重建问题。
OpenCV 或任何其他 Python 包中是否有将点从 2D 投影到 3D 给定的方法
f_x, f_y
) 和光学中心 ( c_x, c_y
)。由于您不做立体,从单个 2D 点和相机校准,您无法获得 3D 点(至少没有额外的限制,例如该点位于地面或类似的地方)。
您可以从单个 2D 点获得的是 3D 射线(3D 矢量),3D 点位于其中。参考下图,来自[ https://docs.opencv.org/2.4/_images/pinhole_camera_model.png]:
从 (X, Y, Z) 可以得到 (u, v),但是红线中的任何点也会投影到相同的 (u, v)。这意味着给定 (u, v),您无法知道您正在观察这条线上的哪个点。