如何计算R中不同波段分辨率的Sentinel-2图像(来自GEE)的Tasseled Cap变换



我从谷歌地球引擎下载了Sentinel-2堆栈。对于出口,我使用了分辨率(scale: 10(,而那里的一些波段应该具有20米(SWIR(或60米(例如Cirrus(的分辨率:

Export.image.toDrive({
image: exportImgSentinel, 
description: 'Sentinel', 
folder: 'Sentinel', 
fileNamePrefix: 'Sentinel', 
region: region, 
scale: 10, 
crs: 'EPSG:4326'
});

打开它作为R中的RasterStack,我检查了堆栈的分辨率:

res(Sentinel_weird_1)
[1] 8.983153e-05 8.983153e-05

对于内的每个分离带也是如此。好的,我试着做了一些Tasseled Cap乐队,用各自的乐队键入公式。我得到的光栅只有两个不同的值,这显然是错误的。在这种情况下该怎么办?我应该:

  • 从GEE下载不同分辨率的单独波段,然后在分辨率为20或60 m的R波段中下载disaggregate到10 m?

  • 否则它将不起作用,因为20-60米分辨率的一些数据精度将丢失,我应该aggregate波段到最差的(60米(分辨率?也就是说,我只能从Sentinel-2图像中制作分辨率如此差的TCT地图?

对于陆地卫星的数据,一切都很清楚。res函数显示30m标度分辨率。但我想要一张分辨率为10米的更好的地图。我可以吗?

我也遇到了类似的问题。TC是为陆地卫星专题测绘器产品开发的。您必须调整用于频带变换的系数。有一篇来自施的论文;Xu(2019(,他们将系数调整为传感器反射率下的S2 MSI。

还有一个指数数据库,但在那里,它们只是使用S2 MSI数据的陆地卫星系数。

您必须使用20米分辨率的Sentinel。10米没有流苏帽改造所需的带子。系数适用于7个非热波段中的每一个。

相关内容

  • 没有找到相关文章