|
Hi,
I am using an old version of Image Modeler. When I calibrate a series of images, I can get camera position & rotation for every image. How can I use these values in other applications?
I tried to take rotation values as degrees and create a rotation matrix, and camera positions as translation matrix. So for example if rxyz and txyz are arrays for rotation and translation values, the psuedo code to create augmented matrix rt is:
% rxyz(3) and txyz(3) hold values from imagemodeler
rx = [ 1 0 0 ; 0 cosd(rot_val(1)) -sind(rot_val(1)) ; 0 sind(rot_val(1)) cosd(rot_val(1))];
ry = [ cosd(rot_val(1)) 0 sind(rot_val(1)) ; 0 1 0 ; -sind(rot_val(1)) 0 cosd(rot_val(1))];
rz = [ cosd(rot_val(1)) -sind(rot_val(1)) 0 ; sind(rot_val(1)) cosd(rot_val(1)) 0 ; 0 0 1];
rt = [rx*ry*rz txyz’];
where sind and cosd are sine and cosine values for degrees.
However this does not give me intended results, when I take 3d coord.s from image modeler and map them to 2d with the rt matrix, I get very unrelated positions. I am hoping to see the positions at least up to a scale when I map to 2d but as I said I get very unrelated positions. So I think I am missing something about interpreting the values in ImageModeler, any suggestions?
Thanks…
|
|
|
|
I suppose it depends on the applications you want to use tha cameras in. For Max I just export to FBX, then import to Max with all the cameras. I works great as a camera matching utillity.
|
|
|