基于matlab的坐标转换 - 图文(2)

2019-08-26 17:15

河南理工大学本科毕业论文

1 引言

1.1绪论

随着全球经济和科技的飞速发展,越来越多的新技术新方法被应用于各个领域行业中,带给各领域新的发展契机和更为广阔的发展前景。作为与人们日常生活息息相关的测绘事业,也非常迫切地需要充分运用新的科技产品来更新测绘学科知识、提高测绘设备水平、改善测绘技能和方法,促进全球测绘一体化趋势的发展,从而更为有效地发挥测绘事业对社会、对国家、对人民大众服务的支撑作用。伴随大地测量领域的不断发展,坐标转换作为基础而重要的理论知识越来越多地被应用到规范和统一各类和各区域甚至全球测绘资料等相关方面。每个国家都会根据自身的发展情况和历史条件建立合适的测量坐标系统,这些测量坐标系基本都是基于地固坐标系统的参心坐标系或者地心坐标系,而且由于经济的发展或者习惯的变化,往往每个国家在不同的历史阶段也会采用不同的坐标系统,另外在实际的测量生产中,在某些未布设国家级大地控制网的地方或为了测量的方便建立不同于国家坐标系的地方独立坐标系。美国从1972年开始开发第二代卫星导航系统(即为现在通常所说的GPS),它采用WGS-84地心坐标系统,凭借自身具有的全天候、连续实时、全球范围以及三维导航和定位等特点,在测绘领域很快被广泛采用,从而使测绘资料的全球一体化逐渐成为新的发展趋势。与此同时,坐标转换也成为一个越来越重要的课题,在测绘工作中发挥越来越重要的作用。

坐标转换本身是一个复杂的数值计算过程,倘若采用人工计算,必将增加计算的难度,费时费力且不能保证计算的精确度,因此对于坐标转换来讲,不但要研究更为严密的坐标转换方法,还要不断地借助技术更加优良的坐标转换工具来提高转换成果的质量以及简化计算的过程,从而使测绘资料得到更加有效地利用和统一。这不仅有利于我国的坐标系与国际通用坐标系相统一和共享,还有利于我国测绘事业的发展。 1.2 研究现状

由于坐标系的不同之处主要是坐标系的定位、定向以及尺度各异,因此若要保证坐标系间的转换精度,首先需要研究各种类型的坐标转换的理论方法。目前,测绘领域的坐标转换方法模型等研究已经相当成熟。不同参考椭球坐标转换的方法有直接参数法、多项式逼近法和相似变换法等。其中七参数法是坐标转换中的经典严密的常用坐标转换方法,我国通常采用的七参数数学模型为莫洛金斯基(Molodensky)模型、布尔莎(Bursa)模型和中国的武测模型等,这些转换模型已经广泛应用在各种工程测绘中。为确保坐标转换的质量,除了选取适当的转换模型之外,还需要不断地借助于一些新技术新工具,从而在提高坐

1

河南理工大学本科毕业论文

标转换精度的同时,也能够尽量简化程序编写过程。为此广大的测绘工作者利用计算机开发出许多内嵌于测量仪器或独立的坐标转换软件,并取得了很大成果。但由于采用的计算工具或方法的差异导致各种坐标转换产品转换的精度和操作的难易程度都不尽相同,甚至一些独立的小型坐标系统还无法保证正确的计算结果。而且,我国目前使用的坐标转换产品中很多都是国外软件,使用过程繁琐复杂且购买成本高。因此,需要开发一种性能更加良好的坐标转换工具来改善目前的情况。

目前,我国已正式启用最新的坐标系统—2000国家大地坐标(CGCS2000),这就要求要把现阶段大量的1954年北京坐标系或1980年国家大地坐标系的成果转换到CGCS2000坐标系中,从而坐标转换再一次被提到了很重要的位置。今后,在常用坐标转换工具中也会出现各个坐标系向CGCS2000系坐标转换的模块。然而,我们目前运用坐标转换工具的编写大部分采用单一的VB、C++高级语言等,这些语言在编写程序时都存在着一些潜在的不足。例如:VB程序界面的编写操作非常简便、灵活,但在编写测量程序代码的过程中由于其内置的数学运算函数较少,导致程序编写很复杂,而且也给后续的程序调试工作带来很大的困难。因此,在刚刚启用CGCS2000坐标系的时候,一种编写程序简便、界面操作灵活的软件来编写坐标转换工具是非常必要的。 1.3本文研究的主要内容

本文的核心内容是用MATLAB数学计算软件解决坐标转问题。由于我国现有的大量测量成果大部分都涉及到1954年北京坐标系或1980年国家大地坐标系等参心坐标系与WGS-84坐标系的转换,其转换原理同CGCS2000坐标系和WGS-84坐标系间转换的原理基本一致,因此本文主要针对上述两种参心坐标系分别与WGS-84坐标系的坐标转换来研究。通过MATLAB数学运算软件在坐标转换方面的应用,认识到了MATLAB用于测绘行业的优势,并对这一技术应用到测绘领域的其它方面做了铺垫。论文的主要内容如下:

1.介绍了MATLAB的基本功能及特点,然后最后利用MATLAB软件编制了常用的坐标转换的一些模型函数(代码见附录)。

2.简要介绍了坐标转换方面的基本理论知识,包括地球椭球和参考椭球的定义、大地测量常用的坐标系;再详细介绍了不同参考椭球基准的坐标系转换和同一参考椭球基准常用坐标形式之间的换算过程和方法。

3.结合WGS-84坐标系和我国常用的1954年北京坐标系、1980年国家大地坐标系等,利用文中提出的MATLAB编制了坐标转换函数;最后以工程实例验证了MATLAB在解决坐标转换问题的有效性和可行性,并对本文进行总结和展望。

2

河南理工大学本科毕业论文

2 MATLAB软件的基本功能及特点

2.1 MATLAB的发展历程及基本功能

MATLAB的诞生源于对数值计算的需求。1980年,美国新墨西哥州大学计算机系主任Cleve Moler为了便于学生使用计算机计算,用Fortran语言编写出最初的MATLAB(即Matrix Laboratory的前三个字母)并受到广泛地欢迎和使用之后Moler继续对MATLAB进行开发和研究,并与一些数学家、软件专家合作成立Mathworks软件开发公司。MATLAB第一个商业版本在1984年问世;而后MATLAB通过不断地更新和添加不同的功能,如独特的符号运算、种类多样的绘图技术、多媒体应用以及与其他流行语言的接口功能等,逐渐发展壮大,8年之后,MATLAB4.0版本问世;经过很多功能的改进和增加,1999年该公司推出MATLAB5.0版本并随之推出了全新Simulink3.0版本,使MATLAB达到了新高度;之后又对操作界面做了很大的改观,并建立了程序发布窗口、变量管理窗口及历史信息窗口等,于2000年10月推出了更为便捷的MATLAB 6.0版本;2001年6月问世的MATLAB 6.1,其增加的虚拟显示工具箱能在三维实景下显示出更好的仿真结果;在界面设计不断完善的同时,MATLAB的核心数值算法和外部接口应用等功能得到了更多改善,并于2003年6月推出MATLAB Simulink 5.0版以及2004年9月推出MATLAB7.0,使MATLAB的功能更加庞大,之后每年均推出两个版本。MATLAB经过多年来的不断研究和完善,已经把最初只用于矩阵等数学计算发展为一种新型计算机编程高级语言,具有广泛的应用前景和推广价值。

MATLAB的功能主要包括MATLAB语言、MATLAB开发环境、MATLAB数学函数库、绘图系统和MATLAB应用程序接口(API)等几大部分。

1.MATLAB语言

MATLAB语言具有函数、程序流控制、输入输出、数据结构和面向对象编程等特征,是一种基于矩阵或者数组的高级计算机语言,尤其在大型编程方面其编写速度具备较大优势。

2.MATLAB开发环境

MATLAB函数和文件工具集就是MATLAB的开发环境。MATLAB的开发环境是一个集成的工作空间,方便人机交互式输入输出数据,而且具备对程序的编译和调试功能。它包括MATLAB桌面、执行命令窗口、历史命令窗口、M文件编辑调试器、MATLAB工作空间和在线帮助文档等。

3.数学函数库

MATLAB在解决数学计算中繁琐和困难的矩阵计算问题具备突出优势。它

3

河南理工大学本科毕业论文

以矩阵作为数据操作的基本单位,大大简化了矩阵计算,使其变得更加高效和方便。此外,MATLAB还提供了数量巨大种类丰富的数值计算函数库,可方便快速地解决多个领域的数值计算问题。

4.绘图技术

MATLAB的绘图技术主要是针对图形句柄的操作,操作种类分为高低两层。MATLAB可以十分方便地绘制各种图形,还可针对不同的需要来修饰和控制图形,具备强大的数值可视化共功能。

5.MATLAB应用程序接口(API)

MATLAB应用程序接口是一种函数库。该函数库能调用动态链接库(DLL)来完成MATLAB文件与C、Fortran等其他高级编程语言的数据交换,在MATLAB与其他应用程序间实现交互功能。

6.MATLAB工具箱(Toolbox)

工具箱(Toolbox)是MATLAB具备的一种特有的家族产品,用于解决不同领域的问题。它的实质是M文件和高级MATLAB语言函数库,可以使用户很容易地修改或者增加函数和代码。还可以使用户使用不同的工具箱来解决不同领域的问题。MATLAB工具箱一直在更新中,大致分为:应用类工具箱、控制类工具箱、信号处理类工具箱和其他常用工具箱。 2.2 MATLAB的优点

MATLAB与其他同类产品相比较,其在数值及符号运算、图形图像处理和可开发性等方面的功能更具优势。它具备简单易学、易操作、开放性、实用性强等优点,作为一种面向21世纪的科学计算语言,是目前科研和工程技术等众多领域的必备工具。

具体优点主要有: 1.编程易学且工作效率高

MATLAB不同于编译性语言,用户可以以一种更接近于书写计算公式的思维方式直接编写类似数学形式语言的程序。而且MATLAB程序文件还是一个扩展名为.m纯文本文件,若要对其进行编写和修改则可使用任何文字处理软件,同时也便于调试,有很强大的人机交互性。MATLAB是用C语言开发的,因此它的程序流控制语句同C语言极为相似,用户可以很容易就掌握它的使用方法。另外,MATLAB系统还有功能非常强大的帮助系统,能够以查询的方式帮助用户得到更多信息。MATLAB还有intro和demo等演示命令,为用户提供简单易懂的例子和演示。

2.平台独立性

MATLAB包含大量的平台独立功能,可以与Windows98/2000/NT系统和

4

河南理工大学本科毕业论文

UNIX的多种版本等很多操作系统兼容。同一个编写好的程序,在不同的平台上都可运行正常,同一个编写好的数据文件,在不同的平台上都可编译成功。这样极大地便于用户将MATLAB编写的程序和数据等移植到新平台使用,具有很强的平台独立性。

3.预定义函数

MATLAB自身含有一个用来解决基本工程问题的大型预定义函数库,函数库中的函数有成百上千个且均可直接使用。它可以避免输入例如数组下标、统计量等的诸多麻烦,使编程变成一件非常简单的事情。除此以外,针对一些重要领域的复杂问题,MATLAB还加载了多种专用工具箱来方便地解决。这些工具箱涉及的方面有信号处理、通信、控制系统、神经网络、图像处理和其它领域的诸多相关问题。

4.数学运算方面

除了拥有超强优势的数值计算功能,MATLAB还可凭借自己的符号运算功能帮助用户轻松地解决繁杂数学运算的分析问题,比如矩阵变换及运算、微积分运算、线性与非线性方程求解、插值求解等问题。另外,MATLAB的函数都具备算法先进的自适应能力,弥补了非可执行文件的MATLAB程序运行速度欠佳的不足,从而解决了计算机对算法的选择难题。

5.机制独立的画图

MATLAB作为一种可视化数据技术的卓越工具,有着其他语言所没有的许多画图或图像处理命令。MATLAB运行这些命令之后,相应的二维或者三维图形或图像就会显示出来。

6.MATLAB编译器

MATLAB编译器先将MATLAB程序编译成某种独立性程序,再以解释的方式运行该程序,很好地体现出MATLAB的平台独立性能。

7.可扩充性和可开发性

MATLAB具有可扩充和可开发功能,这些功能保障了MATLAB自身能不断地发展和完善。MATLAB相当于一个解释系统,它以一种解释执行的方式来运行函数程序,这种系统最大的特点就是MATLAB具备一个开放的系统,便于用户查看和添加程序代码。 2.3 MATLAB程序设计基础

2.3.1 MATLAB程序设计的基本原则

突破以往其他程序语言经常采用的循环思想,尽量用MATLAB矩阵式语言书写程序,使得程序简洁,执行效率高。在程序设计中尽量避免重复的脚本代码,多用MATLAB提供的函数。系统中的函数要比用一般代码编的函数执行效率高很

5


基于matlab的坐标转换 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2.1.2指数函数及其性质(2个课时)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: