GIS之arcgis系列10:arcpy实现批量掩膜提取

按掩膜提取 (Spatial Analyst)

提取掩膜所定义区域内的相应栅格像元。

按掩膜提取工具图示

OutRas = ExtractByMask(InRas1, InMsk1, "INSIDE")

使用情况

  • 输入栅格中的其他属性(若有的话)将按照原样添加到输出栅格属性表。 根据所记录的属性,某些属性值可能需要重新计算。

  • 将多波段栅格指定为输入栅格(Python 中的 in_raster)值时,将使用所有波段。

    要处理一系列来自多波段栅格的波段,请首先使用波段合成工具创建由这些特定波段组成的栅格数据集。 然后将结果用作输入栅格(Python 中的 in_raster)值。

    默认输出格式为地理数据库栅格。 如果将 Esri 格网堆栈指定为输出格式,则堆栈的名称不能以数字开头、不能使用空格且长度不得超过九个字符。

  • 当为输入栅格掩膜指定多波段栅格时,将只在运算中使用第一个波段。

  • 当输入栅格(Python 中的 in_raster)值和输入栅格或要素掩膜数据数据(Python 中的 in_mask_data)具有相同的像元大小,且像元对齐,则可将其直接应用于工具中。 在工具操作期间,系统不会对其进行内部重采样。

    如果像元大小不同,则输出像元大小将为输入的最大值,而输入栅格值将在内部用作捕捉栅格。 如果像元大小相同,但是像元未对齐,则输入栅格值将在内部用作捕捉栅格。 在执行提取操作之前,上述任一情况都会触发内部重采样。

    有关详细信息,请参阅像元大小和捕捉栅格环境主题。

  • 默认情况下,如果掩膜输入为一个要素,则可使用像元大小和输入栅格值中的像元对齐(捕捉栅格)从内部将其转换为栅格。

  • 运行按掩膜提取工具时,如果在环境设置中指定了掩膜,则输出栅格仅包含位于环境掩膜和输入掩膜数据交集内区域的像元值。

  • 您可以使用分析范围(Python 中为 analysis_extent)参数为独立工具操作明确指定输出分析区域,或将覆盖环境设置作为工作流的一部分。 您可以通过输入值、选择显示范围、选择图层或浏览至输入数据集的方式指定范围。

  • 默认分析范围值是从输入栅格值和输入栅格或要素掩膜数据值的交集计算得出的。

  • 如果分析范围没有明确指定为参数值,则其会从分析环境设置中派生。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。


完整代码如下:

import os
import arcpyarcpy.CheckOutExtension("spatial")
arcpy.gp.overwriteOutput = 1input_dir = arcpy.GetParameterAsText(0)
output_dir = arcpy.GetParameterAsText(1)
mask = arcpy.GetParameterAsText(2)tif_files = []
for dirpath, dirnames, filenames in os.walk(input_dir):for filename in filenames:if filename.endswith('.tif'):tif_files.append(os.path.join(dirpath, filename))error_files = []for i, tif_file in enumerate(tif_files, start=1):relative_path = os.path.relpath(tif_file, input_dir)base_name, ext = os.path.splitext(relative_path)out_file = os.path.join(output_dir, base_name +ext)if not os.path.exists(os.path.dirname(out_file)):os.makedirs(os.path.dirname(out_file))arcpy.gp.ExtractByMask_sa(tif_file, mask, out_file)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/852808.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【NLP练习】Transformer中的位置编码

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 一、什么是位置编码 1. 位置编码定义 Transformer 模型中的位置编码是为了在处理序列数据时引入位置信息,以便模型能够分辨输入序列中不同位置的词…

【python】正则匹配国内手机号

下面是将您提供的Java代码段翻译成Python的等效代码: import re def is_valid_phone_number(phone_number):regex "^1[3-9]\d{9}$"return bool(re.match(regex, phone_number))这段Python代码定义了一个函数is_valid_phone_number,它接受一个…

蓝卓为中小制造企业注入数字化转型活力

随着劳动力成本上升,原材料价格上涨,企业生产成本逐年增加,市场竞争越来越激烈,传统的中小制造企业面临着巨大的压力。 通过数字化转型应对环境的变化已成为行业共识,在数字化的进程中,中小企业首要考虑生存问题,不能…

spring boot 多个项目整合,打包成可依赖的包

一、背景介绍 接手前人项目,代码都是一块一块的,很多个spring boot服务,服务器重新启动一下,就要同时再启动很多jar服务,漏一个就麻烦了(虽然有一键启动)。但是有很多终端黑框很是麻烦。领导要…

解决Kubernetes报错节点状态为NotReady,希望可以帮到你

Kubernetes报错节点状态为NotReady 文章目录 Kubernetes报错节点状态为NotReady实验过程一、报错内容二、安装flannel网络插件三、成功 实验过程 起因是这样的这几天做学到了k8s,那肯定要部署呀,然后就先用kubeadm进行快速部署的,目的是为了…

怎样为Django的server配置跨域资源共享(CORS)

为了在 Django 服务器中配置跨域资源共享(CORS),你可以使用 django-cors-headers 库。这个库可以帮你轻松地设置 CORS 规则,从而允许你的 Django 服务器处理来自不同源的请求。 以下是配置 CORS 的步骤: 安装 django…

Spring-boot-自定义LogbackAppender

在spring boot中,只要我们在项目的resource文件夹中,增加了一个叫logback-spring.xml的文件,那么spring boot就会自动识别日志配置,并应用这个文件里的配置,这是由ClasspathLoggingApplicationListener类做的 appende…

赶紧收藏!2024 年最常见 20道并发编程面试题(六)

上一篇地址:赶紧收藏!2024 年最常见 20道并发编程面试题(五)-CSDN博客 十一、什么是读写锁(Reader-Writer Locks)? 读写锁(Reader-Writer Locks),也称为共享…

Kubernetes集群持久化部署实践

WordPress 网站持久化部署 要持久化MariaDB 可以把 Deployment 改成了 StatefulSet,修改 YAML添加“serviceName”“volumeClaimTemplates”这两个字段,定义网络标识和 NFS 动态存储卷,然后在容器部分用“volumeMounts”挂载到容器里的数据目…

八 、VS的调试技巧

--- 24.4.20 目录 1、什么是Bug? 2、什么是调试(Debug)? 3、Debug和Release 4、VS基础调试快捷键 4.1、环境准备 4.2、调试快捷键 5、监视和内存观察 5.1、监视窗口 5.2、内存窗口 6、调试举例1 7、调试举例2 8、调试…

旅行者1号有什么秘密?飞行240多亿公里,为什么没发生碰撞?

旅行者1号有什么秘密?飞行240多亿公里,为什么没发生碰撞? 自古以来,人类就对浩瀚无垠的宇宙充满了好奇与向往。从最初的仰望星空,到如今的深空探测,人类探测宇宙的历史发展可谓是一部波澜壮阔的史诗。 在…

缺陷 规避

1. NPE 空指针异常(Null Pointer Exception) 1)使用注解 NotNull 和 Nullable 2)用 Optional 处理链式调用 3)用 Objects.equals(a,b) 代替 a.equals(b),能够避免任意对象为 null 时的 NPE。 4)使用空对象模式,空对像模式通过一个特殊对象代替不存在的情况&…

如何模拟一个元素(如一个链接 <a>)被禁用(disabled)的状态

就像表单元素&#xff08;如 <input>、<button> 等&#xff09;的 disabled 属性一样。 要模拟一个元素被禁用的状态&#xff0c;你可以使用CSS来移除或改变该元素的交互性&#xff0c;并为其添加视觉上的提示。以下是一些建议的方法&#xff1a; 移除交互性&…

双指针练习:有效三角形的个数

题目链接&#xff1a;611.有效三角形的个数 题目描述&#xff1a; 给定一个包含非负整数的数组 nums &#xff0c;返回其中可以组成三角形三条边的三元组个数。 解法一&#xff08;暴力求解&#xff09;&#xff08;会超时&#xff09;&#xff1a; 算法思路&#xff1a; 三层…

Chromium源码阅读:从页面加载到元素展示(1)

​ 从&#xff1c;p&#xff1e;hello world&#xff1c;/p&#xff1e;.html到界面上的hello world 今天&#xff0c;我们一起来看看一个html元素&#xff0c;是如何绘制到界面上。我们选择了最简单的场景&#xff0c;便于快速掌握总体的流程&#xff0c;加深之前阅读知识的…

yolo模型评估指标相关概念

mAP&#xff08;mean Average Precision 平均精度&#xff09;&#xff0c;是一个经常被用来衡量目标 检测模型是否具有较好性能的指标。 计算mAP需要先计算每一类物体的AP&#xff0c;然后取平均值&#xff0c;所以下面介绍的 TP,FP,FN,TN都是针对某一类物体&#xff08;目标&…

Java课程设计:基于Javaweb的超市商品管理系统

文章目录 一、项目介绍二、项目展示三、源码展示四、源码获取 一、项目介绍 管理员用户&#xff1a;需要能够添加商品类型以及商品&#xff0c;能够对商品进行管理&#xff0c;能够查询用户信息&#xff0c;能够查询出售记录&#xff1b;普通用户&#xff1a;需要能够搜索商品…

搜维尔科技:【应用】人形机器人将成为引领产业新浪潮的尖兵

特斯拉纷纷发表人形机器人计划&#xff0c;预示这项先进科技将成为下一个颠覆性的殖民地。人形机器人被视为继电脑、智能手机和电车之后,又一个将改变世界的创新产品。 全球人口结构正在快速老化&#xff0c;至2050年60岁以上人口将达22%,是现今的两倍。劳动人口短缺迫在眉睫&…

NewspaceAi之GPT使用新体验

GPT功能 使用地址&#xff1a;https://newspace.ai0.cn/ 上车 挂挡 踩油门&#xff0c;一脚到底&#xff0c;开始你的表演 问题1&#xff1a;你能做什么详细告诉我&#xff1f; 下面内容是GPT的回答 当然&#xff01;作为一个基于GPT-4架构的AI&#xff0c;我能够在许多方面为…

cocomap计算原理

### 计算 mAP 的过程 1. **初始化和准备工作&#xff1a;** - 加载并初始化评估参数和结果&#xff0c;包括类别、IoU 阈值、召回率阈值、面积范围和最大检测数等。 - 初始化用于存储精度、召回率、得分和 F1 分数的数组。 2. **遍历每个类别、面积范围和最大检测数量&…