前言
在处理遥感影像时导致部分像元为空值(NAN)的情况,本人并不想将其NAN全部赋值为指定像素值,想到使用arcgis将NAN赋值为邻域均值,经过查阅资料,本人将操作记录如下:
图1 出现空值的遥感图像
一、将空值统一替换为特定像素值
1.路径:ArcTools->Spatial Analyst Tools->Map Algebra->Single Output Map Algebra(地图代数—栅格计算器)
2.表达式:
CON(ISNULL([raster]),0,[raster])
其中,【raster】为栅格名称(双击图层变量即可)
二、采用邻域均值的方法替换空值
同样的,在栅格计算器中输入函数语句即可:
Con(IsNull("raster"), FocalStatistics("raster", NbrRectangle(5,5, "CELL"), "MEAN"), "raster")
其中,(5,5)为滤波器的大小,NbrRectangle指滤波器的形状。“MEAN”代表均值。
还可以将NAN替换为其他统计量:
MEAN(平均值)—计算附近单元格的平均值(平均值)。
MAJORITY —计算附近的单元格的多数(最常出现的值)。
MAXIMUM —计算附近的像元的最大值(最大值)。
MEDIAN —计算附近单元格的中位数。
MINIMUM —计算附近的像元的最小值(最小值)。
MINORITY-计算邻域中的单元格的少数(最少出现的值)。
RANGE(范围)—计算附近单元格的范围(最大值与最小值之间的差)。
STD —计算附近单元格的标准差。
SUM —计算附近单元格的总和(所有值的总和)。
VARIETY(变异度)—计算附近单元格的变异度(唯一值的数量)。
默认的统计类型是MEAN。
图2 使用均值滤波填充后的图像
参考链接:[https://desktop.arcgis.com/en/arcmap/10.3/tools/spatial-analyst-toolbox/focal-statistics.htm#GUID-7117A041-D6FE-4CC0-83E3-8335CEC37E35]