[GIS] Smoothing raster map using ArcGIS Desktop

arcgis-desktopraster

I have a raster map of US Midwest which is very sparse, i.e. the pixels of interest are few enough to be almost invisible when viewed at a scale where all states of US Midwest are visible. I would like to follow the approach outlined in this PNAS paper (http://www.pnas.org/content/110/10/4134.full) to create a better map, but not sure how to replicate it in ArcGIS Desktop.

The PNAS paper outlines the steps as follows:

Because of the small sizes and scattered distribution of change areas,
it was difficult to visualize regional patterns of LCLUC at the
original 56-m spatial resolution. As a result, we used spatial
smoothing techniques to create a regional change surface that
highlighted local hotspots of change. Related approaches are used in
fields such as spatial epidemiology to generate stable estimate of
disease rates (48) but have not been broadly applied in the field of
land change science. In our smoothing approach, change pixels at 56-m
spatial resolution were first aggregated to the percentage of change
at 560-m resolution. This was done by taking 10-by-10 blocks of 56-m
pixels (i.e., 100 pixel blocks) and summing the binary change within
each block (Fig. S4A). Next we used a 2D kernel smoother to compute a
smoothed estimate of percent change for each of the 560-m resolution
pixels (Fig. S4B). A quartic kernel function was used to calculate
moving averages across the study area at a bandwidth of 10 km. The
same quartic kernel function was used to smooth percent change from
corn/soy in 2006 to grassland in 2011. Finally, we generated a
smoothed map of grassland cover in 2006 by aggregating grassland
presence at 56-m resolution to percent grassland cover at 560-m
resolution, and then smoothing this aggregated cover layer by using
the same 10-km quartic kernel. This smoothed grassland cover layer was
subsequently used as the denominator in generating a map of relative
rates of grassland conversion.

As far as I understand, this is the flowchart:

  1. Use block statistics in ArcGIS to sum 10×10 pixels of 56-m raster to 560m raster
  2. 2D kernel smoother: not sure how to do this
  3. Quartic kernel: not sure how to do this

Not sure how to progress beyond step 1

Best Answer

If it is for visualization purpose and most of your raster is NoData, I recommend you to convert your raster to points. The NoData cells will not be transformed into points, and you can use the size of symbol that you want to create your map.

Concerning your question about kernel (if you still prefer a raster solution), you could use the filter tool with the Low pass option. Low pass filter applies a 2D kernel. However, if your raster is sparse, you'll first need to convert your NoData values to zero, otherwise you wll need to ignore the NoData cells and your result will not be smoothed. This can be done using the raster calculator (Con(IsNull("yourRaster"), 0, "yourRaster").

Note that the quartic kernel is just one type of kernel. If you want to use this specific kernel with ArcGIS, you need to create a custom filter that you apply with the focal statistics tool. This requires you to create a text file with the size of the filter and the weight at each position (based on the quartic filter equation that you can find on Wikipedia). Note that Epanechnikov filter is in theory more efficent than quartic, so I would rather select it instead of the quartic. On the other hand, the Gaussian kernel used for the low pas filter is fine too, so I would not bother to create a custom filter (especially if it is "only" for visualisation).

Related Question