摘 要 本文主要研究了ICCP算法中的搜索最近等值线点算法来实现区域网格图上对应点的快速搜索,估计匹配精度的方法以及如何用Visual C++实现该算法,并通过编辑对话框和视图界面来完成本课题的数据和图形的输入和输出。 本文简单阐述了传统的ICP算法及其局限性,说明采用ICCP算法中的搜索最近等值线点算法来实现本课题的原因。在此基础上,对算法的原理进行了详细地分析,包括单位网格上等值线段的生成原理以及区域网格图上等值线点的提取过程,重点介绍了单位网格内等值线的提取以及出入点的确定方法。 给出了该算法的算法流程图,并用C语言编程实现算法,用Visual C++ 的MFC应用程序实现了对话框和视图界面的编辑,完成本课题的数据和图形的输入和输出。算法可以对话框的形式运行,实现了人机交互,提高了算法的可操作性和实用性。 分析了算法的精度度量方法,进行仿真试验,对测量航迹和匹配后的航迹间的误差进行定量分析,完成了对算法的精度度量。仿真实验证实,算法具有良好的精度,可用于作为重力辅助导航算法的一部分使用,具有很强的实用价值。 关键词:ICCP算法;对应点搜索;等值线生成;精度度量 ABSTRACT This paper mainly studied how to realize fast searching for the corresponding points on the region grid chart with the algorithm of Searching the Nearest Points on the Contour in ICCP algorithm, the precision measure method of the algorithm, and how to make use of the software of Visual C++ to carry out the editing of dialog box and the diagram interface in order to complete the input and output of data and sketches. It also simply introduced the traditional ICP algorithm and its limitation, the reason why we took ICCP algorithm to fulfill this task. On this foundation, we analyzed the principal of the algorithm in detail, including the principal of how to build the contour segment in the unit grid and on the region grid chart. Then we produced the flow chart for the algorithm, and introduced how to realize the algorithm with the C programming language and use the MFC application procedure of the Visual C++ to realize the editing of the dialog box and diagram, which make the operation of the whole program more convenient and readability. At last, we discussed the precision measure method of the algorithm. We made a series of simulation experiments, and analyzed the error between the true track and the nearest points track. The simulation experiment proved that the algorithm can reach a good precision and has very important practical value. We can make use of it as an indispensably part of the gravity aided navigation algorithm. Keyword: ICCP algorithm; corresponding points searching; contours generation; precision measurement 目 录 第1章 绪论 1 1.1课题背景和目的 1 1.2重力辅助导航系统 2 1.2.1重力辅助导航系统的基本原理 2 1.2.2重力辅助导航的关键技术 3 1.2.3重力辅助导航算法 4 1.3重力导航的优势及应用 5 1.3.1重力导航的优势 5 1.3.2重力导航的应用 6 1.4重力导航技术发展历程和现状 7 1.5论文的主要内容和结构安排 8 第2章 网格区域内等值线上最近点的搜索 11 2.1传统的ICP算法及改进 11 2.1.1 ICP算法的缺点及局限性 11 2.1.2 ICCP算法 12 2.1.3 ICCP算法对ICP算法的改进 12 2.2网格图上对应点搜索算法总体思想 14 2.3单位网格内等值线段生成 15 2.3 .1四个网点中不存在等于场值 时等值线的提取 15 2.3 .2四个网点中存在等于场值 时等值线的提取 19 2.4区域网格图上等值线点的提取 21 2.4.1确定离测量点最近的网格顶点 21 2.4.2从Zij点的3×3邻域开始搜索 21 2.4.3最近等值线点的生成 23 2.5本章小结 25 第3章 算法实现 26 3.1算法流程图及说明 26 3.2界面编辑 29 3.2.1 Visual C++简要介绍 29 3.2.2 对话框编辑 29 3.2.3 视图编辑 35 3.3 本章小结 37 第4章 算法精度分析 38 4.1算法精度度量 38 4.2算法仿真结果 39 4.2.1仿真航迹的生成 39 4.2.2仿真试验结论 41 4.3本章小结 43 结论 44 参考文献 45 致谢 46 第一章 绪 论 1.1 课题背景及目的 水下潜器长时间隐蔽航行依赖于水下自主定位手段,因此通常采用惯性导航系统作为水下定位的主要设备。由于惯导的位置误差是随时间积累的,长时间航行时需要重调或校正才能确保载体的定位精度。目前解决这一问题的途径,一是尽可能提高惯导系统本身的精度,采用高精度的惯性元件,如静电陀螺仪,及陀螺壳体旋转、平台旋转等漂移调制、监控措施;二是利用其他定位信息与惯导组合,诸如定期上浮接收GPS等无线电信号或利用水声设备进行位置校正或速度阻尼,采用如卡尔曼滤波器等误差估计手段提高系统的精度。 由于我国目前在发展高精度静电陀螺的关键技术方面还存在诸多障碍,短时间内研制出高精度惯性导航系统还不现实。同时,国外应用证明,静电陀螺惯导系统的制造维护成本极高。因此国外很多研究机构正在致力于低成本的光学陀螺(特别是光纤陀螺)惯导系统的研制,辅之其他导航系统构成组合导航系统,以满足武器装备的需求。多数情况下,惯导可以用GPS等无线电导航系统进行校正,但是,在接受GPS 等无线电信号时,潜器可能会暴露或被迫放弃使命任务。对此,各国的专家学者正致力于开发新的导航手段来弥补以上的不足,应用地球物理图(如水深数据、重力、地磁)导航就是其中之一。 |