Visualizing the evolution of Trondheim and surrounding areas through time
The Trondheim Historical Map is an interactive visualization tool that allows you to explore how Trondheim and its surrounding municipalities have changed over time, from 1850 to the present day.
Using a combination of modern OpenStreetMap data and machine learning techniques applied to historical maps from Kartverket (the Norwegian Mapping Authority), this project reconstructs the geographical features of the region across different time periods.
The map covers approximately 3,000 km² including:
This project is currently under development. Historical data extraction is ongoing, and some features may be incomplete or contain errors. We appreciate your understanding and welcome feedback.
Modern geographical data comes from OpenStreetMap, a collaborative project that creates a free, editable map of the world. OSM data includes buildings, roads, water bodies, land use, and other geographic features as they exist today.
License: © OpenStreetMap contributors, ODbL
Historical map data is extracted from digitized maps provided by Kartverket, the Norwegian Mapping Authority. These include topographic maps, cadastral maps, and military survey maps from various eras.
Map types used:
License: Maps older than 100 years are in the public domain. Newer maps are available under CC BY 4.0.
To train machine learning models to recognize features on historical maps, we first generate synthetic training data by rendering modern OSM data in historical cartographic styles. These synthetic maps mimic the appearance of old Norwegian topographic maps with period-appropriate:
A U-Net deep learning architecture with a ResNet34 encoder is trained to perform semantic segmentation on map images. The model learns to identify and classify:
The model is first trained on synthetic data, then fine-tuned on manually annotated samples from real historical maps to improve accuracy.
The trained model processes historical map images to generate segmentation masks. These raster masks are then vectorized into GeoJSON polygons and lines, preserving geographic coordinates through proper georeferencing.
Each extracted feature is assigned temporal attributes:
start_date: The earliest year the feature appears on a mapend_date: The year the feature disappears (if applicable)confidence: Model confidence score (0-1) for ML-extracted featuressource: Data provenance (OSM, Kartverket, etc.)Historical features are merged with modern OSM data into a unified dataset, with temporal attributes enabling time-based filtering in the web interface. Features are served as PMTiles vector tiles for efficient web delivery.
You can enable the "Show Confidence" layer to visualize the model's certainty:
While we strive for accuracy, this project has several limitations users should be aware of:
This is an open project and we welcome contributions from the community:
If you notice incorrect features, dating errors, or missing landmarks, please report them through our GitHub Issues.
Local historical knowledge is invaluable for validating and improving the accuracy of temporal attributions. If you have information about when specific buildings or roads were constructed or demolished, please share it.
If you have access to historical maps of the Trondheim region not available through Kartverket, particularly for under-represented time periods, we'd love to incorporate them.
The project is open source. Developers can contribute improvements to the machine learning pipeline, web interface, or data processing scripts.
The Trondheim Historical Map project code is released under the MIT License. Derivative data products follow the licensing of their source data.
This project was created as part of an effort to make historical geographic information more accessible to researchers, educators, and the public. Special thanks to:
For questions, suggestions, or collaboration opportunities: