废话不多说,直接放代码
clc;clear;
disp("连续像对相对定向");
x_1 = [1.983,0.924,1.068,1.208,-0.514,1.293];
y_1 = [-6.091,7.098,4.538,6.858,-10.05,-8.089];
x_2 = [-3.202,-2.830,-2.878,-2.578,-5.642,-3.981];
y_2 = [-5.564,7.694,5.098,7.429,-9.152,-7.441];
%%u=0.0911;v=-0.0311;f=24; **这个是结果**
%%q = -0.0423;w=-0.0301;k=0.0975;
f=24;
q=0;w=0;
k=0;u=0;
v=0;n=6;
dq=1;dw=1;dk=1;du=1;dv=1;
limit1=0.00003;
X1=x_1;Y1=y_1;round=0;
for i=1:n
Z1(i)=-f;
end
while(1)
a1=cos(q)*cos(k)-sin(q)*sin(w)*sin(k);
a2=-cos(q)*sin(k)-sin(q)*sin(w)*cos(k);
a3=-sin(q)*cos(w);
b1=cos(w)*sin(k);
b2=cos(w)*cos(k);
b3=-sin(w);
c1=sin(q)*cos(k)+cos(q)*sin(w)*sin(k);
c2=-sin(q)*sin(k)+cos(q)*sin(w)*cos(k);
c3=cos(q)*cos(w);
R=[a1,a2,a3;
b1,b2,b3;
c1,c2,c3];
for i=1:n
a=(R*[x_2(i);y_2(i);-f])';
X2(i)=a(1);Y2(i)=a(2);Z2(i)=a(3);
end
BX=x_1(1)-x_2(1);
BY=u*BX;
BZ=v*BX;
coe= zeros(n,5);
for i = 1:n
MATLAB摄影测量代码实现连续像对相对定向

这段MATLAB代码用于实现连续像对的相对定向,通过迭代优化求解内方位元素和旋转参数。代码中展示了计算过程,包括矩阵运算和坐标转换,最终得出的参数与预期结果吻合。
最低0.47元/天 解锁文章
1183





