2

我想使用工具箱 sen2r 在 R 中处理 Sentinel 2 L2A 数据。我已经手动下载了 .SAFE 格式的图像。

我使用 s2_translate() 将 .SAFE 格式转换为 geotif:

in_dir <- "D:/data/s2"
out_dir <-"D:/s2_geotifs"

## translate .safe to geotif

s2_example <- file.path(
  in_dir,
  "S2B_MSIL2A_20200525T104619_N0214_R051_T31UFT_20200525T133932.SAFE")

s2_raster_dir <- s2_translate(s2_example, 
                              format="GTiff",
                              outdir = out_dir)

这个结果是一个有 11 层的光栅砖,据我所知,所有这些都对应于哨兵 2 的光学波段。

现在我想应用 s2_mask 函数(特别是波段 4 和 8,因为我想制作 NDVI)但是代码的文档说你需要 SCL 产品作为输入。SCL 产品是具有用于掩蔽的分类云像素的波段。如果我将 .SAFE 图像加载到 SNAP 中,例如我可以看到 SCL 产品。但是,我在我的 s2_translate() 输出或原始 .SAFE 中找不到 SCL。

根据文档,输入应如下所示:

sen2r.ranghetti.info/reference/s2_mask.html

所以问题是我在任何地方都找不到 SCL 产品。我已根据需要应用了 s2_translate。

4

1 回答 1

1

默认情况下,s2_translate 只生成 BOA 输出。我认为您还需要再次使用 s2_translate 从 SAFE 显式生成 SCL 文件,使用以下内容:

s2_translate(s2_example,
             prod_type = "SCL", 
             format="GTiff",
             outdir = out_dir)

在此处查看文档:

http://sen2r.ranghetti.info/reference/s2_translate.html http://sen2r.ranghetti.info/reference/safe_shortname.html

于 2020-08-20T07:50:59.253 回答