QGIS is a tool used as a geographic information system (GIS) software to analyze and edit spatial information and create graphical maps. It is similar to ArcGIS, but QGIS is considered more reliable and is much faster in speed.
There are lots of things you could do using QGIS, but today, I would like to focus on how to georeference a map using the QGIS tool. This tool is useful when digitizing the information from a scanned map.
- Download the scanned map
For this tutorial, we will use a map called “1870 map of southern India”. You can download the scanned map here as a JPG file to your hard drive. This map is from Hipkiss’s Scanned Old Maps website, a website full of out-of-copyright scanned maps.
- Open QGIS and click on Raster ‣ Georeferencer to open the tool.
Find Raster in the menu, and press Georeferencer in order to start georeferencing the map.
- Go to File ‣ Open Raster. Select the scanned map from your hard drive.
The map will appear when you click Open. You can zoom in and out of the map by clicking the magnifying glass icons on the top.
- Define Transformation Settings
Click on the yellow wheel on the top to open Transformation Settings. Change the transformation type to Polynomial 2, resampling method to Nearest Neighbour.
- Obtain CRS information from the map
When geo-referencing a scanned map, we can try obtaining the CRS information from the map. The coordinates of our map are in Latitude and Longitude. We have to assume the datum that would give us the best result. The map is an old map and is from India, so we can assume that old data about Everest would be a good datum to use. Search for everest and select the CRS with the oldest definition of the Everest datum, which is EPSG:4042, and click OK.
- Save Settings
Name your output raster 1870_southern_india_modified.tif. Choose LZW as the Compression. Check the box for Save GCP points, as they can be used for future purposes. Check the box for Load in QGIS when done. Click OK.
- Add points onto the scanned map
Press the Add Point button, which is the highlighted button on the picture, located on the right to the yellow setting button on the top. Click on the grid line of the map, and set an X and Y coordinate for the point. X refers to longitude and Y refers to latitude. I set the point right under ARABIAN and above SEA as X = 70 and Y = 15.
Give coordinates to other points as well until you think there are enough points to use for georeferencing a map.
- Layer the map onto the world map
Now go back to the original window of the QGIS program, and select XYZ Tiles on the left Browser section. Pull the OpenStreetMap tab onto the Layers section under the Browser section.
Select the OpenStreetMap layer, press the first button right under the Layers label, and change the opacity of the map so that you can see the overlapped georeferenced map. Now you are done!
Further resources/tutorials for georeferencing a map using QGIS can be found here: