tfrecord - 将变量传递给 GEE 导出函数
问题描述
我想将多波段图像转换为数组格式,并以 TFRecord 格式将其从 Google 地球引擎中导出。波段的数量不是固定的,因此我必须计算它,然后将其可变内容传递给导出函数。
var patch_size = 37;
var NBands = ee.Number(image.bandNames().length()).getInfo();
Export.image.toCloudStorage({
image: image.toArray(),
description: outFileName,
bucket: 'landsat',
scale: scale,
region: geometry,
fileFormat: 'TFRecord',
formatOptions: {
patchDimensions: [patch_size, patch_size],
tensorDepths: [NBands],
compressed: true
}
});
代码可以正常工作,但我只得到一个 2KB 的输出 .gz 文件,这显然是错误的,当尝试读取它时,我得到一个解析器错误。如果我用固定值代替 NBands,它会很好地工作,但我需要它是可变的而不是固定的。怎么做?
解决方案
推荐阅读
- react-native - 如何在 React Native 中添加 firebase ml 套件
- php - 将变量插入另一个新变量
- c++ - 如何在 C 中使用 6 字节整数数据类型?
- android - 有没有办法让 EditTextView 中表达的表情符号在 TextView 中看起来一样?
- excel - 将单元格合并为excel中的结果
- javascript - 如何删除出现在数组中的元素的所有实例?
- html - 如何在本地获取从 src url 加载的 img 数据?
- linkedin - Linkedin API v2 权限映射问题?
- c++ - 为什么 std::exception 没有移动构造函数?
- ubuntu - make ld:在 Ubuntu 中找不到命令