坐标转换及参数加密软件设计与实现
韩 聪,刘建国,梅伟长 (长春市测绘院,吉林长春 130021)
【摘 要】[摘 要] 坐标转换是GPS定位显示中重要的环节,本文论述了在使用地方坐标系统的GIS数据情况下,通过高斯投影、四参数转换和参数加密,将GPS位置信息显示在地方坐标系下的电子地图上。通过实际选点测试,证明该方式是可行有效的。
【期刊名称】长春师范大学学报 【年(卷),期】2017(036)006 【总页数】3
【关键词】[关键词] 坐标转换;高斯投影;参数加密
“智慧城市”是全球战略性新兴产业发展的重要组成部分,作为一种新的城市发展模式,将通过综合运用现代科学技术、整合信息资源、统筹业务应用系统,促进城市在规划、建设、管理、运行和服务上科学发展。长春市政府高度重视智慧城市的建设,政府各部门以长春市地理信息公共平台为基础各自搭建专业平台。市容数字化管理平台则是在地理信息公共平台的基础上,结合城市管理对象精确定位的万米单元网格法和全球定位系统(GPS)精确定位,让管理人员实时了解城市部件的点位分布、运行状态、责任单位、权属单位等信息,方便设备的更新、改造、拆除、重置计划等日常管理工作,全面提高市容环境管理水平。
GPS是一种全天候的空间基准的导航系统,可满足市容环卫局精确地确定城市部件的位置及清扫车辆的实时位置所需,具有高精度、全天候、测时短等特点。GPS由三部分组成:空间部分——GPS星座;地面控制部分——地面监控系统;
用户设备部分——GPS信号接收机。由于GPS接收机接收的数据是经纬度坐标数据,采用WGS-84坐标系统,而长春市则采用长春地方坐标系,GPS接收到的数据很难直接落实到地方坐标上。处于安全考虑,各地地方坐标转换参数属于绝密资料,不允许对外发布。因此,GPS坐标转换和参数如何加密,成为一项关键的技术。本文以长春市独立坐标系为例,将WGS-84坐标系转换成长春市独立坐标系。
1 坐标转换算法
采用两种方法:第一种是将GPS接受的经纬度坐标,以WGS-84的参考椭球为基准进行高斯投影后强制转换,统一到长春地方坐标系中;第二种是先将WGS-84的坐标转换为西安80坐标系或者北京54坐标系,然后通过投影转换为平面直角坐标系,最后通过四参数求出参数后,实现向长春坐标系的转换。第一种方法适用定位精度要求不高而实时精度要求较高的情况(如实时车辆导航和监控系统)。本文着重讨论第一种坐标转换算法,将GPS模块采集的位置信息由WGS84坐标系转换为长春市坐标系,中央子午线为东经125°。
具体转换过程如下:首先将GPS模块采集的坐标点序列化,将数据通过高斯投影转换为平面直角坐标,经过四参数近似转换,转至长春市坐标系后,再加上中误差为±0.5 m的随机位置偏移,最后输出用户适用的长春市坐标系坐标。 出于对转换参数的安全性考虑,我们将重要的参数数据写入到硬件加密狗中保护起来,并为整套数据提供了加密狗的配置程序,以及支持托管代码平台IDE调用和非托管代码平台IDE调用的测试程序。
2 软件的实现
本程序支持用户的二次开发,用户可以通过“隐式”或“显示”调用DLL方式
加载转换函数,达到用户所需的转换目的。主程序DLL设计流程见图1。 本系统采用了最为安全的硬件加密方式对数据进行保护,并且为操作加密狗编写了易用的配置程序,此配置程序将加密狗的常用功能进行了系统的封装,以便用户摆脱配置复杂繁琐的参数而产生的烦恼,此配置程序的服务人群为参数配置人员,通过此程序可以将保密的参数写入到加密狗中,以达到程序的开发人员都无法获取此参数的目的。加密狗配置如图2所示。
本转换程序的关键参数都在加密狗中保存,此方式确保了数据的绝对安全,当程序运行中的任意时刻拔出加密狗,本转换程序都将无法正常的转换。 软件调用方式如下所示:
提供了显示调用所需的CoordChangeInterface.h头文件和对应的CoordChange.lib以及CoordChange.dll。 #pragma once
#ifdef COORDCHANGE_EXPORTS
#define COORDCHANGE_API__declspec(dllexport) #else
#define COORDCHANGE_API__declspec(dllimport) #endif typedefint
(WINAPI*LPFuncCOORDCHANGE_PROC)(doublex,doubley,double&x1,double&y1); #ifdef__cplusplus extern \