地图匹配

使用说明

随着导航定位、移动互联网等技术的快速发展,轨迹大数据成为一项经典的时空大数据类型。
然而由于通信异常、定位误差等原因,很难保证轨迹点数据与路网完全吻合。地图匹配是将一系列有序的轨迹位置点关联到实际路网的过程,可以看做是轨迹数据处理的一项数据预处理任务,服务于后续轨迹线计算与分析工作的开展。

下图中紫色点集为轨迹点数据,蓝色实线为将轨迹点进行道路匹配后的线数据。

MapMatching

地图匹配将轨迹点按照标识字段进行划分,按时间字段进行排序和分割轨迹,找到每条轨迹最可能的经过路段,目的是基于轨迹点还原真实路径。如果不进行地图匹配,那么行动轨迹可能偏离路网(例如定位到路边建筑、池塘里等)。

可以使用处理自动化构建完整的地图匹配流程(推荐),下图为构建地图匹配的模型:

MapMatching2

注意:

  • 地图匹配需要使用 SuperMap iObjects Java 组件中网络数据模型和最佳路径分析方法。
  • 结果返回轨迹线数据集(FeatureRDD)。 结果数据中,每条轨迹线会生成一个起始时间字段和终止时间字段,用于记录当前轨迹的起始时间和终止时间。

参数说明

参数名 默认值 参数释义 参数类型
轨迹点数据集 轨迹点数据集 FeatureRDD
点标识字段 点标识字段,具有相同标识的点划分为一组,例如,手机号 String
用于标识要素时间的字段 用于标识要素时间的字段,时间字段没有设置时,将会默认从要素数据集中找默认的时间字段,如果没有默认的时间字段,将会抛出异常。 String
轨迹分割对象
(可选)
轨迹分割对象可以通过【创建轨迹分割对象】算子构造 TrackSplitter
最佳路径分析参数 最佳路径分析参数,可以通过 【构建SSC路径分析参数】算子 和 【构建路径分析参数】算子来创建路径分析参数对象 PathAnalystSettingInfo
轨迹点误差值
(可选)
30.0 轨迹点误差值,比如 GPS 误差值,单位为米。如果轨迹点到最近道路的距离超出误差值,则认为轨迹点非法。所以,设定一个合理的误差值对地图匹配的结果有直接影响,如果得到的轨迹点精度高,设置一个较小的值可以有效提升性能,例如,15米。默认值为 30米。 Double
最大限制速度
(可选)
150.0 最大限制速度,单位为千米/小时。对相邻两个点计算出来的速度值大于指定的限制速度时,则认为这两个点不可达,即没有有效的道路相通。默认值为 150 km/h Double