Digitizing and Geo-referencing Aeronautical Charts


One of the things that I miss the most about flying in the States after coming back to Canada is the huge number of aviation related phone and tablet apps available in the States, thanks to the Federal Aviation Administration releasing almost all aeronautical products (navigational charts, airport directory, IFR approach plates, etc) into public domain in digital form. There are hundreds of app available to use all those data in just about every imaginable way.

The most famous one is probably SkyVector – a Google Maps-like site that offers a very easy to use flight planning interface based on FAA charts.

However, I believe the single most useful application is in-flight moving map. If you have a phone or tablet with GPS, you can have a fancy handheld map thing with a little airplane symbol to tell you where you are, overlaid on the appropriate navigation chart, in relation to all the airports and navaids around you.

That is great because it significantly increases the pilots’ situational awareness, especially when flying to unfamiliar places or over featureless terrain. Of course, it can’t be relied upon as a primary mean of navigation, but extra safety never hurts, and knowing precisely where one is definitely increases safety. Imagine having a high altitude engine failure at night. Wouldn’t it be nice to be able to fly directly towards an airport that you can’t see yet because it’s dark, rather than picking a random direction to descend into and hoping terrain is relatively flat at the end of the descent? I suppose you can try to figure out where you are by tuning a bunch of radios, plotting it on the chart, drawing a line to the nearest airport, and measuring a heading to fly… by which time you are probably on the ground already, in one or more pieces.

Unfortunately, none of that is available in Canada. In Canada, aeronautical publications have been delegated to a private company called NavCanada, which has no interest in releasing digital publications, probably so they can sell as many paper charts as possible (which, by the way, are much more expensive than their American counterparts). All the paper charts are also copyright protected, and cannot be redistributed. It’s sad to see that even aviation safety is not a good enough reason for them to give up some of that commercial interest.

The official statement is that they are “looking into” how to distribute charts digitally. They have been saying that for at least 3 years now. Exactly how difficult is it to release a few images that they already have? Disgusting.

I’m tired of waiting, so I made my own. Scanned my copy of Vancouver VFR Terminal Area Chart, and geo-referenced it for use with a moving-map app called Naviator.

Naviator is a paid app ($15 one time, or $35/year for access to FAA charts). I highly recommend it, though. The best out of a few map apps I tried. Also gives graphical TFRs, NEXRAD (precipitation), terrain, and satellite image overlays.

Unfortunately I can’t distribute the chart I made online because of copyright. I can write about how to make it though. I followed mostly instructions on the Naviator forum, but there were a few unclear places that required a bit of experimenting to figure out.

1. Get the chart scanned. Cutting it up, scanning it, and stitching files back together is one option, but it’s a lot of work, and you lose a map (expensive). I just got mine scanned at a copy store. If you are in the Vancouver area, UBC Copiesmart can do large format scanning. I think I paid around $10 for it. If you have a high end camera, taking a picture (with good lighting) and doing perspective/lens correction may be an option, too.

2. Install Quantum GIS. Open it, but don’t load the map into the main app. Just go to Raster->Georeferencer->Georeferencer. Then load the map (Open raster). For coordinate reference system, choose “WGS 84/UTM zone 10N” (or the appropriate one for your map – UTM is Universal Transverse Mercator, and zone 10 is the west coast). Then it’s time to add points!

3. Now the tricky part – to add a reference point, zoom in on one of the intersections of the map grids on the chart, click, and type in the coordinates for that point. Be careful with the coordinate representation. The VTA grid is given in degrees and seconds, instead of decimals. Degrees and seconds should be separated by space instead of decimal point. Also note that North America is on the west of the Prime Meridian, so by convention, longitudes should be negative.

For example, the intersection to the top left of YVR is at 123° 15′ W and 49° 15’N. That should be entered as either x = “-123 15” and y = “49 15”, or x = “-123.25” and y = “49.25”. They are equivalent.

4. Repeat 3) for 6-8 intersections on the map. Try to put more points around areas you are most interested in, since the georeferencing will be most accurate around those points. Make sure at least 3 latitudes and 3 longitudes are used in the points.

5. Click “start georeferencing” (green triangle on top).

Transformation type… I’m not really sure. I get good results with Polynomial 2, but it requires quite a few reference points.

Resampling method = cubic.

Compression = NONE.

Output raster = where to store the output file (the program will output a tiff with geo-ref information built in)

Target SRS = “WGS 84 / UTM zone 10N”

Click OK. After waiting a few minutes, it will be done, and if you look at the GCP table, it will tell you what the errors (residual) are for each reference point. For me, all of them are < 2 pixels. If you have a point with much higher error than others, that point is probably entered wrong.

Also, open up the produced geotiff file with any image viewer, and do a sanity check that all longitude and latitude lines are vertical and horizontal respectively. If they aren’t, you probably didn’t use at least 3 longitudes and 3 latitudes when defining the points.

Optional: To combine multiple maps, install OSGeo4W, edit the source images so that parts that should be transparent are set to black, re-georeference, and use gdalwarp to combine them. Then use gdal2tiles to tile it (MapTiler is a graphical frontend to gdal2tiles).

gdalwarp -r lanczos -srcnodata “000000” sideB_geo.tif sideA_geo.tif vta_b
ackground_geo.tif vta_geo.tif combined.tif

Layers will be added in the order given, then the resulting tif can be tiled normally.

6. Install and open up MapTiler.

Tile profile: “Google Maps compatible (Spherical Mercator)”

Source data files – add the generated tiff file.

SRS: “WGS84” (not sure why UTM doesn’t work here)

Minimum zoom: “4”

Maximum zoom: “12”

File format: “Hybrid JPEG+PNG – only for Google Earth”

Choose destination folder, no viewers, choose a name, Render, wait a very long time.

7. Download and open up Naviator Chart Packager. Load up the directory created by MapTiler. It should generate a .chart file.

8. Copy the file to your device’s /Naviator/Charts/

9. Happy flying and don’t crash!

Since Android is not certified for primary navigation use, be sure to also have paper charts available, and always know where you are and be able to navigate without it. As we all know, phones and tablets do fail or run out of battery pretty often. GPS can also fail (happened to me once). In rare occasions (also happen to me), GPS can also give you wrong positions. So always be prepared! GPS apps really can’t replace high reliability aviation GPSes, and are definitely not good (both legally and practically) for IFR.