1. why is automation useful? 2. per-cell classification
TRANSCRIPT
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
1
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
2
3
5
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
6
7
8
9
10
11
12
13
14
15
16
Map inference with GPS trajectories
"Map inference in the face of noise and disparity." Biagioni, James, and Jakob Eriksson. Proceedings of the 20th International Conference on Advances in Geographic Information Systems. ACM, 2012.
17
Map inference
Road Map Observation
GPS
Map inference with GPS trajectories
"Map inference in the face of noise and disparity." Biagioni, James, and Jakob Eriksson. Proceedings of the 20th International Conference on Advances in Geographic Information Systems. ACM, 2012.
18
Map inference
Perfect GPS
Road Map Observation
Map inference with GPS trajectories
"Map inference in the face of noise and disparity." Biagioni, James, and Jakob Eriksson. Proceedings of the 20th International Conference on Advances in Geographic Information Systems. ACM, 2012.
19
Map inference
GPS noiseRoad Map Observation
Map inference with GPS trajectories
"Map inference in the face of noise and disparity." Biagioni, James, and Jakob Eriksson. Proceedings of the 20th International Conference on Advances in Geographic Information Systems. ACM, 2012.
20
Map inference
Road Map ObservationGPS noise
Disparity
Kernel Density Estimation (Cell Classification)
21
Histogram
Kernel Density Estimation (Cell Classification)
22
Histogram
23
Histogram
Kernel Density Estimation (Cell Classification)
24
Histogram Histogram (After Blur)
Kernel Density Estimation (Cell Classification)
25
Histogram (After Blur)
???
Kernel Density Estimation (Cell Classification)
Skeletonization
26http://www.inf.u-szeged.hu/~palagyi/skel/skel.html
27http://www.inf.u-szeged.hu/~palagyi/skel/skel.html
Iteration 0 Iteration 5 Iteration 10 Iteration 15 Iteration 20
Iteration 25 Iteration 30
Iteration 20
Iteration 35 Iteration 40 Iteration 70
Skeletonization
28
Histogram (After Blur)
Skeletonization
29
Histogram (After Blur)
Pick up a thresholdBinarize the histogram
(Not Real)
Skeletonization
30
Histogram (After Blur)
Pick up a thresholdBinarize the histogram
(Not Real)
Skeletonization
Binary-Skeletonization: Issues
31
Binary-Skeletonization: Issues High Threshold
32
Binary-Skeletonization: Issues High Threshold
33
Binary-Skeletonization: Issues High Threshold
34
Binary-Skeletonization
35
Binary-Skeletonization: Issues Low Threshold
36
Binary-Skeletonization: Issues Low Threshold
37
Summary: Kernel Density Estimation● Create histogram from GPS trajectories
● Blur the histogram
● Pick a threshold to convert grayscale histogram into a binary image
● Apply skeletonization to derive a road network38
Inferring Maps from Aerial Imagery● May be able to obtain thousands of GPS trajectories per day in city centers● But in suburban and rural areas, the percentage of roads covered by
trajectories will be much smaller● Aerial imagery can fill in these gaps
39
40
Image Segmentation
41
CNN Post processing
Loss Function
CNN Output
OSM Rasterization
Road Network Graph
42
Segmentation Methods
CNN Post processing
Loss Function
CNN Output
OSM Rasterization
Road Network Graph
43
Segmentation Methods
44
Map Inference from Aerial Imagery: Extract Graph
CNN-Based Segmentation: Problems
Noise in the CNN output lead to incorrect topology in the extracted graph● Missing roads● Frequent connections between parallel roads
CNN-Based Segmentation: Problems
Complex intersections lead to very noisy graphs
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
47
Limited Precision in Challenging Scenarios
The inferred maps from two previous
state-of-the-art map inference algorithms
(using GPS data)
Los Angeles Boston Chicago
200m
200m
100m
100m
200m
200m
Previous state-of-the-art map inference algorithms have limited precision
Map Inference in the Face of Noise and Disparity. James Biagioni et al. SIGSPATIAL 2012.Robust Road Map Inference through Network Alignment of Trajectories. Rade Stanojevic et al. SIAM 2018.
RoadRunner: Improving the Precision of Road Network Inference from GPS Trajectories
200m 200m
RoadRunnerOthers
RoadRunner Key IdeaExploit Long-term Structure of GPS Trajectories
Road Network GPS Trajectories Individual Samples Inferred Graph
RoadRunner Key IdeaExploit Long-term Structure of GPS Trajectories
Road Network GPS Trajectories Inferred GraphLong-term Structure
RoadRunner: Iterative Construction
Known Starting Location
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
Iterative Tracing
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Iterative Construction
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Iterative Construction
Sliding Window
GPS Trajectories
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Iterative Construction
Sliding WindowInitialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Iterative Construction
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Merging
Initialize v = starting location v0Repeat:● Find GPS trajectories matching
current path● See what location(s) the trajectories
move in from v● Add vertices in those locations● (Check merging)
RoadRunner: Merging
RoadRunner: Merging
Sliding Window
Sliding
Wind
ow
RoadRunner: Merging
RoadRunner: Merging
RoadRunner: Merging
RoadRunner: Merging
RoadRunner: Merging
RoadRunner: Merging
RoadRunner: Merging
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
69
CNN
RoadTracer
[0.1, 0.9, 0.03, 0.01]N E S W
Action: [Move, Stop]
CNN
RoadTracer
[0.05, 0.6, 0.2, 0.01] N E S W
Action: [Move, Stop]
CNN
RoadTracer
[0.05, 0.7, 0.5, 0.05] N E S W
Action: [Move, Stop]
CNN
RoadTracer
[0.1, 0.8, 0.05, 0.01]N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.65, 0.6, 0.01, 0.01] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.8, 0.7, 0.01, 0.7] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.8, 0.05, 0.01, 0.05] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.01, 0.05, 0.01, 0.05] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.01, 0.05, 0.01, 0.05] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
[0.01, 0.7, 0.01, 0.7] N E S W
Action: [Move, Stop]
CNN
RoadTracer: Forks
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
82
OpenStreetMap in Rural Indonesia
Why hasn’t automatic map inference gained traction?
● Over a decade of research on automatically constructing road maps● Systems build maps from satellite imagery and GPS trajectories
Images from “Mining Large-Scale, Sparse GPS Traces for Map Inference: Comparison of Approaches.”Xuemei Liu, James Biagioni, Jakob Eriksson, Yin Wang, George Forman, Yanmin Zhu. KDD 2012.
Why hasn’t automatic map inference gained traction?High Error Rates: ~5%1, but still too many false positives for full automation
[1, 19] “Robust Road Map Inference through Network Alignment of Trajectories.” Rade Stanojevic et al. SIAM 2018.[6] “Map Inference in the Face of Noise and Disparity.” James Biagioni et al. SIGSPATIAL 2012.
● Machine-Assisted iD○ Pruning minor roads: add arterial roads in low-coverage regions○ Jump: accelerate improvement of map in high-coverage regions
● Map Inference for Interactive Mapping
Machine-Assisted Map Editing
● Machine-Assisted iD○ Pruning minor roads: add arterial roads in low-coverage regions○ Jump: accelerate improvement of map in high-coverage regions
● Map Inference for Interactive Mapping
Machine-Assisted Map Editing
(1) MAiD generates a yellow overlay covering automatically inferred road segments.
Machine-Assisted iD: Integrating Map Inference into Map Editors
(2) User presses H to hide the overlay and verify positions of roads in the imagery.
(3) User left clicks on the overlay to materialize inferred segments into the map.
(3) Right clicks remove incorrect edges in the overlay.
Making Machine-Assistance UsefulInferred segments often correspond to short, straight roads that are not much faster to validate than to trace by hand.
Solution: focus on tasks where machine-assistance can improve productivity substantially:● Low-coverage regions: adding major, arterial roads to the map● High-coverage regions: eliminate painstaking effort of scanning the imagery for
unmapped roads
Automation for Digital Maps
1. Why is automation useful?2. Per-Cell Classification3. RoadRunner: Iterative Tracing with GPS Trajectories4. RoadTracer: Iterative Tracing with Aerial Imagery5. Semi-automation Opportunities
94