Typically, the definition of the projection matrix P is a 3x4 matrix that projects a point from world coordinates into image / pixel coordinates. The projection matrix can be divided into:
- K : 3x4 K camera matrix with internal parameters
- T : 4x4 transformation matrix with external parameters
Then the projection matrix P = K * T.
What are the clear definitions of the following input to OpenCV stereoRectify:
- cameraMatrix1 - The first camera matrix (I believe this is the desired part K of the projection matrix, right?) .
- R is the rotation matrix between the coordinate systems of the first and second cameras. (what does “between” mean? Is it rotation from cam1 to cam2 or from cam2 to cam1?)
- T - vector translation between camera coordinate systems. (Same thing above. Is the translation from cam1 → cam2 or cam2-> cam1)
- R1 is the output 3x3 rectification conversion (rotation matrix) for the first camera. (This is a rotation after correction, so the new outer part of the projection matrix becomes T1new = R1 * T1old?)
- P1 is the output 3x4 projection matrix in the new (fixed) coordinate systems for the first camera. (What is meant by the “projection matrix in the new coordinate system”? It seems that this projection matrix depends on the rotation matrix R1 from the projection from the world coordinates to the image / pixel coordinates, therefore from the above definition neither the “projection matrix” nor the “camera matrix” ", and some mixture of two)
source share