GEE 对于单个日期给出错误“空图像集合”,而 roi 的图像存在于哥白尼浏览器中

问题描述 投票:0回答:1

我想导出我感兴趣的区域的单一日期的 Sentinel-2 MSI 表面反射带。我使用了以下代码:

var dateOfInterest = '2024-11-04';
var s2Collection = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
                  .filterBounds(roi)
                  .filterDate(dateOfInterest, dateOfInterest);
                  .first();

这会引发错误

"Error: Collection.first: Empty date ranges not supported for the current operation"

我已检查 Copernicus 浏览器是否有 SR_L2A 产品可用于单个日期的投资回报率。我不明白为什么 Google Earth Engine 会出现此错误。我不需要中值或合成图像。 我想单独导出表面反射率 (L2A) 产品的一个日期的所有波段。

有人可以帮我解决这个问题吗?任何帮助表示赞赏。非常感谢!

google-earth-engine sentinel2
1个回答
0
投票

filterDate 方法的文档中所指定,startDate 参数是包含的,而 endDate 参数是排他的,因此通过在两者中设置相同的日期,您将请求一个空时间范围。

EarthEngine 开发人员实际上在内部编写了解决您问题的解决方案。我再次引用文档:

结束日期(不含)。选修的。如果未指定,则会创建从“start”开始的 1 毫秒范围。

因此您的用例的正确请求是:

var dateOfInterest = '2024-11-04';
var s2Image = (
    ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
    .filterBounds(roi)
    .filterDate(dateOfInterest);
    .first()
);
© www.soinside.com 2019 - 2024. All rights reserved.