Inferring Route Travel Times with SpaceNet
--
Optimal route selection from remote sensing imagery remains a significant challenge despite its importance in a broad array of applications. While identification of road pixels has been attempted before, estimation of route travel times from overhead imagery remains a novel problem. To this end, we build upon our previous post and explore road network extraction at scale with inference of semantic features of the graph, identifying speed limits and route travel times for each roadway. We call this approach City-Scale Road Extraction from Satellite Imagery v2 (CRESIv2). Including estimates for travel time permits true optimal routing, not just the shortest geographic distance.
This approach also serves as an initial baseline to the upcoming SpaceNet 5 challenge focused on road networks and optimized routing. See our arXiv paper for further details and related work, and our github repository for code.
1. Algorithm Overview
Our approach is to combine novel segmentation methods that encapsulate road speed with improved post-processing techniques for road vector simplification. We utilize satellite imagery and geocoded road centerline labels to build training datasets for the first step in our algorithm: segmentation.
We have two goals: extract the road network over large areas, and assess travel time along each roadway. In order to assess travel time we assign a speed limit to each roadway based on metadata tags such as road type, number of lanes, and surface construction. We begin by training a segmentation model. Two approaches are explored in the paper (both a multi-class model, as well as a continuous model), though in this post we only explore the multi-class model.
2. Multi-Class Segmentation
We create multi-channel training masks by binning the road labels into a 7-layer stack, with channel 0 detailing speeds between 1–10 mph, channel 1 between 11–20 mph, etc. (see Figure 1). We train a segmentation model in- spired by the winning SpaceNet 3 algorithm, and use a ResNet34 encoder with a U-Net inspired de- coder. We include skip connections every layer of the network, with an Adam optimizer and a custom loss function of: