后方交会计算计算程序

合集下载

空间后方交会的解算

空间后方交会的解算

空间后方交会的解算一. 空间后方交会的目的摄影测量主要利用摄影的方法获取地面的信息,主要是是点位信息,属性信息,因此要对此进行空间定位和建模,并首先确定模型的参数,这就是空间后方交会的目的,用以求出模型外方位元素。

二. 空间后方交会的原理空间后方交会的原理是共线方程。

共线方程是依据相似三角形原理给出的,其形式如下111333222333()()()()()()()()()()()()A S A S A S A S A S A S AS A S A S A S A S A S a X X b Y Y c Z Z x f a X X a Y Y a Z Z a X X b Y Y c Z Z y f a X X a Y Y a Z Z -+-+-=--+-+--+-+-=--+-+-上式成为中心投影的构线方程,我们可以根据几个已知点,来计算方程的参数,一般需要六个方程,或者要三个点,为提高精度,可存在多余观测,然后利用最小二乘求其最小二乘解。

将公式利用泰勒公式线性化,取至一次项,得到其系数矩阵A ;引入改正数(残差)V ,则可将其写成矩阵形式:V AX L =-其中111333222333[,]()()()()()()()()()()()()()()Tx y A S A S A S x A S A S A S A S A S A S y A S A S A S L l l a X X b Y Y c Z Z l x x x fa X X a Y Y a Z Z a X Xb Y Yc Z Z l y y y fa X X a Y Y a Z Z =-+-+-=-=+-+-+--+-+-=-=+-+-+- 则1()T T X A A A L -=X 为外方位元素的近似改正数,由于采用泰勒展开取至一次项,为减少误差,要将的出的值作为近似值进行迭代,知道小于规定的误差三. 空间后方交会解算过程1. 已知条件近似垂直摄影00253.24mmx y 0f ===2. 解算程序流程图MATLAB 程序format long;s1=xlsread('data.xls');%读取数据a1=s1(1:4,1:2);%影像坐标b1=s1(1:4,3:5);%地面摄影测量坐标a2=s1.*10^-3;%影像坐标单位转化j1=a2(1,:)-a2(2,:);j2=j1(1,1)^2+j1(1,2)^2;lengh_a1=sqrt(j2); %相片某一长度j1=b1(1,:)-b1(1,:);j2=j1(1,1)^2+j1(1,2)^2;lengh_b1=sqrt(j2); %地面对应的长度m=lengh_b1/lengh_a1;%求出比例尺n0=0;p0=0;q0=0;x0=mean(b1(:,1));y0=mean(b1(:,2));f=153.24*10^-3;z0=m*f;x001={x0,x0,x0,x0};X0=cell2mat(x001)';y001={y0,y0,y0,y0};Y0=cell2mat(y001)';z001={z0,z0,z0,z0};Z0=cell2mat(z001)';%初始化外方位元素的值aa1=cos(n0)*cos(q0)-sin(n0)*sin(p0)*sin(q0);aa2=-sin(q0)*cos(n0)-sin(n0)*sin(p0)*cos(q0);aa3=-sin(n0)*cos(p0);bb1=sin(q0)*cos(p0);bb2=cos(q0)*cos(p0);bb3=-sin(p0);cc1=sin(n0)*cos(q0)+sin(p0)*cos(n0)*sin(q0);cc2=-sin(n0)*sin(q0)+sin(p0)*cos(q0)*cos(n0);cc3=cos(n0)*cos(p0);%计算改正数XX1=aa1.*(b1(:,1)-X0)+bb1.*(b1(:,2)-Y0)+cc1.*(b1(:,3)-Z0); XX2=aa2.*(b1(:,1)-X0)+bb2.*(b1(:,2)-Y0)+cc2.*(b1(:,3)-Z0); XX3=aa3.*(b1(:,1)-X0)+bb3.*(b1(:,2)-Y0)+cc3.*(b1(:,3)-Z0); lx=a1(:,1)+f.*(XX1./XX3);ly=a1(:,2)+f.*(XX2./XX3);l={lx',ly'};L=cell2mat(l)';%方程系数A=[-3.969*10^-5 0 2.231*10^-5 -0.2 -0.04 -0.06899;0 -3.969*10^-5 1.787*10^-5 -0.04 -0.18 0.08615;-2.88*10^-5 0 1*10^-5 -0.17 0.03 0.08211;0 -2.88*10^-5 -1.54*10^-5 0.03 -0.2 0.0534;-4.14*10^-5 0 4*10^-6 -0.15 -7.4*10^-3 -0.07663;0 -4.14*10^-5 2.07*10^-5 -7.4*10^-3 -0.19 0.01478;-2.89*10^-5 0 -1.98*10^-6 -0.15 -4.4*10^-3 0.06443;0 -2.89*10^-5 -1.22*10^-5 -4.4*10^-3 -0.18 0.01046];%L=[-1.28 3.78 -3.02 -1.45 -4.25 4.98 -4.72 -0.385]'.*10^-2; %第一次迭代X=inv(A'*A)*A'*L;3.结果X=1492.41127406195-554.4015671761941425.68660973544-0.0383847815608609 0.00911624039769785 -0.105416434087641S=1492.41127406195-554.401567176194 1425.68660973544 38436.9616152184 27963.1641162404-0.105416434087641。

fx-5800P_边角后方交会坐标计算程序PM3-41

fx-5800P_边角后方交会坐标计算程序PM3-41

基于串列输入已知点坐标的边角后方交会计算程序PM3-41(1) 计算原理如图1所示,在P 点安置全站仪,对两个已知点A 、B 进行边角观测,得两个水平距离a 、b 与一个水平夹角γ,由于有三个观测值,只有P 点平面坐标P x 、P y 两个未知数,因此,有一个多余观测,计算坐标前,需要对观测值进行近似平差。

首先由A 、B 两点的坐标反算出其边长c ,再由余弦定理计算出图中三角形的两个内角α、β。

⎪⎪⎭⎪⎪⎬⎫⎟⎟⎠⎞⎜⎜⎝⎛−+=⎟⎟⎠⎞⎜⎜⎝⎛−+=−−ac b c a bc a c b 2cos 2cos 22212221βα (1) 再计算三角形的闭合差°−++=180γβαω,平均反号分配三角形的闭合差求出α与β的平均值⎭⎬⎫−=−=3ˆ3ˆωββωαα(2)按前面交会公式计算P 点的坐标⎪⎪⎭⎪⎪⎬⎫+−++=+−++=βααββααβˆcot ˆcot ˆcot ˆcot ˆcot ˆcot ˆcot ˆcot B A B AP A B BA P x x y y y y y x x x (3) 式(3)要求A →B →P 的点编号方向应为逆时针方向,否则计算出的P 点坐标将关于A →B 边对称,从而使结果错误。

(2) 程序——PM3-41,占用内存376字节。

"SIDE ANGLE RESECTION PM3-41"\ 显示程序标题Fix 3:Deg:FreqOn 基本设置 "DIST P ¼A(m)="?B:"DIST P ¼B(m)="?A 输入边长观测值 "g p(Deg)="?P 输入P 水平角观测值 Pol(List X[1]-List X[2],List Y[1]-List Y[2]):Cls AB 边长 I ¼C AB 边长赋值给C 变量 cos -1((B 2+C 2-A 2)÷2÷B ÷C)¼U α角cos -1((A 2+C 2-B 2)÷2÷A ÷C)¼Vβ角 U+V+P-180¼W计算三角形闭合差ω "ANGLE CLOSED ERROR(DMS)=":W `DMS \ 显示三角形闭合差ω图1边角后方交会坐标计算原理与案例1÷tan(U-W ÷3)¼M:1÷tan(V-W ÷3)¼N 分配三角形闭合差后的角度余切 (List X[1]N+List X[2]M+List Y[2]-List Y[1])÷(M+N)¼X 计算P 点坐标 (List Y[1]N+List Y[2]M+List X[1]-List X[2])÷(M+N)¼Y "Xp(m)=":X \ 显示交会点坐标 "Yp(m)=":Y \ "PM3-41END" (3) 程序说明1)运行程序前,应按键进入REG 模式,多次按键删除统计串列的数据,然后在List X 串列分别输入A 、B 点的x 坐标,在List Y 串列分别输入A 、B 点的y 坐标。

摄影测量后方交会

摄影测量后方交会

单张相片后方交会目录●作业任务 (3)●解算原理 (3)●具体过程 (4)●算法描述及程序流程 (4)●计算结果 (7)●结果分析 (8)●心得体会及建议 (8)●参考文献 (9)一,作业任务已知摄影机主距f=153.24mm,四对点的像点坐标与相应地面坐标列入下表:表1-1计算近似垂直摄影情况下后方交会解。

二,解算原理【关键词1】中心投影构像方程在摄影测量学中,最重要的方程就是中心投影构像方程(图2-1)。

这个方程将地面点在地面摄影测量坐标系中的坐标(物方坐标)和地面点对应像点的像平面坐标联系起来。

在解析摄影测量与数字摄影测量中是极其有用的。

在以后将要学习到的双像摄影测量光束法、解析测图仪原理及数字影像纠正等都要用到该式。

图2-1在上述公式中:x和y分别为以像主点为原点的像点坐标,相应地面点坐标为X,Y,Z,相片主距f以及外方位元素Xs,Ys,Zs,ψ,ω,κ。

而在此次作业中,就是已知四个地面控制点的坐标以及其对应的像点坐标,通过间接平差原理来求解此张航片的外方位元素。

【关键词2】间接平差在一个平差问题中,当所选的独立参数X的个数等于必要观测值t时,可将每个观测值表达成这t个参数的函数,组成观测方程,然后依据最小二乘原理求解,这种以观测方程为函数模型的平差方法,就是间接平差方法间接平差的函数模型为:随机模型为:平差准则为:VtPV=min【关键词3】单像空间后方交会利用至少三个已知地面控制点的坐标A(Xa,Ya,Za)、B(Xb,Yb,Zb)、Z(Xc,Yc,Zc),与其影像上对应的三个像点的影像坐标a(xa,ya)、b(xb,yb)、c(xc,yc),根据共线方程,反求该像点的外方位元素Xs,Ys,Zs,ψ,ω,κ。

这种解算方法是以单张像片为基础,亦称单像空间后方交会。

在此次作业中,就是已知四个控制点在地面摄影测量坐标系中的坐标和对应的像点坐标。

由此可以列出8个误差方程,存在两个多余观测数,则n=2。

卡西欧5800多功能实用坐标正反算小程序(附后方交会程序)

卡西欧5800多功能实用坐标正反算小程序(附后方交会程序)
说明:第一个照准点坐标(XA , YA),平距为D1,第二个照准点坐标(XB , YB),平距为D2 ,第一点,第二点及测站点如果是顺时针方向排列Q = 1,逆时针Q =-1。(XP , YP)为待求点的坐标。
Goto0:
Lbl3:Cls:”X1=”?A:”Y1=”?B:?F: ”X2=”?X:”Y2=”?Y:
(X-A)cos(F)+(Y-B)sin(F)→I:
(Y-B)cos(F)-(X-A)sin(F)→Z:
Cls:“L=”: “Z=”:Locate4,1,I:Locate 4,2,Z◢
Goto0
注:程序中的“=>”是一个双箭号, 按FUNCTION选3下翻两页选3 即可输入。方Biblioteka 角L距离Z
偏距
R
斜交偏距的转角(顺时针为正数,正交输入0)
2程序名:HFJH(距离后方交会)
LBI 1 :〝XA〞?A :〝YA〞?B :〝XB〞?C :〝YB〞?D :〝D1〞?E :〝D2〞?F :?Q : 0→J : POL(C-A , D-B)→G : J+Q Cos-1((GG+EE-FF)÷(2GE))→H :〝XP=〞: A+E Cos(H)→X▲〝YP=〞: B+E Sin(H)→Y▲Goto1
显示及操作说明:
显示
功能
1.XY→LF
2.LF→XY
3.XYF→LZ
1.输入两点坐标计算距离与方位角
2.输入起点坐标及方位角、距离、偏距、偏距的转角
3.输入起点坐标及方位角,输入实测坐标,计算实测点与起点的垂直距离和垂直偏距
显示
输入及显示说明
X1、Y1
第一点(起点)坐标
X2、Y2

摄影测量-空间前交、后交【精选文档】

摄影测量-空间前交、后交【精选文档】

空间后交—前交程序设计(实验报告)姓名:班级:学号:时间:空间后交-前交程序设计一、实验目的用 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。

后方交会MATLAB程序实习报告

后方交会MATLAB程序实习报告

《摄 影 测 量 学》单像空间后方交会实习报告班 级: XXXX姓 名: X X X学 号:XXXXXXXXXXXXX指导教师: X X X一、实习目的1、掌握空间后方交会的定义和实现算法;2、了解摄影测量平差的基本过程;3、熟练MATLAB 等程序编写。

二、实习原理利用至少三个已知地面控制点的坐标),,(A A A Z Y X A 、),,(B B B Z Y X B 、),,(C C C Z Y X C ,与其影像上对应的三个像点的影像坐标),(a a y x a 、),(b b y x b 、),(c c y x c ,根据共线方程,反求该像片的外方位元素κωϕ、、、、、S S S Z Y X 。

共线条件方程式:将共线式线性化并取一次小值项得:三、解算过程①获取已知数据。

包括影像比例尺1/m,平均摄影距离(航空摄影的航高)H,内方位元素x0、y0、f,控制点的空间坐标X、Y、Z。

②量测控制点的像点坐标并进行必要的影像坐标系统误差改正,得到像点坐标。

③确定未知数的初始值。

单像空间后方交会必须给出待定参数的初始值,在竖直航空摄影且地面控制点大体对称分布的情况下,Xs0和Ys0为均值,Zs0为航高,φ、ω、κ的初值都设为0。

或者κ的初值可在航迹图上找出或根据控制点坐标通过坐标正反变换求出。

④计算旋转矩阵R。

利用角元素近似值计算方向余弦值,组成R阵。

⑤逐点计算像点坐标的近似值。

利用未知数的近似值按共线条件式计算控制点像点坐标的近似值(x),(y)。

⑥逐点计算误差方程式的系数和常数项,组成误差方程式。

⑦计算法方程的系数矩阵ATA与常数项ATL,组成法方程式。

⑧解求外方位元素。

根据法方程,解求外方位元素改正数,并与相应的近似值求和,得到外方位元素新的近似值。

⑨检查计算是否收敛。

将所求得的外方位元素的改正数与规定的限差比较,通常对φ,ω,κ的改正数△φ,△ω,△κ给予限差,通常为0.000001弧度,当3个改正数均小于0.000001弧度时,迭代结束。

摄影测量学空间后方交会实验报告

摄影测量学空间后方交会实验报告

摄影测量学实验报告实验一、单像空间后方交会学院:建测学院班级:测绘082姓名:肖澎学号: 15一.实验目的1.深入了解单像空间后方交会的计算过程;2.加强空间后方交会基本公式和误差方程式,法线方程式的记忆;3.通过上机调试程序加强动手能力的培养。

二.实验原理以单幅影像为基础,从该影像所覆盖地面范围内若干控制点和相应点的像坐标量测值出发,根据共线条件方程,求解该影像在航空摄影时刻的相片外方位元素。

三.实验内容1.程序图框图2.实验数据(1)已知航摄仪内方位元素f=153.24mm,Xo=Yo=0。

限差0.1秒(2)已知4对点的影像坐标和地面坐标:3.实验程序using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication3{class Program{static void Main(){//输入比例尺,主距,参与平参点的个数Console.WriteLine("请输入比例尺分母m:\r");string m1 = Console.ReadLine();double m = (double)Convert.ToSingle(m1);Console.WriteLine("请输入主距f:\r");string f1 = Console.ReadLine();double f = (double)Convert.ToSingle(f1);Console.WriteLine("请输入参与平差控制点的个数n:\r");string n1 = Console.ReadLine();int n = (int)Convert.ToSingle(n1);//像点坐标的输入代码double[] arr1 = new double[2 * n];//1.像点x坐标的输入for (int i = 0; i < n; i++){Console.WriteLine("请输入已进行系统误差改正的像点坐标的x{0}值:\r", i+1);string u = Console.ReadLine();for (int j = 0; j < n; j += 2){arr1[j] = (double)Convert.ToSingle(u);}}//2.像点y坐标的输入for (int i = 0; i < n; i++){Console.WriteLine("请输入已进行系统误差改正的像点坐标的y{0}值:\r", i+1);string v = Console.ReadLine();for (int j = 1; j < n; j += 2){arr1[j] = (double)Convert.ToSingle(v);}}//控制点的坐标输入代码double[,] arr2 = new double[n, 3];//1.控制点X坐标的输入for (int j = 0; j < n; j++){Console.WriteLine("请输入控制点在地面摄影测量坐标系的坐标的X{0}值:\r", j+1);string u = Console.ReadLine();arr2[j , 0] = (double)Convert.ToSingle(u);}//2.控制点Y坐标的输入for (int k = 0; k < n; k++){Console.WriteLine("请输入控制点在地面摄影测量坐标系的坐标的Y{0}值:\r", k+1);string v = Console.ReadLine();arr2[k , 1] = (double)Convert.ToSingle(v);}//3.控制点Z坐标的输入for (int p =0; p < n; p++){Console.WriteLine("请输入控制点在地面摄影测量坐标系的坐标的Z{0}值:\r", p+1);string w = Console.ReadLine();arr2[p , 2] = (double)Convert.ToSingle(w);}//确定外方位元素的初始值//1.确定Xs的初始值:double Xs0 = 0;double sumx = 0;for (int j = 0; j < n; j++){double h = arr2[j, 0];sumx += h;}Xs0 = sumx / n;//2.确定Ys的初始值:double Ys0 = 0;double sumy = 0;for (int j = 0; j < n; j++){double h = arr2[j, 1];sumy += h;}Ys0 = sumy / n;//3.确定Zs的初始值:double Zs0 = 0;double sumz = 0;for (int j = 0; j <= n - 1; j++){double h = arr2[j, 2];sumz += h;}Zs0 = sumz / n;doubleΦ0 = 0;doubleΨ0 = 0;double K0 = 0;Console.WriteLine("Xs0,Ys0,Zs0,Φ0,Ψ0,K0的值分别是:{0},{1},{2},{3},{4},{5}", Xs0, Ys0, Zs0, 0, 0, 0);//用三个角元素的初始值按(3-4-5)计算各方向余弦值,组成旋转矩阵,此时的旋转矩阵为单位矩阵I:double[,] arr3 = new double[3, 3];for (int i = 0; i < 3; i++)arr3[i, i] = 1;}double a1 = arr3[0, 0]; double a2 = arr3[0, 1]; double a3 = arr3[0, 2];double b1 = arr3[1, 0]; double b2 = arr3[1, 1]; double b3 = arr3[1, 2];double c1 = arr3[2, 0]; double c2 = arr3[2, 1]; double c3 = arr3[2, 2];/*利用线元素的初始值和控制点的地面坐标,代入共线方程(3-5-2),* 逐点计算像点坐标的近似值*///1.定义存放像点近似值的数组double[] arr4 = new double[2 * n];//----------近似值矩阵//2.逐点像点坐标计算近似值//a.计算像点的x坐标近似值(x)for (int i = 0; i < 2 * n; i += 2){for (int j = 0; j < n; j++){arr4[i] = -f * (a1 * (arr2[j, 0] - Xs0) + b1 * (arr2[j, 1] - Ys0) + c1 * (arr2[j, 2] - Zs0)) / (a3 * (arr2[j, 0] - Xs0) + b3 * (arr2[j, 1] - Ys0) + c3 * (arr2[j, 2] - Zs0)); }}//b.计算像点的y坐标近似值(y)for (int i = 1; i < 2 * n; i += 2){for (int j = 0; j < n; j++){arr4[i] = -f * (a2 * (arr2[j, 0] - Xs0) + b2 * (arr2[j, 1] - Ys0) + c2 * (arr2[j, 2] - Zs0)) / (a3 * (arr2[j, 0] - Xs0) + b3 * (arr2[j, 1] - Ys0) + c3 * (arr2[j, 2] - Zs0)); }}//逐点计算误差方程式的系数和常数项,组成误差方程:double[,] arr5 = new double[2 * n, 6]; //------------系数矩阵(A)//1.计算dXs的系数for (int i = 0; i < 2 * n; i += 2){arr5[i, 0] = -1 / m; //-f/H == -1/m}//2.计算dYs的系数for (int i = 1; i < 2 * n; i += 2){arr5[i, 1] = -1 / m; //-f/H == -1/m}//3.a.计算误差方程式Vx中dZs的系数for (int i = 0; i < 2 * n; i += 2)arr5[i, 2] = -arr1[i] / m * f;}//3.b.计算误差方程式Vy中dZs的系数for (int i = 1; i < 2 * n; i += 2){arr5[i, 2] = -arr1[i] / m * f;}//4.a.计算误差方程式Vx中dΦ的系数for (int i = 0; i < 2 * n; i += 2){arr5[i, 3] = -f * (1 + arr1[i] * arr1[i] / f * f);}//4.a.计算误差方程式Vy中dΦ的系数for (int i = 1; i < 2 * n; i += 2){arr5[i, 3] = -arr1[i - 1] * arr1[i] / f;}//5.a.计算误差方程式Vx中dΨ的系数for (int i = 0; i < 2 * n; i += 2){arr5[i, 4] = -arr1[i] * arr1[i + 1] / f;}//5.b.计算误差方程式Vy中dΨ的系数for (int i = 1; i < 2 * n; i += 2){arr5[i, 4] = -f * (1 + arr1[i] * arr1[i] / f * f);}//6.a.计算误差方程式Vx中dk的系数for (int i = 0; i < 2 * n; i += 2){arr5[i, 5] = arr1[i + 1];}//6.b.计算误差方程式Vy中dk的系数for (int i = 1; i < 2 * n; i += 2){arr5[i, 5] = -arr1[i - 1];}//定义外方位元素组成的数组double[] arr6 = new double[6];//--------------------外方位元素改正数矩阵(X)//定义常数项元素组成的数组double[] arr7 = new double[2 * n];//-----------------常数矩阵(L)//计算lx的值for (int i = 0; i < 2 * n; i += 2)arr7[i] = arr1[i] - arr4[i]; //将近似值矩阵的元素代入}//计算ly的值for (int i = 1; i <= 2 * (n - 1); i += 2){arr7[i] = arr1[i] - arr4[i]; //将近似值矩阵的元素代入}/* 对于所有像点的坐标观测值,一般认为是等精度量测,所以权阵P为单位阵.所以X=(ATA)-1ATL *///1.计算ATdouble[,] arr5T = new double[6, 2 * n];for (int i = 0; i < 6; i++){for (int j = 0; j < 2 * n; j++){arr5T[i, j] = arr5[j, i];}}//A的转置与A的乘积,存放在arr5AA中double[,] arr5AA = new double[6, 6];for (int i = 0; i < 6; i++){for (int j = 0; j < 6; j++){arr5AA[i, j] = 0;for (int l = 0; l < 2 * n; l++){arr5AA[i, j] += arr5T[i, l] * arr5[l, j];}}}nijuzhen(arr5AA);//arr5AA经过求逆后变成原矩阵的逆矩阵//arr5AA * arr5T存在arr5AARATdouble[,] arr5AARAT = new double[6, 2 * n];for (int i = 0; i < 6; i++){for (int j = 0; j < 2 * n; j++){arr5AARAT[i, j] = 0;for (int p = 0; p < 6; p++){arr5AARAT[i, j] += arr5AA[i, p] * arr5T[p, j];}}}//计算arr5AARAT x L,存在arrX中double[] arrX = new double[6];for (int i = 0; i < 6; i++){for (int j = 0; j < 1; j++){arrX[i] = 0;for (int vv = 0; vv < 6; vv++){arrX[i] += arr5AARAT[i, vv] * arr7[vv];}}}//计算外方位元素值double Xs, Ys, Zs, Φ, Ψ, K;Xs = Xs0 + arrX[0];Ys = Ys0 + arrX[1];Zs = Zs0 + arrX[2];Φ = Φ0 + arrX[3];Ψ = Ψ0 + arrX[4];K = K0 + arrX[5];for (int i = 0; i <= 2; i++){Xs += arrX[0];Ys += arrX[1];Zs += arrX[2];Φ += arrX[3];Ψ += arrX[4];K += arrX[5];}Console.WriteLine("Xs,Ys,Zs,Φ,Ψ,K的值分别是:{0},{1},{2},{3},{4},{5}", Xs0, Ys0, Zs0, Φ, Ψ, K);Console.Read();}//求arr5AA的逆矩public static double[,] nijuzhen(double[,] a) {double[,] B = new double[6, 6];int i, j, k;int row = 0;int col = 0;double max, temp;int[] p = new int[6];for (i = 0; i < 6; i++){p[i] = i;B[i, i] = 1;}for (k = 0; k < 6; k++){//找主元max = 0; row = col = i;for (i = k; i < 6; i++){for (j = k; j < 6; j++){temp = Math.Abs(a[i, j]);if (max < temp){max = temp;row = i;col = j;}}}//交换行列,将主元调整到k行k列上if (row != k){for (j = 0; j < 6; j++){temp = a[row, j];a[row, j] = a[k, j];a[k, j] = temp;temp = B[row, j];B[row, j] = B[k, j];B[k, j] = temp;i = p[row]; p[row] = p[k]; p[k] = i; }if (col != k){for (i = 0; i < 6; i++){temp = a[i, col];a[i, col] = a[i, k];a[i, k] = temp;}}//处理for (j = k + 1; j < 6; j++){a[k, j] /= a[k, k];}for (j = 0; j < 6; j++){B[k, j] /= a[k, k];a[k, k] = 1;}for (j = k + 1; j < 6; j++){for (i = 0; j < k; i++){a[i, j] -= a[i, k] * a[k, j];}for (i = k + 1; i < 6; i++){a[i, j] -= a[i, k] * a[k, j];}}for (j = 0; j < 6; j++){for (i = 0; i < k; i++){B[i, j] -= a[i, k] * B[k, j];}for (i = k + 1; i < 6; i++){B[i, j] -= a[i, k] * B[k, j];}for (i = 0; i < 6; i++) {a[i, k] = 0;a[k, k] = 1;}}//恢复行列次序for (j = 0; j < 6; j++){for (i = 0; i < 6; i++) {a[p[i], j] = B[i, j]; }}for (i = 0; i < 6; i++){for (j = 0; j < 6; j++) {a[i, j] = a[i, j];}}return a;}4.实验结果四.实验总结此次实验让我深入了解单像空间后方交会的计算过程,加强了对空间后方交会基本公式和误差方程式,法线方程式的记忆。

地下工程测量 题汇总

地下工程测量 题汇总

一、填空题(60分,每空2分)1、测角方法误差包括。

2、方向符合导线点位误差最大的点是导线的,方位角误差最大的边是导线的。

3、一井定向内业解算中两垂球线间距离的检核可以检核的正确性,三角形内角和可以检核的正确性。

4、在贯通测量设计中应尽可能增大导线边长,其目的是减少以减小误差的影响。

5、井下水平角观测中,占标对中误差在所测角度为0°~180°时,随角度增大而(增大/减小/不变)。

6、斜距化算成平距时倾角与精度的关系是。

7、两井贯通在水平重要方向上的误差来源有。

8、测角误差对支导线终点点位精度的影响为(与测角误差的大小成反比/与导线测站数成反比/与导线形状有关)。

9、若某一贯通一次导线测量的预计误差为Mx′,导线独立测量两次,贯通允许偏差为M 容,判断该方案精度上是否合理的表达式为。

10、伪倾角法标设腰线的伪倾角计算公式为。

11、两井定向井下导线起始边一般选在(左边/中间/右边)。

12、陀螺方位角一次测定中误差通常比一次定向中误差要(小/大/一样)。

13、贯通测量方案的选择应依据原则进行。

14、井下基本控制导线的等级有。

15、井下进行碎部测量的目的是,其主要内容为。

16、井下经纬仪导线常用的平差方法是,调整坐标增量闭合差的两种常用方法的公式为。

17、井下高程测量的目的是。

18、在井下高程测量中,为保持与地面高程测量的计算公式一致而采用的措施是。

19、定向是指。

20、近井点的精度,对于测设它的起算点来说,其点位中误差不得超过,后视边方位角中误差不得超过。

21、按《煤矿测量规程》规定,两次独立定向之差不大于±2′,则一次定向的中误差为。

22、立井几何定向常用的投点方法有。

23、陀螺方位角与真方位角的差值叫,其关系式为。

24、巷道中线的作用是。

25、巷道腰线通常标设在一帮上,离巷道底板的距离为米。

二、一井定向井上、下选择连接点C时应注意什么?为什么?(10分)三、绘图示意说明标定巷道开切点的方法(7分)。

全站仪后方交会标准差算法

全站仪后方交会标准差算法

全站仪后方交会标准差算法
全站仪后方交会是通过测量不同位置上的目标点的坐标,并利用这些坐标计算目标点在三维空间中的坐标。

后方交会标准差算法用于评估测量结果的精度或误差程度。

后方交会标准差算法主要包括以下步骤:
1. 计算观测向量:根据测量仪器的观测数据,计算出每个目标点的观测向量。

观测向量包括水平方向角、垂直方向角和斜距。

2. 计算测量坐标:利用观测向量和仪器初始坐标,计算出每个目标点的测量坐标。

测量坐标可以通过坐标变换或三角测量法计算得出。

3. 计算留差:将测量坐标代入方程,计算出每个目标点的留差。

留差是指实际测量值与标准值之间的差异。

4. 计算改正数:通过留差的平均值、方差和协方差矩阵,计算出每个目标点的改正数。

改正数用于修正观测向量和测量坐标。

5. 重新计算测量坐标:利用改正数对观测向量和测量坐标进行修正,得到最终的测量坐标。

6. 计算标准差:通过留差和改正数,计算出每个目标点的标准差。

标准差用于描述测量结果的精度或误差程度。

后方交会标准差算法的具体计算公式可以根据不同的测量方法和误差模型进行调整。

摄影测量实验报告(空间后方交会—前方交会)

摄影测量实验报告(空间后方交会—前方交会)

空间后方交会—空间前方交会程序编程实验一.实验目的要求掌握运用空间后方交会-空间前方交会求解地面点的空间位置.学会运用空间后方交会的原理,根据所给控制点的地面摄影测量坐标系坐标以及相应的像平面坐标系中的坐标,利用计算机编程语言实现空间后方交会的过程,完成所给像对中两张像片各自的外方位元素的求解。

然后根据空间后方交会所得的两张像片的内外方位元素,利用同名像点在左右像片上的坐标,求解其对应的地面点在摄影测量坐标系中的坐标,并完成精度评定过程,利用计算机编程语言实现此过程.二.仪器用具计算机、编程软件(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 '左片外方位元素为。

第十二章国内外优秀道路CAD软件介绍

第十二章国内外优秀道路CAD软件介绍

第十二章国内外优秀道路CAD软件介绍国内外优秀道路CAD软件介绍计算机在道路工程领域的应用始于20世纪六十年代。

近20年以来,进入高速发展阶段,世界各发达国相继开发道路CAD软件,并且功能更加完善,目前已商品化在市场上可见销售的有10多种,比较著名的有英国的MOSS系统、美国的__、德国的CARD/1等。

我国公路CAD的研究始于70年代后期,虽然起步较晚,但发展迅速。

80年代以来。

随着我国公路建设的高速发展,大大促进了我国公路CAD系统的开发与应用。

许多院校、交通设计院相继开发了公路路线微机辅助设计系统、公路中小桥CAD 系统、涵洞CAD系统、立交CAD系统等公路设计软件,这些系统在使用和推广过程中不断完善。

本章将介绍几种比较著名的国内外优秀的道路CAD软件,包括:德国的CARD/1、国内的集成化公路CAD系统、纬地道路辅助设计系统等。

第一节德国CARD/1软件德国IBT有限公司出品的CARD/1软件系统是一款道路(公路和铁路)勘测设计一体化软件系统。

CARD/1的原意是计算机辅助道路设计(Computer Aided Road Design)。

经过了十多年的发展,原先的CARD/1系统是一个从运用中发展起来的专门适用于道路测量和设计的软件包,现在的CARD/1系统已广泛应用于测绘、道路、铁路(磁悬浮列车)和管道的规划、设计和施工。

目前CARD/1系统已经发展到8.0版本,除德文版外,还被译成英文版、中文版、俄文版、波兰文版和匈牙利文版。

一、软件的主要特点1.高度集成CARD/1覆盖测绘、道路、铁路、管道设计及施工的全过程。

CARD/1是不依赖于其它任何软件(除操作系统外)就可完成基础数据采集、设计、绘图全过程的软件系统。

避免了传统的使用五、六个不同公司的软件分别解决不同的问题,最后合起来完成一个项目的弊端。

使用CARD/1软件,数据在应用系统内部高效传递,避免了不同软件之间数据转换的繁琐和出错可能性。

后方交会计算计算程序

后方交会计算计算程序

后方交会计算计算程序(总4页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March距离后方交会计算(CASIO fx–4800P计算器)程序一、程序功能本程序适用于在一个未知点上设测站,观测两到个已知点的距离后,解算该未知坐标。

本程序也可以在CASIO fx-4500P计算器及CASIO fx-4850P计算器上运行。

注意:这种观测两到个已知点的距离后解算该未知坐标的方法,缺少多余观测值,也就缺少检核条件。

二、源程序Lbl 1:{ABCDEFQ}:A"XA":B” YA”:C"XB":D"YB":E"D1":F"D2":Q:J=0:G=Pol(C-A, D-B) :H=J+QCos-1((GG+EE-FF)÷2÷G÷E):X"XP"=A+ECosH◢Y"YP"=B+ESinH◢Goto 1←┘注:CASIO fx-4850改如下Lbl 1:{ABCDEFQ}:A"XA":B” YA”:C"XB":D"YB":E"D1":F"D2":Q:J=0:G=Pol(C-A, D-B) :H=J+QCos-1((GG+EE-FF)÷2÷G÷E):"XP":X=A+ECosH◢"YP":Y=B+ESinH◢Goto 1←┘三、使用说明1、规定(1) 未知点为P点,已知点分别为A点、B点;(2) P点至A点的距离为D1,P点至B点的距离为D2;(3) 当A、B、P三点逆时针排列时,Q=-1;当A、B、P三点顺时针排列时,Q=1。

后方交会和坐标反算程序在施工测量中的应用

后方交会和坐标反算程序在施工测量中的应用
图1 后方交会法工作原理示意图
反算 程 序进 行 路基 施 工 测量 可 以 使测 量 工 作 越来 越 简单 容 易操 作 计 算 快 速 便捷 数 据准 确 精 度 高 在 某 道路 路 基 施 工 中 由 于 路 线 长 测 量 工 作 量 工作 中 全 站 仪后 方 交会 程 序有 2 个已 知 点 就 可以 进
在路基施工测量中采用传统的测量方法不仅速效率低而且劳动强度也很大目前随着全站仪程序的不断开发其功能也在日趋完善特别是卡西欧可编程序计算器的普及在施工测量技术人员中已被广泛使用利用全站仪后方交会程序和卡西欧坐标反算程序进行路基施工测量可以使测量工作越来越简单容易操作计算快速便捷数据准确精度高在某道路路基施工中由于路线长测量工作量放样点距控制点比较远重新投点给施工带来不所以应用全站仪后方交会程序进行施工测量投点大大减少了测量人员的工作量使施工测量变得快捷迅速准确方便取得了良好的效果很好地解决了转多次搬镜的麻烦减少了测量误差的来源工作原理全站仪后方交会法和传统的后方交会法有所不它只需2个已知点对图形要求不是很高如下图所示测站置镜分别输入测站点的仪两已知点架设棱镜然后用全站仪后方交会程序分别进行观测两点即可得出此点的三维坐标也可以通过解算三角形求出待求点的坐标传统的后方交会法必须有3个已知点才可以交会对图形要求很高还要避免危险圈才能保证其精度而且计算公式繁琐麻烦难以在短时间内计算出交会点的坐标容易出错很难灵活运用到实际测量工作中全站仪后方交会程序有2个已知点就可以进行交会不仅节省时间速度快灵活性高精度高且无需计算只要轻轻一按后方交会程序功能键即可技术要求待求点的选点应尽量设在2个已知点的中间边长大致相等角度不宜过大或过小应控制在30150之间选点困难时应不少于25155保证图形强度和计算精度若作高级控制测量四等以角度应在40100之间为宜个点进行后视定位再用全站仪坐标测量程序进行观测复核另1个已知点的三维坐标形也可以进行复核再参考相应的测量技术规范验证待求点的精度及准确性观测值如果不符合要求则需要重测坐标反算程序21以卡西欧4850可编程计算器进行坐标反算程序编辑211主程序坐标反算计算主程序后方交会和坐标反算程序在施工测量中的应用1

单向后方交会实验报告

单向后方交会实验报告

实验报告班级:测绘一班学号:日期:目录一、计算原理 (3)二、算法流程 (4)三、源程序 (5)四、计算结果 (13)五、结果分析 (13)六、心得体会 (13)一、计算原理已知条件摄影机主距f=,x0=,y0=, 像片比例尺为1:40000,有四对点的像点坐标与相应的地面坐标如下表。

以单像空间后方交会方法,求解该像片的外方位元素。

二、算法流程(1)获取已知数据。

从航摄资料中差取平均航高与摄影机主距;获取控制点的地面测量坐标并转换为地面摄影坐标。

(2)量测控制点的像点坐标并作系统误差改正。

(3)确定未知数的初始值。

在竖直摄影且地面控制点大体对称分布的情况下,按如下方法确定初始值,即nX XS∑=0,nY YS∑=,∑+=Z nmf Z S10000===κωϕ(4)用三个角元素的初始值按下式,计算各个方向余弦值,组成旋转矩阵Rωϕκωϕκϕκωϕκϕωκωκωωϕκωϕκϕκωϕκϕcos cos cos sin cos sin sin sin sin cos cos sin sin cos cos sin cos cos sin cos sin sin sin cos sin sin sin cos cos 321321321=+-=+=-===-=--=-=c c c b b b a a a(5)逐点计算像点坐标的近似值。

利用未知数的近似值和控制点的地面坐标;带入共线方程式,逐点近似像点坐标的近似值(x )、(y )。

(6)逐点计算误差方程式的系数和常数项,组成误差方程式。

(7)计算法方程的系数矩阵A A T 和常数项L A L ,组成法方程式。

(8) 解法方程,求得外方位元素的改正数κωϕd d d d d d 、、、、、S S S Z Y X 。

(9)用前次迭代取得的近似值,加本次迭代的改正数,计算外方位元素的新值。

KS K S K S K S K S K S K S K S K S dZ Z Z dY Y Y dX X X +=+=+=---111,,K K K K K K K K K d d d κκκωωωϕϕϕ+=+=+=---111,,(10)将求得的外方位元素改正数与规定的限差比较,若小于限差,则迭代结束。

单像空间后方交会

单像空间后方交会

摄影测量学实习报告遥感07011班吴倩200732590254一、实习目的1.掌握空间后方交会的定义和实现算法(1)定义:空间后方交会是以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,φ,ω,κ。

(2)算法:由于每一对像方和物方共轭点可列出2个方程,因此若有3个已知地面坐标的控制点,则可列出6个方程,解求6个外方位元素的改正数△Xs,△Ys,△Zs,△φ,△ω,△κ。

实际应用中为了提高解算精度,常有多余观测方程,通常是在影像的四个角上选取4个或均匀地选择更多的地面控制点,因而要用最小二乘平差方法进行计算。

2.了解摄影测量平差的基本过程(1)获取已知数据。

从摄影资料中查取影像比例尺1/m,平均摄影距离(航空摄影的航高)、内方位元素x0,y0,f;获取控制点的空间坐标Xt,Yt,Zt。

(2)量测控制点的像点坐标并进行必要的影像坐标系统误差改正,得到像点坐标。

(3)确定未知数的初始值。

单像空间后方交会必须给出待定参数的初始值,在竖直航空摄影且地面控制点大体对称分布的情况下,Xs0和Ys0为均值,Zs0为航高,φ、ω、κ的初值都设为0。

或者κ的初值可在航迹图上找出或根据控制点坐标通过坐标正反变换求出。

(4)计算旋转矩阵R。

利用角元素近似值计算方向余弦值,组成R阵。

(5)逐点计算像点坐标的近似值。

利用未知数的近似值按共线条件式计算控制点像点坐标的近似值(x),(y)。

(6)逐点计算误差方程式的系数和常数项,组成误差方程式。

(7)计算法方程的系数矩阵ATA与常数项ATL,组成法方程式。

(8)解求外方位元素。

根据法方程,解求外方位元素改正数,并与相应的近似值求和,得到外方位元素新的近似值。

(9)检查计算是否收敛。

将所求得的外方位元素的改正数与规定的限差比较,通常对φ,ω,κ的改正数△φ,△ω,△κ给予限差,通常为0.1′,当3个改正数均小于0.1′时,迭代结束。

(完整word版)摄影测量学单像空间后方交会程序设计作业

(完整word版)摄影测量学单像空间后方交会程序设计作业

using System;using System.Collections.Generic;using System.Linq;using System。

Text;namespace 单像空间后方交会{class Program{static void Main(string[] args){int x0, y0, i,j;double f, m;Console.Write("请输入像片比例尺:”);m = double。

Parse(Console.ReadLine());Console.Write(”请输入像片的内方位元素x0:”);//均以毫米为单位x0 = int。

Parse(Console.ReadLine());Console.Write(”请输入像片的内方位元素y0:”);y0 = int.Parse(Console。

ReadLine());Console。

Write("请输入摄影机主距f:”);f = double.Parse(Console.ReadLine());Console.WriteLine();//输入坐标数据double[,] zuobiao = new double[4,5];for (i = 0;i < 4;i++){for (j = 0;j < 5; j++){if (j < 3){Console.Write(”请输入第{0}个点的第{1}个地面坐标:”,i + 1, j + 1);zuobiao[i, j]= double.Parse(Console.ReadLine());}else{Console。

Write(”请输入第{0}个点的第{1}个像点坐标:”, i + 1, j - 2);zuobiao[i, j]= double.Parse(Console.ReadLine());}}Console。

WriteLine();}//归算像点坐标for (i = 0;i < 4;i++){for (j = 3; j < 5;j++){if (j == 3)zuobiao[i,j]= zuobiao[i,j] - x0;elsezuobiao[i, j] = zuobiao[i,j]- y0;}}//计算和确定初值double zs0 = m *f, xs0 = 0, ys0 = 0;for (i = 0;i 〈4;i++){xs0 = xs0 + zuobiao[i,0];ys0 = ys0 + zuobiao[i, 1];}xs0 = xs0 / 4;ys0 = ys0 / 4;//逐点计算误差方程系数double[,]xishu = new double[8, 6];for (i = 0;i < 8; i += 2){double x,y;x = zuobiao[i / 2,3];y = zuobiao[i / 2,4];xishu[i,0] = xishu[i + 1, 1] = -1 / m;xishu[i, 1]= xishu[i + 1, 0] = 0; xishu[i, 2]= -x / (m *f);xishu[i,3] = -f * (1 + x * x / (f * f));xishu[i, 4]= xishu[i + 1,3] = —x *y / f;xishu[i, 5] = y;xishu[i + 1, 2] = —y / (m *f); xishu[i + 1, 4] = -f *(1 + y * y / (f * f));xishu[i + 1, 5]= —x;}//计算逆阵double[,] dMatrix =matrixChe(matrixTrans(xishu), xishu);double[,] dReturn = ReverseMatrix(dMatrix,6);Console。

空间后方交会原理

空间后方交会原理
如果知道了每幅影像的6 个外方位元素,就能确定被摄物体与航摄影像的关系。因此,如何获取影像的外方位元素,一直是摄影测量工作者所探讨的问题。目前,从技术方面来说,解决这个问题主要有两种手段:一种是利用雷达、全球定位系统(GPS),惯性导航系统(INS)以及星相摄影机来获取影像的外方位元素;另一种是利用影像覆盖范围内一定数量的控制点的空间坐标与摄像坐标,根据共线条件方程,反求该影像的外方位元素,这种方法称为单幅影像的空间后方交会。在无法直接得到影像外方位元素的情况下,只能通过单像空间后方交会的方式来获取影像的外方位元素[2]。
式2-6,2-7其中:X 和Y 是控制点的地面坐标;和y'是控制点在摄影测量坐标系下的坐标值。
由此可以解算出参数X Y a,b,T ,T ,据此确定参数的初始值:
κ式2-8,注意:κ 值的确定采用的是全圆反正切,这和初等数学中的反正切图像不一样。该函数是计算机系统中的一个数学函数,将最后所得值归算到-180°到+180°之间。
文章来自中国硕士论文网,更多工程硕士论文就在中国硕士论文网,如需转载请保留一个链接:
参考文献
张剑清等著.摄影测量学[M].武汉:武汉大学出版社
李德仁等著.摄影测量与遥感概论[M].北京:测绘出版社
张凤举,张华海等编著.控制测量学[M].北京:煤炭工业出版社出版社
计算方向余弦矩阵方向余弦矩阵的形式如下:
式方向余弦的各个元素的计算方法求解影像的外方位元素的参数根据控制点的个数和坐标值,确定法方程,以其中一点A 为例,解释如下:各个系数的值即是2-2 中的各个改正数的系数值。
如果有四个已知的控制点,那么矩阵B就是8× 6的矩阵。使用四个以上的控制点,可以解出Δ的值(Δ = (BT B)?1 (BTε ))。然后重复步骤和1.3 进行一次迭代运算,即可完成单像空间后方交会的工作。

后方交会

后方交会

前方交会法:在己知的两个(或两个以上)己知点(A,B)上架站通过测量α角和β角,计算待测点(P)坐标的方法。

如下图所示,红色字母代表的站点为架站点(A,B):后方交会法:在待测点(P)上架站,通过使用三个己知点(A,B,C)及α角和β角计算待测点(P)坐标的方法。

如下图所示,红色字母代表的站点为架站点(P):一、引言在工程测量中,内业资料计算占有很重要的比重,内业资料计算的准确无误与速度直接决定了测量工作是否能够快速、顺利地完成。

而内业资料的计算方法及其所需达到的精度,则又直接取决于外业所用仪器及具体的放样目标和内业计算所用到的办公软件和计算方法。

计算机辅助设计(Computer Aid Design 简写CAD,常称AutoCAD)是20世纪80年代初发展起来的一门新兴技术型应用软件。

如今在各个领域均得到了普遍的应用。

它大大提高了工程技术人员的工作效率。

AutoCAD配合AutoLisp语言,还可以编制一些常用的计算程序,得到计算结果。

AutoCAD的特性提供了测量内业资料计算的另外一种全新直观明了的图形计算方法。

结合我们现正使用的徕卡全站仪的情况,其可以很方便地进行三维坐标的测量,通过AutoCAD的内业计算,①、在放样的过程中,可以用编程计算器结合全站仪,非常方便地、快速地进行作业;②、运用AutoCAD进行计算结果的验证;③、随着全站仪的推广和普及,极坐标的放样越来越成为众多放样方法中备受测量人员青睐的一种,而坐标计算又是极坐标放样中的重点和难点,由于一般的红线放样,工程放样中的元素多为点、直线(段)、圆(弧)等,故可以充分利用AutoCAD的设定坐标系、绘图和取点的功能,以及结合我们外业所用计算器的功能,从而大大减轻我们外业的工作强度及内业的工作量。

以下以冶勒电站厂区枢纽工程的一些实例来说明三者在工程测量中的应用。

二、测区概况冶勒电站厂址位于石棉县李子坪乡南桠村,距坝址11KM,距石棉县城40KM。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

距离后方交会计算(CASIO fx–4800P计算器)程序
一、程序功能
本程序适用于在一个未知点上设测站,观测两到个已知点的
距离后,解算该未知坐标。

本程序也可以在CASIO fx-4500P计算器及CASIO fx-4850P计算器上运行。

注意:这种观测两到个已知点的距离后解算该未知坐标的方法,缺少多余观测值,也就缺少检核条件。

二、源程序
Lbl 1:{ABCDEFQ}:A"XA":B”YA”:C"XB":D"YB":E"D1":F"D2":Q:J=0:G=Pol(C-A, D-B) :H=J+QCos-1((GG+EE-FF)÷2÷G÷E):
X"XP"=A+ECosH◢
Y"YP"=B+ESinH◢
Goto 1←┘
注:CASIO fx-4850改如下
Lbl 1:{ABCDEFQ}:A"XA":B”YA”:C"XB":D"YB":E"D1":F"D2":Q:J=0:G=Pol(C-A, D-B) :H=J+QCos-1((GG+EE-FF)÷2÷G÷E):"XP":
X=A+ECosH◢
"YP":Y=B+ESinH◢
Goto 1←┘
三、使用说明
1、规定
(1) 未知点为P点,已知点分别为A点、B点;
(2) P点至A点的距离为D1,P点至B点的距离为D2;
(3) 当A、B、P三点逆时针排列时,Q=-1;当A、B、P三点顺时针排列时,Q=1。

2、输入与显示说明
输入部分:
XA 输入A点的X坐标
YA 输入A点的Y坐标
XB 输入B点的X坐标
YB 输入B点的Y坐标
D1 输入P点至A点的距离为D1
D2 输入P点至B点的距离为D2
Q输入A、B、P三点排列方式(逆时针时,Q=-1;顺时针时,Q=1)
显示部分:
XP=×××所求点P的X坐标
YP=×××所求点P的Y坐标
四、算例
已知XA=,YB=,Xb=,YB=,D1=,D2=,A、B、P三点排列方式为逆时针(Q=-1),求P点的坐标。

输入数据后,经计算得
XP=
YP=
5800后方交会程序
HFJH(后方交会)
”X1”A: ”Y1”B:“X2”C:“Y2”D:“S1”S: “S2”F: “O”O: Rec(F,O): POI(S-I,-J) :I→N: -J→E: POI(C-A,D-B):J→T: I÷N→K: “K=”:K▲K×S→S:Rec(S,T+E): POI(A+I,B+J):Rec(I,J)
注解:
X1、Y1:已知点1坐标
X2、Y2:已知点2坐标
S1:自由设站点到已知点1距离
S2:自由设站点到已知点2距离
O:已知点1至自由设站点至已知点2的夹角
K:衡量交会点的精度,如若显示···或···即为交会坐标的精度很高
最后程序显示交会点的坐标
说明:ZXZB和HFJH程序从4800程序变换而来。

经过试运行,这两个改编过来的程序完全正确。

相关文档
最新文档