I have to merge almost 8000 rasters (TIF).

I tried using Mosaic To New Raster in ArcGIS 10.3, but it's processing really slowly and crashes quite often.

Is there a faster (or more stable) way to merge 8000 rasters?

I also have access to QGIS 2.10.1, but I'm willing to try any free software.

  • 1
    You might be better off using a raster catalogue. Create Raster Catalog (Data Management) help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//… you can then only view images in your area of interest. – Mapperz Oct 13 '15 at 13:41
  • My area of interest is the whole planet... that's why I'm stuck merging all those rasters. – Nahas Oct 13 '15 at 13:49
  • Are you using ArcGlobe then? – Mapperz Oct 13 '15 at 13:50
  • Try loading into a Mosaic Dataset - they were designed to handle such volumes. – DPSSpatial Oct 13 '15 at 13:50
  • @Mapperz I thought ArcGlobe is a 3D Analyst. I will it help? – Nahas Oct 13 '15 at 13:53

The two easiest paths are:

  1. ArcGIS - mosaic dataset. You can read a lot about it at http://help.arcgis.com/EN/arcgisdesktop/10.0/help/index.html#//009t00000037000000
    A mosaic dataset is a very flexible approach, that may have too many options for your needs. However, it is quite good at combining imagery from many different sources and acquisition times.

  2. GDAL - gdalbuildvrt. See http://www.gdal.org/gdalbuildvrt.html for the man-page. This tool requires you to use the commandline / DOS for interfacing properly, but it will quickly make a "virtual raster" which functions as a regular raster, but doesn't take up the same amount of space etc., by simply pointing at your many rasters, instead of creating a new copy.

Both of the approaches delineated above can be exported into a big raster, once they have been applied.

PS. it may be possible to interact with gdalbuildvrt through QGIS, but I am not certain that it is possible to do it in an efficient way, when dealing with 8000 rasters.

  • Update : Currently trying option 1. Processing stuck at 100% ("Close this dialog when completed successfully" is checked, but it doesn't close). I'll accept your answer once it's done. – Nahas Oct 16 '15 at 15:18

Depending on what you are trying to accomplish here's how you could do it by using GDAL, the Geospatial Data Library which is the backend of almost any GIS application.

Assuming you want to merge 8000 individual, single band raster files, where each is in an individual GeoTiff inside a folder.

gdalbuildvrt global_raster.vrt your/raster/folder/*.tif

This will create a GDAL Virtual Format File which is basically just a metadata file containing information about your 8000 input rasters and how they belong together.

The beauty of this is, it is blazingly fast since it only creates a metadata file. This VRT however can be handled like a single, large dataset by GDAL backed software, for instance QGIS - just drag and drop it into QGIS and it will display like a single GeoTiff.

If you want to merge all raster files into one large one you can do that with:

gdal_merge.py -o large_output_raster.tif global_raster.vrt
# or
gdal_merge.py -o large_output_raster.tif your/raster/folder/*.tif

Depending on your application gdal_merge.py and gdalbuildvrt have a lot of options for reprojection, downsampling, cropping etc.

  • I can access GDAL with the Python window in ArcGIS? – Nahas Oct 13 '15 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.