ArcMap重采样栅格图层的多种算法与具体操作

简介: 本文介绍在ArcMap软件中,实现栅格图像重采样的具体操作,以及不同重采样方法的选择依据~

  本文介绍在ArcMap软件中,实现栅格图像重采样的具体操作,以及不同重采样方法的选择依据。

  在文章Python ArcPy批量掩膜、重采样栅格遥感影像https://developer.aliyun.com/article/1150407)中,我们介绍了基于PythonArcpy模块对栅格图像加以批量重采样的方法;而在ArcMap软件中,我们可以实现不需要代码的栅格重采样操作;本文就对这一操作方法加以具体介绍。

  首先,如下图所示,是我们待重采样的栅格图像的属性界面。其中,可以看到此时栅格像元的边长为0.4867左右(由于图层是地理坐标系,所以单位就是)。

  接下来,我们即可开始重采样操作。首先,在ArcMap软件中,依次选择“System Toolboxes”→“Data Management Tools.tbx”→“Raster”→“Raster Processing”→“Resample”选项;如下图所示。

  随后,即可弹出“Resample”窗口。在窗口的第一个选项中,输入我们待重采样的栅格文件;在第二个选项中,配置输出结果的路径与文件名称;随后,第三个选项是设置重采样后栅格像元大小的参数,可以直接通过其下方XY的数值来指定像元大小,也可以通过其他栅格文件来指定;最后,第四个选项就是重采样所采用的方法。

  上述窗口中的参数整体也都很简单,也非常好理解;但主要是最后一个选项,也就是重采样方法的选择值得进一步探究。在实际应用过程中,我们究竟该选择哪一个方法呢?我们来看一下ArcGIS官网对不同方法的介绍;如下图所示。

  可以看到,ArcGIS官方一共提供了4种栅格数据重采样的方法,分别是最邻近分配法(NEAREST)、众数算法(MAJORITY)、双线性插值法(BILINEAR)与三次卷积插值法(CUBIC)。

  首先,最邻近分配法是速度最快的插值方法。这一方法主要用于离散数据(如土地利用分类数据),因为这一方法不会更改像元的值。使用这一方法进行重采样,最大空间误差将是像元大小的一半。

  其次,众数算法根据过滤器窗口中频率最高的数值来作为像元的新值。其与最邻近分配法一样,主要用于离散数据;但与最邻近分配法相比,众数算法通常可生成更平滑的结果。众数算法将在与输出像元中心最接近的输入空间中查找相应的4 x 4像元,并使用4 x 4相邻点的众数作为像元的新值。

  再次,双线性插值法基于四个最邻近的输入像元中心的加权平均距离来确定像元的新值。这一方法对连续数据非常有用(且只能对连续数据使用),且会对数据进行一些平滑处理。

  最后,三次卷积插值法通过拟合穿过16个最邻近输入像元中心的平滑曲线确定像元的新值。这一方法仅适用于连续数据,但要注意其所生成的输出栅格可能会包含输入栅格范围以外的值。如果大家不想出现这种情况,按照官方的说法,就需要转而使用双线性插值法。与通过运行最邻近分配法获得的栅格相比,三次卷积插值法的输出结果的几何变形程度较小。三次卷积插值法的缺点是需要更多的处理时间。

  了解上述原理,我们就对选择哪一个方法有了比较清楚地认识。例如,我这里需要进行重采样操作的是一个类别数据,因此就只能选择最邻近分配法众数算法;而后,我们可以结合实际需要进行2种方法的二选一即可(或者直接用2种方法运行一遍,看看哪一个方法对应的结果更符合自己的需要)。如果大家需要进行重采样操作的是连续数据,那么4种方法理论上都是可以的,但是后2种方法相对更适合一些;大家结合需要选择或者分别运行一次,找到最合适的结果即可。

  重采样后,可以看到结果数据中像元的大小已经是我们需要的数值了。

  至此,大功告成。

相关文章
|
机器学习/深度学习 存储 传感器
【路径规划】基于Dijkstra算法求解机器人栅格地图路径规划及避障附Matlab代码
【路径规划】基于Dijkstra算法求解机器人栅格地图路径规划及避障附Matlab代码
|
3月前
|
算法 定位技术 图形学
矢量线的一种栅格化算法
矢量线的一种栅格化算法
22 0
|
6月前
|
算法 定位技术 Python
ArcGIS中ArcMap栅格重采样操作与算法选择
ArcGIS中ArcMap栅格重采样操作与算法选择
203 1
|
机器学习/深度学习 算法 机器人
【路径规划】基于海鸥优化算法实现栅格地图机器人路径规划附matlab代码
【路径规划】基于海鸥优化算法实现栅格地图机器人路径规划附matlab代码
|
机器学习/深度学习 传感器 算法
基于蚁群算法机器人栅格地图最短路径规划附Matlab代码
基于蚁群算法机器人栅格地图最短路径规划附Matlab代码
|
机器学习/深度学习 传感器 算法
【编队】基于A星算法实现机器人编队栅格地图巡逻路径规划附matlab代码
【编队】基于A星算法实现机器人编队栅格地图巡逻路径规划附matlab代码
|
机器学习/深度学习 传感器 算法
【路径规划】基于A星算法实现机器人栅格地图全路径规划附Matlab代码
【路径规划】基于A星算法实现机器人栅格地图全路径规划附Matlab代码
|
机器学习/深度学习 传感器 算法
【路径规划】基于A星算法求解机器人栅格地图路径规划及避障附Matlab代码
【路径规划】基于A星算法求解机器人栅格地图路径规划及避障附Matlab代码
|
机器学习/深度学习 传感器 编解码
【路径规划】基于A星算法结合floyd和动态窗口法实现机器人栅格地图路径规划附matlab代码
【路径规划】基于A星算法结合floyd和动态窗口法实现机器人栅格地图路径规划附matlab代码
|
16天前
|
算法 安全 数据安全/隐私保护
基于game-based算法的动态频谱访问matlab仿真
本算法展示了在认知无线电网络中,通过游戏理论优化动态频谱访问,提高频谱利用率和物理层安全性。程序运行效果包括负载因子、传输功率、信噪比对用户效用和保密率的影响分析。软件版本:Matlab 2022a。完整代码包含详细中文注释和操作视频。