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

  在之前的博客中,我们介绍了基于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种方法相对更适合一些;大家结合需要选择或者分别运行一次,找到最合适的结果即可。

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

  至此,大功告成。

ArcGIS遥感影像重采样操作及不同算法对比的更多相关文章

  1. 遥感影像和DEM数据获取处理、GeoServer切片发布并使用Cesium加载

    1. 数据获取 笔者这里使用的是哨兵一号(Sentinel-1).ALOS的遥感影像和ALOS的DEM数据 下载地址为:ASF Data Search (alaska.edu) ASF(Alaska ...

  2. Python ArcPy批量掩膜、重采样大量遥感影像

      本文介绍基于Python中ArcPy模块,对大量栅格遥感影像文件进行批量掩膜与批量重采样的操作.   首先,我们来明确一下本文的具体需求.现有一个存储有大量.tif格式遥感影像的文件夹:且其中除了 ...

  3. ARCGIS多种影像裁剪

    在互联网上下载的遥感影像都进行过分幅处理,下载下来的影像多是规则的四方形,而在进行遥感影像研究时,多是针对特定区域来进行,比如研究北京市的遥感影像,不在北京市范围内的影像对于研究者就没有利用意义,如果 ...

  4. Python gdal读取MODIS遥感影像并结合质量控制QC波段掩膜数据

      本文介绍基于Python中GDAL模块,实现MODIS遥感影像数据的读取.计算,并基于质量控制QC波段进行图像掩膜的方法.   前期的文章Python GDAL读取栅格数据并基于质量评估波段QA对 ...

  5. 在matlab中进行遥感影像地理坐标的相互转换

    在matlab中进行图像处理,一般使用的都是图像本地坐标,以左上角(1,1)开始.处理完成后,如果要将结果在带地理坐标的遥感影像中显示,或者需要输出成shp文件,就需要涉及到本地坐标和地理坐标的转换, ...

  6. 1. GDAL与OpenCV2.X数据转换(适合多光谱和高光谱等多通道的遥感影像)

    一.前言 GDAL具有强大的图像读写功能,但是对常用图像处理算法的集成较少,OpenCV恰恰具有较强的图像处理能力,因此有效的结合两者对图像(遥感影像)的处理带来了极大的方便.那么如何实现GDAL与o ...

  7. GDAL与OpenCV2.X数据转换(适合多光谱和高光谱等多通道的遥感影像)

    一.前言 GDAL具有强大的图像读写功能,但是对常用图像处理算法的集成较少,OpenCV恰恰具有较强的图像处理能力,因此有效的结合两者对图像(遥感影像)的处理带来了极大的方便.那么如何实现GDAL与o ...

  8. ArcGIS调整影像颜色输出

    有碰到一些质量很差的遥感影像,颜色需要进行调整(主要是针对看)输出,这里记录一下ArcGIS中的调整输出方式. 1.首先把影像文件拖入ArcMap中,然后右键单击图层列表中的图像,选择属性. 2.选择 ...

  9. DGIS之遥感影像数据获取

    1.概要 在GIS圈的同行或多或少接触过遥感,记得在大学老师就说过"数据是GIS的核心".本文介绍在国内下载遥感影像的方法. 地理空间数据云,这个是中科院计算机网络中心建设的一个免 ...

  10. 深度学习遥感影像(哨兵2A/B)超分辨率

    这段时间,用到了哨兵影像,遇到了一个问题,就是哨兵影像,它的RGB/NIR波段是10米分辨率的,但是其他波段是20米和60米的,这就需要pansharpening了,所以我们需要设计一种算法来进行解决 ...

随机推荐

  1. 已知两个长度分别为m和n的升序链表,若将它们合并为长度为m+n的一个降序链表,则最坏情况下的时间复杂度是

    已知两个长度分别为m和n的升序链表,若将它们合并为长度为m+n的一个降序链表,则最坏情况下的时间复杂度是(). 解析:选D 两个升序合并为降序,操作就不多说了,两数列依次比较放入,其中一个数列结束了, ...

  2. Spark Dataframe 转 Json

    import org.apache.spark.sql.DataFrame import org.apache.spark.sql.functions._ import org.apache.spar ...

  3. Openstack-dashboard默认配额

    创建实例不超过10个 方法一 修改配置文件 在使用openstack的过程中,默认创建的实例最多10个,这是因为配额默认实例就是10 所以我们需要修改配置文件/etc/nova/nova.conf中的 ...

  4. Istio实现sidecar自动注入

    Istio实现sidecar自动注入 Sidecar模式 在Sidecar部署方式中,你会为每个应用的容器部署一个伴生容器.对于Service Mesh,Sidecar接管进出应用程序容器的所有网络流 ...

  5. Serilog文档翻译系列(四) - 结构化数据

    Serilog 是一种序列化器.在许多情况下,它具有良好的默认行为,能够满足其目的,但有时也需要指示 Serilog 如何存储附加到日志事件上的属性. Serilog 使用一些不寻常的术语来指代 .N ...

  6. TS中的声明文件

    TS中的声明文件 .d.ts 的作用是为了在TS中使用js文件,但是js文件没有类型,ts又是一个类型严格的语言.所以为了在ts中使用js第三方包,或者自定义Js模块.便由此引出了.d.ts文件. 需 ...

  7. Asp.net core 学习笔记之 Microsoft Graph API

    早年如果我们要读写用户得 outlook 内容是比较麻烦的, 要用许多 smtp 之类的方式. 现在终于是有了 http 级的 API 可以 call 了. 不仅仅是 outlook, calenda ...

  8. SQL注入演示

    SQL注入演示 创建一个简易的登录系统/** tb_user  用户表 * 用户登录系统(需在数据库中创建tb_user表 ) */ @Test public void testUserLogin() ...

  9. Spring —— bean实例化

    bean 实例化 bean本质上就是对象,创建bean使用构造方法完成(反射)      构造方法(常用)        静态工厂*        实例工厂*        FactoryBean(实 ...

  10. 使用composer创建项目时报错:Composer could not find the config file?

    使用composer创建项目时报错:Composer could not find the config file:C:\Composer ....? 一般报这个错就是composer安装的时候配置了 ...