光明磊落的反义词-怪盗基德预告函
相对定向—绝对定向解法实验报告
1
、
实验代码
1.1
根据所给同名像点的像平面坐标进行相对定向,求解相对的相对定向元素
function xP= xiangduidingxiang( Lxy,Rxy,f )
%UNTITLED Summary of this function goes here
%
Detailed explanation goes here
%
设置相对定向元素是初始值
u=0;
v=0;
w=0;
q=0;
k=0;
bu=Rxy(1,1)-Lxy(1,1);
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];
[n,m]=size(Lxy);
u2=[];v2=[];w2=[];
for i=1:n
u2(i)=a1*Rxy(i,1)+a2*Rxy(i,2)-a3*f;
v2(i)=b1*Rxy(i,1)+b2*Rxy(i,2)-b3*f;
w2(i)=c1*Rxy(i,1)+c2*Rxy(i,2)-c3*f;
end
for i=1:n
u1(i)=Lxy(i,1);
v1(i)=Lxy(i,2);
w1(i)=-f;
end
bv=bu*u;
bw=bu*v;
for i=1:n
N1(i)=(bu*w2(i)-bw*u2(i))/(u1(i)*w2(i)-u2(i)*w1(i) );
N2( i)=(bu*w1(i)-bw*u1(i))/(u1(i)*w2(i)-u2(i)*w1(i));
end
for i=1:n
a(i)=-u2(i)*v2(i)*N2(i)/w2(i);
b(i)=-(w2(i)+v2(i)*v2(i)/w2(i))*N2(i);
c(i)=u2(i)*N2(i);
d(i)=bu;
e(i)=-v2(i)*bu/w2(i);
l(i)=N1(i)*v1(i)-N2(i)*v2(i)-bv;
end
%
组成法方程系数阵
A
A=zeros(n,5);
%c
个控制点,
A
:
c
行,
5
列
for i=1:n
A(i,1)=a(i);
A(i,2)=b(i);
A(i,3)=c(i);
A(i,4)=d(i);
A(i,5)=e(i);
L(i,1)=l(i);
end
%
求解改正数
X
X=inv((A')*A)*(A')*L;
q=q+X(1,1);w=w+X(2,1);k=k+X(3,1);u=u+X(4, 1);v=v+X(5,1);
%
求解改正数绝对值的最大项,判断最大项是否小于限差
Xabs=abs(X);
aaa=max(Xabs);
if aaa<0.00003
%
当改正数中绝对值最大的改正数小于限差
0.00003
break;
%
后跳出循环,计算结果已经收敛
end
xP=[u,v,q,w,k ];
end
1.2
根据所给控制点的像平面坐标,求解控制点的模型坐标
function M= calmodelcord(xP,Lxy,Rxy,f,m)
h(1,:)=[0,0,0,0,0,0];
bu=(Lxy(1,1)-Rxy(1,1))*m;
bv=bu*xP(1);
bw=bu*xP(2);
h(2,:)=[bu,bv,bw,xP(3),xP(4),xP(5)];
M= qianfang(h,Lxy,Rxy,f);
end
1.3
利用控制点的地面摄影测量坐标和模型坐标求解相对立体模型的绝对定向元素
function [jP,Accuracy]= jueduidingxiang(M,G)
%UNTITLED Summary of this function goes here
%
Detailed explanation goes here
%
设置绝对定向元素是初始值
Xs=0;
Ys=0;
Zs=0;
q=0;
w=0;
k=0;
r=1;
[n,m]=size(G);
gt=sum(G)/n;
gm=sum(M)/n;
for i=1:n
%Mg(i,:)=M(i,:)-gm;
%Gg(i,:)=G(i,:)-gt;
Mg(i,:)=M(i,:)
Gg(i,:)=G(i,:)
end
%
组成法方程系数阵
A
%A=zeros(3*n,4);
%c
个控制点,
A
:
2c
行,
6
列
A=zeros(3*n,7);
for i=1:n
A(3*i-2,:)=[1,0,0,Mg( i,1),-Mg(i,3),0,-Mg(i,2)];
A(3*i-1,:)=[0,1,0,Mg(i,2),0,-Mg(i,3),Mg(i,1)];
A(3*i-0,:)=[0,0,1,Mg(i,3),Mg(i,1),Mg(i,2),0];
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];
L=zeros(3*n,1);
for i=1:n
l(i,:)=Gg(i,:)-r*Mg(i,:)*R'-[Xs,Ys,Zs];
L(3*i-2)=l(i,1);
L(3*i-1)=l(i,2);
L(3*i-0)=l(i,3);
end
%
求解改正数
X
X=inv((A')*A)*(A')*L;
q=q+X(5,1);w=w+X(6,1);k=k+X(7,1);r=r+X(4,1);
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
光明磊落的反义词-怪盗基德预告函
本文更新与2021-01-19 00:36,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/529625.html