点击图片上方蓝色字体“慧天地”即可订阅
文章转载自微信公众号地理信息世界,版权归原作者及刊载媒体所有。
作 者 信 息
何小波,罗 跃,金贤锋,贾亚辉,韩维喆
重庆市地理信息和遥感应用中心,重庆
【摘要】城市交通路况数据对交通治理、交通拥堵预测等研究具有重要意义,针对常规交通路况数据获取成本高、难度大等问题,本文提出一种基于互联网地图的矢量路况数据生成与分析方法。该方法通过互联网地图提供的实时路况信息,利用网络抓取、GIS空间数据处理和图像识别等技术,将互联网实时路况瓦片数据自动化处理成矢量路况数据,便于交通运行特征分析。最后以重庆主城内环范围为例,基于百度地图实时路况自动生成不同时间段的矢量路况数据,利用此数据进行出行时空特征分析。实验证明该方法具有可操作性、通用性和有效性。
【关键词】互联网地图;实时路况;交通拥堵;出行时空特征;GIS
【中图分类号】P208
【文献标识码】A
【文章编号】1672-1586(2021)06-0053-06
引文格式:何小波,罗 跃,金贤锋,等.
基于互联网地图的矢量路况数据生成与应用方法研究[J].地理信息世界,2021,28(6):53-58.
正文
0 引 言
实时路况是针对当今城市交通道路拥堵畅通状况提出的概念,能及时反映城市道路交通状况。随着互联网、物联网、移动通讯和导航定位等技术的发展,为常规实时路况数据的采集提供了多种数据来源和采集方法,主要包括人工采集、传感器监测、浮动车法和数据众包等4类。
1)人工采集是最原始的路况采集方法,通过人工主动汇报交通路况或采集车定点监测方式进行,此类采集数据时效性低、覆盖范围小,适合特定路段特定时间段的路况监测研究。
2)传感器监测是通过道路摄像头、地感线圈和微波检测器等设备,对道路上的车流信息进行实时监测,此类数据时效性和准确性较高,但大都由政府和机构管控,共享难度大,并且需要大量和大范围铺设传感器,成本较高。
3)浮动车法是利用出租车、公交车、载货汽车、物流车等浮动车上安装的GPS设备,实时记录车辆在道路上的位置和速度等信息,此类数据时效性和准确性较高,成本较低,但数据私有,涉及隐私,共享难度大。
4)数据众包是通过众包模式获取数据,是当前的主要数据源。众包模式是通过大众用户提供数据源,每个打开地图软件或带有LBS( Based ,基于位置的服务)业务软件的手机用户,都在为交通状况默默贡献自己的力量。以高德为例,据统计2016年高德地图精准的实时交通大数据有78%来自于UGC(User ,用户原创内容)众包数据,22% 来自出租车、物流车等行业浮动车辆。
以上4类技术采集的数据是反映道路交通路况的绝对数值,如车辆的位置、速度、方向和数量等车流信息,需要专业的设备、技术和人员来完成,数据获取成本高、共享难度大,为学术研究带来一定困难。但对利用数据众包模式提供实时路况信息服务的互联网地图,有学者通过“再利用”的思路提取实时路况信息,不过仍存在灵活性差、自动化程度低等问题。为此本文提出一种基于互联网地图的矢量路况数据生成方法,通过归纳总结主流互联网地图提供的实时路况信息特点,对其进行二次加工处理,包括实时路况数据下载,矢量路网数据制作和矢量路况数据生成 3 个步骤,从而实现矢量路况数据的自动化生成,便于交通运行时空特征分析。
1 方法流程
本文实现了将互联网地图提供的实时路况信息自动转换成可统计分析的矢量交通路况数据,技术流程包括实时路况瓦片下载、矢量路网数据制作、矢量路况数据生成3个主要步骤(图1)。
图 1 基于互联网地图的矢量路况数据生成技术流程图
Fig.1 Flow chart of road data based on map
1)实时路况瓦片下载。通过整理总结主流互联网地图提供的实时路况信息特点,即用绿黄红不同颜色区分道路交通拥堵状况,并主要以栅格瓦片的形式提供地图服务。通过解析数据服务地址,找出关键参数,利用基于的网络爬取技术,即可实现不同研究区域在不同时间段上的栅格瓦片数据的下载。
2)矢量路网数据制作。根据步骤1下载的栅格瓦片数据,利用空间数据处理技术,先后通过瓦片拼接、去噪点、二值化、细化、栅格矢量化、节点增密和矢量线转点等操作,实现研究区域范围内矢量路网数据的制作。
3)矢量路况数据生成。以步骤2制作的矢量路网数据,叠加栅格瓦片,通过构建的拥堵状态指标,进行图像像素值的识别提取,即可获取路网上不同节点对应的交通拥堵指标值。
2 关键技术实现
2.1 实时路况数据下载
根据有关咨询公司对地图服务行业的分析报告, 2017年第四季度中国手机地图应用市场格局是百度地图、高德地图、腾讯地图和搜狗地图用户占近 88%,其中百度地图用户占比最多,约33.8%。互联网地图提供的实时路况原始数据下载的技术流程包括4部分:
2.1.1 数据服务地址解析
分别解析市场用户占比前4的互联网地图服务,例如:数据服务地址、请求参数、请求方式、数据返回格式和数据示例,找出其中的核心参数,主要包括地图显示级别z(一般为1到18级)、图块坐标(x,y)和时间time,其他参数不同地图服务地址略有不同。返回的数据格式上除高德地图外,其他地图提供的实时路况数据的格式均为栅格瓦片。
2.1.2 获取研究区域四至点
随着 技术的发展和应用,目前互联网在线地图渲染技术主要采用栅格地图切片和矢量地图切片技术。前者需要预先在服务端生成固定位置处的指定尺寸(如128、256像素等)和指定格式(如JPEG、PNG等)的切片集合,然后由客户端实时加载;后者则将矢量数据通过不同的描述文件(如、、 等)来组织和定义,服务端直接返回客户端请求坐标区域对应的矢量切片数据,然后前端利用类似等技术进行绘制渲染。
通过前面对数据服务地址的解析,实时路况数据大多采用栅格地图切片技术进行渲染。由于栅格地图切片是将指定空间范围内的地图切割成若干行及列的正方形图片(也称瓦片Tile),通过指定行列号便可获取对应的瓦片数据。为了获取某区域的实时路况瓦片数据,则需要确定该区域范围的最小包围盒对应的四至点经纬度坐标,再利用空间坐标转换计算对应的行列号,便可下载该空间范围内的瓦片数据。
2.1.3 空间坐标转换
目前,国内互联网地图采用的坐标系主要有GCJ-02(国家测绘局坐标系)、BD-09(百度坐标系)、 WGS84、。高德地图采用GCJ-02,百度地图采用BD-09,国际标准的经纬度坐标系是WGS84。由于实时路况数据是以行列号形式组织的栅格瓦片,需要将经纬度坐标转换到对应瓦片坐标(行列号),需要经过3个坐标转换步骤,以WGS84经纬度坐标到百度路况瓦片坐标的转换为例:
1)WGS84 经纬度坐标转百度墨卡托平面坐标。由于百度坐标系是对国测局坐标系的二次加密,通过百度地图开发平台提供的坐标转换 web 服务 API 即可实现投影变换,访问地址为[lat,long]from=1&to=5&ak=[ 密钥],其中[lat,long]为WGS84经纬坐标,利用的网络请求库实现自动批量的坐标投影转换。
2)百度墨卡托平面坐标转像素坐标。像素坐标系描述的是不同级别下地图上某点在屏幕上的位置,以像素为单位。在百度地图中,平面坐标以最大级别18级为基准,在18级下,平面坐标的一个单位即代表屏幕上的一个像素。通过对平面坐标向下取整即可得到对应的像素坐标,即
,其中level表示地图显示层级。
3)像素坐标转瓦片坐标。栅格瓦片是根据不同级别,将地图分割成若干个256×256大小的正方形方块(即瓦片),因此,对像素坐标除以256并向下取整,即可得到瓦片的行列号,即
。
由以上3个步骤,即可计算出 WGS84 经纬度坐标到对应瓦片行列号:
式中,为瓦片行列号; To XY为投影函数,即将纬度坐标转成平面坐标;level为地图显示层级。
2.1.4 基于 的数据多进程下载
由于互联网地图提供的实时路况数据为动态更新,如百度路况数据更新频率为1min,高德路况为2min,为保证下载的数据具有连续性和时效性,必须在短时间内完成指定空间范围内所有路况瓦片数据的下载。为此,本文利用 的多进程技术解决以上问题,由主节点分配空间区域任务,子节点对不同任务区进行同时下载。同时,综合考虑数据下载难度和分析应用需求,将数据下载频率设置为每10min采集一次,并通过“计划任务”设置程序自动定时运行。
2.2 矢量路网数据制作
下载的实时路况瓦片数据存在两个问题:一是路况底图中用绿色、黄色、红色表示不同交通拥堵状态,但存在同一种交通拥堵状态对应颜色的 RGB 值不完全一致的问题,呈现的是深浅不一的渐变色;二是路况瓦片中的道路上存在白色的边界,为噪点数据,需要剔除。为了保证矢量路网数据的质量,消除以上两个问题对路况信息提取的影响,设计了由拼接到去噪音、二值化、细化、栅格矢量化、节点增密、矢量线转点的矢量路网数据制作技术流程。
1)瓦片拼接。下载的瓦片数据为一张张固定尺寸的PNG图片,按照行列号将其拼接,即可形成一张完整的栅格路网,同时考虑到不同层级的地图瓦片形成金字塔结构,切片数量随地图显示层级增加呈指数级增长,对少量瓦片可以直接拼接,但数量较多时,可分区域拼接,再分别对不同区域进行矢量路网制作。拼接方法采用的图片处理库PIL,实现指定数量的图片自动化拼接。
2)去噪点及二值化。去噪点是将栅格瓦片中非道路线状要素位置处的像素去除,二值化是将道路要素和底图区分开,便于栅格数据矢量化。去噪点及二值化可采用的栅格数据重分类工具实现,也可采用工具的颜色范围选取功能,实现噪点像素剔除,再将剔除后的图片转为灰度图。
3)线状要素细化及栅格矢量化。二值化后的图片中,栅格道路线的宽度本身过宽,需要将其处理成单个像元宽度,可以利用提供的细化工具(Thin)进行处理。细化后的图片便可进行栅格矢量化处理,方法有两种:一是利用 to ,二是利用自动或人机交互式的矢量化,结果分别如图2a、图2b。经过细节的对比发现通过 to 工具矢量后的路网多为断开的线段,不能保证道路的连续性,而矢量化的数据更准确。
4)矢量线节点增密及转为点要素。为了真实反映路况信息,在将线状路网转为点状路网前,需要对线要素进行节点增密(即的功能),保证一定的采样间隔,从而更加全面、更加准确地反映实际路况信息,本文采样点间距设置为50m。
2.3 矢量交通路况数据生成
本文利用图像颜色识别技术,将矢量路网数据与实时路况瓦片数据进行叠加,提取路网点要素在路况瓦片上对应位置处像素的RGB值,并映射为拥堵状态指标,最终生成矢量交通路况数据。目前对于拥堵状态的评定暂时没有统一的标准,本文采用国内常用的标准,即公安部交通管理局发布的《城市道路交通管理评价体系(2002)》,交通路况状态根据城市主干道上机动车平均车速分为 4 类,对应的平均车速及颜色范围见表1。
表 1 道路拥堵状态划分
Tab.1 The of road
为了提高矢量路况数据生成效率和减少数据存储量,只需识别非畅通状态,即只需要保留黄色、红色和红黑色处的点要素,并将对应的RGB值映射为一个状态值,例如黄色的状态设为1,红色设为2,深红色设为3(图3)。
图 3 矢量交通拥堵点成果
Fig.3 The of
3 实验与分析
为了验证本文提出方法的有效性和可操作性,以重庆主城内环范围为例,基于百度地图提供的实时路况,生成矢量交通路况数据,并利用此数据进行城市交通运行时空特征分析。
3.1 实验数据成果
本文数据下载的时间频率设置为10min,道路线上的节点间隔距离最大为50m,一次下载重庆主城内环范围的路况瓦片总计张,每张瓦片数据均为256×256 分辨率的图片,并用行列号进行命名,以数据下载的起始时间来命名文件夹。利用本文设计的技术流程,对下载的路况瓦片进行处理,即可生成矢量交通路况数据。
3.2 数据应用案例
通过一些典型的时空指标分析城市交通运行特征,如道路交通拥堵率、拥堵里程比例、拥堵持续时间和拥堵路段数等。
1)主城内环道路的日平均拥堵时长统计。以2018年1月4至10日一周内的路况数据为例,统计平均1天道路拥堵累计时长(图4),可以看出一天拥堵累计时长大于3h的路段分布在通道性干路、快速路、商圈(如观音桥、解放碑)等区域。
图 4 2018 年 1 月 4―10 日平均道路拥堵时长
Fig.4 Daily of road in
4-10,2018
2)主城内环桥梁的日平均拥堵时长统计。重庆被誉为桥都,桥梁数量最多、桥型种类最齐全,然而作为重要的交通设施,桥梁承担着繁重的交通流量。提取主城内环范围内的13座桥梁路段,以2018年1月4―10日、13―14日的路况数据为例,分别统计日平均拥堵时长(图5),可见高家花园大桥不论工作日还是周末都是最繁忙的桥梁,其次是长江大桥、黄花园大桥等。
图 5 主城内环桥梁的日平均拥堵时长
Fig.5 Daily of in inner ring of the main urban
3)主城内环通勤高峰期分析。通勤高峰期分析研究对出行者在早晚上下班出发时间选择问题上具有一定意义,也为缓解交通拥堵提供一种分析方法。通过对主城内环道路在不同时刻拥堵里程占比的统计(见图6),可以找出一天哪个时间点最为拥堵,例如:2018年1月8日(周一)通勤早高峰期在8:30左右,通勤晚高峰期在18:30左右,2018年1月20日(周六)出现3个高峰点,分别在11:10、15:00和18:10左右。通过连续多天的对比,可以发现周一早高峰比晚高峰更拥堵,周五晚高峰比早高峰更拥堵。由此,出行者可选择合适时间错开早晚高峰出行。
图 6 主城内环拥堵里程占比分析结果
Fig.12 of the of in the inner ring of the main urban peak
4 结束语
本文集成利用互联网数据下载、图像识别和GIS空间分析等相关技术,通过解析实时路况数据服务地址,研究经纬度坐标到路况瓦片行列号之间的转换关系,并基于 的数据多进程下载程序,实现任意空间任意时间下路况瓦片数据的定时下载;然后基于路况瓦片数据,经过拼接、去噪点、二值化、细化、栅格矢量化、节点增密和线转点等一系列操作,制作矢量路网数据;最后即可将矢量路网与实时路况瓦片进行叠加,利用图像颜色识别技术,提取路网点要素在路况瓦片上对应位置处像素的RGB值,并映射成相应的拥堵状态指标。从而实现矢量交通路况数据的自动化生成。本文最后以重庆主城内环范围为例,基于百度路况数据,每隔10min自动生成矢量交通路况数据,并利用此数据进行城市交通运行特征分析,验证了本文方法的有效性、通用性和可操作性。
作者简介:何小波(1989—),男,湖北随州人,工程师,硕士,主要从事GIS、大数据、人工智能工作
E -mail: