单像空间前方交会实习报告
- 格式:pdf
- 大小:305.48 KB
- 文档页数:11
摄影测量学单像空间后方交会实习报告一、实习目的1.掌握空间后方交会的定义和实现算法(1)定义:空间后方交会是以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,φ,ω,κ。
(2)算法:由于每一对像方和物方共轭点可列出2个方程,因此若有3个已知地面坐标的控制点,则可列出6个方程,解求6个外方位元素的改正数△Xs,△Ys,△Zs,△φ,△ω,△κ。
实际应用中为了提高解算精度,常有多余观测方程,通常是在影像的四个角上选取4个或均匀地选择更多的地面控制点,因而要用最小二乘平差方法进行计算。
2.了解摄影测量平差的基本过程(1)获取已知数据。
从摄影资料中查取影像比例尺1/m,平均摄影距离(航空摄影的航高)、内方位元素x0,y0,f;获取控制点的空间坐标X,Y,Z。
(2)量测控制点的像点坐标并进行必要的影像坐标系统误差改正,得到像点坐标。
(3)确定未知数的初始值。
单像空间后方交会必须给出待定参数的初始值,在竖直航空摄影且地面控制点大体对称分布的情况下,Xs0和Ys0为均值,Zs0为航高,φ、ω、κ的初值都设为0。
或者κ的初值可在航迹图上找出或根据控制点坐标通过坐标正反变换求出。
(4)计算旋转矩阵R。
利用角元素近似值计算方向余弦值,组成R阵。
(5)逐点计算像点坐标的近似值。
利用未知数的近似值按共线条件式计算控制点像点坐标的近似值(x),(y)。
(6)逐点计算误差方程式的系数和常数项,组成误差方程式。
(7)计算法方程的系数矩阵ATA与常数项ATL,组成法方程式。
(8)解求外方位元素。
根据法方程,解求外方位元素改正数,并与相应的近似值求和,得到外方位元素新的近似值。
(9)检查计算是否收敛。
将所求得的外方位元素的改正数与规定的限差比较,通常对φ,ω,κ的改正数△φ,△ω,△κ给予限差,通常为0.000001弧度,当3个改正数均小于0.000001弧度时,迭代结束。
【最新整理,下载后即可编辑】摄影测量学单像空间后方交会编程实习报告班级:130x姓名:xx学号:2013302590xxx指导老师:李欣一、实习目的通过对提供的数据进行计算,输出像片的外方位元素并评定精度。
深入理解单像空间后方交会的思想,体会在有多余观测情况下,用最小二乘平差方法编程实现解求影像外方位元素的过程。
通过尝试编程实现加强编程处理问题的能力和对实习内容的理解,通过对实验结果的分析,增强综合运用所学知识解决实际问题的能力。
了解摄影测量平差的基本过程,掌握空间后方交会的定义和实现算法。
二、实习内容根据学习的单像空间后方交会的知识,用程序设计语言(C++或C语言)编写一个完整的单像空间后方交会程序,通过对提供的数据进行计算,输出像片的外方位元素并评定精度。
三、实习数据已知航摄仪的内方位元素:fk =153.24mm,x=y=0,摄影比例尺为1:15000;4个地面控制点的地面坐标及其对应像点的像片坐标:四、实习原理如果我们知道每幅影像的6个外方位元素,就能确定被摄物体与航摄影像的关系。
因此,如何获取影像的外方位元素,一直是摄影测量工作者所探讨的问题。
可采取的方法有:利用雷达、全球定位系统(GPS)、惯性导航系统(INS)以及星相摄影机来获取影像的外方位元素;也可以利用影像覆盖范围内一定数量的控制点的空间坐标与摄影坐标,根据共线条件方程,反求该影像的外方位元素,这种方法称为单幅影像的空间后方交会。
单像空间后方交会的基本思想是:以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,ϕ,ω,κ。
五、 实习流程1. 获取已知数据。
从摄影资料中查取影像比例尺1/m ,平均摄影距离(航空摄影的航高、内方位元素x 0,y 0,f ;获取控制点的空间坐标X t ,Y t ,Z t 。
2. 量测控制点的像点坐标并进行必要的影像坐标系统误差改正,得到像点坐标。
Elen航空摄影测量实习报告第一章实习数据输入已知数据:相机参数、控制点数据和影像数据第早内疋向与像点坐标量测2.1内定向2.2双向量测图2-2.单片量测结果2.3实验分析在摄影测量过程中,必须先进行影像的内定向。
内定向即通过输入像片主距和量测影像框标,并且进行相应计算来完成,其目的是恢复影像中的内方位元素,确定其他像平面坐标系和以像主点为原点的像平面坐标系之间的关系以及影像可能存在的变形。
该实验中需要拖动鼠标使叉丝与图像吻合,所以必须仔细,耐心的操作,才能够最大程度上减小误差。
第三章后方交会与前方交会3.1原理空间后方交会的原理:以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空时刻的外方位元素。
空间前方交会的原理:在待定点上向至少三个已知点的坐标进行水平角观测,并根据三个已知点的坐标几两个水平角值计算待定点坐标的方法。
空间后方交会-前方交会算法就是通过给定像对的外方位元素初始值、控制点的物方坐标、以及控制点和待定点的量测坐标---像平面坐标等,可以解算得到各点的物方坐标,实现“像片坐标一物方坐标”的解算。
3.2后方交会与前方交会实验网醴删j咖度,-也睦-GO1N011=0331.11B23IS ・■72t30:112 (F3B100301G 41 01*0224-15^1-51:1431'4 SC1KQZ1U .-1E31.30.-135&1-,巴止:1 y U167.0157197 085153U37353433.54;01;珈绘制点雄;⑷=aa 50SB. 9丹L M曰龙弟厂栓査慈差;磁1 m 1J49.恤*.期乔一■ ------------------ ■~~——■— - _ —坨用点号跖侏I斥岸120 4615^9 434E107■17 GEZI45 236*Mltea 4.19B3,21D9811566^6119626^017申B,羽刃fH56■33.10273401389IDS■57D97J IO3B7S dl旳引10511 GD40 4 2.420555S14C101 305G27312199213,720■ZE■1&M2510^09-1K.5EXI1中謎19.1349310.7053-71出和*|_左歆藤感遞絶〔航诡甄臧1靈痕I 垂图3-2.后方交会与前方交会计算结果(S01N01|S01N02)3.3实验分析该实验目的是确定地面点的坐标,首先需要利用后方交会求得像片外方位元素。
单像空间后方交会实习报告摘要本报告旨在总结并评估笔者在单像空间后方交会实习中的经验和收获。
首先,报告介绍了单像空间后方交会实习的目的和背景。
接着,报告详细描述了实习期间所进行的实验和操作步骤。
在实习过程中,笔者遇到了一些挑战,但通过团队合作和专业指导取得了成功。
最后,报告总结了实习对于个人职业发展的重要性,并提出了改进实习体验的建议。
1. 引言单像空间后方交会是测量和分析地球或其他星球上的点的空间坐标的方法之一。
该方法通过将来自不同位置的图像投影到一个共同的平面上,并在该平面上对图像进行测量和分析,以确定点的坐标。
本实习旨在将现实生活中的实地测量和图像处理技术相结合,通过实际操作了解和掌握单像空间后方交会的原理和应用。
2. 实习过程本次实习分为三个步骤:图像获取、图像处理和空间坐标计算。
2.1 图像获取首先,为了进行后续的图像处理和分析,我们需要获取一组具有不同视角的图像。
为了实现这个目标,我们选择了一片公共景区进行实地测量。
在测量过程中,我们使用了专业的测量设备和相机,并按照一定的间隔和角度拍摄了一组图像。
这些图像将被用于后续的图像处理和分析。
2.2 图像处理在图像处理阶段,我们使用了专业的图像处理软件对获取到的图像进行处理。
首先,我们使用了相机标定算法对相机内外参数进行校准,以保证后续测量的精度和准确度。
然后,我们对每张图像进行了特征点提取和匹配,以建立图像之间的对应关系。
最后,根据所获得的对应关系,我们重建了图像场景的三维模型,并将其用于后续的空间坐标计算。
2.3 空间坐标计算在空间坐标计算阶段,我们使用了单像空间后方交会的原理,计算了每个图像特征点的空间坐标。
首先,我们将图像场景的三维模型与图像上的特征点进行对应,以确定特征点在三维空间中的位置。
然后,我们利用三角测量原理计算出特征点的三维坐标。
最后,通过对所有图像特征点的计算,我们可以得到目标点的空间坐标。
3. 实习挑战与解决在实习过程中,我们遇到了一些挑战,如图像质量、算法调优和测量误差等。
前方交会测量实习报告一、实习目的与任务本次实习的主要目的是让我们掌握前方交会的基本原理和方法,熟悉相关的测量仪器和工具的使用,提高我们的动手操作能力和解决实际问题的能力。
实习任务包括进行前方交会测量,计算交会的成果,并对测量结果进行精度分析。
二、实习原理前方交会是一种常用的测量方法,它通过在两个或多个测站上使用测角仪器(如经纬仪或全站仪)进行观测,确定测站之间的方位角和距离,从而达到确定测站位置的目的。
前方交会的基本原理是利用测站上的测角仪器测得的目标方向和测站之间的距离,通过计算求得测站的位置。
三、实习过程在实习过程中,我们首先进行了理论学习的环节,了解了前方交会的基本原理和方法,熟悉了相关的测量仪器和工具的使用。
然后,我们在老师的指导下,进行了实际操作,包括设置测站、观测目标、记录数据等步骤。
在实际操作中,我们使用了经纬仪和全站仪进行观测,通过测角仪器测得了目标方向和测站之间的距离。
然后,我们利用测量数据,通过计算求得了测站的位置。
在计算过程中,我们使用了专业的测量软件,提高了我们的计算效率和精度。
四、实习成果与分析通过实习,我们成功地完成了前方交会测量,计算出了测站的位置。
通过对测量结果的精度分析,我们发现测量结果的精度符合要求,达到了预期的效果。
在实习过程中,我们不仅提高了自己的动手操作能力,还学会了与他人合作,提高了团队协作能力。
同时,我们也深刻体会到了测量工作的重要性和精密性,增强了自己的专业素养。
五、实习总结通过本次实习,我们对前方交会测量有了更深入的了解,熟悉了相关的测量仪器和工具的使用,提高了自己的动手操作能力和解决实际问题的能力。
同时,我们也学会了与他人合作,提高了团队协作能力。
我们相信,这次实习对我们今后的学习和工作中会有很大的帮助。
单像空间后方交会实习报告本文是一份单像空间后方交会实习报告,旨在总结和分享本人在这个领域进行实习的经验和所得。
一、实习背景和目的在开始正文之前,首先介绍一下实习的背景和目的。
本次实习是为了深入了解单像空间后方交会的原理和应用,并提升我的实践能力。
通过与团队合作,完成一系列的实习任务和项目,我期望能够在这个领域不断成长和进步。
二、实习内容和方法2.1 实习内容本次实习主要涉及单像空间后方交会的方法和技术。
我通过参与实际项目,了解和学习了从数据采集到数据处理的整个流程,并深入研究了相关的算法和工具。
2.2 实习方法为了能够全面了解单像空间后方交会的知识和技术,我采用了多种实习方法。
首先,我积极参与了团队的讨论和会议,与同事们交流和分享我们的学习和经验。
其次,我通过独立完成一些小型项目和任务,提升了自己的实践能力。
此外,我还阅读了大量的相关文献和资料,深入研究了该领域的理论知识。
三、实习成果和收获3.1 实习成果在实习期间,我完成了几个实践项目任务,并取得了一些成果。
首先,我成功实现了单像空间后方交会的基本原理和方法,并在实际项目中应用。
其次,我编写了一份详尽的实习报告,总结了整个实习过程和所得的经验。
3.2 实习收获通过这次实习,我获得了很多宝贵的经验和收获。
首先,我深入了解并掌握了单像空间后方交会的原理和方法,提升了自己的实践能力。
其次,我学会了如何与团队合作,并通过与他人的交流和合作进一步提升自己。
此外,我还学会了如何独立思考和解决问题,在实践中培养了自己的创新思维能力。
四、实习感悟和建议4.1 实习感悟通过实习,我深刻体会到了理论与实践的结合的重要性。
只有将所学的理论知识应用到实践项目中,才能真正理解和掌握。
在实践中遇到各种困难和挑战,我也学会了如何从失败中总结经验,再次进行尝试。
4.2 实习建议对于即将进行单像空间后方交会实习的同学们,我有几点建议。
首先,要注重理论知识的学习和积累,打好基础。
单像空间后方交会实习报告一、引言在我参加实习项目期间,我有幸在测绘工程实践中学习到了单像空间后方交会的相关知识和技能。
本报告旨在总结和详细介绍我在这个项目中所学到的内容,并分享我在实践中的经验和感悟。
二、实习背景实习项目的目标是通过使用单像空间后方交会方法对给定的影像数据进行三维测量,实现对地物位置和形状的准确测绘。
实习过程中,我所参与的任务是基于无人机获取的航片进行测绘,希望能达到较高的准确性和精度。
三、实习内容1. 影像数据获取与准备为了能够进行后方交会,首先我需要获取一组高质量、清晰度较高的影像数据。
在实习项目中,我们使用了专业的无人机拍摄了一系列航测相片。
在选择相机设备、安装和定位无人机方面,我们尽可能保证了影像的质量和准确性。
2. 影像处理和点提取获取到影像数据后,对影像进行预处理以满足后方交会的需要。
这一步骤包括图像的几何校正、色调校正等。
接下来,从影像中手动或者自动提取出具有明显特征点的区域,作为后方交会的控制点。
3. 单像空间后方交会参数计算在进行后方交会之前,需要确定准确的内、外方位元素。
内方位元素包拟化比例分母纸试验、比例尺、转分度仪、坐标尺等设备。
外方位元素的测量利用经纬度、高程等信息,通过空间三角测量的方法来计算。
4. 控制点的标定和精度评定为了保证交会精度,需要至少有三个以上的控制点,同时还需在计算之前对这些控制点进行标定。
控制点的标定首先进行坐标基准的精确定义,然后通过重复测量来评估控制点的精度。
5. 三维坐标的计算根据前面计算得到的内、外方位元素以及控制点的坐标,可以利用单像空间后方交会的方法来计算其它像上点的坐标。
这一步骤主要涉及相对定向和绝对定向的计算,其中相对定向可以通过一些数学模型和算法来实现。
四、实习总结通过参与单像空间后方交会实习项目,我深刻认识到了测绘工程的重要性和挑战性。
在实践中,我学到了很多相关的知识和技能。
首先,我掌握了使用无人机获取影像数据的方法和技巧,了解了影像处理的基本步骤和注意事项。
空间后交-前交程序设计(实验报告)姓名:班级:学号:时间:空间后交-前交程序设计一、实验目的用 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. 掌握前方交会测量的操作方法和步骤;3. 熟悉测量仪器的使用和保养;4. 学会前方交会测量的数据处理和精度评定;5. 培养学生的团队协作精神和严谨的工作态度。
三、实习内容1. 前方交会测量的基本原理前方交会测量是一种基于三角测量的定位方法,其基本原理是:在已知位置的两点A和B上,分别观测待定点P,得到两个观测值,根据这两个观测值可以计算出待定点P的坐标。
2. 前方交会测量的操作方法(1)确定交会点:在实地选择两个已知点A和B,并确保它们之间的距离适中,便于观测。
(2)架设仪器:在A点和B点分别架设经纬仪,确保仪器水平。
(3)瞄准目标:在A点瞄准B点,在B点瞄准A点,调整仪器,使两个瞄准点重合。
(4)观测记录:在A点和B点分别对目标点P进行观测,记录观测值,包括角度和距离。
(5)数据处理:将观测值输入计算机,进行数据处理,计算待定点P的坐标。
3. 前方交会测量的数据处理和精度评定(1)数据处理:将观测值输入计算机,进行角度和距离的归算、改正,计算待定点P的坐标。
(2)精度评定:根据计算结果,评定前方交会测量的精度,包括点位中误差、角度中误差等。
四、实习过程1. 实习准备:了解前方交会测量的基本原理、操作方法和数据处理过程,熟悉测量仪器。
2. 实地操作:在指导老师的带领下,进行前方交会测量实验。
3. 数据处理:将观测值输入计算机,进行数据处理,计算待定点P的坐标。
4. 结果分析:分析前方交会测量的精度,评估实验结果。
五、实习总结1. 通过本次实习,学生掌握了前方交会测量的基本原理、操作方法和数据处理过程,提高了实际操作能力和分析问题、解决问题的能力。
摄影测量学单像空间后方交会编程实习报告本次实习中,我使用编程语言进行了单像空间后方交会的实现,并取得了一定的成果。
首先,我了解了单像空间后方交会的基本原理。
根据光线在透镜上的成像规律,可以推导出物体点在像平面上的坐标与图像点在像平面上的坐标之间的关系式。
通过已知的摄像机内外方位元素和图像点坐标,可以反求得物体点的坐标。
在程序编写过程中,我采用了Python编程语言。
首先,我定义了一个类,用于存储摄像机的内外方位元素和图像点坐标。
然后,我编写了一个函数,用于计算物体点的坐标。
该函数根据已知的内外方位元素和图像点坐标,使用逆向投影的方式反求物体点的坐标。
最后,我编写了一个主函数,通过读取输入文件中的数据,调用计算函数,并将结果保存到输出文件中。
在实现的过程中,我遇到了一些问题。
首先,由于摄像机的内外方位元素需要提前获取,因此我通过测量方法获得了实际的内外方位元素。
然而,测量的过程中存在一定的误差,因此在计算物体点坐标时可能存在一定的误差。
其次,图像坐标与物体点坐标之间的关系式中存在一些参数,如焦距、主点坐标等,这些参数也需要提前获取。
在程序中,我将这些参数作为输入参数,通过外部文件进行输入。
在实习的过程中,我充分运用了自己所学的摄影测量学知识,并将其与编程技能相结合。
在实现过程中,我遇到了一些难题,但通过查阅资料和与老师的讨论,最终得以解决。
通过编程实习,我深入理解了单像空间后方交会的原理,并通过实际操作提高了自己的计算能力。
总的来说,本次实习使我对摄影测量学有了更深入的认识,也提升了我的计算和编程能力。
通过此次实习,我对摄影测量学的兴趣更加浓厚,也更加期待在今后的学习和研究中能够进一步深入探索。
摄影测量实习报告(大全5篇)第一篇:摄影测量实习报告成都信息工程学院摄影测量专业:遥感科学与技术班级: 092班姓名: xxxx 学号: xxxxxx 指导老师: xxxxx一、实习目的:1、摄影测量软件a.完成VirtuoZ0系统所带的一对数字摄影图像的内定向、相对定向、绝对定向,并生成核线影像。
156-155b.用生成的核线影像自动生成等高线、正射影像、DEM、并将等高线与正射影像叠合。
c.进行数字影像测图。
调出模型,在立体环境下完成部分测图任务。
(应交成果)2、遥感图象处理a.用ERDAS软件读出校区的QUICKBIRD影像,将多光谱图像与全色图像进行融合。
并裁减出校区范围的子图象。
b.从前面实习所测的地形图上得到一些控制点,对子图像进行几何校正。
c.分类前对图像进行一些必要的处理(空间增强、辐射增强等),使图像有很好利于分类的视觉效果。
对该图像进行分类,分类后再对图像进行一些分类后处理,最后制作成分类专题图(应交成果)。
如果想得到更理想的分类图,可使用一些新分类方法进行分类处理。
二、实习步骤:1、摄影测量(VirtuoZ0软件的使用)1.本地连接>属性>配置>高级>网络地址的值改为“00E04C3AD92C”2.打开测区,即建立一个测区如e:1234。
在测区参数的主目录键入e:1234。
3.将数据准备好。
将已拷贝hamer文件夹下的控制点文件和相机参数文件拷贝到已建好的e:1234中。
将hamerimages下的一对影象如156-155拷贝到已建好的e:1234images中。
3.将测区参数输入并保存。
4。
建一个模型如在e:1234中建model模型,输入参数并保存。
5.按“处理”菜单中的顺序进行内定向、相对定向、绝对定向、定显示区,生成核线影象。
6.用生成的核线影像自动生成等高线、正射影像、DEM、并将等高线与正射影像叠合。
7.进行数字影像测图。
调出模型,在立体环境下完成测图任务。
摄影测量实习报告实习内容:单片空间后方交会编程实习者:李友兵学号:0810050121指导老师:张金平老师实习时间:2011.05.30——2011.06.03一、实习目的与任务此次摄影测量实习主要是要自主编程实现单像空间后方交会,通过已知的内方位元素和控制点像点坐标和地面坐标求解六个外方位元素,在此过程中深入理解单像空间后方交会的原理和对编程的熟悉和理解(我用的是C语言编程),和对时间的合理运用,对知识的综合运用,培养理论的实际运用能力,任务是在一个星期内自主完成。
二、单片空间后方交会理论基础单像空间后方交会:是通过以像点平面坐标为观测值,以控制点坐标为已知值,利用共线条件方程和最小二乘原理,运用间接平差方法,通过迭代求解6个外方位元素。
程序设计的思路与流程三、程序设计的思路与流程(编程框架和步骤)1、根据内方位元素和已知的数据将控制点的框标坐标转换为像平面坐标系坐标:x=x′-x0,y=y′-y02、确定未知数的初始值:角元素初始值κ0=ω0=Φ0=0;线元素初始值Zs0=H=mf,Xs0=(X1+X2+X3+X4)/4,Ys0=(Y1+Y2+Y3+Y4)/43、利用角元素初始值计算方向余弦值组成旋转矩阵Ra1=cosΦ*cosκ-sinΦ*sinω*sinκ,a2=-cosΦ*sinκ-sinΦ*sin ω*cosκ,a3=-sinΦ*cosωb1=cosω*sinκ,b2=cosω*cosκ,b3=-sinωc1=sinΦ*cosκ+cosΦ*sinω*sinκ,c2=-sinΦ*sinκ+cosΦ*sin ω*cosκ,c3=cosΦ*cosω4、逐点计算控制点的像点坐标的近似值,共线方程为:x=(-f*(a1*(X-Xs)+b1*(Y-Ys)+c1*(Z-Zs)))/(a3*(X-Xs)+b3*(Y-Ys) +c3*(Z-Zs))y=(-f*(a2*(X-Xs)+b2*(Y-Ys)+c2*(Z-Zs)))/(a3*(X-Xs)+b3*(Y-Ys)+c3*(Z-Zs))(x)=(-f*(a1*(X-Xs)+b1*(Y-Ys)+c1*(Z-Zs)))/(a3*(X-Xs)+b3*(Y-Y s)+c3*(Z-Zs))(y)=(-f*(a2*(X-Xs)+b2*(Y-Ys)+c2*(Z-Zs)))/(a3*(X-Xs)+b3*(Y-Y s)+c3*(Z-Zs))5、组成误差方程:Vx=a11*dXs+a12*dYs+a13*dZs+a14*dΦ+a15*dω+a16*dκ+(x)-xVy=a21*dXs+a22*dYs+a23*dZs+a24*dΦ+a25*dω+a26*dκ+(y)-y系数求解(是共线方程分别外方位元素求导,是共线方程线性化的系数):变量代换A= a1*(X-Xs)+b1*(Y-Ys)+c1*(Z-Zs)B= a2*(X-Xs)+b2*(Y-Ys)+c2*(Z-Zs)C= a3*(X-Xs)+b3*(Y-Ys)+c3*(Z-Zs)a11=(a1*f+a3*x)/C,a12=(b1*f+b3*x)/C,a13=(c1*f+c3*f)/C,a14=y *sinω-((x*(x*cosκ-y*sinκ))/f+f*cosκ)cosω,a15=-f*sin κ-(x*(x*sinκ+y*cosκ)/f),a16=ya21=(a2*f+a3*x)/C,a22=(b2*f+b3*x)/C,a23=(c2*f+c3*x)/C,a24=-xsinω-((x*(x*cosκ-y*sinκ))/f-f*sinκ)cos ω,a25=-f*cosκ-(y*(x*sinκ+y*cosκ)/f),a26 =-x 误差方程的常系数(是像点坐标观测值与计算的近似值的差值):lx=x-(x) ,ly=y-(y)6、组成法方程,解求外方位元素改正数X=(A T A)-1A T L(A为误差方程的系数矩阵,L为误差方程的常系数矩阵,通过步骤5求得,此处先求A T A再求矩阵的逆矩阵,解得的改正数加上相应的近似值得到外方位元素新的近似值)7、检查计算是否收敛:将求得的外方位元素改正数与规定的限差比较,大于限差继续迭代,小于限差则终止。
单像空间后方交会实习报告单像空间后方交会实习报告一、引言空间后方交会是摄影测量学中的一项重要内容,它能通过对已知控制点的旁边影像进行分析和计算,确定未知控制点的空间坐标,这在地图制作、城市规划、工程测量等领域有着广泛的应用。
本次实习旨在通过实际操作掌握空间后方交会的方法和技巧,进一步加深对摄影测量学的理解,并提升实际操作能力。
二、实习目的1. 学习空间后方交会的理论知识,了解其基本原理和计算方法。
2. 掌握使用数字相机采集控制点及待测控制点影像的技巧。
3. 熟练使用后方交会软件进行影像的处理和计算,得到待测控制点的空间坐标。
4. 分析实际数据的精度和误差,评估后方交会结果的可靠性。
三、实习过程1. 准备工作在实习开始前,我们需要准备好数字相机、相机标定板以及控制点和待测控制点的影像。
同时还需要安装并熟悉后方交会软件,以便后续处理和计算。
2. 影像采集首先,在实地选取控制点和待测控制点,并采用全站仪等测量仪器获取其地面坐标。
接着,通过相机标定板进行相机标定,获取相机内外参数。
然后,使用数字相机对控制点和待测控制点进行影像采集。
为了减小误差,我们要保证相机的光心与全站仪的标尺中心对准,并使用三脚架固定相机。
3. 影像的处理和计算将采集到的影像导入到后方交会软件中,根据相机内外参数和控制点的地面坐标,进行畸变校正和像点坐标的提取。
接下来,通过自动或手动方法选取控制点和待测控制点进行像点匹配。
通过匹配的像点坐标和已知控制点的地面坐标,利用后方交会公式进行计算,得到待测控制点的空间坐标。
4. 结果分析和评估对得到的结果进行精度分析,并评估其可靠性。
通过对比实测控制点的地面坐标与计算得到的空间坐标,计算精度检查,进一步评估后方交会结果的准确性。
同时,还要检查影像的质量和匹配的像点之间的差异,排除控制点标定、像点提取或匹配过程中出现的问题。
四、实习总结通过这次实习,我对空间后方交会的理论知识和实际操作有了更深入的了解。
一、实习目的本次实习的主要目的是通过单张影像的空间后方交会算法,掌握摄影测量学中的基本原理和方法,培养实际操作能力和理论联系实际的能力。
通过实习,要求学生了解空间后方交会的概念、原理和计算方法,熟练运用相关软件进行空间后方交会的实际操作,并对结果进行分析和评定。
二、实习内容1. 了解空间后方交会的基本概念:空间后方交会是一种摄影测量方法,通过分析单张影像上若干个控制点的地面坐标和像坐标,利用共线条件方程,求解影像的外方位元素。
2. 学习空间后方交会的原理:影像上的控制点与相机镜头中心形成共线方程,通过最小二乘法求解影像的外方位元素。
外方位元素包括六个参数:三个表示相机在三维空间中的位置,三个表示相机在三维空间中的姿态。
3. 掌握空间后方交会的计算方法:利用共线条件方程,通过最小二乘法求解外方位元素。
计算过程中需要注意控制点的选择、权重的分配和迭代求解的精度。
4. 熟悉空间后方交会的实际操作:使用相关软件(如MATLAB、ERDAS IMAGINE等)进行空间后方交会的实际操作,包括数据的输入、参数的设置和结果的输出。
5. 结果分析和评定:对空间后方交会的结果进行分析和评定,包括计算精度、误差分析和结果的可信度。
三、实习过程1. 理论学习和讨论:在学习空间后方交会的基本概念和原理的基础上,进行小组讨论,理解并掌握空间后方交会的计算方法。
2. 软件操作练习:在老师的指导下,使用相关软件进行空间后方交会的实际操作,熟悉软件的操作界面和功能。
3. 数据处理和计算:根据实习提供的数据,进行空间后方交会的计算,包括控制点的选择、权重的分配和迭代求解的过程。
4. 结果分析和评定:对空间后方交会的结果进行分析和评定,计算精度、误差分析和结果的可信度。
四、实习总结通过本次实习,我对空间后方交会的基本概念、原理和计算方法有了更深入的了解,掌握了相关软件的操作方法,并能够进行空间后方交会的实际操作。
在实习过程中,我学会了如何选择控制点、分配权重和判断迭代求解的精度。
摄影测量大学生实习报告三篇篇一:摄影测量大学生实习报告总结摄影测量实习总结本学期的最后一周,我们开始了摄影测量学的实习。
通过实习我认识到摄影测量学是通过获取立体影像来研究和确定被摄物体的形状、大小、空间位置、性质和相互关系的一门信息科学与技术。
摄影测量教学实习是“摄影测量学”课程教学的重要组成部分。
通过实习将课堂理论与实践相结合,使学生深入掌握摄影测量学基本概念和原理,加强摄影测量学的基本技能训练,培养学生分析问题和解决问题的实际动手能力。
通过实际使用数字摄影测量工作站,了解数字摄影测量的内定向、相对定向、绝对定向、测图过程及方法;编制数字影像分割程序,使学生掌握数字摄影测量基本方法与实现,为今后从事有关应用遥感立体影像和数字摄影测量打下坚实基础.我们本周实习的是数字摄影测量工作站的操作,数字摄影测量系统是基于数字影像与摄影测量的基本原理,应用计算机技术、数字影像处理、影像匹配、模式识别等多学科的理论与方法,提取所摄对象用数字方式表达的几何与物理信息,从而获得各种形式的数字产品和目视化产品。
数字摄影测量系统是摄影测量自动化的必然产物。
数字摄影测量系统为用户提供了从自动空中三角测量到测绘地形图的全套整体作业流程解决方案,大大改变了我国传统的测绘模式。
VirtuoZo 大部分的操作不需要人工干预,可以批处理地自动进行,用户也可以根据具体情况灵活选择作业方式,提高了行业的生产效率。
它不仅是制作各种比例尺的 4D 测绘产品的强有力的工具,也为虚拟现实和 GIS 提供了基础数据,是 3S 集成、三维景观和城市建模等最强有力的操作平台。
本次实习是采用 VirtuoZo 数字摄影测量系统(教学版),实习目的:了解数字摄影测量系统,掌握操作过程。
实习主要内容:1.数据准备,包括摄影比例尺、相机内方位元素、航高、航带数、像片排列、控制点分布等;2. 建立测区、设置测区参数;3. 建立模型、设置模型参数;4. 模型定向,包括内定向、相对定向、绝对定向方法与步骤。
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! == 摄影测量学单像空间后方交会编程实习报告篇一:摄影测量学单像空间后方交会编程实习报告摄影测量学单像空间后方交会编程实习报告班级:姓名:学号:201X302590xxx指导老师:李欣一、实习目的通过对提供的数据进行计算,输出像片的外方位元素并评定精度。
深入理解单像空间后方交会的思想,体会在有多余观测情况下,用最小二乘平差方法编程实现解求影像外方位元素的过程。
通过尝试编程实现加强编程处理问题的能力和对实习内容的理解,通过对实验结果的分析,增强综合运用所学知识解决实际问题的能力。
了解摄影测量平差的基本过程,掌握空间后方交会的定义和实现算法。
二、实习内容根据学习的单像空间后方交会的知识,用程序设计语言(C++或C语言)编写一个完整的单像空间后方交会程序,通过对提供的数据进行计算,输出像片的外方位元素并评定精度。
三、实习数据已知航摄仪的内方位元素:fk=153.24mm,x0=y0=0,摄影比例尺为1:15000;4个地面控制点的地面坐标及其对应像点的像片坐标:四、实习原理如果我们知道每幅影像的6个外方位元素,就能确定被摄物体与航摄影像的关系。
因此,如何获取影像的外方位元素,一直是摄影测量工作者所探讨的问题。
可采取的方法有:利用雷达、全球定位系统(GPS)、惯性导航系统(INS)以及星相摄影机来获取影像的外方位元素;也可以利用影像覆盖范围内一定数量的控制点的空间坐标与摄影坐标,根据共线条件方程,反求该影像的外方位元素,这种方法称为单幅影像的空间后方交会。
单像空间后方交会的基本思想是:以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,?,ω,κ。
五、实习流程1. 获取已知数据。
摄影测量学单像空间后方交会实习报告一、实习目的1.掌握空间后方交会的定义和实现算法(1)定义:空间后方交会是以单幅影像为基础,从该影像所覆盖地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线条件方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,φ,ω,κ。
(2)算法:由于每一对像方和物方共轭点可列出2个方程,因此若有3个已知地面坐标的控制点,则可列出6个方程,解求6个外方位元素的改正数△Xs,△Ys,△Zs,△φ,△ω,△κ。
实际应用中为了提高解算精度,常有多余观测方程,通常是在影像的四个角上选取4个或均匀地选择更多的地面控制点,因而要用最小二乘平差方法进行计算。
2.了解摄影测量平差的基本过程(1)获取已知数据。
从摄影资料中查取影像比例尺1/m,平均摄影距离(航空摄影的航高)、内方位元素x0,y0,f;获取控制点的空间坐标X,Y,Z。
(2)量测控制点的像点坐标并进行必要的影像坐标系统误差改正,得到像点坐标。
(3)确定未知数的初始值。
单像空间后方交会必须给出待定参数的初始值,在竖直航空摄影且地面控制点大体对称分布的情况下,Xs0和Ys0为均值,Zs0为航高,φ、ω、κ的初值都设为0。
或者κ的初值可在航迹图上找出或根据控制点坐标通过坐标正反变换求出。
(4)计算旋转矩阵R。
利用角元素近似值计算方向余弦值,组成R阵。
(5)逐点计算像点坐标的近似值。
利用未知数的近似值按共线条件式计算控制点像点坐标的近似值(x),(y)。
(6)逐点计算误差方程式的系数和常数项,组成误差方程式。
(7)计算法方程的系数矩阵ATA与常数项ATL,组成法方程式。
(8)解求外方位元素。
根据法方程,解求外方位元素改正数,并与相应的近似值求和,得到外方位元素新的近似值。
(9)检查计算是否收敛。
将所求得的外方位元素的改正数与规定的限差比较,通常对φ,ω,κ的改正数△φ,△ω,△κ给予限差,通常为0.000001弧度,当3个改正数均小于0.000001弧度时,迭代结束。
否则用新的近似值重复(4)~(8)步骤的计算,直到满足要求为止。
3.通过对提供的试验数据进行计算,输出像片的外方位元素并评定精度。
深入理解单片空间后方交会的原理,体会在有多余观测情况下,用最小二乘平差方法编程实现解求影像外方位元素的过程。
通过上机调试程序加强动手能力的培养,通过对实验结果的分析,增强综合运用所学知识解决实际问题的能力。
4.实习过程:4.1学习单张像片空间后方交会的基本理论,掌握其基本思想。
如果我们知道每幅影像的6个外方位元素,就能确定被摄物体与航摄影像的关系。
而单像空间后方交会就是用于测定像片的外方位元素的,它的基本思想是:以单幅影像为基础,从影像所覆盖的地面范围内若干控制点的已知地面坐标和相应点的像坐标量测值出发,根据共线方程,解求该影像在航空摄影时刻的外方位元素Xs,Ys,Zs,p,w,k.由于空间后方交会所采用的数学模型共线方程是非线性函数,为了便于外方位元素的解求,首先将其线性化。
4.2在纸上绘出空间后方交会的计算机程序框图。
为了能够在宏观上指导我们编写程序,我们需要在草稿纸上绘出程序框图。
二、源代码using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 单像空间的后方交会{public class calculate{private double j, k, l, Xs, Ys, Zs;//六个外方位元素private double f = 28.1539;//主距struct point //像点和地面点坐标{public double x, y, X, Y, Z;}private point[] p = new point[4];//存取控制点的坐标private double[] R = new double[9];//旋转矩阵private double[] a = new double[8];//近似值坐标private double[] L = new double[8];//误差方程常数项private double[,] A = new double[8, 6];//误差方程系数项private int count = 0;public void Y(double[] q){for (int n = 0; n < 4; n++){int m = n * 5;Console.WriteLine("请输入第{0}控制点的坐标", n + 1);q[m] = Convert.ToDouble(Console.ReadLine());q[m + 1] = Convert.ToDouble(Console.ReadLine());q[m + 2] = Convert.ToDouble(Console.ReadLine());q[m + 3] = Convert.ToDouble(Console.ReadLine());q[m + 4] = Convert.ToDouble(Console.ReadLine());p[n].x = q[m];p[n].y = q[m + 1];p[n].X = q[m + 2];p[n].Y = q[m + 3];p[n].Z = q[m + 4];}double ave = 0, sum = 0;// 求比例尺分母,用来求外方位元素for (int n = 0; n < 3; n++){for (int m = n + 1; m < 4; m++){sum += Math.Sqrt(Math.Pow(p[n].X - p[m].X, 2) + Math.Pow(p[n].Y - p[m].Y, 2)) / Math.Sqrt(Math.Pow(p[n].x - p[m].x, 2) + Math.Pow(p[n].y - p[m].y, 2));}}ave = sum / 6;double j = 0.054882; k = 0.057034; l = -0.036175;//六个外方位元素的近似值doubleXs = 500215.49;doubleYs = 4185301.89;doubleZs = 1475.56;}private double sin(double m){returnMath.Sin(m);}private double cos(double m){returnMath.Cos(m);}public void calX()//计算旋转矩阵{R[0] = cos(j) * cos(k) - sin(j) * sin(l) * sin(k);R[1] = -cos(j) * sin(k) - sin(j) * sin(l) * cos(k);R[2] = -sin(j) * cos(l);R[3] = cos(l) * sin(k);R[4] = cos(l) * cos(k);R[5] = -sin(l);R[6] = sin(j) * cos(k) + cos(j) * sin(l) * sin(k);R[7] = -sin(j) * sin(k) + cos(j) * sin(l) * cos(k);R[8] = cos(j) * cos(l);}public void calJSZ()//计算像点坐标近似值{for (int n = 0; n < 4; n++){a[2 * n] = -f * (R[0] * (p[n].X - Xs) + R[3] * (p[n].Y - Ys) + R[6] * (p[n].Z - Zs)) / (R[2] * (p[n].X - Xs) + R[5] * (p[n].Y - Ys) + R[8] * (p[n].Z - Zs));a[2 * n + 1] = -f * (R[1] * (p[n].X - Xs) + R[4] * (p[n].Y - Ys) + R[7] * (p[n].Z - Zs)) / (R[2] * (p[n].X - Xs) + R[5] * (p[n].Y - Ys) + R[8] * (p[n].Z - Zs));}}public void calXSJZandCSX()//计算系数矩阵和常数项{for (int n = 0; n < 4; n++)//计算常数项{L[2 * n] = p[n].x - a[2 * n];L[2 * n + 1] = p[n].y - a[2 * n + 1];}for (int n = 0; n < 4; n++)//计算系数矩阵{double z = R[2] * (p[n].X - Xs) + R[5] * (p[n].Y - Ys) + R[8] * (p[n].Z - Zs);A[2 * n, 0] = (R[0] * f + R[2] * p[n].x) / z;A[2 * n, 1] = (R[3] * f + R[5] * p[n].x) / z;A[2 * n, 2] = (R[6] * f + R[8] * p[n].x) / z;A[2 * n, 3] = p[n].y * sin(l) - (p[n].x * (p[n].x * cos(k) - p[n].y * sin(k)) / f + f * cos(k)) * cos(l); A[2 * n, 4] = -f * sin(k) - p[n].x / f * (p[n].x * sin(k) + p[n].y * cos(k));A[2 * n, 5] = p[n].y;A[2 * n + 1, 0] = (R[1] * f + R[2] * p[n].y) / z;A[2 * n + 1, 1] = (R[4] * f + R[5] * p[n].y) / z;A[2 * n + 1, 2] = (R[7] * f + R[8] * p[n].y) / z;A[2 * n + 1, 3] = p[n].x * sin(l) - (p[n].y * (p[n].x * cos(k) - p[n].y * sin(k)) / f - f * sin(k)) * cos(l);A[2 * n + 1, 4] = -f * cos(k) - p[n].y / f * (p[n].x * sin(k) + p[n].y * cos(k));A[2 * n, 5] = -p[n].x;}}public double calJSGZS()//计算改正数{double[,] AT = new double[6, 8];//A转置double[,] temp = new double[6, 6];//A转置与A的乘积double[] X = new double[6];//改正数double[] ATL = new double[6];//A转置与L相乘的积int n, m, s;for (n = 0; n < 8; n++)//求A的转置矩阵ATfor (m = 0; m < 6; m++){AT[m, n] = AT[n, m];}for (n = 0; n < 6; n++)//求A转置与A的乘积for (m = 0; m < 6; m++){temp[n, m] = 0;for (s = 0; s < 8; s++){temp[n, m] += AT[n, s] * A[s, m];}}MA(temp);//求逆for (n = 0; n < 6; n++)//求A的转置与L的乘积{for (m = 0; m < 8; m++){ATL[n] += AT[n, m] * L[m];}}for (n = 0; n < 6; n++)//求改正数X{for (m = 0; m < 6; m++){X[n] += temp[n, m] * ATL[m];}}Xs += X[0];Ys += X[1];Zs += X[2];j += X[3];k += X[4];l += X[5];returnXs;returnYs;returnZs;return j;return k;return l;}public void Main(string[] args)//计算流程n{while (count >= 4){calX();calJSZ();calXSJZandCSX();Console.WriteLine("第{0}次迭代的结果", count); calJSGZS();count++;}}private void MA(double[,] c){int i, j, h, m;constint n = 6;double l;double[,] q = new double[n, 12];for (i = 0; i < n; i++)//求高斯矩阵{for (j = 0; j < 12; j++){q[i, j] = c[i, j];}}for (i = 0; i < n; i++)//{for (j = 0; j < 12; j++)//构造单位阵{if (i + 6 == j)q[i, j] = 1;elseq[i, j] = 0;}}for (h = 0, m = 0; m < n - 1; m++, h++)//消去对角线以下的数据{for (i = m + 1; i < n; i++){if (q[i, h] == 0d)continue;l = q[m, h] / q[i, h];for (j = 0; j < 12; j++){q[i, j] *= l;q[i, j] -= q[m, j];}}}for (h = n - 1, m = n - 1; m > 0; m--, h--)//消去对角线以上的数据{for (i = m - 1; i >= 0; i--){if (q[i, h] == 0d)continue;l = q[m, h] / q[i, h];for (j = 0; j < 12; j++){q[i, j] *= l;q[i, j] -= q[m, j];}}}for (i = 0; i < n; i++)//将对角线上数据划为1{l = 1.0 / q[i, i];for (j = 0; j < 12; j++){q[i, j] *= l;}}for (i = 0; i < n; i++){for (j = 0; j < n; j++){c[i, j] = q[i, j + 6];}}}}}三、计算结果起算数据文件为:文件存储的计算结果为:11。