ESRI rasters in GRASS or QGIS

To exchange data one should preferably use a non-proprietary format, such as the ARC/INFO ASCII GRID or GeoTIFF. Unfortunately, it still happens that data is distributed in a proprietary binary format.

One of the most widely used ones is the binary ESRI ARC/INFO GRID. Of course if you have ArcView or ArcGIS you can use these to convert the ARC/INFO GRID to an ARC/INFO ASCII GRID. But what about the others?

Well, as it turns out, GDAL, which is used by GRASS GIS, QGIS and many other GIS software packages, can open the binary ESRI ARC/INFO grids also. All you have to know is where to find the actual raster file.

ESRI GRID rasters are stored in folders which contain one Info subdirectory and a subdirectory for each GRID. Each GRID subdirectory contains several files that store geographic location and the actual raster data for the corresponding grid. See this FAQ on the ESRI support page for more details.

For example, the grid layer ‘AfClim’ lives in the directory ‘AfClim’ and has the following component files:

  • dblbnd.adf
  • hdr.adf
  • sta.adf
  • vat.adf
  • w001001.adf –> this file contains the actual raster data
  • w001001x.adf

In QGIS you can simply open the file w001001.adf using the normal ‘open raster layer’ dialogue (make sure you select ‘All other files’ in the file type selector box). You may have to change the symbology in the raster layer properties (double click on the just imported layer in the Layers panel), try e.g., the pseudocolor Color map.

Note that, as far as I can tell, gdal can not read the projection information so QGIS assumes the raster is in the same projection as your Project. If it is not, find out the projection of the ESRI raster you want to import and set the Project projection accordingly.

In GRASS GIS, you can use the GUI to import the raster layer. Use the ‘Multipe import formats using GDAL’ option:

Import raster file with gdal
Click on image for larger view

And select the w001001.adf file

Select the raster file
Click on image for larger view

Make sure the projection of your location/mapset is the same as the raster layer you want to import and to check the checkbox ‘Override projection (use location’s projection)’ under the ‘Optional’ tab.

Of course you can also simply type in the GRASS GIS console:

 r.in.gdal -o input=/home/pbreugel/Documents/Data/AfClim/w001001.adf output=AfClim

For more information, check out:

5 thoughts on “ESRI rasters in GRASS or QGIS

  1. Pingback: Relief des Yellowstone Nationalpark aus USGS NED-Daten | 3D-Drucken

  2. qmap

    I would like to change the resolution of a geotiff from 30m->10m. Can I do this in qgis or grass and will the output be compatible to arcmap?
    When I used qgis warp for this purpose, i got only the adf and aux.xml. Is this enough?

    1. The warp option in QGIS is essentially a wrapper for GDAL_Warp. This should server your purpose well. I am not sure about how Arcmap handles an adf file without the auxiliary files. I am also not sure gdalwarp can have the output in a different format then the input file. If not, you can e.g., use gdal_translate (also available in QGIS) to convert the adf output file to a geotif file, which Arcmap certainly can handle.

Leave a comment