【ArcGIS自定义脚本工具】利用聚合方法批量生成分辨率降低版本的栅格
文章目录
- 一、功能介绍
- 二、脚本代码
- 三、工具参数
- 四、工具界面
- 五、使用例
- 5.1、参数设置
- 5.2、运行结果
- 5.3、聚合与最近邻重采样的结果对比
系列文章目录: ArcGIS自定义脚本编程
一、功能介绍
二、脚本代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import time
import arcpy
from arcpy.sa import *in_folder = arcpy.GetParameterAsText(0) # "X:\GLDAS_NOAH025"
out_folder = arcpy.GetParameterAsText(1) # "X:\GLDAS_NOAH025"
cell_factor = arcpy.GetParameterAsText(2) # type:int
prefix = arcpy.GetParameterAsText(3) # type:str# Input data source
arcpy.env.workspace = in_folder
arcpy.env.overwriteOutput = True# Loop through a list of files in the workspace
tifs = [tif for tif in os.listdir(in_folder) if tif.endswith(".tif")]
nums = len(tifs)
for num, tif in enumerate(tifs):s = time.time()fileroot = prefix + "_" + tifout_raster = out_folder + "/" + filerootcell_width = arcpy.Describe(tif).meanCellWidtharcpy.AddMessage(cell_width)try:# Process:arcpy.gp.Aggregate_sa(tif, out_raster, str(cell_factor), "MEAN", "EXPAND", "DATA")e = time.time()arcpy.AddMessage("{0}/{1} | {2} Completed, time used {3}s".format(num + 1, nums, tif, e - s))except:arcpy.AddMessage("{0}/{1} | {2} Errored".format(num + 1, nums, tif))
三、工具参数
四、工具界面
五、使用例
5.1、参数设置
利用聚合方法将栅格的分辨率从500m转为10km。像元系数为10/0.5=20。脚本参数设置为:
5.2、运行结果
5.3、聚合与最近邻重采样的结果对比
最邻近重采样前后:
聚合前后:
上述栅格影像中灰色区域为空值区,可以看出在分辨率较高(500m)降低到分辨率较低(10km)的过程中,聚合方法和重采样方法有较大的差异。在对类似这种空白值较多的栅格进行降低栅格分辨率操作时,我更倾向于选择聚合方法而非最邻近采样方法。
选择何种方法来更改栅格分辨率可以参考:更改栅格分辨率的方法
【ArcGIS自定义脚本工具】利用聚合方法批量生成分辨率降低版本的栅格相关推荐
- 【ArcGIS自定义脚本工具】批量执行栅格计算器
文章目录 一.功能介绍 二.脚本代码 三.工具参数 四.用例 4.1 批量单位换算 4.2 批量计算植被覆盖度 4.3 批量填充空值 系列文章目录: ArcGIS自定义脚本工具 一.功能介绍 功能 将 ...
- 【ArcGIS自定义脚本工具】栅格统计频率和累计频率
文章目录 一.功能介绍 二.脚本代码 三.工具参数 四.工具界面 系列文章目录: ArcGIS自定义脚本工具 一.功能介绍 在基于像元二分模型利用植被指数计算植被覆盖度的过程中,通常以某一累计频率值对 ...
- 【ArcGIS自定义脚本工具】批量重投影栅格脚本
文章目录 〇.引言 二.脚本代码 三.工具参数 四.工具界面 〇.引言 本文主要是分享本人在编写ArcGIS自定义脚本的一些经验,内容包括各脚本的界面.代码.设置等.涉及到的大多数脚本针对批处理栅格数 ...
- ArcMap自定义脚本工具制作
ArcMap自定义脚本工具制作 在制图的前期,一般需要做一些数据的整理,如图层合并.裁剪等工作.虽然在ArcMap中也有提供对应的工具,但使用起来需要点技巧.如批量裁剪,虽然可以实现,但出来的结果会重 ...
- c语言程序编译与烧录,一种解释自定义脚本并烧录的方法与流程
本发明属于芯片烧录技术领域,特别涉及一种通过脚本进行芯片烧录的方法. 背景技术: 目前的烧录芯片主要是通过烧录器将烧录文件进行烧录,芯片中才会存储相应的代码.烧录文件有许多格式,如BIN文件,HEX文 ...
- Excel转Word,Excel导出Word,利用Excel表批量生成Word文档,邮件合并进阶版
单击播放视频教材 利用Excel数据批量生成Word文档升级版,Excel转W 01需求概述 假设有图1所示的数据,需要批量生成WORD成绩通知单,通知单必须遵循图2的样式. (案例中的姓名.学校名称 ...
- 【收藏】Python利用Excel+模板批量生成word文件
Python利用Excel+模板批量生成word文件 最近帮朋友批量生成小区业主物业费未缴的律师函.朋友那有物业那边的表格数据,包括楼栋-房间号.业主姓名.欠费日期.欠款金额等信息.目的是需要将这些表 ...
- Arcgis中创建自定义脚本工具
前言 虽然说ArcGis中已经自带了大量的工具,但面对某些特殊应用场景时还是无法满足,这时就可以考虑下创建自定义工具.开发人员将自己的逻辑封装为一个工具,直接提供给其他电脑上安装ArcGIS的人员使用 ...
- ArcGIS Pro脚本工具(4)——连续擦除
ArcGIS Pro 模型构建器(2)--创建连续擦除模型_圈圈的圈圈的博客-CSDN博客ArcGIS自带的擦除工具功效大概是这样:100-10=90即使使用擦除工具的批处理,效果也只限于这样:100 ...
最新文章
- 项目管理到底管的是什么?项目经理如何做好项目管理?
- linux 内核 netfilter 网络过滤模块 (1)-框架
- linux软件安装卸载命令行
- keepalived(3)——解决无法用vip来访问的问题
- 【报告分享】如何嫁给“改变世界的男人”-程序员之理想女友大调查.pdf(附下载链接)...
- eclipse 学生管理系统实现(dom4j实现)
- C语言如何生成随机数
- Android中ail的作用和使用说明
- poi html转换成word文档,Apache POI将HTML转换成Word
- android 正三角,倒三角的实现代码
- hadoop更换硬盘
- 一周技术思考(第22期)-编程的基本礼节
- Python3批量下载网易云音乐热歌榜
- fasttext文本分类python实现_一个使用fasttext训练的新闻文本分类器/模型
- 诚信,是一个庄严的承诺
- 家有妙招:教你一个在淘宝买东西打折的好方法
- 怎样降低计算机屏幕亮度,如何调低电脑屏幕亮度【解决步骤】
- 实验:JS判断浏览器中英文版本
- 1009 美好的一天
- 内核源码中版本号详解(KERNEL_VERSION KERNEL_VERSION)