Filter löschen
Filter löschen

rectifyStereoImages Rotation Matrix output is coming out 3 x 4 instead of 3 x 3

3 Ansichten (letzte 30 Tage)
Hi, i am using the Matlab function rectifyStereoImages to calculate the camera1 rotation matrix and camera 2 rotation matrix (R1 and R2) as suggested in the documentation.
Documentation Example :-
[___,camMatrix1,camMatrix2,R1,R2] = rectifyStereoImages(I1,I2,stereoParams) returns the 3-by-4 camera projection matrices camMatrix1 and camMatrix2 for the rectified cameras, and the corresponding rectification rotation matrices, R1 and R2.
R1 and R2 should be 3 x 3 as said in the documentation.
Here is what i am doing :-
load("CameraCalib.mat")
LeftImage = imread("Left.png");
RightImage = imread("Right.png");
[~, CamMatLeft, CamMatRight, R1, R2] = rectifyStereoImages(LeftImage, RightImage, CameraCalib);
according to the documentation R1 and R2 should be 3 x 3 but in my workspace i am getting R1 and R2 to be 3 x 4 projection matrices.
Any idea what am i doing wrong here ? If so how should i fix this to get the desired matrices ?

Akzeptierte Antwort

chicken vector
chicken vector am 28 Apr. 2023
Bearbeitet: chicken vector am 28 Apr. 2023
It looks like you are missing two output arguments, so what you call R1 is actually camMatrix1.
The default syntax of the function is:
[J1,J2,reprojectionMatrix] = rectifyStereoImages(I1,I2,stereoParams)
It means that when you use this:
[___,camMatrix1,camMatrix2,R1,R2] = rectifyStereoImages(I1,I2,stereoParams)
^This line takes into account the three output J1, J2 and reprojectionMatrix.
You need to do:
load("CameraCalib.mat")
LeftImage = imread("Left.png");
RightImage = imread("Right.png");
[~, ~, ~, CamMatLeft, CamMatRight, R1, R2] = rectifyStereoImages(LeftImage, RightImage, CameraCalib);
  3 Kommentare
chicken vector
chicken vector am 4 Mai 2023
I am not sure. If the stereo parameters remain the same, probably yes, but I don't know how much time you can save by doing that.
Anyway, you can try to use the function on different frames and see if the rotation matricees are the same.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by