Skip to content
xiaolanyuyiPublic

About

AI coding for interest

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

路迹 explore

把城市路网变成进度条:走过的路自动点亮,没走过的还是灰色。 步行 + 骑行 | 首发城市:成都

本仓库是数据管线原型(M0–M2),把 OSM 路网变成可匹配、可点亮的"路段"数据集,并用模拟 GPS 轨迹验证整条链路。产品构思见 doc/product-concept.md。

管线

build_network(路网构建)→ simulate_tracks(轨迹模拟)→ match_tracks(HMM 匹配点亮)→ visualize(可视化)
# 环境(Python 3.12)
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt leuvenmapmatching folium matplotlib rtree

# 1) 构建成都五城区步行/骑行路网(需联网,结果会缓存)
.venv/bin/python scripts/build_network.py            # 也可 -t walk / -t bike

# 2) 模拟 GPS 轨迹(步行 5 条)
.venv/bin/python scripts/simulate_tracks.py -n walk -k 5

# 3) HMM map matching,点亮走过的路段
.venv/bin/python scripts/match_tracks.py -n walk

# 4) 输出总览图与交互地图
.venv/bin/python scripts/visualize.py -n both

当前数据(成都五城区)

网络 路段数 路口节点 总里程
步行 walk 44,523 30,674 5,602.8 km
骑行 bike 36,718 25,032 5,382.1 km

模拟轨迹匹配质量(与真值对比):

  • 步行:recall 87.7%–94.2%,precision 84.2%–91.0%
  • 骑行:recall 82.3%–94.6%,precision 83.9%–100%
  • 已点亮:walk 1,033 段 / 134.5 km(2.4%),bike 584 段 / 73.7 km(1.4%)

产出文件

data/
├── raw/tracks/<network>/          # 模拟 GPS 轨迹 + 逐点/逐段真值
└── processed/
    ├── <network>/                 # edges.parquet(唯一路段)、edges_directed.parquet(有向+几何)、nodes、graphml
    ├── tracks/<network>/          # 每条轨迹的匹配结果
    ├── coverage/<network>/        # walked_segments.parquet + stats.json(覆盖统计/匹配质量)
    └── visualization/             # coverage_<network>.png(全城总览)/ .html(交互地图)

可视化效果:灰色为未走过的路网,红色为已点亮路段。

路线图

  • M0 路网构建(segment 化、双向归并、平行路拆分)
  • M1 GPS 轨迹模拟(真实路网随机游走 + 噪声/离群点 + 逐点真值)
  • M2 HMM map matching + 路网点亮 + 可视化
  • M3 道路进度(按整条路聚合)、断点提示("只差最后 200m")
  • M4 统计成就、天府绿道专题

开发约定与坑位说明见 AGENTS.md。

About

AI coding for interest

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages