相机标定法中旋转矩阵的确定 matlab实现
相机外参的确定
已知量为三个灭点,求相机外参的旋转矩阵
%%其中Xx,Xy,Xz代表三个灭点的横坐标
Yx,Yy,Yz代表三个灭点的纵坐标
Xx=1358
Xy=3107
Xz=153
Yx=2182
Yy=1540
Yz=913
u0=(Yx-Yz+(Xz-Xy)/(Yz-Yy)Xx-(Xx-Xy)/(Yx-Yy)Xz)/((Xz-Xy)/(Yz-Yy)-(Xx-Xy)/(Yx-Yy))
v0=Yz+((Xx-Xy)/(Yx-Yy))(Xz-u0)
f=sqrt(-((Xz-u0)(Xx-u0)+(Yx-v0)(Yy-v0)))
A=(sqrt(f.2+(Xy-u0).2+(Yy-v0).2)./sqrt(f.2+(Xz-u0).2+(Yz-v0).2))
a=atan(A)
B=f/(sqrt((Xy-u0).2+(Yy-v0).2))
b=atan(B)
C=abs(Xx-u0)/abs(Yx-v0)
c=atan©
R1=[cos(a),0,-sin(a);
0,1,0;
sin(a),0,cos(a)]
R2=[1,0,0;
0,cos(b),-sin(b);
0,sin(b),cos(b)];
R3=[cos©,-sin©,0;
sin©,cos©,0;
0,0,1];
R=R1R2*R3
运算结果
插入链接与图片
图片: 其中R就是旋转矩阵,运算后带有虚部。