blankblank blank




Turn Your Android Into A True Handheld GPS With OruxMaps – Part V: Creating Custom Offline Mapsets From OziExplorer And Calibrated Map Files



Yesterday, I covered ways to create an OruxMaps offline mapset from online map data like Google Maps and Bing Maps. But there may be occasions when you have a separate scanned map image that you want to use in OruxMaps. There’s a free Java app available from the OruxMaps website called OruxMaps Desktop that can convert properly-calibrated scanned map images into an OruxMaps-compatible format. It accepts calibrated map images in two kinds of formats:

OziExplorer-calibrated maps: These are scanned map images calibrated in the OziExplorer program. This is a full-feature GPS utility program, but unfortunately it’s not free – current cost is $100. However, if you search online, there are sources of free maps calibrated with this program. These will come in pairs of files: an image file (JPG, GIF, BMP, etc.), and a MAP file that contains all the calibration data needed by OruxMaps Desktop. Here’s a screen capture of such a file loaded into the program; load the MAP file with the Calibration file button, and as long as the image file is in the specified directory, or in the same directory as the MAP file, it should find it without problems:

ozi_om

Image files with worldfiles: These are often available for free from many websites, like the USGS Seamless Server. The image file contains the graphic imagery, while the worldfile contains calibration info for the image, that has some (but not all) of the data needed for the program to geographically calibrate the image. Worldfiles are simple text files with extensions that usually vary depending on what kind of image they’re associated with (jgw for JPEG, bpw for BMP, tfw for TIF, etc.). They contain information about the starting coordinate position in the upper-left-hand corner of the image, as well as the coordinate dimensions for each pixel. But what they don’t contain is information about the coordinate system used, and the units. You have to find out what this is for a map image; fortunately, there’s usually information about what kind of coordinate system was used in creating that world file available either from the download source, or with the downloaded files.

For example, I downloaded an aerial photo from the USGS Seamless Server website recently, and it came in a compressed zip file format. Inside the zip file were a number of files:

om_zip

There are three files here that I need for use with OruxMaps Desktop:

  • 7714086.tif is the aerial photo image file
  • 7714086.tfw is the worldfile needed for calibration
  • 77140806.prj is a text file that contains information about the coordinate system used for calibration

After unzipping these files, I load the tfw calibration file and the tif image file into OruxMaps Desktop (note: to use TIF files, you’ll need to download and install the JAI I/O tools on your system; they’re available at this website (choose the file that includes “jre” in its name)).

tfw_om

As I load the calibration and/or image files, I’ll get a pop-up telling me that the datum (a set of equations describing the shape of the earth) and the projection (the type of coordinates used with this image) are undefined. For the OziExplorer example above, the MAP file includes this info; for this tiff image file with a worldfile, I’ll need to choose the correct values from the DATUM and PROJECTION dropdowns. In this case, I can open the PRJ file that came with the other files in a text editor, and find out what the correct values are for the datum and projection:

Projection    UTM
Zone          12
Datum         NAD83
Spheroid      GRS80
Units         METERS
Zunits        NO
Parameters

The datum is NAD83 (North American 1983, and the projection is UTM (Universal Transverse Mercator). For UTM, I’ll also have to specify the zone, 12 here (a pop-up window will let me input that in OruxMaps Desktop):

om_tif

From this point on, the steps are the same for both OziExplorer and worldfile maps. Specify the map name, destination directory, and the type of image format you want the tiles in (JPG or PNG), and press the Create Map button; a mapset folder with the mapset name will be created in the destination directory. For photographic images like aerial photos, JPG is likely to be the most efficient space-wise, and you can set the JPG quality with the dropdown. For graphic files like maps, PNG may be a better choice, but I’ve found the file size for PNG files to be huge. You then copy the mapset folder in the oruxmaps/mapfiles directory on your Android, and it will show up when you Browse maps from the startup screen, or look for offline maps from other screens.

If you have a scanned map without any calibration data, you’ll have to create a worldfile to go with it. This is often not a trivial process, but if you want to try it, here’s a list of free software and websites to help you. And if you have a GeoTiff file, which has the calibration info embedded in it but no worldfile, here’s a link to a program that will extract the worldfile, and here’s an app that will extract information about datum/projection used.


Looking for something else? Enter some keywords below, then click "Search".    




3 Responses to “Turn Your Android Into A True Handheld GPS With OruxMaps – Part V: Creating Custom Offline Mapsets From OziExplorer And Calibrated Map Files”


  1. 1 Charley

    First, thank you! I reference this blog as frequently as it is updated. Second, this is not a comment about this specific app, rather it’s a comment about offline maps in general. I frequently travel to locations where I don’t have cell service in order to field-verify data compiled through desktop methods using ESRI ArcView 9.3.1. I have Adobe Pro 9 and am able to generate georeferenced PDF maps from ArcView. However, I haven’t been able to find an app on the Android Market that will allow me to use these maps with my GPS location tracking over the “Geo-PDF”. OruxMaps and Viamici get me close, but still no PDF support. The iPhone has an app created by Avenza, called “PDF Maps” that allows this functionality, but Avenza has not released an Android version. The Avenza web site claims that it is working on other platforms and Android is next, but I’m getting really anxious and would think that this would be a hot item for other Android users. Any ideas? I want to be able to use my phone in an area without coverage, by viewing a georeferenced PDF map with my unique data loaded onto it, and add/remove features (waypoints), then be able to bring that data back into ArcGIS, preferably in batch. I have an HTC Desire.

    Thanks in advance!

  2. 2 leszekp

    Don’t know of any Android GeoPDF apps yet. You could export the map from ArcView in GeoTiff format with a worldfile, then convert it to OruxMaps format; doesn’t let you turn layers on and off, but will show the whole map. In OruxMaps, you can create/save waypoints, then export them in GPX format which ArcView should be able to open.

  3. 3 Jhonald

    Hi Charley, you can use this app https://play.google.com/store/apps/details?id=com.custommapsapp.android

    You can use any image, so you need to take a picture of your pdf and set at least two coordinates and ready.