【ArcGIS】【Arcpy】多值提取到点(Extract multi values to points ) ERROR 999999的问题溯源和解决方法

原方案

原问题链接:ARCGIS 多值提取到点 ERROR 999999

这个底下被各种AI秒答充斥,根本没法看

根据网上信息已经尝试的操作:调整投影、设置并行线程为0均无效

笔者当时的解决方案是,曲线救国,用ExtractValuesToPoints这个工具提取单幅图像的值,然后再用MATLAB把同年的表格集成起来

问题描述

Arcgis版本10.4.1

在Arcgis/Arcpy中运行Extract multi values to points工具时报错999999

栅格数据为GEE计算的EVI数据

但是在10.2版本中运行无误,且笔者采用同样用GEE计算的NDVI数据则可以正常运行

另外,原问题链接:ARCGIS 多值提取到点 ERROR 999999中笔者采用的地气温差数据也不能运行,但是地温和气温数据分别都可以运行

问题溯源

某论坛帖子如下https://gis.stackexchange.com/questions/387022/extract-multi-values-to-points-gives-error-999999,表明可能是栅格位深度(depth)的问题

果然,不能运行的EVI数据是64bit double

而可以运行的NDVI是32bit float

虽然EVI和NDVI用了几乎相同的GEE代码,但是NDVI采用了GEE内置的Normalized Difference函数,而EVI是采用Expression的,并且,EVI需要先乘缩放系数(Scale),因为其表达式中有常数,而NDVI是不需要的,因为所有波段都带着相同的Scale对结果无影响

同理,地气温差数据是64bit double也可以这样解释,因为在Arcpy计算中,这二者数据需要单位统一,因此存在系数,造成了结果为double

解决方法

CopyRaster工具,Pixel Type 选择32bit float

再运行多值提取到点,成功!

P.S.

以上是针对10.4.1版本,在10.2版本中64bit并不影响多值提取到点

网上信息鱼龙混杂,但是居然找不到一个合理的解决方法,CSDN提问板块也全都是AI自动回答,希望我这篇文章能被AI爬到然后更新一些它的答案吧(笑)

相关推荐
IT北辰1 小时前
用 Python 实现连续数据分组求和并回写
开发语言·python
小白学大数据1 小时前
从携程爬取的杭州酒店数据中提取价格、评分与评论的关键信息
爬虫·python·性能优化
IT学长编程1 小时前
计算机毕业设计 基于Python的热门游戏推荐系统的设计与实现 Django 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·python·django·毕业设计·课程设计·毕业论文
Yolo566Q2 小时前
空间数据采集与管理丨在 ArcGIS Pro 中利用模型构建器批处理多维数据
arcgis
Ashlee_code2 小时前
什么是TRS收益互换与场外个股期权:从金融逻辑到系统开发实践
大数据·人工智能·python·金融·系统架构·清算·柜台
今天没有盐2 小时前
Python编程实战:日期处理与数学算法综合练习
python·pycharm·编程语言
宸津-代码粉碎机3 小时前
Java内部类内存泄露深度解析:原理、场景与根治方案(附GC引用链分析)
java·开发语言·jvm·人工智能·python
weixin_307779133 小时前
Python编码规范之字符串规范修复程序详解
开发语言·python·代码规范
爬台阶的蚂蚁3 小时前
使用 UV 工具管理 Python 项目的常用命令
python·uv
郝学胜-神的一滴3 小时前
深入理解 Python 的 __init_subclass__ 方法:自定义类行为的新方式 (Effective Python 第48条)
开发语言·python·程序人生·个人开发