GEE—关于RSEI生态遥感指数中出现的问题 Layer error: Image.rename: The number of names (1) must match the number of..

本文主要是介绍GEE—关于RSEI生态遥感指数中出现的问题 Layer error: Image.rename: The number of names (1) must match the number of..,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

出现的问题:

我是GEE的刚开始接触     拜读您的“Google Earth Engine——Landsat 1985-2020年生态遥感指数RESI计算”一文并引用您分享的代码,在运行过程中提示“RSEI2004: Layer error: Image.rename: The number of names (1) must match the number of bands (5)”,想跟您请教一下。因为是刚接触,好多代码运行中的问题看不懂 ,还请您赐教!同时也想跟您请教一下有没有小白自学合适的课程推荐,这里大家去看我的专栏此星光明_GEE数据集专栏,GEE教程训练,Google Earth Engine-CSDN博客,《GEE教程训练》\《Google earth engine》和《gee 案例分析》以及《gee python》大家可以根据自己的情况去选择

后续会进行相关教程视频的上传,以及相应新书的出版,所以这里希望大家持续关注。

RSEI2004: Layer error: Image.rename: The number of names (1) must match the number of bands (5)”,

 

以上这个问题主要原因是来源于我之前写的这篇博客,关于计算逐年RSEI的代码,原始的博客地址:

Google Earth Engine——Landsat 1985-2020年生态遥感指数RESI计算_此星光明的博客-CSDN博客

RSEI生态遥感指数是一种用于评估生态质量的遥感指标。该指数主要从遥感图像中提取出土地利用类型、植被覆盖度、土地形态、地表覆盖和土地利用方式等信息,通过对这些信息进行综合分析和计算,得出反映生态环境质量的指数值,以评估某一区域的生态环境质量。该指数可用于生态环境监测、生态保护和生态修复等领域。

原始代码代码:

// var roi = 
//     /* color: #d63000 */
//     /* displayProperties: [
//       {
//         "type": "rectangle"
//       }
//     ] */
//     ee.Geometry.Polygon(
//         [[[105.55104505173978, 34.27794089351641],
//           [105.55104505173978, 33.54856067523731],
//           [106.51784192673978, 33.54856067523731],
//           [106.51784192673978, 34.27794089351641]]], null, false);function Interpol(imgcoll, timeBandName)
{// lengthvar colsize = imgcoll.size();var bandNames = imgcoll.first().bandNames();// make sure first and last NonNullvar firstImg = imgcoll.reduce(ee.Reducer.firstNonNull()).rename(bandNames); // yuanvar lastImg = imgcoll.reduce(ee.Reducer.lastNonNull()).rename(bandNames);  //  jinvar imgList = imgcoll.toList(colsize);// reset imglistvar B = imgList.slice(1,-1);var A = ee.Image(imgList.get(0));var C = ee.Image(imgList.get(-1));firstImg = firstImg.set({'system:time_start':A.get('system:time_start')});//  .set({'user:index':A.get('user:index')});lastImg = lastImg.set({'system:time_start':C.get('system:time_start')});//  .set({'user:index':C.get('user:index')});var D = B.insert(0, firstImg).add(lastImg);var D_imgcol = ee.ImageCollection(D);// mask imgcolvar imgcollmask = imgcoll.map(function(img){img = img.updateMask(img.select(0).mask());return img;});var D_mask = imgcollmask.toList(colsize);var maskBandNames = imgcollmask.first().bandNames();// interpolvar imgcoll_List_Interpol = ee.List.sequence(1, colsize.subtract(2)).map(function(i){i = ee.Number(i);var pre= ee.ImageCollection(D_mask.slice(0,i.add(1))).reduce(ee.Reducer.lastNonNull());var cur= D.get(i);var next=ee.ImageCollection(D_mask.slice(i,-1)).reduce(ee.Reducer.firstNonNull());pre=ee.Image(pre).rename(

这篇关于GEE—关于RSEI生态遥感指数中出现的问题 Layer error: Image.rename: The number of names (1) must match the number of..的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/519426

相关文章

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Python错误AttributeError: 'NoneType' object has no attribute问题的彻底解决方法

《Python错误AttributeError:NoneTypeobjecthasnoattribute问题的彻底解决方法》在Python项目开发和调试过程中,经常会碰到这样一个异常信息... 目录问题背景与概述错误解读:AttributeError: 'NoneType' object has no at

Spring的RedisTemplate的json反序列泛型丢失问题解决

《Spring的RedisTemplate的json反序列泛型丢失问题解决》本文主要介绍了SpringRedisTemplate中使用JSON序列化时泛型信息丢失的问题及其提出三种解决方案,可以根据性... 目录背景解决方案方案一方案二方案三总结背景在使用RedisTemplate操作redis时我们针对

Kotlin Map映射转换问题小结

《KotlinMap映射转换问题小结》文章介绍了Kotlin集合转换的多种方法,包括map(一对一转换)、mapIndexed(带索引)、mapNotNull(过滤null)、mapKeys/map... 目录Kotlin 集合转换:map、mapIndexed、mapNotNull、mapKeys、map

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原