DLT和Tsai两步法标定相机的Matlab代码 里面附带验证程序
DLT和Tsai两步法标定相机的Matlab代码 里面附带验证程序,里面有两个Function,一个DLT,所谓的直接线性变换法。另一个是Tsai的RAC,即径向约束一致法。 My_Dlt是用于验证两个子程序的
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1547 2013-05-09 16:27 My_DLT.m
文件 5022 2013-05-09 21:41 My_DLT_Fcn.m
文件 8910 2013-05-09 15:38 My_Tsai_Fcn.m
% My_Dlt
clc
clear all
format long
R=[ -0.9223 -0.0851 -0.3769
-0.0368 0.9903 -0.1337
0.3846 -0.1094 -0.9166];
T=[10;20;30];
dx=0.01;
dy=0.01;
f=5;
Cx=100;
Cy=100;
jibian=0.00000000000; % k1
weizhi=[30 4 5
10 0 04
2.3 -2 91
11 12.9 7
3 31 29
11 02 4.5
12 32 0.12
10 22.33 4
10.2 1.3 0.88
0 40 10
02 0 20
2. -22 0
1 2.9 0
31 3 0
11 0 0
21 3 10
01 2.33 0
01.2 0.3 0.2
0 0 0
2.3 -2 0
1 2.9 0
3 3 0
1 0 0
2 3 00
0 2.33 0
0.2 0.3 0.
3 4 0
];
% weizhi=[3 4 0
% 0 0 0
% 2.3 -2 0
% 1 2.9 0
% 3 3 0
% 1 0 0
% 2 3 00
% 0 2.33 0
% 0.2 0.3 0.
% ];
Imag=[];
for i=1:length(weizhi)
x=Cx+(f*[R(1:)T(1)]*[weizhi(i:)1]‘/([R(3:)T(3)]*[weizhi(i:)1]‘)/dx);
y=Cy+(f*[R(2:)T(2)]*[weizhi(i:)1]‘/([R(3:)T(3)]*[weizhi(i:)1]‘)/dy);
u=round((x-Cx)*(1+jibian*(x^2+y^2))+Cx);
v=round((y-Cy)*(1+jibian*(x^2+y^2))+Cy);
tmp=[uv];
Imag=[Imag;tmp];
end
X=Imag;
x=weizhi;
[aaaa1bbbb1]=My_DLT_Fcn(Xx);
[aaaabbbb]=My_Tsai_Fcn(XxCxCy);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1547 2013-05-09 16:27 My_DLT.m
文件 5022 2013-05-09 21:41 My_DLT_Fcn.m
文件 8910 2013-05-09 15:38 My_Tsai_Fcn.m
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)