空间前方交会程序使用说明
摄影测量-空间前交、后交【精选文档】
空间后交—前交程序设计(实验报告)姓名:班级:学号:时间:空间后交-前交程序设计一、实验目的用 C 、VB或MATLAB语言编写空间后方交会-空间前方交会程序⑴提交实习报告:程序框图、程序源代码、计算结果、体会⑵计算结果:像点坐标、地面坐标、单位权中误差、外方位元素及其精度二、实验数据f=150。
000mm,x0=0,y0=0三、实验思路1。
利用空间后方交会求左右像片的外方位元素(1).获取m(于像片中选取两点,于地面摄影测量坐标系中选取同点,分别计算距离,距离比值即为m),x,y,f,X,Y,Z(2).确定未知数初始值Xs,Ys,Zs,q,w,k(3).计算旋转矩阵R(4).逐点计算像点坐标的近似值(x),(y)(5)。
组成误差方程式(6)。
组成法方程式(7).解求外方位元素(8)。
检查是否收敛,即将求得的外方位元素的改正数与规定限差比较,小于限差即终止;否则用新的近似值重复步骤(3)-(7)2。
利用求出的外方位元素进行空间前交,求出待定点地面坐标(1).用各自像片的角元素计算出左、右像片的方向余弦值,组成旋转矩阵R1,R2(2)。
根据左、右像片的外方位元素,计算摄影基线分量Bx,By,Bz(3)。
计算像点的像空间辅助坐标(X1,Y1,Z1)和(X2,Y2,Z2)(4).计算点投影系数N1和N2(5)。
计算未知点的地面摄影测量坐标四、实验过程⑴程序框图函数AandL%求间接平差时需要的系数%%%已知%a=像点坐标x,b=像点坐标y,f内方位元素主距%φ=q,ψ=w,κ=k%像空间坐标系X,Y,Z%地面摄影测量坐标系Xs,Ys,Zsfunction [A1,L1,A2,L2]=AandL(a,b,f,q,w,k,X,Y,Z,Xs,Ys,Zs) %%%%%%%%%%%选择矩阵元素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);%%%%%%%共线方程的分子分母X_=a1*(X—Xs)+b1*(Y-Ys)+c1*(Z-Zs);Y_=a2*(X-Xs)+b2*(Y—Ys)+c2*(Z-Zs);Z_=a3*(X—Xs)+b3*(Y—Ys)+c3*(Z-Zs);%%%%%%%近似值x=-f*X_/Z_;y=-f*Y_/Z_;%%%%%%%A组成L组成a11=1/Z_*(a1*f+a3*x);a12=1/Z_*(b1*f+b3*x);a13=1/Z_*(c1*f+c3*x);a21=1/Z_*(a2*f+a3*y);a22=1/Z_*(b2*f+b3*y);a23=1/Z_*(c2*f+c3*y);a14=y*sin(w)-(x/f*(x*cos(k)—y*sin(k))+f*cos(k))*cos(w);a15=-f*sin(k)—x/f*(x*sin(k)+y*cos(k));a16=y;a24=—x*sin(w)-(y/f*(x*cos(k)-y*sin(k))—f*sin(k))*cos(w);a25=-f*cos(k)-y/f*(x*sin(k)+y*cos(k));a26=-x;lx=a—x;ly=b-y;%%%%%%%%%组成一个矩阵,并返回A1=[a11,a12,a13,a14,a15,a16];A2=[a21,a22,a23,a24,a25,a26];L1=lx;L2=ly;函数deg2dms%%%%%%%%角度转度分秒function y=deg2dms(x)a=floor(x);b=floor((x-a)*60);c=(x-a—b/60)*3600;y=a+(b/100)+(c/10000);函数dms2deg%%%%%度分秒转度function y=dms2deg(x)a=floor(x);b=floor((x-a)*100);c=(x-a—b/100)*10000;y=a+b/60+c/3600;函数ok%%%%%%%%%%%%%%目的是为了保证各取的值的有效值%%xy为n*1,a为1*nfunction result=ok(xy,a)format short gi=size(xy,1);for n=1:io=xy(n)—floor(xy(n,1));o=round(o*(10^a(n)))/(10^a(n));xy(n,1)=floor(xy(n,1))+o;endformat long gresult=xy;函数rad2dmsxy%%%%求度分秒表现形式的三个外方位元素,三个角度function xydms=rad2dmsxy(xy)[a,b,c,d,e,f]=testvar(xy);d=deg2dms(rad2deg(d));e=deg2dms(rad2deg(e));f=deg2dms(rad2deg(f));xydms=[a,b,c,d,e,f]';函数spacehoujiao%%%%%%%空间后交%%% f%%输入p(2*n,1)%%像点坐标x,y,X,Y,Z,均为(n,1)function [xy,m,R]=spacehoujiao(p,x,y,f,X,Y,Z)format long;%%%%%权的矢量化,这是等精度时的,如果非,将函数参数改为PP=diag(p);%%求nj=size(X,2);%%初始化Xs=0;Ys=0;Zs=0;for n=1:jXs=Xs+X(n);Ys=Ys+Y(n);Zs=Zs+Z(n);endSx=sqrt((x(2)-x(1))^2+(y(2)—y(1))^2);%%%%两像点之间距离Sd=sqrt((X(2)-X(1))^2+(Y(2)-Y(1))^2);%%%%两地面控制点之间距离m=Sd/Sx; %%%%图像比例系数Xs=Xs/j;Ys=Ys/j;Zs=m*f+Zs/j;m0=0;q=0;w=0;k=0;i=0;a=rand(2*j,6);l=rand(2*j,1);%%%%for n=1:j[a(2*n—1,:),l(2*n—1,1),a(2*n,:),l(2*n,1)]=AandL(x(n),y(n),f,q,w,k,X(n),Y(n),Z(n),Xs,Ys,Zs);enddet=inv(a’*P*a)*transpose(a)*P*l;%%%%%%%%%循环体while 1%%%%%%%%%%%%%%%%[dXs,dYs,dZs,dq,dw,dk]=testvar(det);detXs=abs(dXs);detYs=abs(dYs);detZs=abs(dZs);detq=abs(dq);detw=abs(dw);detk=abs(dk);%%%%%%%%%if ((detXs<0。
前方交会。后方交会
一、交会法概述
是一种经常采用的加密控制点的方法。
常用的几种方法有:前方交会、是一种经常采用的加密控制点的方法。
常用的几种方法有:前方交会、侧方交会、侧方交会、侧方交会、后方后方交会。
1.前方交会
如果已知A 、B 两点的坐标,为了计算未知点P 的坐标,只要观测∠A 和∠B 即可。
这种测定未知点P 的平面坐标的方法称为前方交会。
2.侧方交会
若观测∠A 和∠P 或∠B 和∠P ,同样可以测定未知点P 的平面坐标,这种方法称为侧方交会。
3.后方交会
若在未知点P 上瞄准A 、B 、C 三个已知点,测得∠α和∠β,也可确定
未知点P的平面坐标,这种方法称为后方交会。
二、前方交会法加密控制点
已知条件A、B两点坐标分别为(x A,y B)、(x B,y B),求p点的坐标。
待求数据p点的坐标(X p,Y p) 观测数据
为确定P点的位置,经纬仪分别安置A、B两点,用测回法观测∠A、∠B 坐标计算
根据A、B两点的坐标和∠A、∠B,P点坐标为
Welcome To
Download
欢迎您的下载,资料仅供参考!。
基于电子表格的前方交会程序编写
基于电子表格的前方交会程序编写作者:任志武来源:《城市建设理论研究》2013年第15期摘要:Microsoft Excel是微软公司在Windows操作系统中开发的一种通用软件,具有强大的功能和良好的人机交互对话界面。
随着测绘技术,计算机技术的进一步发展及相互渗透,测绘工作许多常用的方法和计算机中许多常用软件将会被越来越多联系起来本文主要利用Excel VBA进行前方交会的程序编写。
关键词:电子表格;前方交会;程序;测绘中图分类号: P2 文献标识码: A 文章编号:0 引言Microsoft Excel 是微软公司在Windows操作系统中开发的一种通用软件,具有强大的功能和良好的人机交互对话界面,可以满足多种测量数据处理的需要,同时,Excel提供了二次开发功能,利用Excel VBA宏语言进行二次开发,能很好的解决一些重复过程,和数值转换等功能,并能把一些Excel本身不直接支持功能用VBA开发出来,使之能够直接使用。
空间前方交会是一种间接测定目标点三维坐标的测量方法,而基于空间前方交会原理的测量方法具有不需要在目标上放置设备、测量无损行并允许对难以接近的目标进行测量以及机动性强且精度较高等特点,被广泛应用于测绘、建筑、机械制造业、航空航天等领域。
本文主要利用Excel VBA不仅可以实现常用程序的自动化,而且可以创建针对性强,实实用性强和效率高的程序的特点,进行前方交会的程序编写。
实现利用Microsoft Excel 直接读入全站仪中测得的前方交会数据,并通过简单清晰的使用向导自动进行数据的平差处理,生成三维图片,让操作人员建立直观的感觉,且把计算能容和结果放在一个个的工作薄中,是成果可以直接打印,便于使用和保存。
这样,通过预先编制好的函数程序化的操作,使多不重复劳动转变为一键完成,减少计算的中间过程,提高工作效率和自动化水平。
1 基于电子表格的程序开发Microsoft Excel是一个被广泛应用的电子表格软件,现在几乎每台电脑在装机时都会附带安装,也因此几乎被每个会使用电脑的人都会或多或少的会使用excel的一些功能。
前方交会法
前方交会法.水平位移监测实验要求1、实验仪器:全站仪1台;反射棱镜2把;脚架3个;铁钉和铁锤。
2、实验场地:五教操场。
3、各组任意选取2个点A 、B 作为工作基点,在A 、B 点前方选择一点P 作为水平位移观测点,模拟第一次水平位移观测,AP 、BP 交会成的角度应在60°~ 120°之间。
4、在A 点架设全站仪,指定A 点坐标为(1000,1000)。
在B 点、P 点分别架设棱镜,均要求对中整平。
利用全站仪观测得到AP 、AB 之间的水平夹角α。
5、在B 点架设全站仪,测出B 点坐标为(x B ,y B )。
在A 点、P 点分别架设棱镜,均要求对中整平。
利用全站仪观测得到BA 、BP 之间的水平夹角β。
6、在P 点附近选择一点P1,模拟P 点发生水平位移后的位置。
模拟第二次水平位移观测7、在B 点架设全站仪。
在A 点、P1点分别架设棱镜,均要求对中整平。
利用全站仪观测得到BA 、BP1之间的水平夹角β1。
8、在A 点架设全站仪。
在B 点、P1点分别架设棱镜,均要求对中整平。
利用全站仪观测得到AP1、AB 之间的水平夹角α1。
9、将A 、B 点坐标,α、β、α1、β1分别填入表格中,根据前方交会法原理和计算方法,进行内业计算,得到P 和P1点坐标值,计算两点的坐标差值,得到P 点的水平位移偏移量。
10、各组上交观测成果。
模拟第一次水平位移观测计算成果表图 形 与 计 算 公 式 βαβαβαtan tan tan tan )(tan tan +-++=A B B A P y y x x xβαβαβαtan tan tan tan )(tan tan +-++=B A B A P x x y y yx A y A α tan α x B y B β tan β x A -x By B -y A(1)= tan α×tan β (2)=tan α+tan β(3)=x A tan α (6)=y A tan α (4)=x B tan β (7)=y B tan β(5)=(y B -y A )×(1) (8)=(x A -x B )×(1)X P =[(3)+(4)+(5)]÷(2)Y P =[(6)+(7)+(8)]÷(2)模拟第二次水平位移观测计算成果表图 形 与 计 算 公 式1tan 1tan 1tan 1tan )(1tan 1tan 1βαβαβα+-++=A B B A P y y x x x1tan 1tan 1tan 1tan )(1tan 1tan 1βαβαβα+-++=B A B A P x x y y yx A y A α1 tan α1 x B y B β1 tan β1 x A -x B y B -y A(1)= tan α1×tan β1 (2)= tan α1+tan β1(3)=x A tan α1 (6)=y A tan α1 (4)=x B tan β1 (7)=y B tan β1 (5)=(y B -y A )×(1) (8)=(x A -x B )×(1) X P1=[(3)+(4)+(5)]÷(2)Y P1=[(6)+(7)+(8)]÷(2)。
空间后交-前交程序设计实验报告
空间后交-前交程序设计(实验报告)姓名:班级:学号:时间:空间后交-前交程序设计一、实验目的用 C 、VB或MATLAB语言编写空间后方交会-空间前方交会程序⑴提交实习报告:程序框图、程序源代码、计算结果、体会⑵计算结果:像点坐标、地面坐标、单位权中误差、外方位元素及其精度二、实验数据f=150.000mm,x0=0,y0=0三、实验思路1.利用空间后方交会求左右像片的外方位元素(1).获取m(于像片中选取两点,于地面摄影测量坐标系中选取同点,分别计算距离,距离比值即为m),x,y,f,X,Y,Z(2).确定未知数初始值Xs,Ys,Zs,q,w,k(3).计算旋转矩阵R(4).逐点计算像点坐标的近似值(x),(y)(5).组成误差方程式(6).组成法方程式(7).解求外方位元素(8).检查是否收敛,即将求得的外方位元素的改正数与规定限差比较,小于限差即终止;否则用新的近似值重复步骤(3)-(7)2.利用求出的外方位元素进行空间前交,求出待定点地面坐标(1).用各自像片的角元素计算出左、右像片的方向余弦值,组成旋转矩阵R1,R2(2).根据左、右像片的外方位元素,计算摄影基线分量Bx,By,Bz(3).计算像点的像空间辅助坐标(X1,Y1,Z1)和(X2,Y2,Z2)(4).计算点投影系数N1和N2(5).计算未知点的地面摄影测量坐标四、实验过程⑴程序框图函数AandL%求间接平差时需要的系数%%%已知%a=像点坐标x,b=像点坐标y,f内方位元素主距%φ=q,ψ=w,κ=k%像空间坐标系X,Y,Z%地面摄影测量坐标系Xs,Ys,Zsfunction [A1,L1,A2,L2]=AandL(a,b,f,q,w,k,X,Y,Z,Xs,Ys,Zs) %%%%%%%%%%%选择矩阵元素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);%%%%%%%共线方程的分子分母X_=a1*(X-Xs)+b1*(Y-Ys)+c1*(Z-Zs);Y_=a2*(X-Xs)+b2*(Y-Ys)+c2*(Z-Zs);Z_=a3*(X-Xs)+b3*(Y-Ys)+c3*(Z-Zs);%%%%%%%近似值x=-f*X_/Z_;y=-f*Y_/Z_;%%%%%%%A组成L组成a11=1/Z_*(a1*f+a3*x);a12=1/Z_*(b1*f+b3*x);a13=1/Z_*(c1*f+c3*x);a21=1/Z_*(a2*f+a3*y);a22=1/Z_*(b2*f+b3*y);a23=1/Z_*(c2*f+c3*y);a14=y*sin(w)-(x/f*(x*cos(k)-y*sin(k))+f*cos(k))*cos(w);a15=-f*sin(k)-x/f*(x*sin(k)+y*cos(k)); a16=y;a24=-x*sin(w)-(y/f*(x*cos(k)-y*sin(k))-f*sin(k))*cos(w);a25=-f*cos(k)-y/f*(x*sin(k)+y*cos(k));a26=-x;lx=a-x;ly=b-y;%%%%%%%%%组成一个矩阵,并返回A1=[a11,a12,a13,a14,a15,a16];A2=[a21,a22,a23,a24,a25,a26];L1=lx;L2=ly;函数deg2dms%%%%%%%%角度转度分秒function y=deg2dms(x)a=floor(x);b=floor((x-a)*60);c=(x-a-b/60)*3600;y=a+(b/100)+(c/10000);函数dms2deg%%%%%度分秒转度function y=dms2deg(x)a=floor(x);b=floor((x-a)*100);c=(x-a-b/100)*10000;y=a+b/60+c/3600;函数ok%%%%%%%%%%%%%%目的是为了保证各取的值的有效值%%xy为n*1,a为1*nfunction result=ok(xy,a)format short gi=size(xy,1);for n=1:io=xy(n)-floor(xy(n,1));o=round(o*(10^a(n)))/(10^a(n));xy(n,1)=floor(xy(n,1))+o;endformat long gresult=xy;函数rad2dmsxy%%%%求度分秒表现形式的三个外方位元素,三个角度function xydms=rad2dmsxy(xy)[a,b,c,d,e,f]=testvar(xy);d=deg2dms(rad2deg(d));e=deg2dms(rad2deg(e));f=deg2dms(rad2deg(f));xydms=[a,b,c,d,e,f]';函数spacehoujiao%%%%%%%空间后交%%% f%%输入p(2*n,1)%%像点坐标x,y,X,Y,Z,均为(n,1)function [xy,m,R]=spacehoujiao(p,x,y,f,X,Y,Z)format long;%%%%%权的矢量化,这是等精度时的,如果非,将函数参数改为P P=diag(p);%%求nj=size(X,2);%%初始化Xs=0;Ys=0;Zs=0;for n=1:jXs=Xs+X(n);Ys=Ys+Y(n);Zs=Zs+Z(n);endSx=sqrt((x(2)-x(1))^2+(y(2)-y(1))^2);%%%%两像点之间距离Sd=sqrt((X(2)-X(1))^2+(Y(2)-Y(1))^2);%%%%两地面控制点之间距离m=Sd/Sx; %%%%图像比例系数Xs=Xs/j;Ys=Ys/j;Zs=m*f+Zs/j;m0=0;q=0;w=0;k=0;i=0;a=rand(2*j,6);l=rand(2*j,1);%%%%for n=1:j[a(2*n-1,:),l(2*n-1,1),a(2*n,:),l(2*n,1)]=AandL(x(n),y(n),f,q,w,k,X(n),Y(n),Z(n ),Xs,Ys,Zs);enddet=inv(a'*P*a)*transpose(a)*P*l;%%%%%%%%%循环体while 1%%%%%%%%%%%%%%%%[dXs,dYs,dZs,dq,dw,dk]=testvar(det);detXs=abs(dXs);detYs=abs(dYs);detZs=abs(dZs);detq=abs(dq);detw=abs(dw);detk=abs(dk);%%%%%%%%%if((detXs<0.01)&&(detYs<0.01)&&(detZs<0.01)&&(detq<pi/648000)&&(detw<pi/648000)&& (detk<pi/648000))break;elseV=(a*det-l);Q=inv(a'*P*a);m0=m0+sqrt((V'*P*V)/(2*j-6));%%m0需要每次的改正数算出来相加%%%Xs=Xs+dXs;Ys=Ys+dYs;Zs=Zs+dZs;q=q+dq;w=w+dw;k=k+dk;%%%for n=1:j[a(2*n-1,:),l(2*n-1,1),a(2*n,:),l(2*n,1)]=AandL(x(n),y(n),f,q,w,k,X(n),Y(n),Z(n ),Xs,Ys,Zs);enddet=inv(a'*P*a)*transpose(a)*P*l;i=i+1;%%%%end%%%end[dXs,dYs,dZs,dq,dw,dk]=testvar(det);detXs=abs(dXs);detYs=abs(dYs);detZs=abs(dZs);detq=abs(dq);detw=abs(dw);detk=abs(dk);V=(a*det-l);Q=inv(a'*P*a);m0=m0+sqrt((V'*P*V)/(2*n-6));%%%Xs=Xs+dXs;Ys=Ys+dYs;Zs=Zs+dZs;q=q+dq;w=w+dw;k=k+dk;%%%%%%%%%%%%%可以输出迭代次数的i%%%%%%%%%%%%Xs,Ys,Zs,q,w,k,i,dXs,dYs,dZs,dq,dw,dk,detXs,detYs,detZs %%%%%%%%%%%精度mo=m0*sqrt(Q);m=[mo(1,1),mo(2,2),mo(3,3),mo(4,4),mo(5,5),mo(6,6)]';[mXs,mYs,mZs,mq,mw,mk]=testvar(m);%%%%%%%%%输出xy=[Xs,Ys,Zs,q,w,k]';%%输出(6,1)的外方位元素m=[m0,mXs,mYs,mZs,mq,mw,mk]';%%单位误差,各元素中误差R=xyR(xy);%%旋转矩阵函数spaceqianjiao%%空间前交%输入f%输入x1,y1,x2,y2,R1,R2,xy1,xy2 (n,1)%输出X,Y,Z (n,1)function [X,Y,Z]=spaceqianjiao(x1,y1,x2,y2,f,R1,R2,xy1,xy2) i=size(x1,2);[Xs1,Ys1,Zs1,q1,w1,k1]=testvar(xy1);[Xs2,Ys2,Zs2,q2,w2,k2]=testvar(xy2);for n=1:i[X1(n),Y1(n),Z1(n)]=testvar(R1*[x1(n),y1(n),-f]');[X2(n),Y2(n),Z2(n)]=testvar(R2*[x2(n),y2(n),-f]');Bx=Xs2-Xs1;By=Ys2-Ys1;Bz=Zs2-Zs1;N1=(Bx*Z2(n)-Bz*X2(n))/(X1(n)*Z2(n)-X2(n)*Z1(n));N2=(Bx*Z1(n)-Bz*X1(n))/(X1(n)*Z2(n)-X2(n)*Z1(n));X(n)=Xs1+N1*X1(n);Z(n)=Zs1+N1*Z1(n);Y(n)=0.5*((Ys1+N1*Y1(n))+(Ys2+N2*Y2(n)));end函数testvar%分割矩阵。
前方交会法
前方交会法什么是前方交会法前方交会法是一种用于确定两个航空器在空中相对位置的方法。
在飞行中,飞行员需要准确判断其他航空器与自己的相对位置,以确保航空器的安全。
前方交会法就是一种常用的方法,通过观察目标航空器在飞行中的水平位置和垂直位置变化,确定其与自己的相对位置和相对速度。
前方交会法的原理前方交会法的原理基于几何关系以及飞行物体在空中的运动规律。
在空中,我们可以将飞行器的运动轨迹看作一条直线。
当两个飞行器相对静止时,它们的运动轨迹是平行的。
当两个飞行器发生交会时,它们的运动轨迹会有交点。
通过观察两个飞行器的相对位置的变化,可以判断它们是否在交会的轨迹上。
具体的判断方法有两种:1.水平分离法:观察飞行器在水平方向上的位置变化,如果两个飞行器的水平位置不断接近,那么它们就有可能在交会轨迹上。
2.垂直分离法:观察飞行器在垂直方向上的位置变化,如果两个飞行器的垂直位置不断接近或者相互远离,那么它们就有可能在交会轨迹上。
如何使用前方交会法确定相对位置使用前方交会法来确定两个飞行器的相对位置需要以下步骤:1.观察目标飞行器在水平方向上的位置变化,如果它与自己的距离逐渐缩小,说明它在自己前方。
2.观察目标飞行器在垂直方向上的位置变化,如果它在自己的上方,则可以判断它在前方上方。
3.观察目标飞行器在垂直方向上的位置变化,如果它在自己的下方,则可以判断它在前方下方。
4.根据观察到的水平位置和垂直位置变化,可以综合判断目标飞行器与自己的相对位置和相对速度。
在使用前方交会法进行判断时,需要考虑飞行器的飞行速度和方向,以及观察的时间间隔。
如果时间间隔过长,可能会导致判断不准确。
注意事项在使用前方交会法进行判断时,需要注意以下事项:1.观察目标飞行器的运动轨迹时,尽量选择距离自己较远的飞行器。
距离较近的飞行器由于运动速度较快,可能会造成观察不准确。
2.观察目标飞行器的位置变化时,要注意自己的飞行姿态和方向的变化。
自己的飞行姿态和方向的变化可能会对观察到的位置变化造成影响。
武大《摄影测量》课件-第15讲空间前方交会
空间前方交会技术在卫星遥感测 量中同样发挥着重要作用,能够 提高遥感数据的精度和可靠性。
卫星遥感测量的应用范围包括全 球气候变化监测、环境监测、资
源调查、灾害预警等方面。
地面激光雷达测量
地面激光雷达测量是一种主动式测量技 术,通过向地面发射激光束并接收反射 回来的信号,能够快速准确地获取地面
武大《摄影测量》课件第15讲空间前方交会
CATALOGUE
目 录
• 空间前方交会概述 • 空间前方交会的基本步骤 • 空间前方交会在摄影测量中的应用 • 空间前方交会中的问题与解决方案 • 空间前方交会的前沿技术与发展趋
势
01
CATALOGUE
空间前方交会概述
定义与原理
定义
空间前方交会是一种通过处理立 体像对的同名光线,确定地面点 空间位置的方法。
点的三维坐标信息。
空间前方交会技术在地面激光雷达测量 中能够提高对复杂地形的测量精度,尤 其在山区、森林等复杂环境下具有显著
优势。
地面激光雷达测量的应用范围包括地形 测绘、林业调查、考古探测等方面。
04
CATALOGUE
空间前方交会中的问题与解决 方案
误差来源与控制
误差来源
由于测量设备、环境因素和数据处理方法的限制,空间前方 交会中存在多种误差来源,如观测误差、模型误差和匹配误 差等。
精度评估的方法包括比较已知 的真值、重复观测、交叉验证 等,评估指标包括中误差、均 方根误差等。
精度评估的目的是发现和纠正 空间前方交会中可能存在的误 差和问题,提高交会结果的可 靠性和精度。
03
CATALOGUE
空间前方交会在摄影测量中的 应用
航空摄影测量
航空摄影测量是利用航空摄影所获取的影像信息,通过摄影测量技术确 定地面点的三维坐标,为各种地理信息数据采集、地图制作和更新提供 重要依据。
单像空间后方交会和双像解析空间后方-前方交会的算法程序实现
单像空间后方交会和双像解析空间后方-前方交会的算法程序实现遥感科学与技术摘要:如果已知每张像片的6个外方位元素,就能确定被摄物体与航摄像片的关系。
因此,利用单像空间后方交会的方法,可以迅速的算出每张像片的6个外方位元素。
而前方交会的计算,可以算出像片上点对应于地面点的三维坐标。
基于这两点,利用计算机强大的运算能力,可以代替人脑快速的完成复杂的计算过程。
关键词:后方交会,前方交会,外方位元素,C++编程0.引言:单张像片空间后方交会是摄影测量基本问题之一,是由若干控制点及其相应像点坐标求解摄站参数(X S,Y S,ZS,ψ、ω、κ)。
单像空间后方交会主要有三种方法:基于共线条件方程的平差解法、角锥法、基于直接线性变换的解法。
而本文将介绍第一种方法,基于共线条件方程反求象片的外方位元素。
而空间前方交会先以单张像片为单位进行空间后方交会,分别求出两张像片的外方位元素,再根据待定点的一对像点坐标,用空间前方交会的方法求解待定点的地面坐标。
可以说,这种求解地面点的坐标的方法是以单张像片空间后方交会为基础的,因此,单张像片空间后方交会成为解决这两个问题以及算法程序实现的关键。
1.单像空间后方交会的算法程序实现:(1)空间后方交会的基本原理:对于遥感影像,如何获取像片的外方位元素,一直是摄影测量工作者探讨的问题,其方法有:利用雷达(Radar)、全球定位系统(GPS)、惯性导航系统(I N S)以及星像摄影机来获取像片的外方位元素;也可以利用一定数量的地面控制点,根据共线方程,反求像片的外方位元素,这种方法称为单像空间后方交会(如图1所示)。
图中,地面坐标X i、Yi、Zi和对应的像点坐标x i、yi是已知的,外方位元素XS、Y S、ZS(摄站点坐标),ψ、ω、κ(像片姿态角)是待求的。
(2)空间后方交会数学模型:空间后方交会的数学模型是共线方程, 即中心投影的构像方程:式中X、Y、Z是地面某点在地面摄影测量坐标系中的坐标,x,y是该地面点在像片上的构像点的像片坐标,对于空间后方交会而言它们是已知的,还有主距f是已知的。
空间前方交会及其应用
水平像片对的前方交会公式
X x Y y Z f
BX BZ x2 f N1 p BX BZ x1 f N2 p
p x1 x2
理想像片对的前方交会公式
Z1
BX= XS2 –XS1 X1
X1
Z Y XS1 M
ZS1 Y1
(XA, YA, ZA) YS1
X
像点投影系数
S1 A X A X S1 YA YS1 Z A Z S1 N1 S1a1 X1 Y1 Z1
S1
Z1 X1
Y1
S2 A X A X S 2 YA YS 2 Z A Z S 2 N2 S2a2 X2 Y2 Z2
A
前方交会公式
BX Z 2 BZ X 2 N1 X 1Z 2 X 2 Z1
BX X S 2 X S 1 BY YS 2 YS 1 BZ Z S 2 Z S 1
X A X S1 N1 X 1 X S 2 N 2 X 2 1 YA [(YS1 N1Y1 ) (YS 2 N 2Y2 )] 2 Z A Z S1 N1Z1 Z S 2 N 2 Z 2
X x Y y Z f
BX X S 2 X S 1 B BY YS 2 YS1 0 BZ Z S 2 Z S1 0
N1 N 2
B p
p x1 x2
B B x1 X S1 B x2 p p B B YA YS1 y1 YS1 y2 p p y1 y 2 B B Z A Z S1 f Z S 2 f q y1 y 2 0 p p X A X S1
单像空间摄影测量前方交会法度模范代码(vc++)[最新]
往链点点通共享资源,了解更多请登录单像空间后方交会程序西南交通大学土木工程学院测绘工程张慧鑫学号:20030593输入文件形式如下:C++源程序如下:#include <iostream>#include <fstream>#include <cmath>#include <string>#include <iomanip>using namespace std;const int n=6;void inverse (double c[n][n]);template<typename T1,typename T2>void transpose (T1*mat1,T2*mat2,int a,int b); template<typename T1,typename T2>void multi(T1*mat1,T2 * mat2,T2 * result,int a,int b,int c);template<typename T>void input (T*mat,int a,int b);template<typename T>void output(T*mat,char*s,int a,int b);int main(){ofstream outFile;cout.precision(5);double x0=0.0, y0=0.0; double fk=0.15324; //内方位元素double m=39689; //估算比例尺double B[4][5]={0.0},R[3][3],XG[6][1],AT[6][8],ATA[6][6],ATL[6][1];input (B,4,5); //从文件中读取控制点的影像坐标和地面坐标,存入数组B double Xs=0.0, Ys=0.0, Zs=0.0,Q=0.0,W=0.0,K=0.0;double X,Y,Z,L[8][1],A[8][6];//确定未知数的出始值for(int i=0;i<4;i++){Xs=Xs+B[i][2];Ys=Ys+B[i][3];Zs=Zs+B[i][4];}Xs=Xs/4; Ys=Ys/4; Zs=Zs/4+m*fk;int f=0;do//迭代计算{f++;//组成旋转矩阵R[0][0]=cos(Q)*cos(K)-sin(Q)*sin(W)*sin(K);R[0][1]=-cos(Q)*sin(K)-sin(Q)*sin(W)*cos(K);R[0][2]=-sin(Q)*cos(W);R[1][0]=cos(W)*sin(K);R[1][1]=cos(W)*cos(K);R[1][2]=-sin(W);R[2][0]=sin(Q)*cos(K)+cos(Q)*sin(W)*sin(K);R[2][1]=-sin(Q)*sin(K)+cos(Q)*sin(W)*cos(K);R[2][2]=cos(Q)*cos(W);//计算系数阵和常数项for(int i=0,k=0,j=0;i<=3;i++,k++,j++){X=R[0][0]*(B[i][2]-Xs)+R[1][0]*(B[i][3]-Ys)+R[2][0]*(B[i][4]-Zs);Y=R[0][1]*(B[i][2]-Xs)+R[1][1]*(B[i][3]-Ys)+R[2][1]*(B[i][4]-Zs);Z=R[0][2]*(B[i][2]-Xs)+R[1][2]*(B[i][3]-Ys)+R[2][2]*(B[i][4]-Zs);L[j][0]=B[i][0]-(x0-fk*X/Z);L[j+1][0]=B[i][1]-(y0-fk*Y/Z);j++;A[k][0]=(R[0][0]*fk+R[0][2]*(B[i][0]-x0))/Z;A[k][1]=(R[1][0]*fk+R[1][2]*(B[i][0]-x0))/Z;A[k][2]=(R[2][0]*fk+R[2][2]*(B[i][0]-x0))/Z;A[k][3]=(B[i][1]-y0)*sin(W)-((B[i][0]-x0)*((B[i][0]-x0)*cos(K)-(B[i][1]-y0)*sin(K))/fk+fk*cos(K))*cos(W);A[k][4]=-fk*sin(K)-(B[i][0]-x0)*((B[i][0]-x0)*sin(K)+(B[i][1]-y0)*cos(K))/ fk;A[k][5]=B[i][1]-y0;A[k+1][0]=(R[0][1]*fk+R[0][2]*(B[i][1]-y0))/Z;A[k+1][1]=(R[1][1]*fk+R[1][2]*(B[i][1]-y0))/Z;A[k+1][2]=(R[2][1]*fk+R[2][2]*(B[i][1]-y0))/Z;A[k+1][3]=-(B[i][0]-x0)*sin(W)-((B[i][1]-y0)*((B[i][0]-x0)*cos(K)-(B[i][1] -y0)*sin(K))/fk-fk*sin(K))*cos(W);A[k+1][4]=-fk*cos(K)-(B[i][1]-y0)*((B[i][0]-x0)*sin(K)+(B[i][1]-y0)*cos(K ))/fk;A[k+1][5]=-(B[i][0]-x0);k++;}transpose(A,AT,6,8);multi(AT,A,A TA,6,8,6);inverse(ATA);multi(AT,L,ATL,6,8,1);multi(A TA,ATL,XG,6,6,1);Xs=Xs+XG[0][0]; Ys=Ys+XG[1][0]; Zs=Zs+XG[2][0];Q=Q+XG[3][0]; W=W+XG[4][0]; K=K+XG[5][0];}while(XG[3][0]>=6.0/206265.0||XG[4][0]>=6.0/206265.0||XG[5][0]>=6.0/2062 65.0);cout<<"迭代次数为:"<<f<<endl;//精度评定double AXG[8][1],V[8][1],VT[1][8],VTV[1][1],m0,D[6][6];multi(A,XG,AXG,8,6,1);for( i=0;i<8;i++) //计算改正数V[i][0]=AXG[i][0]-L[i][0];transpose (V,VT,1,8);multi(VT,V,VTV,1,8,1);m0=VTV[0][0]/2;for(i=0;i<6;i++)for(int j=0;j<6;j++)D[i][j]=m0*ATA[i][j];//屏幕输出误差方程系数阵、常数项、改正数output(A,"误差方程系数阵A为:",8,6);output(L,"常数项L为:",8,1);output(XG,"改正数为:",6,1);outFile.open("aim.txt",ios::app); //打开并添加aim.txt文件outFile.precision(10);//以文件的形式输出像片外方位元素、旋转矩阵、方差阵outFile<<"一、像片的外方位元素为:"<<endl<<endl;outFile<<setw(10)<<"Xs="<<Xs<<setw(10)<<"Ys="<<Ys<<setw(10)<<"Zs="<<Zs<<endl;outFile<<setw(20)<<"航向倾角为:"<<Q<<setw(10)<<"旁向倾角为:"<<W<<setw(10)<<"像片旋角为:"<<K<<endl;outFile<<endl<<"二、旋转矩阵R为:"<<endl<<endl;for( i=0;i<3;i++){for(int j=0;j<3;j++)outFile<<setw(25)<<R[i][j]<<setw(25);outFile<<endl;}outFile<<endl;outFile<<setw(0)<<"三、精度评定结果为:"<<endl;outFile.precision(5);for(i=0;i<6;i++){for(int j=0;j<6;j++)outFile<<setw(14)<<D[i][j]<<setw(14);outFile<<endl;}outFile.close();return 0;}template<typename T1,typename T2>void transpose(T1*mat1,T2*mat2,int a,int b) { int i,j;for(i=0;i<b;i++)for(j=0;j<a;j++)mat2[j][i]=mat1[i][j];return;}template<typename T1,typename T2>void multi(T1*mat1,T2 * mat2,T2 * result,int a,int b,int c){ int i,j,k;for(i=0;i<a;i++){for(j=0;j<c;j++){result[i][j]=0;for(k=0;k<b;k++)result[i][j]+=mat1[i][k]*mat2[k][j];}}return;}template <typename T>void input (T*mat,int a,int b){ ifstream inFile;inFile.open("控制点坐标.txt");while(!inFile.eof()){for (int i=0;i<a;i++)for(int j=0;j<b;j++)inFile>>mat[i][j];}inFile.close();return;}template<typename T>void output(T*mat,char*s,int a,int b) { cout<<setw(15)<<s<<endl;for(int i=0;i<a;i++){for(int j=0;j<b;j++)cout<<setw(13)<<mat[i][j];cout<<endl;}return;}void inverse(double c[n][n]){ int i,j,h,k;double p;double q[n][12];for(i=0;i<n;i++)//构造高斯矩阵for(j=0;j<n;j++)q[i][j]=c[i][j];for(i=0;i<n;i++)for(j=n;j<12;j++){if(i+6==j)q[i][j]=1;elseq[i][j]=0;}for(h=k=0;k<n-1;k++,h++)//消去对角线以下的数据for(i=k+1;i<n;i++){if(q[i][h]==0)continue;p=q[k][h]/q[i][h];for(j=0;j<12;j++){ q[i][j]*=p;q[i][j]-=q[k][j];}}for(h=k=n-1;k>0;k--,h--) // 消去对角线以上的数据for(i=k-1;i>=0;i--){if(q[i][h]==0)continue;p=q[k][h]/q[i][h];for(j=0;j<12;j++){q[i][j]*=p;q[i][j]-=q[k][j];}}for(i=0;i<n;i++)//将对角线上数据化为1{ p=1.0/q[i][i];for(j=0;j<12;j++)q[i][j]*=p;}for(i=0;i<n;i++) //提取逆矩阵for(j=0;j<n;j++)c[i][j]=q[i][j+6];}程序的结果输出如下:(包括文本输出结果和荧屏输出中间数据)。
立体像对空间前方交会解算流程
立体像对空间前方交会解算流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classicarticles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!立体像对空间前方交会解算是摄影测量中的一个重要步骤,用于确定摄影测量中心与地面上某点之间的空间位置关系。
空间前方交会程序使用说明
空间前方交会程序使用说明
(一)空间前方交会原理
用空间前方交会法测定空间点的三维坐标常用于高精度的工业测量, 例如控 制装配、整机安装、轴线校正等,这些测量工作往往要求在现场快速给出大量观 测点的计算结果。空间前方交会的原理如图 1 所示,A、B 为安置两台精密工业 测量经纬仪(或全站仪)的测站中心点,P1、P2 为长度 L 的基准尺的两个端点。 以 A 为原点,其天顶方向为 Z 轴,AB 的水平方向 AB′为 X 轴,建立右手独立坐 标 系 A-XYZ ;首 先 在 测站 A 、 B 点分 别 观测基准 尺 两端 P1 、 P2 点水平 角
B
X
图1
空间前方交会原理
(二)空间前方交会计算公式
1.基线尺端点的三维坐标计算 若 A、B 两点基线的近似长度为 b0 ,则根据图 1 的几何关系,可导得由 A 点计算 Pi 点三维坐标的公式为
1
xi b0 yi b0
cos i sin i sin( i i ) sin i sin i sin( i i ) sin i cot Z i ( A) sin( i i )
3
; 《空间前方交会计算程序》 ; Space Intersection (defun angtorad(/ A B C D E); “角度值由度.分秒化为弧度”子程序 (setq dms (atof ang));角度值子字符串转换为实数 (setq A (fix dms));整度数 (setq B (* (- dms A) 100));分数 (setq C (fix B));整分数 (setq D (* (- B C) 100));秒数 (setq E (+ A (/ C 60.0) (/ D 3600))); “度.分秒”化为以度为单位 (setq hu (* (/ E 180) PI));度为单位化为弧度 ); endsub (Angle to Radian) (defun intersec(/ C D z1 z2 P p1 p2 p3); “前方交会”子程序 (setq C (+ A B) D (* b0 (/ (sin B) (sin C)))) (setq x (* D (cos A)) y (* D (sin A)));计算目标点平面坐标 (setq z1 (* D (/ (cos Za) (sin Za))));从两个测站计算目标点高程 (setq z2 (+ (* D (/ (sin A) (sin B) (/ (sin Zb) (cos Zb)))) h)) (setq z (/ (+ z1 z2) 2) dz (- z1 z2));计算平均高程及高程差(检核) (if (= out "y") (progn ;在屏幕展绘点位和注记坐标以及输出于文件 (setq P (list x y z)) (command "point" P "" "");展绘点位 (setq p1 (list (+ x 0.03) (- y 0.05) z)) (setq p2 (list (+ x 0.03) (- y 0.10) z)) (setq p3 (list (+ x 0.03) (- y 0.15) z)) (command "text" p1 0.04 0 (rtos x 2 4) "");注记点的坐标 (command "text" p2 0.04 0 (rtos y 2 4) "") (command "text" p3 0.04 0 (rtos z 2 4) "") (princ "\n" f2) (princ " x=" f2) (Princ (rtos x 2 5) f2);文件输出目标点坐标及高程差 (princ " y=" f2) (princ (rtos y 2 5) f2) (princ " z=" f2) (princ (rtos z 2 5) f2) (princ " dz=" f2) (princ dz f2) )); endprogn endif ); endsub (Intersection) (defun readline(/ line); “从一行中分段读取两测站方向值和天顶距并化为弧度”子程序 (setq line (read-line f1)) (setq ang (substr line 1 12)) (angtorad) (setq A hu);A 站方向值 (setq ang (substr line 13 12)) (angtorad) (setq Za hu);A 站天顶距 (setq ang (substr line 25 12)) (angtorad) (setq B hu);B 站方向值 (setq ang (substr line 37 12)) (angtorad) (setq Zb hu);B 站天顶距 ); endsub (Read a Line)
交会测量(前方、后方、侧方交会测量)
前方交会法1.前方交会法定义自两已知坐标之三角点上,观测一欲测点之水平角,以推算其坐标位置,称之前方交会法。
图-1,前方交会法。
图-2,前方交会点。
图-1 前方交会法图-2 前方交会点2.前方交会点此种补点(前方交会点),通常为无法设置仪器之测点,如塔尖、避雷针、烟囱等等。
3.前方交会法适用场合:A.具两已知三角点。
B.三点(两已知点及欲测点)间可以通视。
C.两已知点可以架设仪器,但欲测点不方便架设仪器。
D.有数个欲测点待测定时。
图-3,为数个欲测点图-3 数个欲测点4.前方交会法施作步骤:A.经纬仪分别整置于A、B 两三角点上。
B.照准P 点,分别测得α、β两水平角。
C.以计算方法,求P 点坐标。
图-4,为量测角度。
图-4 量测角度5.已知、量测、计算之数据:A.已知:xA、yA、xB、yB。
B.量测:α、β。
C.计算:xP、yP。
图-5,为前方交会法相关角度位置图-5 前方交会法相关角度位置6.限制:α、β、γ三内角均必须介于30°~120°之间。
图-6 ,为角度限制。
图-6 为角度限制7.计算法前方交会法计算方法有三种:A.三角形法; B.角度法; C.方位角法8.三角形法19()()3891802890--++=---= βφφαφφABBP AB AP ()()()()()689cos sin cos 589sin cos sin 48922222---=-==---=-==---+-=∆+∆= ABAB AB AB AB AB A B AB A B A B y y AB ABy y x x AB ABx x y y x x AB y x AB φθφφθφ()()789sin sin sin sin sin sin --+===βαβγβγβAB AB AP ABAP γβαABP AB AB y y y -=∆ABNB.求方位角ψAP 、ψBP :C.求各邊邊長:①AB 邊長:有三種方法可求得②AP 邊長:()[](βαβαγγβα+=+-==++sin 180sin sin 180γβαsin sin sin AB AP BP ==20()()1289cos 1189sin --+=--+= BPB P BP B P BP y y BP x x φφ()()889sin sin sin sin sin sin --+===βααγαγαAB AB BP ABBP ()()1089cos 989sin --+=--+= APA P AP A P AP y y AP x x φφAPAP l φcos A Py yPBy y BPy y l y BP x x l x yy y x x x BP BP BP B P BP BP B P B P -=∆==-=∆=-=∆+=∆+=φφφφcos cos sin sin ③BP 邊長:D.求P 座標x P 、y P :①由A 點求P 點②由B 點求P 點9.角度法A.由上法直接代入:將(9-8-2)式與(9-8-7)式代入(9-8-9)式中,可得:yy y x x x A P A P ∆+=∆+=APy y l y AP x x l x AP AP AP AP AP AP -=∆=-=∆=φφcos sin21()()()1389sin sin sin sin ---++=+= αφβαβφAB A APA P AB x AP x x ()αφαφαφsin cos cos sin sin AB AB AB -=-()()()1489cos sin sin cos ---++=+= αφβαβφAB A APA P AB y AP y y ()αααφsin cos sin ABy y AB x x AB A B AB ---=-()()()()()1589sin sin sin sin sin cos --+--+-+= βαβαβαβαA B A B A P y y x x x x ()()()()()1789cot cot cot sin cos sin 1689tan tan tan sin cos sin 1cot cot 1tan tan sin cos sin cos cos sin sin cos sin --+=+--+=++=+=+=+ αβαβαβαββαβαβααββαβαβαβαβαβα或將(9-8-2)式與(9-8-7)式代入(9-8-9)式中,可得:B.化簡x P :由和差化積公式:將(9-8-5)式與(9-8-6)式代入,可得:再之代入(9-8-13)式中,可得:由和差化積公式:化簡下式,可得:()βαβαβαcos cos cos sin sin +=+22()2289cot cot cot cot --++-+=βααβBA B A P x x y y y ()()()()ABPB PA APBA BP A B A P APA B A P y y y y y y x x φφφφφφφcos sin cos sin tan ---+=-+=()()()()2089tan tan tan tan tan tan tan tan tan tan tan tan tan --+--+=+--+-+= βαβαβαβαβαβαβA B B A P A B A B A P y y x x x y y x x x x ()()()()()1989cot cot sin sin sin 1889tan tan tan tan sin sin sin tan 1tan 1sin sin sin cos cos sin sin sin sin --+=+--+=++=+=+ βαβαβαβαβαβαβααββαβαβαβαβα或()()()2189cot cot cot cot cot cot 1cot cot cot --+-++=+--+-+= βααββαβααBA B A P A B A B A P y y x x x y y x x x x 同理,化簡下式,可得:將(9-8-16)式與(9-8-18)式代入(9-8-15)式中,可得:或將(9-8-17)式與(9-8-19)式代入(9-8-15)式中,可得:C.化簡y P :(推演過程省略)D.角度法所得公式(9-18-21)式與(9-18-22)式,適於計算機使用,唯應注意:左A ,右B ;左α,右β。
摄影测量实验报告(空间后方交会—前方交会)
空间后方交会—空间前方交会程序编程实验一.实验目的要求掌握运用空间后方交会-空间前方交会求解地面点的空间位置.学会运用空间后方交会的原理,根据所给控制点的地面摄影测量坐标系坐标以及相应的像平面坐标系中的坐标,利用计算机编程语言实现空间后方交会的过程,完成所给像对中两张像片各自的外方位元素的求解。
然后根据空间后方交会所得的两张像片的内外方位元素,利用同名像点在左右像片上的坐标,求解其对应的地面点在摄影测量坐标系中的坐标,并完成精度评定过程,利用计算机编程语言实现此过程.二.仪器用具计算机、编程软件(MATLAB)三.实验数据实验数据包含四个地面控制点(GCP)的地面摄影测量坐标及在左右像片中的像平面坐标。
此四对坐标运用最小二乘法求解左右像片的外方位元素,即完成了空间后方的过程.另外还给出了5对地面点在左右像片中的像平面坐标和左右像片的内方位元素。
实验数据如下:内方位元素:f=152。
000mm,x0=0,y0=0 四.实验框图此过程完成空间后方交会求解像片的外方位元素,其中改正数小于限差(0。
00003,相当于0。
1'的角度值)为止。
在这个过程中采用迭代的方法,是外方位元素逐渐收敛于理论值,每次迭代所得的改正数都应加到上一次的初始值之中。
在空间后方交会中运用的数学模型为共线方程确定Xs,Ys,Zs的初始值时,对于左片可取地面左边两个GCP的坐标的平均值作为左片Xs 和Ys的初始值,取右边两个GCP的坐标平均值作为右片Xs 和Ys的初始值。
Zs可取地面所有GCP的Z坐标的平均值再加上航高.空间前方交会的数学模型为:五.实验源代码function Main_KJQHFJH()global R g1 g2 m G a c b1 b2;m=10000;a=5;c=4;feval(@shuru);%调用shuru()shurujcp()函数完成像点及feval(@shurujcp);%CCP有关数据的输入XYZ=feval(@MQZqianfangjh); %调用MQZqianfangjh()函数完成空间前方、%%%%%% 单位权中误差%%%%%后方交会计算解得外方位元素global V1 V2;%由于以上三个函数定义在外部文件中故需VV=[]; %用feval()完成调用过程for i=1:2*cVV(i)=V1(i);VV(2*i+1)=V2(i);endm0=sqrt(VV*(VV’)/(2*c-6));disp('单位权中误差m0为正负:’);disp(m0); %计算单位权中误差并将其输出显示输入GCP像点坐标及地面摄影测量坐标系坐标的函数和输入所求点像点坐标函数:function shurujcp()global c m;m=input(’摄影比例尺:');%输入GCP像点坐标数据函数并分别将其c=input('GCP的总数=');%存入到不同的矩阵之中disp('GCP左片像框标坐标:');global g1;g1=zeros(c,2);i=1;while i<=cm=input('x=');n=input('y=');g1(i,1)=m;g1(i,2)=n;i=i+1;enddisp('GCP右片像框标坐标:’);global g2;g2=zeros(c,2);i=1;while i〈=cm=input('x=’);n=input('y=’);g2(i,1)=m;g2(i,2)=n;i=i+1;end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function shuru()global a;a=input('计算总像对点数='); %完成想计算所需的像平面坐标global b1;%坐标输入,存入不同的矩阵中b1=zeros(a,2);disp('左片像点坐标:')i=1;while i〈=am=input('x=’);n=input(’y=’);b1(i,1)=m;b1(i,2)=n;i=i+1;end%%global b2;b2=zeros(a,2);disp(’右片像点坐标:')i=1;while i〈=am=input('x=’);n=input('y=’);b2(i,1)=m;b2(i,2)=n;i=i+1;end%%global c;c=input(’GCP的总数=');disp('GCP摄影测量系坐标:’)global G;G=zeros(3,c);i=1;while i〈=cm=input(’X=');n=input(’Y=');v=input(’Z=');G(i,1)=m;G(i,2)=n;G(i,3)=v;i=i+1;end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%空间前方交会和后方交会函数:function XYZ=MQZqianfangjh()global R1 R2 a f b1 b2 Ra Rb;global X1 X2;R1=Ra;R2=Rb;R1=zeros(3,3);R2=zeros(3,3);global g1 g2 G V1 V2 V WF c QXX QXX1 QXX2;xs0=(G(1,1)+G(3,1))/2;ys0=(G(1,2)+G(3,2))/2;[Xs1,Ys1,Zs1,q1,w1,k1 R]=houfangjh(g1,xs0,ys0);%对左片调用后方交会函数R1=R;V1=V;WF1=WF;QXX1=QXX;save '左片外方位元素为。
空间后方交会与前方交会题目
Camera Type: Zeiss RMK A 15/23
Focal Length (焦距)= 153.124 mm
Principal Point x (像主点坐标)(mm) = -0.002
参考答案:
2019 669584.9963 118269.4665 1931.8252 2
2020 669419.2082 119536.5107 1915.1060 2
2021 670057.1202 116423.4197 1888.8000 2
image ID Xs Ys Zs OMEGA PHI KAPPA
1 666725.3263 115926.3512 8797.0479 -0.0427 0.0231 90.3742
2 666724.6910 119376.1408 8785.1808 0.0590 0.1634 89.0286)
第二题:运用点投影系数法解算下列点的空间三维坐标
Principal Point y (像主点坐标)(mm) = 0.002
立体像对:col90 和 col91 外方位元素初始值分别为:
col90 666700, 115900, 8800, 0, 0, 90
col91 666700, 119400, 8800, 0, 0, 90
col90内定向参数为:
Col90(给出的点坐标为:像主点为原点的mm坐标值了)
2019 51.9777 -64.2110
2020 80.0891 -60.5609
2021 10.6496 -74.0084
中国空间站使用说明
中国空间站使用说明一、引言中国空间站是中国国家航天局计划建设的一个重要航天工程,旨在为中国的航天事业发展提供重要的支持平台。
本文将介绍中国空间站的使用说明,以便用户能够正确、安全地使用空间站。
二、空间站的组成和功能中国空间站由核心舱、实验舱和货运飞船组成。
核心舱提供宇航员的居住和工作空间,实验舱用于科学实验和技术验证,货运飞船负责运送物资和设备。
空间站具有多个实验舱,可以同时进行多个科学实验和技术验证。
空间站还配备了太阳能电池板,可以提供电力供应。
三、空间站的使用流程1. 准备工作:宇航员需要在登船前进行严格的身体检查和培训,确保身体状况良好,并掌握必要的航天知识和技能。
2. 登船:宇航员按照指定时间和地点登上载人飞船,准备前往空间站。
在登船前,宇航员需要穿上航天服,并接受相关检查和确认。
3. 飞行过程:载人飞船将宇航员运送到空间站附近,然后通过航天飞行器对接系统与空间站对接。
4. 进入空间站:宇航员进入空间站后,需要进行适应性训练,以适应微重力环境。
同时,还需要熟悉空间站的布局和设备操作。
5. 居住和工作:宇航员在空间站中进行居住和工作。
在居住区,宇航员可以休息、吃饭和进行日常活动;在工作区,宇航员可以进行科学实验、技术验证和维护设备。
6. 科学实验和技术验证:宇航员在空间站中进行各种科学实验和技术验证,以推动航天技术的发展。
这些实验和验证涉及多个领域,如物理学、化学、生物学等。
7. 物资和设备补给:空间站需要定期进行物资和设备的补给。
货运飞船将所需物资和设备送至空间站,并通过对接系统与空间站对接,将补给物资转移至空间站内。
8. 返回地球:宇航员在完成任务后,通过载人飞船返回地球。
返回过程中需要进行大气再入和安全着陆。
四、使用注意事项1. 宇航员在空间站中需要遵守相关规定和纪律,保持良好的卫生习惯和行为礼仪。
2. 宇航员需要定期进行身体健康检查,确保身体状况良好。
3. 在进行科学实验和技术验证时,宇航员需要严格按照操作规程进行,确保实验和验证的准确性和安全性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
i , i (i 1,2) 与天顶距 Z i ( A) , Z i ( B ) (i 1,2) ,以及 AB 间的天顶距(AB 的高差 h 未
知时) ,计算基线 AB 的长度 b,然后由 A、B 两点对各空间目标进行交会定点。
Z P1
Y
L
P2
Z2 Z1
P1
Z1
Z2
P2
A
α 1 α2 b β 1 B β 2 h
空间前方交会程序使用说明
(一)空间前方交会原理
用空间前方交会法测定空间点的三维坐标常用于高精度的工业测量, 例如控 制装配、整机安装、轴线校正等,这些测量工作往往要求在现场快速给出大量观 测点的计算结果。空间前方交会的原理如图 1 所示,A、B 为安置两台精密工业 测量经纬仪(或全站仪)的测站中心点,P1、P2 为长度 L 的基准尺的两个端点。 以 A 为原点,其天顶方向为 Z 轴,AB 的水平方向 AB′为 X 轴,建立右手独立坐 标 系 A-XYZ ;首 先 在 测站 A 、 B 点分 别 观测基准 尺 两端 P1 、 P2 点水平 角
主程序
SPSEC
空间前方交会
子程序
READLINE
读入一行数据
子程序
ANGTORAD
角度化为弧度
子程序
INTERSEC
前方交会
图 2 空间前方交会程序设计框图 程序中的全局变量为: datum, datum0 — 基准尺长度及其近似值; b0 — 基线长度及其近似值; h — 两测站的高差; A, B — 交会水平角; Za, Zb — 交会天顶距; x, y, z — 交会点坐标; A1, B1, Za1, Zb1 — 基准尺左端点交会水平角和天顶距; A2, B2, Zb1, Zb2 — 基准尺右端点交会水平角和天顶距; R — 基准尺长度与其近似值的比值; dx, dy, dz — 基准尺两端点近似坐标的坐标差; P11, x11, y11, z11 — 基准尺左端点的点位和坐标; P22, x22, y22, z22 — 基准尺右端点的点位和坐标; PA, PB — 两测站点的点位。 子程序中的局部变量如各个子程序开首括弧内所示。以下为“空间前方交会 计算程序”全文:
3
; 《空间前方交会计算程序》 ; Space Intersection (defun angtorad(/ A B C D E); “角度值由度.分秒化为弧度”子程序 (setq dms (atof ang));角度值子字符串转换为实数 (setq A (fix dms));整度数 (setq B (* (- dms A) 100));分数 (setq C (fix B));整分数 (setq D (* (- B C) 100));秒数 (setq E (+ A (/ C 60.0) (/ D 3600))); “度.分秒”化为以度为单位 (setq hu (* (/ E 180) PI));度为单位化为弧度 ); endsub (Angle to Radian) (defun intersec(/ C D z1 z2 P p1 p2 p3); “前方交会”子程序 (setq C (+ A B) D (* b0 (/ (sin B) (sin C)))) (setq x (* D (cos A)) y (* D (sin A)));计算目标点平面坐标 (setq z1 (* D (/ (cos Za) (sin Za))));从两个测站计算目标点高程 (setq z2 (+ (* D (/ (sin A) (sin B) (/ (sin Zb) (cos Zb)))) h)) (setq z (/ (+ z1 z2) 2) dz (- z1 z2));计算平均高程及高程差(检核) (if (= out "y") (progn ;在屏幕展绘点位和注记坐标以及输出于文件 (setq P (list x y z)) (command "point" P "" "");展绘点位 (setq p1 (list (+ x 0.03) (- y 0.05) z)) (setq p2 (list (+ x 0.03) (- y 0.10) z)) (setq p3 (list (+ x 0.03) (- y 0.15) z)) (command "text" p1 0.04 0 (rtos x 2 4) "");注记点的坐标 (command "text" p2 0.04 0 (rtos y 2 4) "") (command "text" p3 0.04 0 (rtos z 2 4) "") (princ "\n" f2) (princ " x=" f2) (Princ (rtos x 2 5) f2);文件输出目标点坐标及高程差 (princ " y=" f2) (princ (rtos y 2 5) f2) (princ " z=" f2) (princ (rtos z 2 5) f2) (princ " dz=" f2) (princ dz f2) )); endprogn endif ); endsub (Intersection) (defun readline(/ line); “从一行中分段读取两测站方向值和天顶距并化为弧度”子程序 (setq line (read-line f1)) (setq ang (substr line 1 12)) (angtorad) (setq A hu);A 站方向值 (setq ang (substr line 13 12)) (angtorad) (setq Za hu);A 站天顶距 (setq ang (substr line 25 12)) (angtorad) (setq B hu);B 站方向值 (setq ang (substr line 37 12)) (angtorad) (setq Zb hu);B 站天顶距 ); endsub (Read a Line)
DA b sin i sin( i i )
sin i DB b sin( i i ) xi DA cos i yi DA sin i zi ( A) DA tan Z i ( A) zi ( B ) DB tan Z i ( B ) h
4
(defun c:spsec();空间前方交会主程序(Space Intersection) (setq out nil); “输出”变量初始值 (setq file1 (getstring "\n 输入数据文件名(*.txt):") f1 (open file1 "r")) (setq file2 (getstring "\n 输出数据文件名(*.txt):") f2 (open file2 "w")) (princ " 《空间前方交会目标点三维坐标》" f2);输出文件标题 (setq datum (read (read-line f1)));基准尺长度 (setq b0 (read (read-line f1)));两测站间基线近似长度 (setq h (read (read-line f1)));两测站间高差 (readline) (intersec) (setq x1 x y1 y z1 z);交会基准尺左端点坐标 (setq A1 A Za1 Za B1 B Zb1 Zb) (readline) (intersec) (setq x2 x y2 y z2 z);交会基准尺右端点坐标 (setq A2 A Za2 Za B2 B Zb2 Zb) (setq dx (- x1 x2) dy (- y1 y2) dz (- z1 z2)) (setq datum0 (sqrt (+ (* dx dx) (* dy dy))));基准尺观测长度 (setq R (/ datum datum0) b0 (* b0 R));长度比及基线精确长度 (princ "\n" f2) (princ "长度比=" f2) (princ (rtos R 2 6) f2);输出长度比 (princ "\n" f2) (princ "基线长=" f2) (princ (rtos b0 2 4) f2);输出基线长 (princ "\n" f2) (princ "(1)基准尺端点坐标及高程差:" f2) (setq out "y") ;需要屏幕显示及文件输出坐标, “输出”变量赋值 (command "layer" "m" "datum2" "c" 1 "" "");基准尺端点图层 (setq A A1 Za Za1 B B1 Zb Zb1) (intersec);计算基线改正后基准尺端点坐标 (setq x11 x y11 y z11 z) (setq P11 (list x11 y11 z11)) (setq A A2 Za Za2 B B2 Zb Zb2) (intersec) (setq x22 x y22 y z22 z) (setq P22 (list x22 y22 z22)) (command "pdmode" 34 "pdsize" 0.03 "a" "");设置点的形式和大小 (command "point" P11 "point" P22 "" "");展绘基准尺端点 (command "text" P11 0.05 0 "P1" "") (command "text" P22 0.05 0 "P2" "") (command "layer" "m" "station" "c" 2 "" "");测站点图层 (setq PA (list 0 0 0) PB (list B0 0 h)) (command "point" PA "point" PB "");展绘测站点 (command "text" PA 0.05 0 "A" "") (command "text" PB 0.05 0 "B" "") (command "layer" "m" "aim" "c" 4 "" "");目标点图层 (princ "\n" f2) (princ "(2)目标点坐标及高程差:" f2) (setq m (read (read-line f1)));读取交会目标点数 (repeat m (readline) (intersec);循环读取目标点交会角和进行坐标计算,展绘点位 ); end repeat (command "zoom" "e" "") (princ) );end (Program for Spaec Intersection)