我目前在相机中设置相机对齐模型作为原点坐标:
http://i.imgur.com/UnSCAvG.png
并且,由于相机是静止的,我正在尝试将系统转换为模式固定模型
http://i.imgur.com/OKunxwA.png
Matlab非常适合向我展示,但唉,我发现没有办法提取数据,除非它是在固定相机模型上。它应该是一个简单的问题,即应用平移的反转和旋转来改变系统之间但不幸的是,这不起作用,我不明白为什么。
oldpoint = [0 0 0 1]';
translation = ([1 0 0 18.1043121043; 0 1 0 31.092351038; 0 0 1 -80.0610295707; 0 0 0 1]);
rotation = [eul2rotm([0.0957937074 -0.0234017529 -0.037084526]) zeros(3,1); 0 0 0 1];
newpoint = translation * point;
newpoint = rotation * newpoint;
我已经尝试了几种不同的替代品,但到目前为止还没有达到我想要得到的坐标。
答案 0 :(得分:0)
有两件事情出错,matlab没有使用欧拉角,而Z需要倒置。
clc;
clear;
%%
oldpoint = [0 0 0 1]';
newpoints = zeros(13,4);
i = 1;
while( i<= length(translations) )
trans = translations(i,:);
rota = rotations(i,:);
display(trans);
display(rota);
translation = ([1 0 0 -trans(1); 0 1 0 -trans(2); 0 0 1 trans(3); 0 0 0 1]);
rotation = [rotationVectorToMatrix([-rota(1) -rota(2) -rota(3)]) zeros(3,1); 0 0 0 1];
newpoint = translation * oldpoint;
newpoint = rotation * newpoint;
newpoints(i,:) = newpoint;
i = i + 1;
end