minthem.m

来自「一个很好用的摄像机标定程序」· M 代码 · 共 73 行

M
73
字号
function [T, R, fl, u0, v0, b1, b2, PC, errs] = minThem()%DEVELOPMENT PHASE%% [T, R, fl, u0, v0, b1, b2] = iterateThem()%% performs one iteration global Gfl;global Gu0;global Gv0;global Gb1;global Gb2;global GSp;global Gno_views;global GIpts;global GHSp;global GA;disp( 'translation: x, y, z;  rotation: alpha, beta, gamma' ); % minimize 4 unknownsfor i = 1:Gno_views	[Te, Re, err] = eval( ['getTR3( GIpts{' num2str(i) '}, GHSp{' num2str(i) '}, GA{' num2str(i) '}, Gfl, Gu0, Gv0, Gb1, Gb2 )'] );	eval( ['Te' num2str(i) ' = Te;'] );	eval( ['Re' num2str(i) ' = Re;'] );	eval( ['errs(' num2str(i+1) ',1) = err;'] );end;HSp{1} = GHSp{1};HTe1 = eye(4);HRe1 = eye(4);HTe1(1:3,4) = Te1(:,3);HRe1(1:3,1:3) = Re1;for j = 2:Gno_views	eval( ['HTe' num2str(j) ' = eye(4);'] );	eval( ['HRe' num2str(j) ' = eye(4);'] );	eval( ['HTe' num2str(j) '(1:3,4) = Te' num2str(j) '(:,3);'] );	eval( ['HRe' num2str(j) '(1:3,1:3) = Re' num2str(j) ';'] );	eval( ['dKe' num2str(j) ' = inv( HTe1 ) * inv( HRe1 ) * HRe' num2str(j) ' * HTe' num2str(j) ';'] );	pom = eval( ['GHSp{' num2str(j) '}'] );	pom = hext(pom(:,1:3));	pom = pom';	eval( ['HSp{' num2str(j) '} = dKe' num2str(j) ' * pom;'] );	eval( ['pom = HSp{' num2str(j) '};'] );	pom = pom';	eval( ['HSp{' num2str(j) '} = hnorm( pom );'] );	endPC = makePC( HSp, GIpts );[AE, errstat] = estDLT( PC );errs(1,1) = errstat(1,1);[Te, Re, Ine, Lae] = decDLT( AE );T = eye( 3 );T(:,3) = Te';R = Re;u0 = Ine(1,1);v0 = Ine(1,2);b1 = Ine(1,3);b2 = Ine(1,4);fl = Ine(1,5);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?