2

I have a DEM map of 8-meter resolution, where some groups of pixels are blank due to the clouds (I guess). Is there a way in ArcGIS or GRASS to fill into those null areas with data from 30-meter DEM map?

  • 1
    You should spot-check first to make sure the high- and low-res DEMs are comparable. If they have a different vertical datum, or have a systematic offset, or otherwise don't match up very well, it might make more sense to interpolate across the missing values rather than try to patch them. – Jon Jul 31 at 16:14
  • You could try several options and pick what looks best. Using just your 8m DEM you could try the ArcGIS nibble tool, or use QGIS (I'm assuming you have it if you said you could use GRASS but I could be wrong) with the GDAL no data tool, SAGA close gaps tool or GRASS r patch. Using the 30m DEM as well in ArcGIS you might mosaic to a new raster with the mosaic operator set to use the 8m DEM values first, or the GDAL merge but you might want to pre-process the 30m to make it look better with the 8m. – johns Jul 31 at 17:03
1

Here is one solution using ArcGIS:

1) Resample your 30-meter DEM using the Resample Tool. In the Output Cell Size you can write the path to your 8-meter resolution DEM. For the Resampling Technique choose either Bilinear or Cubic, as they are appropiate for continuous data. Also, before running the tool, click on the Environments... button and click on Processing Extent: enter image description here

Here, write again the path to your 8-meter DEM in both the Extent and the Snap Raster boxes. This will ensure your output raster has the same dimensions as and aligns with your original 8-meter DEM.

2) Now, assuming you have a Spatial Analyst license you can use the Raster Calculator to fill the NoData values from your original 8-meter DEM with the (resampled) values from the 30-meter DEM. If your original 8-m DEM is called input_dem and the resampled DEM (the output from the first step) is called resampled_dem you can use the following expression in the calculator:

Con(IsNull("input_dem"), "resampled_dem", "input_dem")

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.