相机变换
摘录自
《视觉SLAM14讲》
https://blog.csdn.net/qq_41623632/article/details/138285193
https://www.songho.ca/opengl/gl_projectionmatrix.html
https://zhuanlan.zhihu.com/p/718895401
投影变换
Z⎝⎛uv1⎠⎞=⎝⎛fx000fy0cxcy1⎠⎞⎝⎛XYZ⎠⎞=defKP
fx=dXf
f单位m,c单位像素,(u,v)为像素坐标系坐标,像素坐标系以图像左上角为原点,u向右为x正方向,v向下为y正方向,K为内参矩阵。
坐标变换
ZPuv=Z⎝⎛uv1⎠⎞=K(RPw+t)=KwcTwP
wcT 外参矩阵
wcT=(Rt)
wP=⎝⎜⎜⎜⎛xyz1⎠⎟⎟⎟⎞
OpenGL Projection Matrix OpenGL
PGL_PROJECTION=⎝⎜⎜⎜⎛r−l2n0000t−b2n00r−lr+lt−bt+bf−n−(f+n)−100f−n−2fn0⎠⎟⎟⎟⎞
使用相机参数构造投影矩阵:
1 2 3 4
| [2 * fx / w, 0.0, -(w - 2 * cx) / w, 0.0 ], [0.0, 2 * fy / h, -(h - 2 * cy) / h, 0.0 ], [0.0, 0.0, far / (far - near), -(far * near) / (far - near) ], [0.0, 0.0, 1.0, 0.0 ]
|
⎝⎜⎜⎜⎛xNDCyNDCzNDCwNDC⎠⎟⎟⎟⎞=PGL_PROJECTION⎝⎜⎜⎜⎛xyz1⎠⎟⎟⎟⎞