by Mark Meyer · · Posted in: tech notes
A little bit off topic. I spent too much time searching for a solution to this problem, so I thought I'd add a note here for the next person googling for a solution.
I have a disk with a USGS topographic map of an area, but on the Mac OS X platform, it is difficult to find a utility capable of working with the MrSID file format in which the maps are encoded. MrSID (Multi-Resolution Seamless Image Database) is a highly compressed format for rasterized GIS data. It is useful because it allows software to request various sections and resolutions quickly without decompressing the entire image. This is great for streaming tiles of a larger image, but not so great if you need a large hi-resolution version of all or most of the data. Lizard Tech has some Mac utilities which allow one to view the files, but nothing I could find which would extract the high-resolution sections that I needed.
What I wanted to do was convert the entire map to one large raster file. Enter GDAL, an open-source GIS library which comes with some useful command-line utilities. One of those utilities, gdal_translate, does exactly what we need. If you are on a MAC, the easiest way to get GDAL and the utilities is as pre-compiled binaries available from Kyng Chaos. You will need GDAL, its dependencies, and the MrSID plugin for the GDAL framework. (They are all available on that page).
Once you've installed to libraries, converting a file is as simple as opening the terminal and typing the command (it should be all on one line):
/Library/Frameworks/GDAL.framework/Programs/gdal_translate -of PNG /Path_to_MRSID_File /Path_to_Output_file
This will convert the entire MrSID image to one large PNG graphic. Be warned though, the image may be very large. The 560 MB image we translated turned into a 10GB PNG file. This image has enough resolution to print 30 feet long at 240 DPI.
Luckily I've got enough computer horsepower to open this file long enough and crop to the needed area. The result is a 40 inch by 8 foot map with breathtaking resolution. The image above shows the final image emerging from an Epson 11880 printer.