You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:GEE从存储桶上传GeoTIFF时遇两类报错问题

GEE导入GeoTIFF报错解决方案(Colab + 代码编辑器)

一、Colab中执行earthengine命令报SyntaxError

  • 问题原因:Colab代码单元格默认是Python运行环境,直接输入shell命令会被Python解释器解析,触发语法错误;同时原命令跨两行的写法不符合shell执行规范。
  • 修正方案:在命令前加!标识执行shell命令,将命令合并为一行(或用\换行):
!earthengine upload image --asset_id=users/myusername/projects/ee-project/assets/dhm_01 gs://bucketname/dhm_01.tif

换行写法:

!earthengine upload image --asset_id=users/myusername/projects/ee-project/assets/dhm_01 \
gs://bucketname/dhm_01.tif

二、GEE代码编辑器中提示“At least one Tileset must be provided.”

  • 问题原因:使用ee.data.startIngestion时,参数params必须包含tilesets字段,用于指定影像切片的关联配置,当前参数缺少该关键项;另外代码中的"是HTML转义字符,在GEE JS环境中无需使用,直接用双引号即可。
  • 修正方案:补充tilesets字段,指定关联的source索引及波段顺序,示例代码如下:
var taskid = ee.data.newTaskId(1);
print(taskid[0]);

var assetid = 'projects/ee-project/assets/dhm22';
var asset_url = 'gs://bucketname/dhm_01.tif';

var params = {
  'id': assetid,
  'sources': [{
    "primaryPath": asset_url,
    "charset": "UTF-8"
  }],
  'tilesets': [{
    "sourceIndex": 0, // 对应sources数组的索引(从0开始)
    "bandOrder": [0]  // 单波段影像用[0],多波段按实际顺序指定
  }]
};

ee.data.startIngestion(taskid[0], params);

内容的提问来源于stack exchange,提问作者toWGS84

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 04:28:16