Authors: James Biagioni ([email protected]) and Jakob Eriksson ([email protected]) Date: 11/7/2012
To re-produce the output from our paper, "Map Inference in the Face of Noise and Disparity" (published in ACM SIGSPATIAL GIS 2012), please execute the following steps:
- Create KDE (kde.png) from trips
python kde.py -p trips/trips_1m/
- Create grayscale skeleton (skeleton.png) from KDE
python skeleton.py kde.png skeleton.png
- Extract map database (skeleton_maps/skeleton_map_1m.db) from grayscale skeleton
python graph_extract.py skeleton.png bounding_boxes/bounding_box_1m.txt skeleton_maps/skeleton_map_1m.db
- Map-match trips onto map database
python graphdb_matcher_run.py -d skeleton_maps/skeleton_map_1m.db -t trips/trips_1m/ -o trips/matched_trips_1m/
- Prune map database with map-matched trips, producing pruned map database (skeleton_maps/skeleton_map_1m_mm1.db)
python process_map_matches.py -d skeleton_maps/skeleton_map_1m.db -t trips/matched_trips_1m/ -o skeleton_maps/skeleton_map_1m_mm1.db
- Refine topology of pruned map, producing refined map (skeleton_maps/skeleton_map_1m_mm1_tr.db)
python refine_topology.py -d skeleton_maps/skeleton_map_1m_mm1.db -t skeleton_maps/skeleton_map_1m_mm1_traces.txt -o skeleton_maps/skeleton_map_1m_mm1_tr.db
- Map-match trips onto refined map
python graphdb_matcher_run.py -d skeleton_maps/skeleton_map_1m_mm1_tr.db -t trips/trips_1m/ -o trips/matched_trips_1m_mm1_tr/
- Prune refined map with map-matched trips, producing pruned refined map database (skeleton_maps/skeleton_map_1m_mm2.db)
python process_map_matches.py -d skeleton_maps/skeleton_map_1m_mm1_tr.db -t trips/matched_trips_1m_mm1_tr/ -o skeleton_maps/skeleton_map_1m_mm2.db
- Output pruned refined map database for visualization (final_map.txt)
python streetmap.py graphdb skeleton_maps/skeleton_map_1m_mm2.db final_map.txt