Georeferencing Data

Anyone else on the Applied Environmental Geology course at Cardiff  University may find you’ll need to fit some historic maps or aerial photos over existing data. In this case I’m using a old aerial photograph of a landslide taken by the RAF in 1947. It has no location data so it doesn’t fit with any modern air photos when added to a GIS project. I need to use the referenced data to fit the old image into the coordinate system.

This is a fairly easy process in both ArcMap and QGIS, which are available on the uni’s PCs. Here’s a step-by-step example of the process for each.

ArcMap

Open ArcMap and set the coordinate system for your data frame to British National Grid. If you’ve not done this before, right click on Layers in the Table of Contents and select properties.

Under the Coordinate System tab, search for ‘British National Grid’, select this option and click apply. It’s also worth going back to the General tab to check that the display units are meters, to match the map units.

arcmap_georef1_data-frame-properties

All the data you’ll use for the coursework pieces is UK based, and a lot will come from Digimap, so this coordinate system will apply to everything.

Add both the referenced and unreferenced data to the Table of Contents using the Add Data arcmap_georef1_add-databutton on the main toolbar.

Open the Georeferencing toolbar with:

Customize > Toolbars > Georeferencing

In the drop-down menu on the toolbar, select the layer that needs to be referenced. I also turn off Auto Adjust in the Georeferencing menu. Otherwise the layer will adjust itself as you create each link with the other data. It doesn’t affect the process, but I prefer to add the links with the images side-by-side then allow it to adjust when I’m done. Try this both ways to see what you prefer.

arcmap_georef1_auto-adjust

Use the Viewer arcmap_georef1_viewer on the Georeferencing toolbar to open the historic data layer in a separate window. Then click the Reposition icon arcmap_georef1_reposition in the viewer to place this next to the main window. If you want more space on the main viewer you can close the Table of Contents and reopen it later.

Your display should then look something like this:

arcmap_georef1_comparison

Now you need to find common points that are visible in both images. Sometimes this can be hard when the time between the data layers is large. In this case there are newer buildings and changes in land use on the modern images that weren’t there in 1947. Also be careful when using parts of the terrain as links. Especially if your data concerns a landslide, as the ground is likely to have changed over time.

Human structures are usually the best option for georeferencing, as they often have regular shapes and angles that make easy common points.

Here I started with some houses and a wall next to the river that feature in both images. There are some corners on the structures that stand out, even if the resolution is lower in the older photo.

arcmap_georef1_common-points

To link these points, use the Add Control Points arcmap_georef1_add-control-points button on the Georeferencing toolbar. Click on a point in the unreferenced data, then on the corresponding point on the other data layer. This creates a link between the two images that will be used to align them. Each point you add is marked on the images by a cross.

Pan around and try to add as many clear common points as possible, ideally across the whole area. This will improve the alignment. If you make a mistake with a point and want to remove it, use the View Link Table arcmap_georef1_view-links button in the Georeferencing toolbar to see a list of all your points. Select any bad links and click the remove button arcmap_georef1_remove-link in this window to delete them.

When you are satisfied with the number of points you can check the alignment by selecting Update Display from the Georeferencing menu. This will locate the unreferenced layer in the coordinate system and move it so the links are as close as possible. Make sure your unreferenced layer is above the others in the Table of Contents, so you can see it in the main viewer.

arcmap_georef1_alignment

If some areas of the adjustment look off, you can try removing some points and adding others until the alignment is right. At this point you might want to enable Auto Adjust to show the affects of each new or removed link.

To apply the changes to the layer, select the Update Georeferencing option from the Georeferencing menu. The directory where the data is stored will now contain some extra files that provide the georeferencing information for this image. As long as they’re kept together the data will be properly located in GIS.

QGIS

When using QGIS the process is very similar. Just as with ArcMap you’ll probably want to change the default coordinate system to National Grid. The option for this is under:

Settings > Options > CRS

Change the CRS for new projects to use ‘on the fly’ reprojection if the layers are different. This will keep data in the same system when it’s imported. Use the Select CRS qgis_georef_select-CRS button to search through the catalog of coordinate systems for British National Grid. Also choose the option for new layers to use the CRS of the current project.

qgis_georef_CRS

Import your already referenced data into the layers panel. There’s no need to open the unreferenced layers yet, that’s done in the georeferencing tool.

By default the georeferencing tool isn’t enabled. But it’s a plugin that’s already installed and just needs to be switched on. You’ll find the list of installed plugins under:

Plugins > Manage and Install Plugins

Check the box next to Georeferencer GDAL to enable it. The tool is then found under the Raster menu.

qgis_georef_plugin-enable

In the georeferencing window use the Open Raster button qgis_georef_open-raster to import the unreferenced layer. There’s no need to reposition the georeferencing window, as when you select a point from the other map it will hide itself until you click a corresponding point.

The Add Point tool is selected by default when a new layer is opened. So you can now start clicking on common points between the images, just like in ArcMap. When you add a new point to the unreferenced image, a pop-up opens for inserting coordinates. If you know the coordinates of that point you can add them manually, or use the From Map Canvas button to select the same point on the referenced data. After you’ve selected the second point in each link the georeferencing window will pop back up with the coordinates of that point. Just click OK to confirm.

qgis_georef_coordinates

Continue adding links until you feel there are enough to locate the data. If you need to remove an incorrect point use the Remove Point qgis_georef_remove-point button and click on the point in the viewer. Or you can right click on it in the control point table at the bottom of the window.

Open the Transformation Settings qgis_georef_transformation-settings-button in the viewer. Use a 1st order polynomial as the transformation type. This is the same as the default type used by ArcMap. Also make sure that you choose the selected CRS in the Target CRS menu, so that the data is georeferenced into the same coordinate system. You’ll also want to choose an output path for the newly referenced raster data. It’s best to avoid writing over the original file in case you need to use it again. That way you have a copy of the original and the data with a location. Enable the option to use 0 for transparency so that any rotation of the layer doesn’t leave empty space covering the layers below it. Check Load into QGIS when done if you want to see the end result in the main window. Click OK to confirm the settings.

qgis_georef_transformation-settings

Click Start Georeferencing qgis_georef_start-georeferencing on the viewer’s toolbar or select this option from the file menu to begin the process. The end result should be added to the layers panel in the main window, so you can check the alignment against the target layers, and saved to the output file with georeferencing.

qgis_georef_result

Advertisements