Semi-automatic approach to road annotation
By: Kirill Stepanov
Tags: Machine Learning, Geoalert Platform, Mapping

It is really hard to imagine modern life without accurate and up-to-date road maps. For an ordinary person who uses maps for everyday navigation, it may seem like all roads are already mapped. But it is not entirely true, and the global road map is very heterogeneous. According to some studies, the overall map is more than 80% ready, but its completeness varies dramatically for many countries.

Completeness of the OSM dataset, sourse.

For example, in Russia, only 42% of roads are mapped. Roads are mostly missing in rural or sparsely populated areas — in many villages, only one main road exists on the map.

Green lines — roads from OSM.

This happens primarily because manual map annotation is a time-consuming and costly process.

Automatic solution

Deep learning techniques have a great potential to help humans in this work. They are now widely used in remote sensing data analysis for manual work automatization. But the extraction of roads in rural areas is a complicated task since we need to consider the following specifics of the data:

Most roads are unpaved with vague borders, and it can be hard to distinguish the road and the roadside correctly. There are many occlusions caused mainly by trees that overlap the road surface in the satellite image. Such obstacles lead to undesirable gaps in the output road mask.

We elaborately designed DL model to account for both difficulties. In general, we do so by splitting the overall task of road extraction into three correlated subtasks:

Road surface extraction. It can be defined as a classical semantic segmentation task. Road boundaries extraction. The extraction of road edges is primarily aimed at refining the segmented surface. Road centerline extraction. It allows us to ensure that all routes that should be connected are connected and solve the occlusions problem.

Classical approaches to road extraction usually include only the first step. Roads, detected by our model at the same territories provided in the figure below.

Red — roads extracted by our model.

Area and length of roads obtained by different approaches for both of the regions.

It can be seen that results are pretty good, but still not perfect. However, it is just a machine, and for such responsible task as map creation, we should not rely only upon its predictions. So human interaction is still needed. An important aspect is that the initial model output (raster masks with the roads network) should be converted into vector format for the post-processing and the edits by the cartographers. This is done through the inference module of Geoalert Mapflow platfrom.

Inference module (Geoalert Mapflow)

Resulting road graph is stored in .geojson format, so it could be opened with any GIS software and manually edited whenever correction is needed.

Semi-automatic markup

We asked two professional cartographers to annotate one region using model predictions as a reference and one without them. Then we calculated the speed of markup as the length of mapped roads [km] divided by the time of work [hours]. We also used the estimated time of work provided by the third-party cartographic company to evaluate the complexity of each region.

Speed of road map creation.

Bold numbers denote that model predictions were used. It can be seen that for both cases, the speed of markup increased while using our prediction. Moreover, taking into account complexity, we can conclude that the overall speed of map creation is increased 1.65 times. In the future, this number can be increased even more when we will develop a way to work with predictions more efficiently and — mostly important — the way to implement the semi-automatic approach into professional cartographers workflows.