作业4--空间后方交会资料.docx
《作业4--空间后方交会资料.docx》由会员分享,可在线阅读,更多相关《作业4--空间后方交会资料.docx(17页珍藏版)》请在三一文库上搜索。
1、摄影测量作业报告之空间后方交会陈闻亚20080729作业报告空间后方交会专 业:测绘工程班 级: 2008 级班姓 名:陈闻亚指导教师:陈强2010年 4月 16日1作业任务 32作业思想 33作业条件及数据 34作业过程 35源程序 46计算结果 177心得体会与建议 17-1 -摄影测量作业报告之空间后方交会陈闻亚200807291作业任务计算近似垂直摄影情况下后方交会解。即利用摄影测量空间后方交会的方法,获取相 片的6个外方位元素。限差为 0.1。2作业思想利用摄影测量空间后方交会的方法求解。该方法的基本思想是利用至少三个一直地面 控制点的坐标 A (Xa, Ya, Za)、B (Xb,
2、 Yb, Zb) C (Xc, Yc, Zc),与其影像上对应的 三个像点的影像坐标a (%,ya)、b(xb,yb)、c(xc,yc),根据共线方程,反求该相片的外方位元素 Xs、Ys、Zs、6 3、ko3作业条件及数据已知摄影机主距f=153.24mm ,四对点的像点坐标与相应的地面坐标列入下表:表1点万像点坐标地面坐标x (mm)y(mm)X(m)Y(m)Z(m)1-86.15-68.9936589.4125273.322195.172-53.40-82.2137631.0831324.51.728.69314.7876.6339100.9724934.982386.50410.4664
3、.4340426.5430319.81757.314作业过程4. 1获取已知数据相片比例尺1/m=1 : 10000,内方位元素f=153.24mm , x, y;获取控制点的地面测量 坐标 Xt、Yt、Zt。4. 2量测控制点的像点坐标:本次作业中为已知。见表 1。4. 3确定未知数的初始值:在近似垂直摄影情况下,月射M素的初始值为0,即 而=助=咫=0;线元素中,Zs0=H=mf=1532.4m , Xs。、Ys0的取值可用四个控制点坐标的平均值,即:Xs0= 144、Xi =38437.00-9 -1丫 so=44、丫 =89106.62i 14. 4计算旋转矩阵R:利用胶原素的近似值计
4、算方向余弦值,组成R阵。4. 5逐点计算像点坐标的近似值:x) (y)。利用未知数的近似值按共线方程式计算控制点像点坐标的近似值(4. 6组成误差方程:陈闻亚20080729逐点计算误差方程式的系数和常数项。4. 7组成法方程式:计算法方程的系数矩阵ATA与常数项ATL。4. 8求解外方位元素:根据法方程,由式 X= (AtA) -1 ATL解求外方位元素改正数,并与相应的近似值求和, 得到外方位元素新的近似值。4. 9求解外方位元素:将求得的外方位元素的改正数与规定的限差(0.1)比较,小于限差则计算终止,否则用新的近似值重复第 4.4至4.8步骤的计算,知道满足要求为止。5源程序#incl
5、ude #include #include const double PRECISION=1e-5;typedef double DOUBLE5;int InputData(int &Num, DOUBLE *&Data,double &m,double &f);int Resection(const int &Num,const DOUBLE *&Data,const double &m,const double &f); int InverseMatrix(double *matrix,const int &row);int main(int argc, char* argv) DOUBL
6、E *Data=NULL;int Num;double f(0),m(0);if(InputData(Num,Data,m,f)if (Data!=NULL) delete 口Data; return 1;if(Resection(Num,Data,m,f)if (Data!=NULL) delete 口Data;return 1;陈闻亚20080729if (Data!=NULL)delete 口Data;printf(解算完毕n);doprintf(计算结果保存于 结果.txt文件中n”请选择操作(输入P打开结果数据,R打开原始数据,其它退出程序):”);fflush(stdin);刷新输
7、入流char order=getchar();if (P=order | p=order)system(结果.txt);else if (R=order | r=order)system(data.txt);elsebreak;system(cls);while(1);system(PAUSE);return 0;/* 函数名:InputData* 函数介绍:从文件(data.txt)中读取数据,* 文件格式如下:* 点数m(未知写作0)* 内方位元素(f x0 y0)* 编号x y X Y Z* 实例:4 0153.24 0 01 -86.15-68.99 36589.41 25273.32
8、 2195.172 -53.40 82.21 37631.08 31324.51 728.693 -14.78 -76.63 39100.97 24934.98 2386.504 10.46 64.43 40426.54 30319.81 757.31 *参数:(in/out)Num(点数),陈闻亚20080729*(in/out)Data(存放数据),m,f,x0,y0*返回值:int , 0成功,1文件打开失败,2控制点个*数不足,3文件格式错误*/int InputData(int &Num, DOUBLE *&Data,double &m,double &f) double x0,y0
9、;FILE *fp_input;if (!(fp_input=fopen(data.txt,r)return 1;fscanf(fp_input,%d%lf,&Num,&m);if (Num4)return 2;fscanf(fp_input,%lf%lf%lf,&f,&x0,&y0);f/=1000;if (m0 | f0)return 3;Data=new DOUBLENum;double *temp= new doubleNum-1;double scale=0;int i;for (i=0;iNum;i+)读取数据,忽略编号if(fscanf(fp_input,%*d%lf%lf%lf
10、%lf%lf, &Datai0,&Datai1,&Datai2, &Datai3,&Datai4)!=5)return 3;单位换算成mDatai0/=1000.0;Datai1/=1000.0;陈闻亚20080729/如果m未知则归算其值if (0=m)for (i=0;iNum-1;i+)tempi=(Datai2-Datai+12)/(Datai0-Datai+10)+ (Datai3-Datai+13)/(Datai1-Datai+11);scale+=tempi/2.0;m=scale/(Num-1);fclose(fp_input);delete 口temp;return 0;/*
11、 函数名:MatrixMul* 函数介绍:求两个矩阵的积,* 参数:Jz1(第一个矩阵工row(第一个矩阵行数),* Jz2(第二个矩阵),row(第二个矩阵列数),com(第一个* 矩阵列数),(out)JgJz(存放结果矩阵)*返回值:void*/void MatrixMul(double *Jz1,const int &row,double *Jz2, const int &line,const int &com,double *JgJz)for (int i=0;irow;i+)for (int j=0;jline;j+)double temp=0;for (int k=0;kcom;
12、k+)temp+=*(Jz1+i*com+k)*(*(Jz2+k*line+j);*(JgJz+i*line+j尸temp;*陈闻亚20080729* 函数名:OutPut* 函数介绍:向结果.txt文件输出数据* 参数:Q协因数阵,m精度,m0单位权中误差,6个外* 方位元素,旋转矩阵*返回值:int, 0成功,1失败*/int OutPut(const double *&Q,const double *&m,const double &m0, const double &Xs,const double &Ys,const double &Zs, const double &Phi,cons
13、t double &Omega, const double &Kappa,const double *R)FILE *fp_out;if (!(fp_out=fopen(结果.txt,w)return 1;FILE *fp_input;if (!(fp_input=fopen(data.txt,r)return 1; fprintf(fp_out, *n);fprintf(fp_out,n空间后方交会程序(CC+)n测绘一班n ”学号:20080729n姓名:陈闻亚nn);fprintf(fp_out,*n);fprintf(fp_out,已知数据:nn 已知点数:);int num;doub
14、le temp,x,y;fscanf(fp_input,%d%lf,&num,&temp);fprintf(fp_out,%dn,num);fprintf(fp_out,摄影比例尺(0表示其值位置):);fprintf(fp_out,%10.0lfn,temp);fprintf(fp_out,内方位元素(f x0 y0):); fscanf(fp_input,%lf%lf%lf,&temp,&x,&y);陈闻亚20080729fprintf(fp_out,%10lft%10lft%10lfn,temp,x,y);for (int i=0;inum;i+)double temp5;fscanf(
15、fp_input,%*d%lf%lf%lf%lf%lf, &temp0,&temp1,&temp2,&temp3,&temp4);fprintf(fp_out,%3dt%10lft%10lft%10lft%10lft%10lfn, i+1,temp0,temp1,temp2,temp3,temp4);fclose(fp_input);fprintf(fp_out,*n,);fprintf(fp_out,计算结果如下:nn外方位元素:n);fprintf(fp_out,tXs=%10lfn,Xs);fprintf(fp_out,tYs=%10lfn,Ys);fprintf(fp_out,tZs=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 作业 空间 后方 交会 资料
链接地址:https://www.31doc.com/p-11667725.html