论文题名: | Linux环境嵌入式电子海图显示研究与实现 |
关键词: | 电子海图显示;嵌入式系统;快速渲染;代码移植;编码格式;显示流程 |
摘要: | 地图对手船舶驾驶和航运管理都是必不可少的工具,相比于传统纸质海图,电子海图呈现出诸多的优势。通过使用电子海图,航线辅助设计、船位实时显示、航向航迹监测、航行自动警报、历史航程重新演示、快速查询、船舶动态实时显示等操作将变得简易可行。 随着电子信息技术的飞速发展,世界各国陆续研制出电子海图显示与信息系统(ECDIS),以更好地服务于船舶驾驶和航运管理。由于国内信息化进程起步较晚,相比于国外,尤其是欧美国家,国内在ECDIS的开发还处于起步阶段,所以开发拥有自主知识产权的ECDIS是有必要的。本文研究的目的,就是开发出一套符合S-57和S-52标准的电子海图显示系统,将之作为ECDIS的核心模块。具体研究内容是在Linux环境(Ubuntu10.04 OS)下进行电子海图的标准显示,实现。ECDIS的基础核心部分--ENC显示模块,并分析其在嵌入式环境下的代码移植,为船载ECDIS的研发建立基础。 根据电子海图的编码格式,本文分析了电子海图的显示流程,将其显示过程划分为6个子模块分别加以实现,分别是:S-57文件的数据解析;S-52显示标准的显示库解析;S-57解析结果和S-52显示库解析结果的数据融合;坐标转换;可视化界面的构建;电子海图的服务器端显示。 其中,S-57文件和S-52显示库文件的解析较为复杂。GDAL开源库提供了一系列函数获取海图物标相关信息,通过调用这些API函数,较容易地解决了S-57文件的解析。S-52显示库文件就是物标样式的数据库。使用S-57文件解析出的物标信息在S-52显示库中查询该物标的显示样式,并对查询得出的物标样式进行词法解析,最后将解析结果使用合理的数据结构进行表示。根据物标的优先级,在解析出海图显示所需的信息后使用OpenGL在X window图形系统下进行图形分层显示,并使用GTK+构建与用户交互的GUI。 本文分析了电子海图显示的各子模块,完成了电子海图的标准显示,并验证了其显示性能符合S-52标准,同时分析了Linux环境下代码移植的可行性,明确了代码移植的具体工作,为构建完整的嵌入式电子海图显示与信息系统奠定了坚实的基础。其中,主要的工作内容和工作难点在于转换最原始的S-57文件、S-52显示库文件中的信息,使之成为OpenGL可以理解的信息。 |
作者: | 邱晓淯 |
专业: | 交通信息工程及控制 |
导师: | 严庆新 |
授予学位: | 硕士 |
授予学位单位: | 武汉理工大学 |
学位年度: | 2011 |
正文语种: | 中文 |