空间后方交会

合集下载

空间后方交会的解算

空间后方交会的解算

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

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

共线方程是依据相似三角形原理给出的,其形式如下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。

单像空间后方交会名词解释

单像空间后方交会名词解释

单像空间后方交会名词解释
单像空间后方交会是摄影测量学中的一个重要概念,它是指利用单个影像进行地物测量和定位的方法。

在单像空间后方交会中,通过对单张影像进行分析,可以确定地面上物体的位置和形状。

这个过程涉及到对影像中的特征点进行识别和匹配,然后利用相机内外参数以及影像上的像点坐标来计算地物的三维坐标。

单像空间后方交会的过程包括以下几个步骤,首先是对影像进行预处理,包括去畸变、影像配准等操作;然后是特征点的提取和匹配,这一步是通过计算机视觉算法来实现的,可以利用角点、边缘等特征来进行匹配;接下来是相机内外参数的标定,这一步是为了将像素坐标转换为实际世界坐标而进行的;最后是利用已知的相机参数和像点坐标来计算地物的三维坐标。

单像空间后方交会在航空摄影、遥感影像解译和地图制图等领域有着广泛的应用。

它可以通过对单张影像的处理,实现对地物的测量和定位,为地理信息系统和地图制图提供了重要的数据基础。

同时,随着计算机视觉和图像处理技术的不断发展,单像空间后方交会的精度和效率也在不断提高,为各种应用领域提供了更加可靠和精确的地物信息。

第五讲 单片空间后方交会

第五讲 单片空间后方交会

x12 − f (1 + 2 ) f xy − 1 1 f
2 x2 − f (1 + 2 ) f

x1 y1 f
y12 − f (1 + 2 ) f − x2 y2 f
x y − 2 2 f
2 x3 − f (1 + 2 ) f
2 y2 − f (1 + 2 ) f

x3 y3 f
xy − 3 3 f
Y B
A
C X
利用航摄像片上三个以上像点坐标和对应像 点坐标和对应地面点坐标,计算像片外方位元 素的工作,称为单张像片的空间后方交会。 进行空间后方交会运算,常用的一个基本公 式是前面提到的共线方程。式中的未知数,是 六个外方位元素。由于一个已知点可列出两个 方程式,如有三个不在一条直线上的已知点, 就可列出六个独立的方程式,解求六个外方位 元素。由于共线条件方程的严密关系式是非线 性函数,不便于计算机迭代计算。为此,要由 严密公式推导出一次项近似公式,即变为线性 函数。
(5) 用所取未知数的初始值和控制点的地面坐标,代入共线方程式,逐 ) 用所取未知数的初始值和控制点的地面坐标,代入共线方程式, 点计算像点坐标的近似值 ( x), ( y ) 并计算 lx , l y a ( X − X S ) + b1 (Y − YS ) + c1 ( Z − Z S ) x=−f 1 a3 ( X − X S ) + b3 (Y − YS ) + c3 ( Z − Z S ) a ( X − X S ) + b2 (Y − YS ) + c2 ( Z − Z S ) y=−f 2 a3 ( X − X S ) + b3 (Y − YS ) + c3 ( Z − Z S ) (6) 组成误差方程式。 ) 组成误差方程式。 7) 计算法方程式的系数矩阵与常数项,组成法方程式。 (7) 计算法方程式的系数矩阵与常数项,组成法方程式。 (8) 解算法方程,迭代求得未知数的改正数。 ) 解算法方程,迭代求得未知数的改正数。

后方交会法计算推导公式

后方交会法计算推导公式

后方交会法计算推导公式后方交会法是一种用于计算物体在空间中的坐标和距离的方法。

它基于两个观测者在不同位置观测同一个物体的现象。

假设有两个观测者A和B,在空间中观测同一个物体P。

观测者A 和B的位置分别为A(xA, yA, zA)和B(xB, yB, zB)。

物体P在观测者A和B的朝向上的投影分别为a和b,它们的长度分别为dA和dB。

根据几何关系,可以推导出以下公式:dA = sqrt((xA - xP)^2 + (yA - yP)^2 + (zA - zP)^2)dB = sqrt((xB - xP)^2 + (yB - yP)^2 + (zB - zP)^2)其中,(xP, yP, zP)是物体P的坐标。

如果已知dA、dB和相关观测者位置的坐标,可以使用这些公式来计算物体P的坐标(xP, yP, zP)。

同时,如果已知物体P在两个观测者朝向上的投影长度a和b,也可以利用这些公式计算物体P到观测者A和B的距离。

需要注意的是,后方交会法在实际应用中可能会受到观测误差的影响,因此在计算时需要考虑这些误差,并采取合适的数据处理和精度控制方法。

拓展:后方交会法是测量和定位的重要方法之一,广泛应用于地理测量、摄影测量、建筑工程等领域。

它可以通过精确的测量和计算,确定物体在三维空间中的准确位置和形状,对于工程设计、地理信息系统等具有重要的实际应用价值。

除了后方交会法,还有其他一些方法可以用于测量和定位物体的坐标和距离,比如三角测量法、三角高程测量法、全站仪测量法等。

每种方法都有其适用的场景和局限性,根据具体的测量需求和条件选择合适的方法是非常重要的。

此外,随着科技的进步和发展,新的测量和定位技术不断涌现,为实现更精确和高效的测量和定位提供了更多的选择。

单像空间后方交会

单像空间后方交会

单像空间后方交会测绘学院 成晓倩1 概述1.1 定义利用一定数量的地面控制点和对应像点坐标求解单张像片外方位元素的方法称为空间后方交会。

1.2 所需控制点个数与分布共线条件方程的一般形式为:⎪⎪⎩⎪⎪⎨⎧-+-+--+-+--=--+-+--+-+--=-)()()()()()()()()()()()(33322203331110S S S S S S S S S S S S Z Z c Y Y b X X a Z Z c Y Y b X X a f y y Z Z c Y Y b X X a Z Z c Y Y b X X a f x x (1)式中包含有六个外方位元素,即κωϕ、、、、、S S S Z Y X ,只有确定了这六个外方位元素的值,才能利用共线条件方程真正确定一张像片的任一像点与对应地面点的坐标关系。

个数:对任一控制点,我们已知其地面坐标)(i i i Z Y X 、、和对应像点坐标)(i i y x 、,代入共线条件方程可以列出两个方程式,因此,只少需要3个控制点才能解算出六个外方位元素。

在实际应用中,为了避免粗差,应有多余检查点,因此,一般需要4~6个控制点。

分布:为了最有效地控制整张像片,控制点应均匀分布于像片边缘,如下图所示。

由于共线条件方程是非线性的,直接答解十分困难,所以首先将共线方程改化为线性形式,然后再答解最为简单的线性方程组。

2 空间后方交会的基本思路分布合理 分布合理 分布不合理2.1 共线条件方程线性化的基本思路在共线条件方程中,令)()()()()()()()()(333222111S S S S S S S S S Z Z c Y Y b X X a Z Z Z c Y Y b X X a Y Z Z c Y Y b X X a X -+-+-=-+-+-=-+-+-= (2) 则共线方程变为⎪⎪⎩⎪⎪⎨⎧-=--=-ZY fy y Z Xf x x 00 (3) 对上式两侧同乘Z ,并移至方程同侧,则有⎩⎨⎧=-+=-+0)(0)(00Z y y Y f Z x x X f (4) 令⎩⎨⎧-+=-+=Zy y Y f Fy Zx x X f Fx )()(00 (5) 由于上式是共线方程的变形,因此,Fy Fx 、是κωϕ、、、、、S S S Z Y X 的函数。

单向空间后方交会名词解释

单向空间后方交会名词解释

单向空间后方交会名词解释
单向空间后方交会是指在测量学中用于确定目标位置的一种方法。

它通常用于地理测量、导航和航空航天领域。

在这种方法中,
通过测量目标物体在不同位置的角度和距离,然后利用三角测量原
理来计算目标物体的位置坐标。

这种方法需要至少两个观测点,每
个观测点都测量目标物体与自身的角度和距离,然后通过三角计算
来确定目标物体的位置。

这种方法通常用于需要测量远距离目标位
置的情况,例如在航空航天领域中用于确定飞行器或卫星的位置。

单向空间后方交会方法的优点之一是可以通过简单的测量手段
来确定目标位置,而不需要直接测量目标物体与观测点之间的距离。

这使得它在某些情况下比其他测量方法更为实用和经济。

然而,这
种方法也有一些局限性,例如需要准确的角度测量和观测点之间的
相对位置确定等要求。

同时,由于测量误差的累积,可能会对最终
的位置计算结果产生一定的影响。

总的来说,单向空间后方交会是一种常用的测量方法,它通过
角度和距离测量来确定目标位置,适用于需要测量远距离目标位置
的情况。

然而,在实际应用中需要注意测量精度和误差控制等因素,以确保最终计算结果的准确性。

空间后方交会

空间后方交会

1
0
sin 0 cos
则:
R R 1 c s0 i o ns 1 0 0 cs0o in s c s0i o ns 0 0 0 cs0o in s 0 0 10 0 01 0 0
将该式代入上式(a),得:
Y X Z a a a1 3 2
X
Y
Y X
k
Z 0
将上述偏导数代入,可以求得其余的系数如下
a14
y sin
[
x f
(x cos k
y sin k )
f
cos k]cos
a15
f
sin k
x f
(x sin k
y cos k)
a16 y
a24
x sin
[
x f
(x cos k
y sin k
f
sin
k)
f
sin k ]cos
a25
f
cos k
y f
(x sin k
y cos k
a26 x
当竖直投影时,角元素都是小角(小于3度),此时可近似认为
k 0 ,Z A Z S H ,各个系数的表达式可以得到简化。
空间后方交会计算中的误差方程和法方程
由于有六个未知数,所以至少需要知道三个 已知的地面控制点,为了能够平差,通常在 像片的四个角选取四个或更多的地面控制点。
式中,x,y为像点坐标的观测值,(x),(y)为用控制点的物方坐标及 外方位元素的近似值代入中心投影方程求得的像点坐标近似值。
用矩阵形式表示为 VAX l
b1 b2 b3
c10 01XAXS 0 c2 0 00 YAYS b3 c3 100 ZAZS b2

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

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

摄影测量学实验报告实验一、单像空间后方交会学院:建测学院班级:测绘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.实验结果四.实验总结此次实验让我深入了解单像空间后方交会的计算过程,加强了对空间后方交会基本公式和误差方程式,法线方程式的记忆。

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

X A XS X A XS T T T = Rk Rω R YA YS = Rk1 Rω1 R 1 YA YS Z A ZS Z A ZS
所以:
XA XS X A XS 1 1 X R R Y = Rk1 Rω1 YA YS = Rk1 Rω1 R 1 R YA YS Z A ZS Z A ZS Z XA XS 1 R 1 YA YS , (a) = R R Z A ZS
a26=
y f Y Z = 2( Z Y) k k k Z
由于:
X a1 Y = a2 Z a3
b1 b2 b3
c1 X A X S X A X S c2 YA YS = RT YA YS Z A ZS c3 Z A Z S
第三章 单张航摄像片解析
单张像片的空间后方交会 如果我们有每张像片的六个外方位元素,就 能恢复航摄像片与被摄地面之间的几何关系, 重建地面的立体模型。 我们可以利用一定数量的地面控制点,根据 共线方程,反求像片的外方位元素,这种方 法称之为单张像片的空间后方交会。
一、空间后方交会的基本公式
空间后方交会的数学模型是共线方程,即中心投影的构像方程:
x = f y = f
X
Z
Y
Z
各偏导数是系数,用新的符号表示,则:
x a11 = = X S
( f
X)X S来自Z =f 1X Z Z X X S X S
2
Z = (a1 f + a3 x)
=f
a1 Z + a3 X
2
Z
Z
同理可推导出
a12 = 1 x = (b1 f + b3 x) YS Z 1 x a13 = = (c1 f + c3 x) Z S Z a21 = 1 y = (a2 f + a3 y ) X S Z y 1 a22 = = (b2 f + b3 y ) YS Z y 1 = (c2 f + c3 y ) Z S Z
或写成: Vx = a11dX S + a12 dYS + a13 dZ S + a14 d + a15 dω + a16 dk l x V y = a21dX S + a22 dYS + a23 dZ S + a24 d + a25 dω + a26 dk l y 其中: a 1 ( X A X S ) + b1 (Y A Y S ) + c1 ( Z A Z S )
式中,x,y为像点坐标的观测值,(x),(y)为用控制点的物方坐标及 外方位元素的近似值代入中心投影方程求得的像点坐标近似值。
用矩阵形式表示为 V = AX l 式中: T
V = Vx V y
[ [
]
a11 A= a21
a12 a22
a13 a23
a14 a24
a15 a25
a16 a26
四、空间后方交会的精度 求解各未知数的精度可以通过法方程系数矩阵求逆的方 法,解由其相应的权倒数 Qii ,按照下式计算未知数 的中误差
mi = m0 Qii
式中,m0 称为单位权中误差,计算公式为:
m0 = ± [VV ] 2n 6
这里,n为控制点的总个数。
式中,(x),(y)为函数的近似值。 dX S , dYS , dZ S , d , dω , dk 为六个外方位元素的改正数。
下面我们将各个偏导数的求法推演如下: 为书写方便,我们令共线方程中的分母、分子用下式表达:
X = a1 ( X A X S ) + b1 (YA YS ) + c1 ( Z A Z S ) Y = a2 ( X A X S ) + b2 (YA YS ) + c2 ( Z A Z S ) Z = a3 ( X A X S ) + b3 (YA YS ) + c3 ( Z A Z S )
空间后方交会的计算过程 1)获取已知数据:从摄影资料中查取像片比例尺,平 均航高,内方位元素;从外业测量成果中,获取控 制点的地面测量坐标并转换为地面摄影测量坐标。 2)量测控制点的坐标:将控制点标刺在像片上,利用 立体坐标量测仪量测控制点的像框标坐标系坐标, 并经像主点坐标改正,得到像点坐标x,y; 3)确定未知数的初始值:在竖直摄影的情况下,角元 素的初始值为0,即 0 = ω 0 = k0 = 0 ;线元素 X 中, Z S 0 = H = mf , S 0 , YS 0 取值可 1 4 X S 0 = ∑ X tpi 4 i =1 用四个角上的控制点坐标的平均值,即:
x = f y = f a1 ( X A X S ) + b1 (YA YS ) + c1 ( Z A Z S ) a3 ( X A X S ) + b3 (YA YS ) + c3 ( Z A Z S ) a2 ( X A X S ) + b2 (YA YS ) + c2 ( Z A Z S ) a3 ( X A X S ) + b3 (YA YS ) + c3 ( Z A Z S )
计算中,通常将地面控制点的坐标认为是真值,而把相应的像点 坐标认为是观测值,加入相应的改正数 Vx ,Vy ,得 x + Vx , y + Vy 列 , 出如下的每个点的误差方程式为:
x x x x x x Vx = dX S + dY S + dZ S + d + dω + dk + ( x ) x X S YS Z S ω k V = y dX + y dY + y dZ + y d + y d ω + y dk + ( y ) y S S S y X S YS Z S ω k
l x = x ( x ) = x + f a ( X X ) + b (Y Y ) + c ( Z Z ) 3 3 3 A S A S A S l = y ( y ) = y + f a 2 ( X A X S ) + b 2 (Y A Y S ) + c 2 ( Z A Z S ) y a 3 ( X A X S ) + b 3 (Y A Y S ) + c 3 ( Z A Z S )
当竖直投影时,角元素都是小角(小于3度),此时可近似认为 = ω = k = 0, Z A Z S = H ,各个系数的表达式可以得到简化。
空间后方交会计算中的误差方程和法方程 由于有六个未知数,所以至少需要知道三个 已知的地面控制点,为了能够平差,通常在 像片的四个角选取四个或更多的地面控制点。
将该式代入上式(a),得:
X a1 Y = a2 Z a3 b1 b2 b3 c1 0 0 1 X A X S 0 c2 0 0 0 YA YS = b3 c3 1 0 0 Z A Z S b2 b3 0 b1 b2 X Y b1 0 Z
按照相仿得方法可得:
Z sin k X Y = Z cos k ω Z X sin k Y cos k
X Y Y = X k Z 0
将上述偏导数代入,可以求得其余的系数如下
x ( x cos k y sin k ) + f cos k ] cos ω f x a15 = f sin k ( x sin k + y cos k ) f a16 = y a14 = y sin ω [ x ( x cos k y sin k f sin k ) f sin k ] cos ω f y a25 = f cos k ( x sin k + y cos k f a26 = x a24 = x sin ω [
上式是非线性函数,为了便于计算机计算,需要按泰勒级数展开, 舍弃二次项,使之线性化得:
x x x x x x x = ( x) + dX S + dYS + dZ S + d + dω + dk X S YS Z S ω k y = ( y ) + y dX + y dY + y dZ + y d + y dω + y dk S S S X S YS Z S ω k
a23 =
另外,
x f X Z a14 = = 2 ( Z X) Z
x f X Z a15 = = 2 ( Z X) ω ω ω Z
x f X Z a16 = = 2 ( Z X) k k k Z
y f Y Z = 2 ( a24 = Z Y) Z
y f Y Z a25 = = 2 ( Z Y) ω ω ω Z
1 4 YS 0 = ∑ Ytpi 4 i =1
4) 计算旋转矩阵R:利用角元素的近似值计算 方向元素,组成旋转矩阵R。 5)逐点计算像点坐标的近似值:利用未知数 的近似值按照共线方程计算控制点像点坐 标的近似值(x),(y); 6) 组成误差方程式 7) 组成法方程式 8)解求外方位元素 9)检查计算是否收敛:将求得外方位元素的 改正数与规定的限差比较,小于限差则计 算终止,否则迭代计算。
X = [dX S V = lx ly
]
dYS
dZ S
d

dk ]
T
若有n个控制点,构成总误差方程式 V = AX L 根据最小二乘原理,得法方程式 AT PAX = AT PL 由此得未知数的表达式
X = ( AT A) 1 AT PL
由于未知数的近似值往往是粗略的,因此,计 算必须通过逐渐趋近的方法,即用近似值与改 正数的和作为新的近似值,重复计算过程,求 出新的改正数,这样反复趋近,直到改正数小 于某一个限值为止。
而:
cos T R 1 = R = 0 sin cos R R = 0 sin
相关文档
最新文档