(10)申请公布号
(43)申请公布日 (21)申请号 201610061895.9
(22)申请日 2016.01.29
G01C 21/32(2006.01)
(71)申请人河北交投智能交通技术有限责任公
司
地址050000 河北省石家庄市桥西区新石中
路377号
(72)发明人蒋北松 赵建新 李广 闫满囤
赵航 孙计山 钮江浩 梁泽龙
白华 杨萧含 常铮 杜袆宁
任昊阳 苗明明 陈志浦 梁云龙
张乔欣
(74)专利代理机构北京科亿知识产权代理事务
所(普通合伙) 11350
代理人汤东凤
(54)发明名称
(57)摘要
本发明公开了一种GNSS 坐标与高速公路桩
号的转换方法,包括:S1.基础数据生成;S2.根据
高速名称、桩号获取GNSS 经纬度坐标;S3.根据
GNSS 经纬度坐标获取高速名称及桩号。本发明实
现了GNSS 经纬度坐标与高速公路桩号之间的高
效及高精度相互转换,能够根据GNSS 经纬度坐标
获取高速名称及桩号,也能够根据高速名称及桩
号获取GNSS 经纬度坐标。(51)Int.Cl.
(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书4页CN 105509756 A 2016.04.20
C N 105509756
A
1.一种GNSS坐标与高速公路桩号的转换方法,其特征在于:所述转换方法包括:
S1.基础数据生成
S1-1.采集高速公路起点、结束点的桩号和GNSS经纬度; S1-2.使用高德导航功能,设置导航起点、结束点的GNSS坐标为高速公路起点、终点坐标,调用导航功能,获取导航路径坐标集合和导航里程; S1-3.根据导航里程和实际桩号里程计算偏差系数;
S1-4.根据导航路径坐标集合中坐标点之间的距离和里程偏差系数计算出每个坐标点对应的里程桩号;
S1-5.将导航路径坐标集合中距离超过1千米的两点之间插入细分节点,并计算细分节点的桩号; S1-6.将包括细分节点在内的导航路径坐标集合中的相邻两点作为一组,将每组信息保存到数据库中作为本方法的基础数据;每组信息包括高速名称、起点经度、起点纬度、起点桩号、结束点经度、结束点纬度和结束点桩号;
S2.根据高速名称、桩号获取GNSS经纬度坐标
S2-1.从数据库保存的基础数据中查询输入高速名称等于数据条目中高速名称且输入桩号位于起点桩号和结束点桩号之间的条目;
S2-2.如果输入桩号等于查询到条目的起点桩号,则输出GNSS经纬度坐标等于条目起点的GNSS坐标;
S2-3.如果输入桩号等于查询到条目的结束点桩号,则输出GNSS经纬度坐标等于条目结束点的GNSS坐标;
S2-4.如果输入桩号在查询到条目的起点桩号与结束点桩号之间,根据下面公式计算:偏移比例=(输入桩号-起点桩号)÷(结束点桩号-起点桩号);
输出GNSS经度=起点经度+(结束点经度-起点经度)×偏移比例;
输出GNSS纬度=起点纬度+(结束点纬度-起点纬度)×偏移比例;
S3.根据GNSS经纬度坐标获取高速名称及桩号
S3-1.根据搜索半径计算GNSS经纬度坐标差值:
GNSS经度差值=搜索半径÷(111195×cos(输入经度×PI÷180));
GNSS纬度差值=搜索半径÷111195;
所述搜索半径的单位为米;
S3-2.计算要搜索的GNSS经纬度坐标范围:
(1)要搜索的GNSS经度范围:
Min经度 = 输入经度 – GNSS经度差值;
Max经度 = 输入经度 + GNSS经度差值;
(2)要搜索的GNSS纬度范围:
Min纬度 = 输入纬度 – GNSS纬度差值;
Max纬度 = 输入纬度 + GNSS纬度差值;
S3-3.根据GNSS经纬度坐标范围查询满足下述条件的细分路段:
Min经度 < 细分路段端点经度 < Max经度;
Min纬度 < 细分路段端点纬度 < Max纬度;
S3-4.查与搜索点距离最近的细分路段:
根据海伦公式计算搜索点到每个细分路段的距离,从中到距离最近的细分路段;
S3-5.计算搜索点和最近细分路段组成的三角形各边的长度:搜索点到最近细分路段起点的距离PA,搜索点到最近细分路段终点的距离PB,最近细分路段起点到终点的距离AB;
S3-6.计算高速桩号:
(1)如果PA<1,则输出桩号=最近细分路段起点桩号;
(2)如果PB<1,则输出桩号=最近细分路段终点桩号;
(3)如果AB<1,则输出桩号=最近细分路段起点桩号;
(4)如果PA×PA ≥ PB×PB + AB×AB,则搜索点在最近细分路段终点外侧,进一步的:计算偏移比例Scale = Sqrt(PA×PA-PH×PH)÷AB;
输出桩号=起点桩号+(终点桩号-起点桩号)* Scale;
如果PB×PB ≥ PA×PA + AB×AB,则搜索点在最近细分路段起点外侧,进一步的:计算偏移比例Scale = Sqrt(PB×PB-PH×PH)÷AB;
输出桩号=终点桩号-(终点桩号-起点桩号)* Scale;
否则,搜索点在最近细分线段两侧,进一步的:
计算偏移比例Scale = Sqrt(PA×PA-PH×PH)÷AB;
输出桩号=起点桩号+(终点桩号-起点桩号)* Scale。
2.根据权利要求1所述的GNSS坐标与高速公路桩号的转换方法,其特征在于:S3-6中,如果输出桩号
<0,则输出桩号=0。
一种GNSS坐标与高速公路桩号的转换方法
技术领域
[0001]本发明涉及高速公路信息化领域,具体涉及一种GNSS坐标与高速公路桩号的转换方法。
背景技术
[0002]GNSS的全称是全球导航卫星系统(Global Navigation Satellite System),它是泛指所有的卫星导航系统,包括全球的、区域的和增强的,如美国的GPS、俄罗斯的Glonass、欧洲的Galileo、中国的北斗卫星导航系统,以及相关的增强系统,如美国的WAAS(广域增强系统)、欧洲的EGNOS(欧洲静地导航重叠系统)和日本的MSAS(多功能运输卫星增强系统)等,还涵盖在建和以后要建设的其他卫星导航系统。GNSS系统的建立极大地提高了地球社会的信息化水平,有力地推动了数字经济的发展。近年来高速公路的快速发展形成了庞大的路网体系系统及交通信息资源,高速公路和GNSS导航系统的结合使其更好的服务于社会。为了在地图上更好的将高速公路的服务设施、路况资讯等展现给广大用户,GNSS坐标和高速公路桩号的相互转换是必不可少的。 发明内容
[0003]本发明要解决的技术问题是提供一种转换效率和转换精度均很高的GNSS坐标与高速公路桩号的转换方法。
[0004]为解决上述技术问题,本发明所采取的技术方案是:
一种GNSS坐标与高速公路桩号的转换方法,包括:
S1.基础数据生成
S1-1.采集高速公路起点、结束点的桩号和GNSS经纬度;
S1-2.使用高德导航功能,设置导航起点、结束点的GNSS坐标为高速公路起点、终点坐标,调用导航功能,获取导航路径坐标集合和导航里程;
S1-3.根据导航里程和实际桩号里程计算偏差系数;
S1-4.根据导航路径坐标集合中坐标点之间的距离和里程偏差系数计算出每个坐标点对应的里程桩号;
S1-5.将导航路径坐标集合中距离超过1千米的两点之间插入细分节点,并计算细分节点的桩号;
S1-6.将包括细分节点在内的导航路径坐标集合中的相邻两点作为一组,将每组信息保存到数据库中作
为本方法的基础数据;每组信息包括高速名称、起点经度、起点纬度、起点桩号、结束点经度、结束点纬度和结束点桩号;
S2.根据高速名称、桩号获取GNSS经纬度坐标
S2-1.从数据库保存的基础数据中查询输入高速名称等于数据条目中高速名称且输入桩号位于起点桩号和结束点桩号之间的条目;
S2-2.如果输入桩号等于查询到条目的起点桩号,则输出GNSS经纬度坐标等于条目起
点的GNSS坐标;
S2-3.如果输入桩号等于查询到条目的结束点桩号,则输出GNSS经纬度坐标等于条目结束点的GNSS坐标;
S2-4.如果输入桩号在查询到条目的起点桩号与结束点桩号之间,根据下面公式计算:偏移比例=(输入桩号-起点桩号)÷(结束点桩号-起点桩号)
输出GNSS经度=起点经度+(结束点经度-起点经度)×偏移比例
输出GNSS纬度=起点纬度+(结束点纬度-起点纬度)×偏移比例;
S3.根据GNSS经纬度坐标获取高速名称及桩号
S3-1.根据搜索半径计算GNSS经纬度坐标差值:
GNSS经度差值=搜索半径÷(111195×cos(输入经度×PI÷180))
GNSS纬度差值=搜索半径÷111195
所述搜索半径的单位为米;
S3-2.计算要搜索的GNSS经纬度坐标范围:
(1)要搜索的GNSS经度范围:
Min经度 = 输入经度 – GNSS经度差值
Max经度 = 输入经度 + GNSS经度差值
(2)要搜索的GNSS纬度范围:
Min纬度 = 输入纬度 – GNSS纬度差值
Max纬度 = 输入纬度 + GNSS纬度差值
S3-3.根据GNSS经纬度坐标范围查询满足下述条件的细分路段:
Min经度 < 细分路段端点经度 < Max经度
Min纬度 < 细分路段端点纬度 < Max纬度
S3-4.查与搜索点距离最近的细分路段:
根据海伦公式计算搜索点到每个细分路段的距离,从中到距离最近的细分路段;
S3-5.计算搜索点和最近细分路段组成的三角形各边的长度:搜索点到最近细分路段起点的距离PA,搜索点到最近细分路段终点的距离PB,最近细分路段起点到终点的距离AB;
S3-6.计算高速桩号:
(1)如果PA<1,则输出桩号=最近细分路段起点桩号;
(2)如果PB<1,则输出桩号=最近细分路段终点桩号;
(3)如果AB<1,则输出桩号=最近细分路段起点桩号;
(4)如果PA×PA ≥ PB×PB + AB×AB,则搜索点在最近细分路段终点外侧,进一步的:计算偏移比例Scale = Sqrt(PA×PA-PH×PH)÷AB
输出桩号=起点桩号+(终点桩号-起点桩号)* Scale;
如果PB×PB ≥ PA×PA + AB×AB,则搜索点在最近细分路段起点外侧,进一步的:计算偏移比例Scale = Sqrt(PB×PB-PH×PH)÷AB
输出桩号=终点桩号-(终点桩号-起点桩号)* Scale;
否则,搜索点在最近细分线段两侧,进一步的:
计算偏移比例Scale = Sqrt(PA×PA-PH×PH)÷AB
输出桩号=起点桩号+(终点桩号-起点桩号)* Scale。