保留已有路网数据并利用OSM数据进行路网扩展的方法与流程

文档序号:13031382阅读:1004来源:国知局
保留已有路网数据并利用OSM数据进行路网扩展的方法与流程
本发明涉及道路交通网络计算机抽象表达
技术领域
,特别是涉及一种保留已有路网数据并利用osm数据进行路网扩展的方法。
背景技术
:由于交通系统具有复杂性、不可实验性等特点,随着计算机科学的不断发展,交通仿真逐渐成为交通规划设计、政府投资预测、建设方案综合评价、交通工程咨询等综合决策的有效工具和手段。进行交通仿真,前提和基础就是在计算机中建立研究区域的道路网络,而这一工作也是花费时间和人力最多的步骤。对于交通领域的设计院、研究所或者高校而言,经过多年的工作和项目积累,他们已经拥有了许多城市或地区内容完整、质量可靠的计算机道路网数据,这些数据是支持他们开展地方项目的关键。然而,伴随着中国快速城市化发展的进程,中国城市的规模越来越大,这使得很多已有的计算机道路网数据已经无法包含城市新的空间规模和研究范围。因此,对已有的道路网数据进行扩展是交通仿真中一个重要的问题。传统扩展计算机道路网数据的方法需要用户对照底图一条一条加到已有的路网中,不仅费时费力,还增加了人工操作出错的可能性,从而影响整个项目的进度和交通网络分配的准确性;而如果直接从osm数据中导入扩大后的路网,又会将之前完善、维护好的路网数据覆盖,需要对原路网重新校核,同样会增加工作时间。技术实现要素:为了解决上述存在的问题,本发明提供一种保留已有路网数据并利用osm数据进行路网扩展的方法,由用户自定义选择需要扩展的路网范围,自动从osm数据中提取扩展路网信息后与已有路网数据进行合并,用户仅需手工添加已有路网和扩展路网边界的节点和路段就能完成计算机网络扩展工作,大大减少了扩展路网的人力和时间成本,提高了扩展路网的准确性,为达此目的,本发明提供一种保留已有路网数据并利用osm数据进行路网扩展的方法,包括如下步骤,其特征在于:步骤(1)下载包含需要扩展路网区域的osm地图数据,设该osm矩形地图区域内的最小纬度值为minlat,最大纬度值maxlat,最小经度值minlon,最大经度值maxlon,a点经纬度坐标(minlon,minlat),b点经纬度坐标(minlon,maxlat),c点经纬度坐标(maxlon,minlat),d点经纬度坐标(maxlon,maxlat),将osm数据中节点的经纬度坐标,a点、b点、c点和d点的经纬度坐标以及已有路网数据的节点坐标转换为utm坐标系坐标;步骤(2)设utm坐标系下,a点坐标(xa,ya),b点坐标(xb,yb),c点坐标(xc,yc),d点坐标(xd,yd);以a点位原点,向量ab为y轴,向量ad为x轴建立平面直角坐标系r,在该坐标系下a点坐标变为(0,0),b点坐标变为(0,xb-xa),c点坐标变为(xc-xa,0),d点坐标变为(xd-xa,yd-ya);步骤(3)截取下载的osm矩形地图区域图片作为底图,图片中经度最小、纬度最小的点置于坐标系r中的a点,图片中经度最小、纬度最大的点置于坐标系r中的b点,图片中经度最大、纬度最小的点置于坐标系r中的c点;用户可在该有底图的坐标系r中自定义多边形区域作为需要进行路网扩展的区域,设此多边形区域的顶点集合为s,s中的顶点个数为i,初始状态下s为空集,i为1;步骤(4)用户在含有底图的坐标系r中选取自定义多边形区域的第i个顶点ti,ti必须要在以a,b,c和d为顶点的矩形范围内,且可以在此矩形边界上;设ti在r中的坐标为(xi,yi),则ti在utm坐标系下的坐标为(xi+xa,yi+ya),将(xi+xa,yi+ya)放入集合s中;在底图上高亮显示点ti的位置;步骤(5)如果i大于4且ti与t1重合,则认为用户选定多边形结束,进入步骤(6);否则将i+1赋值给i,返回步骤(4);步骤(6)由集合s中的坐标表示的节点组成用户自定义的封闭多边形p,在utm坐标系下,利用射线法依次判断osm数据中每一条路段的起点和终点是否在多边形p内,如果起点和终点都不在p内,则删除该路段,否则保留该路段;步骤(7)设已有路网数据中的节点编号最大值为nodeid_max,路段编号最大值为wayid_max,最终保留在osm数据中的节点编号的最小值为nodeid_min,最终保留在osm数据中的路段编号的最小值为wayid_min;设保留在osm数据中的第i个节点的编号为nodeid_i,则进行路网扩展后该节点编号变为nodeid_i-nodeid_min+nodeid_max+1;设保留在osm数据中的第j条路段的编号为wayid_j,则进行路网扩展后该路段编号变为wayid_i-wayid_min+wayid_max+1;步骤(8)将修改过节点和路段编号的osm数据导入已有路网数据文件中,生成保留已有路网数据并利用osm数据进行扩展的路网数据文件;用户根据路网实际情况手工添加已有路网和扩展路网边界的节点和路段,形成最终的扩展后的路网数据文件。进一步的,所述步骤1中,采用地图学中的统一横轴墨卡托投影方法将对应点的经纬度坐标转换为utm坐标系坐标。进一步的,所述步骤6中,射线法判断一点是否在某个多边形区域内的过程为:从待判断的点向水平方向引射线,计算射线和多边形交点的个数n,如果n是偶数或者为0则待判断点在多边形外,如果n是奇数,则在多边形内;在多边形边界上的点可以认为在多边形内,也可认为在多边形外。本发明公开了一种保留已有路网数据并利用osm数据进行路网扩展的方法,与现有技术相比,本发明具有以下优点:1、直接从osm数据中导入需要扩展的路网信息,并与已有的路网进行合并,节省了人工逐条添加路段的人力和时间成本,提高了路网扩展的速度和准确性;2、在对路网进行扩展的同时,保留了原有用户已经维护好的路网信息,节省了对扩展后路网进行重复校核的工作时间。附图说明图1为本发明保留已有路网数据并利用osm数据进行路网扩展的流程图;图2为本发明一个实施例下载的包含需要扩展路网区域的osm地图;图3为本发明一个实施例已有路网数据的道路网络示意图;图4为本发明一个实施例用户自定义需要扩展的多边形路网区域在坐标系r中的示意图;图5为本发明一个实施例用户自定义的需要扩展的道路网络示意图;图6为本发明一个实施例保留已有路网数据并利用osm数据进行路网扩展后的网络示意图。具体实施方式下面结合附图与具体实施方式对本发明作进一步详细描述:本发明提供一种保留已有路网数据并利用osm数据进行路网扩展的方法,由用户自定义选择需要扩展的路网范围,自动从osm数据中提取扩展路网信息后与已有路网数据进行合并,用户仅需手工添加已有路网和扩展路网边界的节点和路段就能完成计算机网络扩展工作,大大减少了扩展路网的人力和时间成本,提高了扩展路网的准确性。本发明一种保留已有路网数据并利用osm数据进行路网扩展的方法,其流程如图1所示。步骤(1)下载包含需要扩展路网区域的osm地图数据,设该osm矩形地图区域内的最小纬度值为minlat,最大纬度值maxlat,最小经度值minlon,最大经度值maxlon,a点经纬度坐标(minlon,minlat),b点经纬度坐标(minlon,maxlat),c点经纬度坐标(maxlon,minlat),d点经纬度坐标(maxlon,maxlat),将osm数据中节点的经纬度坐标,a点、b点、c点和d点的经纬度坐标以及已有路网数据的节点坐标转换为utm坐标系坐标;本实施例中,下载的包含需要扩展路网区域的osm地图如图2所示;已有路网数据的道路网络如图3所示;osm矩形地图区域内的最小纬度值为31.9944000,最大纬度值32.1166000,最小经度值118.7014000,最大经度值118.8577000,a点、b点、c点和d点的经纬度坐标和对应的utm坐标系坐标如表1所示。表1a,b,c和d节点的经纬度坐标和对应的utm坐标系坐标节点经度纬度utm纵坐标utm横坐标a118.701400031.99440003541079.600787386660726.5297759229b118.701400032.11660003554627.2953361487660512.949893132c118.857700031.99440003541322.6954402537675493.9466581749d118.857700032.11660003554870.894885617675260.7241398427步骤(2)设utm坐标系下,a点坐标(xa,ya),b点坐标(xb,yb),c点坐标(xc,yc),d点坐标(xd,yd);以a点位原点,向量ab为y轴,向量ad为x轴建立平面直角坐标系r,在该坐标系下a点坐标变为(0,0),b点坐标变为(0,xb-xa),c点坐标变为(xc-xa,0),d点坐标变为(xd-xa,yd-ya);步骤(3)截取下载的osm矩形地图区域图片作为底图,图片中经度最小、纬度最小的点置于坐标系r中的a点,图片中经度最小、纬度最大的点置于坐标系r中的b点,图片中经度最大、纬度最小的点置于坐标系r中的c点;用户可在该有底图的坐标系r中自定义多边形区域作为需要进行路网扩展的区域,设此多边形区域的顶点集合为s,s中的顶点个数为i,初始状态下s为空集,i为1;步骤(4)用户在含有底图的坐标系r中选取自定义多边形区域的第i个顶点ti,ti必须要在以a,b,c和d为顶点的矩形范围内,且可以在此矩形边界上;设ti在r中的坐标为(xi,yi),则ti在utm坐标系下的坐标为(xi+xa,yi+ya),将(xi+xa,yi+ya)放入集合s中;在底图上高亮显示点ti的位置;步骤(5)如果i大于4且ti与t1重合,则认为用户选定多边形结束,进入步骤(6);否则将i+1赋值给i,返回步骤(4);本实施例中,建立坐标系r并加入底图,用户逐个选取多边形顶点并将顶点坐标放入集合s中,最终形成的需要扩展的多边形区域如图4所示,图中编号为用户建立顶点的顺序。该区域由扬子江大道、奥体大街、内环西线、汉中路、中山东路、西安门隧道、内环东线、龙蟠路、建宁路和郑和北路围成,最终的集合s中的坐标如表2所示。表2集合s中的顶点坐标步骤(6)由集合s中的坐标表示的节点组成用户自定义的封闭多边形p,在utm坐标系下,利用射线法依次判断osm数据中每一条路段的起点和终点是否在多边形p内,如果起点和终点都不在p内,则删除该路段,否则保留该路段;本实施例中,将该osm数据中不在以集合s中坐标为顶点的多边形p外的节点和路网删除,得到用户自定义的需要扩展的道路网络如图5所示。步骤(7)设已有路网数据中的节点编号最大值为nodeid_max,路段编号最大值为wayid_max,最终保留在osm数据中的节点编号的最小值为nodeid_min,最终保留在osm数据中的路段编号的最小值为wayid_min;设保留在osm数据中的第i个节点的编号为nodeid_i,则进行路网扩展后该节点编号变为nodeid_i-nodeid_min+nodeid_max+1;设保留在osm数据中的第j条路段的编号为wayid_j,则进行路网扩展后该路段编号变为wayid_i-wayid_min+wayid_max+1;本实施例中,已有路网数据中的节点编号最大值nodeid_max为468,路段编号最大值wayid_max为917,最终保留在osm数据中的节点编号的最小值nodeid_min为4,最终保留在osm数据中的路段编号的最小值wayid_min为3;则保留在osm数据中的第i个节点的编号在进行路网扩展后变为nodeid_i+465;保留在osm数据中的第j条路段的编号在路网扩展后变为wayid_i+915;步骤(8)将修改过节点和路段编号的osm数据导入已有路网数据文件中,生成保留已有路网数据并利用osm数据进行扩展的路网数据文件;用户根据路网实际情况手工添加已有路网和扩展路网边界的节点和路段,形成最终的扩展后的路网数据文件。以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1