Historical Map Plugin for QGIS Helps You Unlock Historical Data

Occasionally, I like to go through the QGIS plugins and see what’s new. There are all sorts of handy tools in there, but one in particular caught my eye this time. The Historical Map plugin, by Nicolas Karasiak & Antoine Lomellini, takes on a specific challenge: extracting data from old maps. Of course, you can always digitize this data, but it can be quite time consuming. The plugin leverages image classification techniques to speed up the process. The nice thing about historical maps (such as USGS topos) is that there are usually fairly discrete color codings. Discrete colors takes a lot of the guesswork out of the image classification process, but the techniques can be pretty intimidating if you haven’t done them before.

1956 USGS topo map for Manhattan, KS

The Historical Map plugin divides the process into three, fairly easy steps:

  1. Simplify the data (they call it filtering)
  2. Train a classifier with some basic training data
  3. Generate a classified shapefile

The steps are laid out in easy-to-follow tabs, with a visually-oriented interface (below). There’s even a link to their wiki for help, and the help is actually pretty helpful.

The Historical Map interface.

The result is a highly approachable tool, that still gives the user room to fine tune and assess the accuracy of the results. To test the tool, I downloaded a topographic map from 1956 (above) from the USGS. The nice thing about these USGS topos is that they are usually available as geopdfs, so you can bring them straight in to QGIS and not worry about georeferencing.  I ran the tool on the topographic map, mostly using the default settings. The result of the filtering (Step 1) was this:

1956 USGS topo map for Manhattan, KS

Note how the edges of patches are smoothed and the colors are more homogenous within patches. Next, I trained the data using about 8 training samples (simply polygon features with a class assigned) for each of four categories: forest, water, urban, and other. Once the classifier was trained, I moved to Step 3, where the plugin automatically classified the simplified map and generated a vector output for the “forest” category.

1956 USGS topo map for Manhattan, KS

Considering the process took about 20 minutes (including the one error message I ran into), and that I didn’t go back and refine anything, this looks pretty darn good. There are a few obvious omissions and commissions, but the at-a-glance accuracy is pretty impressive. With a few  attempts and some tweaking, I’m confident that I could get this more than close enough for uses such as change detection and historical research.

This is a great little plugin, and I tip my hat to the authors. Image classification is a powerful but intimidating tool, and this plugin makes it much more approachable for certain situations. If you’ve got a stack of historical maps that you are behind on digitizing, give the Historical Map plugin a try.


Author: jcguarneri

Mapmaker, bicycle advocate, fisherman, naturalist. Follow me on Twitter @jayguarneri.

2 thoughts on “Historical Map Plugin for QGIS Helps You Unlock Historical Data”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s