1

I'm fairly new to working with rasters. I found out that in my area the ASTER digital elevation data has a "bump" artifact in it, where there's a large (non existant in real life) bump in the elevation. I downloaded the SRTM elevation data, and although lower resolution doesn't seem to have the bump.

I thought about subtracting the STRM from ASTER data to see the difference between the two, and the result seems to have caught the bump pretty well.

Screenshot of ASTER - SRTM result (lines are paths in this area) Above is the result of ASTER - SRTM (difference result). The line features are footpaths in the area.

Now i'm struggling with how to correct the original aster data. I thought about subtracting this "difference result" from the original aster data, but this effectively just converts it to the STRM data. So then I though I'd only select the most extreme scores from the "difference result" so it would only correct areas where the two data sets are off.

My problems: I don't know how to only select the extreme scores. (how do you calculate means and standard deviations of a raster?)

I don't know if this is a good way to do this. Any input would be helpful to solve this problem. I've found some journal articles that use machine learning to classify "bumps" etc. But that's too complicated for my purposes. I just want to more or less have it semi-accurate, don't need it to be perfect.

Extra thought: What if I could make a "mask" from the extreme scores of the "difference result" and then just default to SRTM in those areas?

1

Add polygons where the bumps are. Then, run zonal statistics tool (http://desktop.arcgis.com/en/arcmap/10.3/tools/spatial-analyst-toolbox/h-how-zonal-statistics-works.htm) for the (aster-strm) raster. Range will yield your min and max values for those bumps. Then you can use raster calculator to take out those bumps by using min and max values.

  • could you please go into a bit more detail about how to use the min and max values? – Adam B Oct 23 '17 at 5:32
  • 1
    When you run zonal statistic tool with range option. It will give you idea about the differences between two raster. Lets say you draw 40 polygons and range between 50 ft to 300 ft. Then, you can run con (strm, 0, strm, aster-strm>50 & aster-srtm<300). If it causes so much data loss, you will figure out another threshold from your statistics that you created. You can do this with cell statistics tool. I hope it helps! – Amadeus Oct 23 '17 at 15:56
  • Thanks Oguz, I didn't quite use your method, but it definitely pointed me in the right direction! I'll post the exact solution I used as an answer. – Adam B Oct 23 '17 at 23:40
1

Based on the answer by @Oguz Sariyildiz, I came up with a pretty good correction. It's definitely not perfect, and the "bumps" are still there, but they are now heavily smoothed and don't affect the look of the area too much. Here's what I did

1: Resample SRTM data to be same resolution as ASTER using bilinear interpolation. (this reduces the difference between the two caused by differences in resolution)

2: Use the minus tool to find (resampled)ASTER - SRTM

3: use the log2 tool to find the log2 of the result from 1. this keeps the differences but smooths them out significantly.

4: add the result from 3 to the (resampled)SRTM. This creates a new SRTM with a bit of the difference still in it, but the differences are heavily smoothed

5: Use Con tool to take the raw ASTER data, but replace anywhere where the result from 1 is different by more than 10m by result from 4.

CON settings:

input raster: result from 1

expression: VALUE > 10

input true raster: result from 4

input false raster: Raw Aster data

Before:before image

After:After image

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.