r.out.gdal - Exports GRASS raster maps into GDAL supported formats.
r.out.gdal [-lcf] [input=name] [format=string] [type=string] [output=name] [createopt=string[,string,...]] [metaopt=string[,string,...]] [nodata=float] [--verbose] [--quiet]
- List supported output formats
- Do not write GDAL standard colortable
- Only applicable to Byte or UInt16 data types.
- Force raster export despite any warnings of data loss
- Overrides nodata safety check.
- Verbose module output
- Quiet module output
- Name of raster map (or group) to export
- GIS format to write (case sensitive, see also -l flag)
- Options: VRT,GTiff,NITF,HFA,ELAS,AAIGrid,DTED,PNG,JPEG,MEM,GIF,XPM,BMP,PCIDSK,PCRaster,ILWIS,SGI,SRTMHGT,Leveller,Terragen,GMT,netCDF,HDF4Image,ERS,JPEG2000,FIT,RMF,RST,INGR,GSAG,GSBG,PNM,ENVI,EHdr,PAux,MFF,MFF2,BT,IDA,USGSDEM,ADRG,BLX
- Default: GTiff
- File type
- Options: Byte,Int16,UInt16,Int32,UInt32,Float32,Float64,CInt16,CInt32,CFloat32,CFloat64
- Name for output raster file
- Creation option(s) to pass to the output format driver
- In the form of "NAME=VALUE", separate multiple entries with a comma.
- Metadata key(s) and value(s) to include
- In the form of "META-TAG=VALUE", separate multiple entries with a comma. Not supported by all output format drivers.
- Assign a specified nodata value to output bands
r.out.gdal allows a user to export a GRASS raster map layer
into any GDAL supported raster map format. If a GRASS raster map is
exported for a particular application, the application's native format
would be preferrable. GeoTIFF is supported by a wide range of
applications (see also NOTES on GeoTIFF below).
To specify multiple creation options use a comma separated list
For possible createopt and metaopt parameters please
consult the individual
pages on the GDAL website.
The createopt parameter may be used to create TFW or World files
r.out.gdal also supports the export of multiband rasters as
a group, when the imagery group's name is entered as input.
(created imagery groups with the i.group
As with most GRASS raster modules, the current region extents and region
resolution are used, and a MASK is respected if present.
Use g.region's "align=", or "rast="
options if you need to realign the region settings to match the original
map's before export.
SUPPORTED RASTER FORMATS
The set of supported
raster formats written by r.out.gdal depends on the
local GDAL installation. Available may be (incomplete list):
AAIGrid: Arc/Info ASCII Grid
BMP: MS Windows Device Independent Bitmap
BSB: Maptech BSB Nautical Charts
DTED: DTED Elevation Raster
ENVI: ENVI .hdr Labelled
FIT: FIT Image
GIF: Graphics Interchange Format (.gif)
HDF4Image: HDF4 Dataset
HFA: Erdas Imagine Images (.img)
JPEG2000: JPEG-2000 part 1 (ISO/IEC 15444-1)
JPEG: JPEG JFIF
MEM: In Memory Raster
MFF2: Atlantis MFF2 (HKV) Raster
MFF: Atlantis MFF Raster
NITF: National Imagery Transmission Format
PAux: PCI .aux Labelled
PCIDSK: PCIDSK Database File
PNG: Portable Network Graphics
PNM: Portable Pixmap Format (netpbm)
VRT: Virtual Raster
XPM: X11 PixMap Format
Out of the GDAL data types, the closest match for GRASS CELL, FCELL and
DCELL rasters are respectively Int32, Float32 and Float64. These are not
exact equivalents, but they will preserve the maximum possible data range
and number of decimal places for each respective GRASS raster data type.
Please keep in mind that not all CELL rasters will require Int32 - e.g.,
0-255 CELL raster are covered by the Byte type as well.
Moreover, some GDAL-supported formats do not support all the data types
possible in GDAL and GRASS. Use r.info to
check the data type and range for your GRASS raster, refer to specific
format documentation (on the GDAL website),
format vendor's documentation, and e.g. the Wikipedia article
Typical boundaries of primitive integral types
Ranges of GDAL data types
GDAL data type minimum maximum
Byte 0 255
UInt16 0 65,535
Int16, CInt16 -32,768 32,767
UInt32 0 4,294,967,295
Int32, CInt32 -2,147,483,648 2,147,483,647
Float32, CFloat32 -3.4E38 3.4E38
Float64, CFloat64 -1.79E308 1.79E308
If there is a need to keep file sizes small, use the simplest data type
covering the data range of the raster(s) to be exported, e.g., if suitable
use Byte rather than UInt16; use Int16 rather than Int32; or use Float32
rather than Float64. In addition, the COMPRESS createopt used can
have a very large impact on the size of the output file.
Some software may not recognize all of the compression methods
available for a given file format, and certain compression methods may
only be supported for certain data types (depends on vendor and version).
If the export settings are set such that data loss would occur in the output
file (i.e, due to the particular choice of data type and/or file type), the
normal behaviour of r.out.gdal in this case would be to issue an error
message describing the problem and exit without exporting. The -f flag
allows raster export even if some of the data loss tests are not passed, and
warnings are issued instead of errors.
r.out.gdal exports may appear all black or gray on initial
display in other GIS software. This is not a bug of r.out.gdal,
but often caused by the default color table assigned by that software.
The default color table may be grayscale covering the whole range of
possible values which is very large for e.g. Int32 or Float32. E.g.
stretching the color table to actual min/max would help (sometimes under
GeoTIFF exports can only be displayed by standard image viewers
if the GDAL data type was set to Byte and the GeoTIFF contains either
one or three bands. All other data types and numbers of bands can be
properly read with GIS software only. Although GeoTIFF files usually
have a .tif extension, these files are not necessarily images but
first of all spatial raster datasets, e.g. SRTM DEM version 4.
When writing out multi-band GeoTIFF images for users of ESRI software or
ImageMagick, the interleaving mode should be set to "pixel" using
createopt="INTERLEAVE=PIXEL". BAND interleaving is slightly more
efficient, but not supported by some applications.
This issue only arises when writing out multi-band imagery groups.
Improving GeoTIFF compatibility
To create a GeoTIFF that is highly compatible with various other GIS
software packages, it is recommended to keep the GeoTIFF file as simple
as possible. You will have to experiment with which options your
software is compatible with, as this varies widely between vendors and
versions. Long term, the less metadata you have to remove the more
self-documenting (and useful) the dataset will be.
Here are some things to try:
- Create a World file with createopt="TFW=YES".
- Do not use GeoTIFF internal compression. Other GIS software often
supports only a subset of the available compression methods with the
supported methods differing between GIS software packages. Unfortunately
this means the output image can be rather huge, but the file can be
compressed with software like zip, gnuzip, or bzip2.
- Skip exporting the color table. Color tables are not always properly
rendered, particularly for type UInt16, and the GeoTIFF file can appear
completely black. If you are lucky the problematic software package has
a method to reset the color table and assign a new color table
(sometimes called symbology).
- Keep metadata simple with createopt="PROFILE=GeoTIFF" or
createopt="PROFILE=BASELINE". With BASELINE no GDAL or GeoTIFF
tags will be written and a World file is required (createopt="TFW=YES").
- Adding overviews with gdaladdo after exporting can speed up display.
Note that other software might create their own overviews, ignoring existing
Export the integer raster roads map to GeoTIFF format:
r.out.gdal input=roads output=roads.tif type=UInt16
Export a DCELL raster map in GeoTIFF format suitable for ESRI software:
r.out.gdal in=elevation.10m out=ned_elev10m.tif type=Float64 createopt="PROFILE=GeoTIFF,TFW=YES"
Export R,G,B imagery bands in GeoTIFF format suitable for ESRI software:
i.group group=nc_landsat_rgb input=lsat7_2002_30,lsat7_2002_20,lsat7_2002_10
r.out.gdal in=nc_landsat_rgb out=nc_landsat_rgb.tif type=Byte createopt="PROFILE=GeoTIFF,INTERLEAVE=PIXEL,TFW=YES"
Export the floating point raster elevation map to ERDAS/IMG format:
r.out.gdal input=elevation.10m output=elev_dem10.img format=HFA type=Float32
Export group of image maps as multi-band file
i.group group=tm7 subgroup=tm7 input=tm7_10,tm7_20,tm7_30,tm7_40,tm7_50,tm7_60,tm7_70
i.group -l tm7
r.out.gdal tm7 type=UInt16 out=lsat_multiband.tif
GDAL RELATED ERROR MESSAGES
- "ERROR 6: SetColorInterpretation() not supported for this dataset.":
This may indicate that the color table was not written properly.
But usually it will be correct and the message can be ignored.
- "ERROR 6: SetNoDataValue() not supported for this dataset.":
The selected output format does not support "no data". It is recommended
to use a different output format if your data contains NULLs.
- "Warning 1: Lost metadata writing to GeoTIFF ... too large to fit in
tag.": The color table metadata may be too large. It is recommended to
simplify or not write the color table, or use a different output format.
The GDAL supported formats
(old shell script version using gdal_translate)
GDAL Pages: http://www.gdal.org
Vytautas Vebra (oliver4grass at gmail.com)
Markus Metz (improved nodata logic)
Last changed: $Date: 2010-09-16 00:25:59 -0700 (Thu, 16 Sep 2010) $
Main index - raster index - Full index
© 2003-2012 GRASS Development Team