[GIS] Appending interpolated or nearest raster cell value to vector point on a cell with no data

arcgis-10.2arcgis-desktoppointraster

I have been searching for a solution to this problem, but was not satisfied by the answer given in Finding nearest raster cell value based on vector point?

I have some points that land on cells with NoData in a raster of continuous data, and would like to assign values to the points based on either the closest cell with data or calculate a value with bilinear interpolation from neighboring cells with data. However, using tools in ArcGIS 10.2 Spatial Analyst such as Extract Multi Values to Points, I get a NoData result whether the bilinear interpolation of values is checked or not, despite neighboring cells having data, apparently because the tool is not overlooking the NoData cell. Is there a way to ignore the NoData cell usign this method or another way of getting values for these points?

Here is a screenshot example of what I'm looking at, where white cells have no data:enter image description here

Best Answer

I came up with another solution that works for me. I really didn't like the idea of converting a raster to a vector point layer.

I ended up using a conditional statement in the Raster Calculator to replace all NoData cells with a mean of nearby cells within a rectangle of a specified size. I found this solution on the ESRI Support page, HowTo: Remove and replace no data values within a raster using statistical information from the surrounding data values.

This allows me to use a value based on nearby cells up to a specified distance that I feel will still be reasonable, and then I will extract values to points from the new raster (I just need to put it all into Model Builder to iterate through a lot of them now). As you can see below, the bluish cells are the recalculated cells that now have a value associated with them (the original raster is displayed in gray-scale over the new raster here):

enter image description here

Related Question