关于speed_threshold
0.3.17中,在MapMatch中新增加了speed_threshold参数,这里对这个参数的作用原理做一个解释。如下面的代码所示:分别设置不同的速度阈值为160km/h和10000km/h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | import pandas as pd
import geopandas as gpd
from gotrackit.map.Net import Net
from gotrackit.MapMatch import MapMatch
gps_df = pd.read_csv(r'./20240320_to_20240320_data_chunk_0.csv')
link = gpd.read_file(r'./merge_FinalLink.shp', encoding='gbk')
node = gpd.read_file(r'./merge_FinalNode.shp', encoding='gbk')
my_net = Net(link_gdf=link, prj_cache=True,
node_gdf=node, not_conn_cost=2500.0, cut_off=600.0,
grid_len=4000, is_hierarchical=True)
my_net.init_net() # net初始化
mpm = MapMatch(net=my_net, flag_name='id1', time_unit='ms',
gps_buffer=900.0, top_k=30,
speed_threshold=160,
dense_interval=400.0, dense_gps=True,
export_html=True, export_geo_res=True,
out_fldr=r'./output/')
match_res, warn_info, error_info = mpm.execute(gps_df=gps_df)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | import pandas as pd
import geopandas as gpd
from gotrackit.map.Net import Net
from gotrackit.MapMatch import MapMatch
gps_df = pd.read_csv(r'./20240320_to_20240320_data_chunk_0.csv')
link = gpd.read_file(r'./merge_FinalLink.shp', encoding='gbk')
node = gpd.read_file(r'./merge_FinalNode.shp', encoding='gbk')
my_net = Net(link_gdf=link, prj_cache=True,
node_gdf=node, not_conn_cost=2500.0, cut_off=600.0,
grid_len=4000, is_hierarchical=True)
my_net.init_net() # net初始化
mpm = MapMatch(net=my_net, flag_name='id1', time_unit='ms',
gps_buffer=900.0, top_k=30,
speed_threshold=10000,
dense_interval=400.0, dense_gps=True,
export_html=True, export_geo_res=True,
out_fldr=r'./output/')
match_res, warn_info, error_info = mpm.execute(gps_df=gps_df,)
|
其对应的匹配结果为:
由于在匹配路径的断裂处,gotrackit会无视cut_off的限制进行路径搜索,但是会对搜索出来的路径进行速度的校验,在上面的案例中,断裂处的前后定位点的时间相差大概是15秒
- 当
speed_threshold=160时,gotrackit依据实际的路径距离21km,除以实际的时间差15s,算出来的速度为5040km/h,大于160km/h,认为该路径是不合理的,因此大概率是该处的路网缺失右转匝道,所以会弹出警告
- 当
speed_threshold=10000时,gotrackit依据实际的路径距离21km,除以实际的时间差15s,算出来的速度为5040km/h,小于10000km/h,认为该路径是合理的,因此不会弹出警告